视频彩铃中的音视频编解码

随着5G视频彩铃业务的推广和手机终端的更新换代,视频彩铃业务在日常通话过程中出现的频率越来越高。视频彩铃简单来说,就是使用一段视频内容替换原来播放给主叫的“嘟嘟嘟”的回铃音,或者替换被叫终端上的振铃。今天我们聊一聊视频彩铃中的音视频编解码。

在现代通信及计算机应用中,信息都是以二进制数的形式存储及传递的,声音和图像也不例外。今天所说的音视频编解码就是针对数字化后的声音和视频(图像)进行的。所以我们先聊一聊音频与视频的数字化。

音频的数字化

音频的数字化,就是我们将声音记录、存储到数字媒介的过程。我们如何将一段美妙的音乐,记录成wav、flac、mp3等文件的呢?这涉及到对声音的记录、转换、封装,对应专有名词的话,就是采样、量化、编码。

声音是振动产生的声波,通过介质(气体、固体、液体)传播并能被人或动物听觉器官所感知的波动现象。声音的频率一般会以赫兹表示,记为Hz,指每秒钟周期性震动的次数。

声波通过空气传播到麦克风的振膜,振膜随空气抖动的振幅大小产生高低不同的电压变化,高压成为正电压,低压成为负电压,采样就是通过声卡等在某些特定时刻对电压变化进行测量得到离散时间信号。量化就是对采样后得到的离散信号做进一步处理,将离散信号幅度值划分为若干份,获得量化等级,实际离散信号经四舍五入归为其中的一个量级,得到一个量化值。将采样的数据量化后,生成的二进制数据就是PCM(Pulse Code Modulation)等。PCM数据存储成计算机文件时,需要有个封装格式,前文提到的wav、flac、mp3就是常见的一些音频的封装格式。

在音频数字化的过程中,几个主要的步骤都会影响到音频的最终质量。主要的影响因素包括:采样频率、采样声道数、量化位数、编码格式等。

采样频率表示每秒钟对音频信号进行数字采样的次数。根据奈奎斯特采样定理,采样频率必须大于被采样信号带宽的两倍,否则就不能从采样信号中恢复原始信号。而且采样频率越高,所得的数字波形就越接近于原始的模拟波形,音质越好,存储数据量越大。

·8khz :电话等使用,对于记录人声已经足够使用。

·22.05khz :广播使用频率。

·44.1khz :音频CD。

·48khz :DVD、数字电视中使用。

·96khz-192khz:DVD-Audio、蓝光高清等使用。

图片

采样声道数就是一次采样同时记录的声音波形个数。立体声比单声道的表现力丰富,但数字化后的数据量翻倍。

量化位数表示量化时分配参考值的个数,量化位数越多,量化产生的误差越小,声音越接近原来的波形,音质越好,存储数据量越大。

视频彩铃中的音视频编解码
图(b)精度为到1/8,图(c)精度为1/4,对比可以看出图(b)比图(c)更接近图(a)的波形。

在每秒 44,100 个采样和每采样 16 位的情况下,一个双声道文件每秒需要 172 KB(每秒采样数乘采样位数乘声道数除8后进行单位换算),一首3分钟的歌曲大约有 30 MB。在磁盘空间受限的情况下,直接存储PCM数据显然是很高的成本。这个时候,就需要做音频编码。

音频编码,就是使用一些特殊设计的编码格式,通过优化排列方式或者删除一些已有数据中不太重要的部分,减少音频数据存储时的数据量,达到压缩的效果,以便其更易于存储和传输。通过优化排列方式来达到压缩目的的编码格式称之为无损压缩格式,通过删除一些不太重要的数据来达到压缩目的的编码格式称之为有损压缩格式。

音频解码就是编码的逆操作,将压缩后的数据解压缩还原成原始的音频数据,以便其能通过数模转换等方式,经由物理设备还原出记录下的声波。

视频的数字化

当下我们说的视频,常指的是包含音频和视频两个部分的多媒体,那它的数字化实际上就是对声音部分和图像部分,分别进行数字化后再进行合成。这里我们就接着讲讲视频中图像部分的数字化。

图片

