音视频开发——基础知识篇

1、视频传输原理

        视频是利用人眼短暂停留的原理,通过连续播放一系列的图片使人产生画面里的人物在运动的感觉。但是视频里面通常会有大量的重复信息。例如早期拍电影用胶卷,一个演员坐在房间内的椅子上抽烟,一秒钟如果用25张胶卷,那么不同胶卷拍下来的内容有相同也有不同,不同的是演员的动作,神态;相同的是房间内的一切布局。在数字化的今天,为了方便视频的传输,肯定是不喜欢重复传输视频中每一张照片的同样的信息。因此,如果根据一些协议,在发送端把重复的信息去掉,在接收端把重复的信息恢复出来,就可以大幅度的提高视频文件的传输。这种协议就叫做视频压缩标准,例如H.264。

        视频有H.264编码格式进行压缩,音频同样也有AAC编码格式进行压缩。视频和音频在压缩后会显著的降低存储空间和在网络上的传输时间。但是当我们在播放视频的时候,是需要把视频和音频解码出来才能够正常的去播放。

2、音视频传输到播放的基本过程

        音视频播放主要分为在线播放和本地播放。在线播放就是像我们看直播,刷抖音等等,这样的视频我们统称为流媒体;本地播放就是我们观看在手机存储空间内已经有的视频文件,不需要网络连接,比如我拍了一段跳舞的视频,拍摄完成后,在手机上直接就能看。

        本文主要讲一下流媒体的播放步骤:解协议->解封装->解码->音视频同步->播放。如果是本地播放的话,就没有解协议这一步骤。

        详细步骤看下图:

看着很复杂,其实就是利用协议进行一层一层的解析。

3、编码和解码

        我们在1和2中已经了解了视频的传输原理和传输过程。在完成传输的过程中发送方和接收方都要遵守同样的编码约定。先来看两个简单的概念。

        帧(frame):简单的理解为一张图片,类似于1中提到的每一张胶卷。

        帧率(fps):每秒播放多少帧,frame per second,游戏都玩过咯,fps。

在视频传输的过程中,编码器对每一帧的图像都会进行编码,然后再传输。

        编码器将多张图像进行编码后生产成一段一段的 GOP ( Group of Pictures ,图像组) , 解码器在播放时则是读取一段一段的 GOP 进行解码后读取画面再渲染显示。GOP  是一组连续的画面,由一张 I 帧和数张 B / P 帧组成,是视频图像编码器和解码器存取的基本单位,它的排列顺序将会一直重复到影像结束。I 帧是内部编码帧(也称为关键帧),P帧是前向预测帧(前向参考帧),B 帧是双向内插帧(双向参考帧)。简单地讲,I 帧是一个完整的画面,而 P 帧和 B 帧记录的是相对于 I 帧的变化。如果没有 I 帧,P 帧和 B 帧就无法解码。

在H.264压缩标准中I帧、P帧、B帧用于表示传输的视频画面。

        就像下图:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值