还记得在公众号里面说过准备写一个播放器的教程:
现在也已经陆陆续续写起来了,主要内容还是更新在 音视频开发进阶-知识星球 里面,现在加入星球还是优惠价,后面干货越多,涨价的可能性就越大了。
网上有个很火的专栏叫做 重学安卓,不妨也把这个专栏叫做 重学音视频,除了播放器相关的知识,也会把个人经验和思考分享给大家。
为了方便大家的检索,我把专栏内容放在网页上了,地址如下:
如图所示,就能访问专栏啦。
以下就是专栏的内容:
在开始播放器实践之前,我们要先知道播放的内容是什么:认识一下 MP4 视频。
根据*的介绍,MP4 或称 MPEG-4 第14部分(英语:MPEG-4 Part 14)是一种标准的数字多媒体容器格式。
MPEG-4 第14部分的扩展名为.mp4,以存储数字音频及数字视频为主,但也可以存储字幕和静止图像。
字面意思很容易理解,MP4 其实是一种容器,可以存音频和视频内容。那么问题来了,既然说 MP4 是 MPEG-4 第14部分,那其他部分是什么呢?有没有 MPEG 的 1、2、3 甚至 5、6、7 呢?
这里就涉及到 MP4 标准的制定了。
首先需要知道国际上有一个组织叫做 MEPG (Moving Picture Experts Group,动态图像专家组)。
它是 ISO(International Standardization Organization,国际标准化组织)与IEC(International Electrotechnical Commission,国际电工委员会)于1988年成立的专门针对运动图像和语音压缩制定国际标准的组织。
这里组织名字比较多,就不赘述了,可以直接去百度一下。
大意就是两个大组织 ISO 和 IEC 成立了一个小组织 MEPG 来制定运动图像和语音压缩的标准,其实就是制定视频和音频方面的标准,可能那个年代把视频叫做运动图像吧。
而 MEPG 组织的产出就是一系列标准,并且命名也很简单,就是 MPEG-1 标准、MPEG-2 标准,以此类推。
不过,要注意 MPEG 标准后面的数字可不是依次递增的哦,比如 MPEG-3、MPEG-5、MPEG-6 就不存在的,就好比 Windows 电脑直接从 Win8 跳到 Win10 ,也没有 Win9 了,这也回答了上面的问题,并不是每个数字代表的标准都有的。
另外,为什么说 MP4 是 MPEG-4 的第14部分呢?
因为 MPEG-4 标准很大,包括了 27 个部分,详细的 27 个部分内容可以在网络上搜索到,贴个图:
比如常见的 H.264 就是 MPEG-4 第 10 部分,所以介绍 H.264 的时候也可以说是 MPEG-4 第 10 部分。
这里面的每个部分多多少少都影响着我们的生活了,对于开发人员来说,还是需要了解一些关键部分的内容。
我已经把 MP4 相关的 MPEG-4 第14 部分文档下载好了,文件会同步到知识星球里面,有需要的可以自行下载,截个图如下:
文档内容不多,就十几页,主要就是讲了 MP4 文件格式的定义和相关语法。
后面我们也会去解读一下 MP4 的文件格式,这次就先到这里,下次见了!!!
众所周知,开通了知识星球,邀请了一些在头条、快手等知名IT企业从事过音视频研发的朋友们做专业咨询,涉及的范围比较广,包括 Android/iOS 开发、Camera 开发、视频编辑、在线直播、WebRTC、播放器、OpenGL、C++ 等等,基本上涵盖了音视频工程领域的绝大部分内容。
关于音视频入门如何学习,学习了 FFmpeg 之后又该怎么办,跳槽选择哪个方向比较好,程序员职业软技能等等之类的问题,更是会以行业一线开发人员的角度帮你认真分析,出谋划策。
力求做到有问必答。在知识范围内,认真地对待每一个提问,不一定所有的问题都能答案,但每一个答案都是详细思考过的。
更多开发资料、博客源码、文档教程都会在星球内给出,白菜价即可加入,iOS 用户可以加我