根据视觉暂留原理,连续的图像变化每秒超过24帧画面以上时,人眼看上去会有平滑连续的视觉效果。由于视频是连续的图像组成的,因此可以理解为以特定频率记录下瞬时静态图像的基本信息,就是对视频图像的数字化。这种特定的频率就叫做帧率,指每秒记录(播放)多少帧,帧率影响画面的流畅度,帧率越高,画面也就越流畅。每一次记录下的瞬时静态图像,通常是由一定宽高比数量的最小单位组成的矩形。这个宽高比叫做分辨率,最小单位叫做像素。分辨率在行业的发展中,宽度和高度的某些组合已标准化,视频彩铃业务中使用的分辨率通常有540P、720P、1080P等等。像素可以是RGB格式,也可以是YUV格式,两种格式都是对颜色的一种编码。自然世界中的景色画面经过光学传感器处理之后,会得到RGB格式的像素,在数字化时一般会先将RGB格式转换成YUV格式。在YUV格式中,一个像素由亮度分量和色度分量表示,每一个像素由一个亮度分量Y和两个色度分量U/V组成。人的感官对亮度信息的敏感度远高于对色度信息,因此适当的降低色度分量的采样频次,可以在保证不对图像造成太大影响的同时,减少需要采样的数据。

除了音频部分会影响视频的最终质量,分辨率、帧率、编码格式等,也是影响视频的最终质量的主要因素。影响原因与音频部分大同小异,这里就不再赘述。

视频彩铃中的音视频编解码

视频彩铃业务中,媒体文件统一采用.3gp格式进行封装。视频编码支持H264、H265等视频编码格式,音频编码支持EVS、AMR-WB等音频编码格式。出于对音频彩铃系统的兼容需要,音频编码实际上还需要支持AMR、PCM_MULAW、PCM_ALAW等。纯音频的媒体文件统一采用.wav格式进行封装。

在PC、手机端上安装播放器后,通常情况下,播放器都能够读取.3gp、.wav文件,然后从封装格式的信息里面提取出音、视频的编码格式,接着按照对应的格式对封装数据做解码,就能还原出声音和画面。视频彩铃业务不同于一般PC端、手机端的媒体文件播放,该业务发生在手机系统的内置模块里,无法调用后来安装的播放器,而内置的播放器可能仅支持某些特定格式的解码及播放。

在视频彩铃业务中,要播放的媒体文件是什么格式、终端支持解码哪些格式、媒体服务器支持编码哪些格式,需要通过应用服务器与用户的手机终端通过SIP信令进行协商。等SIP协商成功后,应用服务器就会通知媒体服务器,以终端支持的格式向终端进行多媒体信息的推送。当然,协商过程实际上复杂的多,还会考虑当前通话环境下的网络质量等等,由于其不是本文的重点,这里不做详述。

对于近一两年面世的终端来说,多数情况下要播放的媒体源文件(H264+AMR-WB)都是终端能够解码的格式,在网络质量较好的情况下,实际上并不需要媒体服务器对媒体数据进行实时的编解码,只需要将源文件中的编码数据做网络格式(RTP)封装后推送即可。

音视频的编解码主要应用在视频图像增加动态效果、源文件音视频格式与协商出的播放格式不一致时。

图片

比如,要在源视频上动态的添加一些文字或者图片信息,就需要媒体服务器将源文件数据以原来的编码解码成原始的YUV数据,再针对叠加算法修改重叠像素上的YUV,最后再将修改后的YUV数据编码成源文件的编码格式,封装后推送。

图片

比如,要播放的视频文件是以H265编码的,但SIP协商出来的结果是H264,那么就需要媒体服务器将源文件数据以H265解码成原始的YUV数据,再将YUV数据编码成H264,最后做封装推送。

图片

比如,要播放的音频文件是以PCM_ALAW编码的,但手机终端仅支持AMR,那么就需要媒体服务器将源文件数据以PCM_ALAW解码成原始的PCM数据,再将PCM数据编码成PCM_ALAW。

注:部分图片来源于网络如有侵权请联系删除

参考资料:

  • 1. 维基百科声音定义
  • 2. 数字化音频
  • 3. CE 4228 Data Communications and Networking

作者:刘东 | 青榴实验室–超高清视频技术的传播者

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(0)

相关推荐

发表回复

登录后才能评论