00-音视频-概述

有很多场合会使用的音视频,比如安防、视频闸机、影音播放器、视频通话,短视频等等。

从摄像头采集到用户观看,这中间涉及到了很多技术。

用户一般观看的高清视频1080P30帧。若按24位RGB对视频进行存储,一个60分钟视频所占空间

size=60*60*1920*1080*30*3=625G

也就是说,一个60分钟的视频需要625G的硬盘容量,这么大的数据量,是现在的计算机系统所无法允许的。

因而对于摄像头采集的RGB或者YUV数据而言,我们需要将其占有的空间变小,这一步压缩视频的操作要作编码,市面上将原始视频编码成H264或H265,而将H264或H265还原成RGB或YUV的操作,要作解码。

音频的原始数据是PCM格式,将其编码可得G711和AAC格式的音频数据,同样也存在解码的操作。

我们看见一个电影,一般是MP4等格式,并且MP4视频是有音频,视频,字幕的。原因就是将音频,视频等数据进行了Mp4封装。

视频封装,其实就是把所有相关信息(视频、音频、字幕、媒体信息等)打包为一个文件。比如,将H.264编码的视频和MP3编码的音频按照MP4的封装标准封装起来,这样我们看到的就是MP4格式的视频文件了。

因而,摄像头设备端所完成事情就是将源音视频数据编码,封装成一个MP4或RMVB文件,而客户端需要完成的是将Mp4视频解封装, 解码成视频RGB,PCM显示与播放。

另外现在的抖音,网站,或者电影,我们会发现大多数情况下,采集端与播放端并不是一个设备,播放端获取获取采集端视频的方法,最普遍的就是网络传输。

现在我们清楚了音视频领域所要完成的工作,后面我们对每一种工作所用的最常用的技术进行举例:

1.编码:

视频编码方式:YUV->H264

音频编码:PCM->G711A

2.写封装

H264,G711A->MP4

3.网络传输

按协议封包

解协议

4.解封装

MP4->H264,G711A

5.解码

H264->YUV

G711A->PCM

相关推荐
淡淡的香烟6 小时前
Android Camera开发详解
android·音视频
笨笨饿7 小时前
#109_BK7258 蓝牙 A2DP 音频数据通路深度解析
python·stm32·单片机·mcu·物联网·编辑器·音视频
≮傷£≯√11 小时前
图片合并成视频 img2video ffmpeg
ffmpeg·音视频
A133455512 小时前
视频特效字幕怎么翻译?保姆级AI字幕与外挂字幕教程
人工智能·音视频
ViiTor_AI1 天前
从去字幕到 AI 配音:完整视频本地化流程
人工智能·音视频
明德扬1 天前
多路MIPI摄像头如何同步聚合?一文看懂FPGA视频汇聚方案
fpga开发·音视频
折枝吖1 天前
音视频开发-PCM 原理与 AI 模块实战
音视频·pcm
HySpark1 天前
熙瑾·会悟 ASR 实战:Qwen-ASR 漏字导致转写不完整,如何从音频分段到二次校验解决?
音视频·熙瑾会悟
大鹅办公1 天前
酷狗音乐怎么转换MP3格式?4种方法亲测对比+避坑指南(附FFmpeg命令行教程)
ffmpeg·音视频·音频格式
小妖同学学AI1 天前
AI视频生成难在提示词?这个Claude插件让Seedance 2.0效率翻倍,附超全示例!
人工智能·开源·github·音视频