自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Hash表为什么要扩容?

        Hash表示重要的数据结构之一,其可以采用多种方法避免冲突,常用的一种是:链接法。采用链接法来处理Hash冲突时,当Hash表中的项太多,也就是Hash冲突比较高的时候,Hash表的遍历就蜕变成单链表,此时为了提供Hash的性能,Hash表需要扩容。扩容方案可以参见live555、memcached等项目。...

2019-01-22 14:24:08 1218

转载 使用ffmpeg将实时流保存为AVI

项目中需要将编码器编码出的H264数据保存为avi格式文件。使用ffmpeg接口进行实现。ffmpeg一般是直接打开本地视频文件(如avi、mp4等)或者网络视频流(如:rtmp流媒体等),只需要直接将本地视频文件名或者流媒体的URL作为avformat_open_input的参数即可。但是这次的项目中,则需要直接将编码器编码出的H264流保存为avi文件。原本准备参考雷神的《ffmpeg 从...

2019-01-18 11:08:16 3959 1

原创 FFmpeg音视频核心技术精讲与实战

一、日志:    <libavutil/log.h>头文件    av_set_log_level();  AV_LOG_DEBUG/AV_LOG_INFO/AV_LOG_WARNING/AV_LOG_ERROR    av_log();二、文件删除和重命名:    avpriv_io_delete();    avpriv_io_move();三、操作目录    av...

2019-01-17 22:17:29 1291

转载 Linux I/O多路复用——select函数中的算法

先讨论与IO无关的东西.调用select 的流程是1 将要监听的文件描述符(集)a,b,c选入一个集合S2 调用select,可以设置超时参数4 函数内部设置S集合中的描述符3 函数返回,解析S中还有哪些描述符怎样高效的来实现上述的过程.我们知道文件描述符是一个较小递增不重复的int,根据这个特点,我们可以用bitmap算法来实现,本质是一个映射关系.用几个较少的数来表示很多的数首...

2019-01-02 16:24:32 219

转载 白话讲解Nagle算法和延迟确认

以前对nagle算法有耳闻,利用TCP_NODELAY选项可以禁止他。然后看到延迟ack时,心想TCP_NODELAY选项与他有没有关系呢。其实没有,TCP_NODELAY只是用来禁用nagle算法的。关于他们之间的关系倒可以好好研究下。有以下一个场景,村东和村西隔着一条大河,有几条船在两岸摆渡。由于每次要求过河的人只有一个,如果来一个人就将那个人摆渡过去(假设船只足够多),那势必运输效率非常...

2019-01-02 16:06:19 275

转载 白话TCP运输控制(二) -- TCP的流量控制

上篇讲的是拥塞控制,这篇讲流量控制。还是以运输粮食为场景。虽然运输的拥塞控制能够在运输效率和拥塞之间达到平衡,但是运输粮食的整体效率还受一个关键因数影响,那就是对岸西村粮食的卸货能力。假设粮食运送到对岸后,要卸放在一个仓库里,随后被运往其他地方。如果运输的太快,仓库载货能力有限,粮食又没有及时被消耗,工人们只好等待仓库腾出地方来卸下新的粮食。显然这样会影响这个工程的效率。后来工人们又想了一...

2019-01-02 15:50:37 183

转载 白话TCP运输控制(一) -- TCP的拥塞控制

张家村码头的粮食堆积如山,每天都需要用船运到镇里。但是去镇上有50公里,只有水路可走。一大早,码头工人们就开始干活了, 为了早点干完收工回家,一船接一船,拼命地发送粮食。可是这水路不仅仅是张家村在运粮食,白头村还往外运石头, 东平村还往外运沙子,大家都拼命地往外发货物,再加上各式各样,络绎不绝的商船、客船, 大家很快就发现,船只太多,水面出现拥堵,工人们只好等待。工人们想这也不是个...

2019-01-02 15:45:30 202

转载 Will EAGAIN returned on send/write for anything other than buffer full?

EAGAIN/EWOULDBLOCK can also be returned (for TCP sockets) when the number of unacknowledged packets has reached the congestion window.To check the status of the socket w.r.t. the congestion window, ...

2019-01-02 14:31:15 145

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除