ffmpeg软件

windows环境

https://ffmpeg.zeranoe.com/builds/

ffmpeg学习

在Linux里面使用wget工具下载较快:ffmpeg-20191013-4f4334b-win64-static.zip

解压到D盘并修改文件名:D:\work\ffmpeg\bin

添加环境变量:在用户和系统path变量中新建环境变量

ffmpeg学习

ffmpeg学习

在dos命令串口测试如下:【若遇到不能自动识别,多试几次设置环境变量】

ffmpeg学习

Linux环境

https://ffmpeg.org/releases/ffmpeg-3.2.4.tar.xz

编译方法:待续。。。

Windows下测试

ffplay播放MP4文件:

ffplay 190904020601-190904020742-sub-ms-0-0.mp4

ffmpeg学习

ffmpeg从MP4文件中抽取视频流导出为裸H264数据

ffmpeg -i 190904020601-190904020742-sub-ms-0-0.mp4 -an -vcodec copy -bsf:v h264_mp4toannexb output-ok.h264

ffmpeg学习

ffplay播放H264裸流

ffplay output-ok.h264

ffmpeg学习

从不完整的MP4文件转成H264裸流

ffmpeg -i 190401163952-190401164121-sub-ms-0-12-bad.mp4 -an -vcodec copy -bsf:v h264_mp4toannexb output-bad.h264,转换失败

ffmpeg学习

MP4转H264测试

完整MP4文件转H264正常,对比文件如下:

ffmpeg学习

可依稀看出H264文件头,和MP4文件的封装头数据,下面是不完整的MP4文件:

ffmpeg学习

H264帧头是00 00 00 01开始,但是会有00 00 01 xx 61这种格式,这是什么意思?怎么手动提取H264裸流?

 

待续。。。

 

 

 

 

 

 

 

 

相关文章: