mstlq 鉴黄师  2011年10月08日
ffmpeg+x264应该如何降低编码时延呢?

原来我使用ffmpeg FULL SDK V3.2进行h264编码的时候,发现avcodec_encode_video函数输出的延时仅仅跟max_b_frames的设置有关,我想进行实时编码,将max_b_frames设置为0便没有编码延时了。

最近使用ffmpeg0.8.1+x264(115版本),却发现当bframes=3 thread=1时,编码器会有41帧的时延。请问是否可以通过对AVCodecContext进行设置的方式来降低时延现象?

附上av_dump_format的输出
[libx264 @ 003D6700] Default settings detected, using medium profile
[libx264 @ 003D6700] using cpu capabilities: MMX2 SSE2Fast FastShuffle SSEMisali
gn LZCNT
[libx264 @ 003D6700] profile High, level 1.3
[libx264 @ 003D6700] 264 - core 115 r2008 4c552d8 - H.264/MPEG-4 AVC codec - Cop
yleft 2003-2011 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deb
lock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 m
e_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chro
ma_qp_offset=-2 threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_c
ompat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 we
ightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=
0 rc_lookahead=40 rc=cbr mbtree=1 bitrate=100 ratetol=1.0 qcomp=0.60 qpmin=0 qpm
ax=69 qpstep=4 vbv_maxrate=100 vbv_bufsize=100 nal_hrd=none ip_ratio=1.40 aq=1:1
.00


此外我还遇到gop_size与max_b_frames设置无效的怪现象,还请各位不吝解惑
http://topic.csdn.net/u/20111008/16/3b662155-261e-4ab6-a83c-fdac27170ea9.html?3380
...全文
2238 点赞 收藏 10
写回复
10 条回复

还没有回复,快来抢沙发~

发动态
发帖子
多媒体/流媒体开发
创建于2007-08-27

2047

社区成员

2.0w+

社区内容

专题开发/技术/项目 多媒体/流媒体开发
社区公告
暂无公告