三种方法
此去除B帧的方法只适用于采用 libx264 编码器编码的视频
引用链接:
ffmpeg x264 选项指南
第一种
参数中加 -bf 0
ffmpeg -i test.mp4 -vcodec libx264 -bf 0 test-640x480.h264
第二种
参数中加 -x264opts "bframe=0"
ffmpeg -i test.mp4 -vcodec libx264 -x264opts "bframes=0" test-640x480.h264
第三种
参数中加 -profile:v baseline
ffmpeg -i test.mp4 -vcodec libx264 -profile:v baseline -pix_fmt yuv420p -s 640x480 -acodec aac test1.mp4
加这个参数时,请指定图像格式,否则很容易报错
No pixel format specified, yuv444p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
x264 [error]: main profile doesn't support 4:4:4
[libx264 @ 0x8fa9640] Error setting profile main.
[libx264 @ 0x8fa9640] Possible profiles: baseline main high high10 high422 high444
查看是否含有B帧
转换完成后,通过 ffprobe 可以查看视频流中是否含有B帧
ffprobe -v quiet -show_frames -select_streams v test.mp4 | find "pict_type=B"
来源:CSDN
作者:LaoLi0519
链接:https://blog.csdn.net/qq_41866437/article/details/103497595