AVI音视频封装格式学习(五)——h265与PCM合成AVI文件

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/li_wen01/article/details/86716001

    不知道是处于版权收费问题还是什么原因,H265现在也并没有非常广泛的被普及。将h265数据合成AVI的资料现在在网上也基本上没有。使用格式化工厂工具将h265数据封装成AVI格式,发现它在封装的时候其实是对数据进行了一个装换,转成了FMP4格式。因为是在嵌入式设备中使用,所以没有测试是否可以直接FFMPEG进行数据封装。这里介绍的是直接使用C语言封装AVI格式。
    关于AVI的数据封装,可以参考以前的博客内容:

           AVI音视频封装格式学习(一)——微软RIFF文件格式摘要

           AVI音视频封装格式学习(二)——AVI RIFF文件参考

           AVI音视频封装格式学习(三)——AVI 数据结构解析

           AVI音视频封装格式学习(四)——linux系统C语言AVI格式音视频封装应用

    在AVI数据封装中,基本上与h264数据的封装一模一样,唯一不同的是AVI头文件fccHandler和compression的参数。h264的数据该参数直接就是h264,但是在h265数据中,这里不是h265,也不是hevc,而是hev1。如果使用h265或是hevc,在vlc播放器上可以播放,但是在主流的暴风迅雷这些播放器上就播不了了。 音频和其它的参数都不需要改动。

在VLC中播放中查看编码参数如下:

    另外需要注意一点的是,如果只封装H265数据,没有音频数据,在迅雷和暴风的播放比较的抽风,AVI头文件中不能包含音频参数,否则迅雷播不了,暴风播放经常启动异常,界面会卡顿很久,不知道具体是什么原因。如果同时封装音频和视频则没有遇到类似的问题。

猜你喜欢

转载自blog.csdn.net/li_wen01/article/details/86716001