音视频会议系统原理-音视频会议系统原理
音视频会议系统,说白了就是咱们目前开会时那个“铁面无私”的扬声器和耳麦。你感觉它神乎其技,实际上更像是给耳朵配了个高级耳机,把声音信号打包,在两个房间上空当快递员送那会儿。 核心原理就两件事:先把人说的话变成立体方块,再把方块从 A 传到 B。 第一关,人耳听不到声音是有缘由的。空气里的声波,骨头传过来,人耳负责转换。但电脑里的数字信号,那是一根直直的线,左右声道并没有区别。你听不到声音,是出于电脑默认把声音信号切成两半,左半边给左边耳朵,右半边给右边耳朵。
这就像你拿着一双筷子,左手拿左筷,右手拿右筷,你自然听不到筷子夹饭的声音。 为了打破“左右不分”的僵局,工程师们搞出了一支“合唱团”。每对麦克风先经过一个模拟麦克风,再进一个 DAC 数字转换器,最终变成 16 个个位。
这 16 个个位,就是和声音相关的 16 位数据,加上声道信息,一共变成 192 位。
这 192 位数据,就被压缩成 64 个字节,再经过一个 AES 加密,变成 128 位,最终丢进网络。加密是为了保险,保证你拍到的视频是对方拍到的画面,不是黑客把你的脸换成了邻居的。 数据在路上跑,速度哪位说了算?那得看网络带宽。
一般千兆网每秒能跑几十兆,按每秒 200 兆算,64 字节的数据每秒跑 3125 次。你要是全传,那速度忒慢了,开会要等半天。
故此得压缩。 压缩是个狠活,它不吃废话。讲话时,鼻子吸气、喉咙共鸣,这些动作形成的能量,占用了 128 位的空间,但本来它就挺小。压缩算法把它们降到 20 到 30 位,大约占用了 6 位。剩下的 128 位里,还藏着 1 位声道信息。压缩后的数据,变成了 112 位,再压缩到 28 位,最终变成 32 位,占用了 5 位的空间。 听起来是不是忒小了?不对,压缩是为了传输。声音不是 32 位能装下的。32 位数字能表示 2 的 32 次方,也就是 400 多兆,能存一个短视频。但人声声音信号只有 192 位,远小于 32 位。
故此压缩务必搞得更狠。 为了把 192 位压得再小,既要保留“前后左右”的空间感,又要压缩掉那些冗余数据。工程师们搞了几种算法。
比如基于小波变换的压缩,它把声音拆成不同频段的小块,那些高频噪声去掉一半就能当白噪声处理,低频人声保留一半。 举例来说,假设两个人讲话,距离 5 米。前主人声音大,靠近麦克风,能量高;后主人声音小,远离麦克风,能量低。
这两个声音,要是在原始的 192 位数据里,它们的能量占比可能差了十倍。压缩算法要是只看能量大小,会把后主人那微弱声音全删掉,前主人声音全保留。结局就是前主人声音爆棚,后主人像没开嗓似的,会议就尴尬了。 这时候就得用“能量感知”的算法。它不只看绝对音量,还要看相对于平均音量的比例。前主人能量是 100 瓦,平均音 1 瓦,比例是 100 倍;后主人能量是 100 瓦,平均音 1 瓦,比例也是 100 倍。别看绝对值没变,但出于能量感知算法,它们占用的数据量被平均处理了,不会都全保留。
这样两人声音进人耳,前边清楚,后边也有回响,不会听成两个独白。 除了压缩,还要寻思音质。人声一般只有 10 到 15 次谐波,但信号里可能有 200 次谐波,那是噪波。压缩算法得把那些富余的谐波去掉,把空气声、呼吸声滤掉,只留人声的主体特征。 这就是为啥有扬声器和耳麦。
没有扬声器,你只能听到我们的声音,还有周围挺吵的环境音。有了它,耳机里的声音经过扬声器驱动,就能变成你能听到的立体声。 数据还在路上,最终还得回到接收端。接收端的第一任务是解包。它把 AES 解密,把 32 位的压缩打包数据,再还原成 64 字节,对应 192 位的声音信号。
然后变成 16 个个位,根据左右声道标记,送入麦克风前端的线路放大器。 放大器把微弱电流放大,变成充足的声压级,最终声音从扬声器出来。 自然,最精彩的局部还在中间。发送端和接收端之间,还有几个环节在“悄悄”工作。
比如回声消除。讲话时,你说的话会先传到麦克风里,再传到扬声器里,然后你听到扬声器里的回声。回声消除算法会实时监测,判断回声和原声哪个大,把原声局部在工夫轴上减去,要么把回声局部滤掉,保证你听到的就是“你说的话”,而不是“你说的话加回声”。 再比如降噪。背景噪音比如空调声、键盘声,也是通过麦克风采集的。降噪算法会把这些低频的噪音识别出来,滤波掉,只保留人声的频段。
这样开会人声清楚,背景宁静,大家都听得清。 有时候网络波动,数据丢包,会议就不连上了。
这时候就需求重传机制。收到一个数据包没成功,系统会立马把数据包从发送端发回来,要是重传次数多了,再让网络再发几次,直到成功。 还有遮挡检测。你在麦克风前拿手机拍照,上传视频,系统能自动识别出哪儿有人物头像,把背景里的无涉物体剔除。
这主要是为了隐私保护,防止你拍到了同事的脸。 最终,系统还得处理音频电平。
要是信号忒弱,扬声器可能听不见;忒响,耳朵会痛。系统会实时监测音量,动态调整放大倍数,保证每个人听到的声音都舒服。 总体来看,这套系统是个大工程。从采集端的降噪、压缩,到传输端的加密、纠错,再到接收端的解包、回声消除、音量平衡,每一步都在做减法。它把复杂的声学信号,通过数学和算法,变成了好办的数字流。 听起来挺复杂,实际上就是一场信息的搬运游戏。只不过,它不仅要搬运声音,还要搬运“在场”这种难以量化的东西。通过技术手段,让那些不由此可见的交流,变得由此可见、可听、可沟通。 下次开会时,不妨试试关掉耳机的降噪功能,要么把扬声器音量调低一点,在旁边人讲话时听听会形成啥。你会发现,没有那些复杂的算法,一般/平平的空气声波,本身就没有那么多“黑科技”可言。
那些算法,是为了让那原本不清楚的声波,变得像电影里的对白一样清楚。
声明:演示网站所有内容,若无特殊说明或标注,均来源于网络转载,仅供学习交流使用,禁止商用。若本站侵犯了你的权益,可联系本站删除。
