SIP - 编解码器
编解码器是编码器-解码器的缩写,它执行两个基本操作 −
首先,它将模拟语音信号转换为等效的数字形式,以便轻松传输。
此后,它将压缩的数字信号转换回其原始模拟形式,以便可以重播。
市场上有许多编解码器 - 有些是免费的,而另一些则需要许可。 编解码器的音质不同,带宽也相应不同。
电话和网关等硬件设备支持多种不同的编解码器。 在相互交谈时,他们协商将使用哪个编解码器。
在本章中,我们将讨论一些广泛使用的流行 SIP 音频编解码器。
G.711
G.711 是 ITU 于 1972 年推出的用于数字电话的编解码器。 该编解码器有两种变体:A-Law 用于欧洲和国际电话链路,uLaw 用于美国和日本。
G.711 使用对数压缩。 它将每个 16 位样本压缩为 8 位,从而实现 1:2 的压缩比。
单向比特率为 64 kbit/s,因此一次呼叫消耗 128 kbit/s。
G.711 与 PSTN 网络使用的编解码器相同,因此它提供最佳的语音质量。 然而,它比其他编解码器消耗更多的带宽。
它在有大量可用带宽的局域网中效果最佳。
G.729
G.729是一种带宽要求较低的编解码器; 它提供良好的音频质量。
编解码器以 10 毫秒长的帧对音频进行编码。 假设采样频率为 8 kHz,则 10 ms 帧包含 80 个音频样本。
编解码器算法将每一帧编码为 10 个字节,因此单向比特率为 8 kbit/s。
G.729 是经过许可的编解码器。 想要使用此编解码器的最终用户应该购买实现它的硬件(无论是 VoIP 电话还是网关)。
G.729 的一个常用变体是 G.729a。 它与原始编解码器有线兼容,但对 CPU 要求较低。
G.723.1
G.723.1 是 ITU 宣布的一项竞赛的结果,其目的是设计一种允许在 28.8 和 33 kbit/s 调制解调器链路上进行呼叫的编解码器。
我们有 G.723.1 的两个变体。 它们都在 30 毫秒的音频帧(即 240 个样本)上运行,但算法不同。
第一个变体的比特率为 6.4 kbit/s,而第二个变体的比特率为 5.3 kbit/s。
这两个变体的编码帧长度分别为 24 和 20 字节。
GSM 06.10
GSM 06.10 是专为 GSM 移动网络设计的编解码器。 它也称为 GSM 全速率。
这种 GSM 编解码器的变体可以自由使用,因此您经常会在开源 VoIP 应用程序中找到它。
编解码器对 20 毫秒长的音频帧(即 160 个样本)进行操作,并将每个帧压缩为 33 字节,因此最终的比特率为 13 kbit/s。