最新 IP 廣播编解码格式 - Opu...
 
Notifications
Clear all

最新 IP 廣播编解码格式 - Opus  

 
Mark
 Mark
(@mark)
Active Member

Opus 是一个有损声音编码的格式,由 Xiph.Org 基金会开发,之後由互联网工程任务组进行标准化,目标是希望用单一格式包含声音和语音,取代 Speex 和 Vorbis,且适用於网络上低延迟的即时声音传输,标准格式定义於 RFC 6716 档案。Opus 格式是一个开放格式,使用上没有任何专利或限制。

Opus 整合了两种声音编码的技术:以语音编码为导向的 SILK 和低延迟的 CELT。Opus 可以无缝调节高低位元速率。在编码器内部它在较低位元速率时使用线性预测编码在高位元速率时候使用变换编码(在高低位元速率交界处也使用两者结合的编码方式)。Opus 具有非常低的演算法延迟(预设为22.5 ms),非常适合用於低延迟语音通话的编码,像是网络上的即时声音串流丶即时同步声音旁白等等,此外 Opus 也可以透过降低编码位元率,达成更低的演算法延迟,最低可以到5ms。在多个听觉盲测中,Opus 都比 MP3丶AAC丶HE-AAC 等常见格式,有更低的延迟和更好的声音压缩率。

技术特性

Opus 可以处理各种音频应用,包括IP语音丶视频会议丶游戏内聊天丶串流音乐丶甚至远端现场音乐表演。它可以从低位元速率窄带语音扩展到非常高清音质的立体声音乐。支援的功能包括:

  1. 6 kb/秒到510 kb/秒的位元速率;单一频道最高256 kb/秒
  2. 取样率从8 kHz(窄频)到48 kHz(全频)
  3. 帧大小从2.5毫秒到60毫秒
  4. 支援恒定位元速率(CBR)丶受约束位元速率(CVBR)和可变位元速率(VBR)
  5. 支援语音(SILK层)和音乐(CELT层)的单独或混合模式
  6. 支援单声道和立体声;支援多达255个音轨(多数据流的帧)
  7. 可动态调节位元速率,音频频宽和帧大小
  8. 良好的鲁棒性遗失率和封包遗失隐藏(PLC)
  9. 浮点和定点实现

比较不同声音编码格式的位元率丶采样率与延迟性。

 

音质和低延迟比较

 

 

Opus 与其他流行音频格式之间的编码效率比较

Opus 在更高的位元速率下,已被证明具有优异的音质,而它的音频格式比 AAC丶HE-AAC 和Vorbis 更具有竞争力。

在 64kbit/s 的听力测试中,与 HE-AAC 编解码器相比,Opus 表现出更优异的音质,HE-AAC 由於使用了专利的频谱带复制(SBR)技术,这些编解码器在以前占主导地位。在96 kbit/s 的听力测试中,Opus 显示出比 Vorbis 略高的音质,与 AAC 和 MP3 相比音质明显更好。

Opus 具有非常低的演算法延迟,作为低音频延迟通信链路一部分的必要性,可以在现场活动中允许自然对话,网络音乐表演或对嘴表演。音频格式的总演算法延迟是无论处理速度和传输速度如编码器和实况音频流的解码器必须承担的延迟的总和,例如将音频样本缓冲到块或帧中,允许窗口重叠和可能允许对噪声整形在解码器中先行和任何其他形式的先行的,或用於将 MP3 编码器,使用的位元储存器。

150毫秒以下的单向延迟是大多数 VoIP 系统的首选目标,使自然对话与转向受到延迟的影响很小。音乐家通常会感觉到高达约30毫秒音频延迟的时间,大致符合 Haas 效果的融合时间,尽管将每个用户自己的乐器的播放延迟与往返延迟相匹配也可以有所帮助。音频/视频同步,约 45-100毫秒的音频延迟可能是可以接受的。

Opus 允许减少质素或提高位元速率以实现更小的演算法延迟(最小5.0 ms)。虽然参考实现的默认 Opus 帧为 20.0ms 长,但 SILK 层需要进一步 5.0ms 的前瞻加 1.5 ms 进行重采样,默认延迟为26.5ms。当 CELT 层处於活动状态时,默认情况下,为了与 SILK 层同步,窗口重叠需要2.5ms 的前视,其中添加了 4.0ms 的匹配延迟。如果编码器在特殊限制低延迟模式下实例化,则删除 4.0ms 匹配延迟,并禁用 SILK 层,允许 5.0ms 的最小演算法延迟。

 

 

Quote
Posted : 30/04/2020 6:33 am