弱いネットワークでのオーディオとビデオの問題に対して、音声ネットワーク正式にオープンソースのアンチ損失オーディオコーデックアゴラSOLO!

オリジナルリンク: https://bss.csdn.net/m/topic/dev_survey2019?source_id=zx

640?wx_fmt = GIF

640?wx_fmt = JPEG

近年では、より多くの火災シナリオので、いくつかのカテゴリがあります。
  • ゲームなど多人数参加型オンライン戦争ゲーム、狼男と殺す、マルチチームとしても、リアルタイムの音声を必要とします。

  • インタラクティブライブなど観客とアンカーさえ小麦、間、ライブでも小麦全体でアンカーや他のアンカーとして、リアルタイムの相互作用を必要とします。

  • オンライン教育現在のインタラクティブなオンライン教育で、シーンの多くのセグメント、以上の2分割のための1組1,1、および他の問題は、リアルタイムを解決するために、まだ最も困難であり、つまり、教師はより良い対話する方法を学生に語りました。

これらのリアルタイムのインタラクティブなシナリオは、現在のネットワーク環境では、技術に高い要件、両方の低遅延を提唱するだけでなく、高品質のオーディオおよびビデオの相互作用を達成します。キャリアは、時間情報パケットに到着しない場合は、パケットロスが発生していること、それは断続音を持つことになり、音質が低く、リアルタイムの相互作用の品質に直接影響。しかし、従来の抗ロス戦略は、音声品質に影響を与えることができ、帯域幅の無駄ではありません。このジレンマの下、音響ネットワークのAgのORAはLaid-ソース符号化とチャネル合わせ、ポイント、ネットワークの特性のパケット交換フル使用を開発し、新しいネットワークの音声コーデック リアルタイムにインターネットの10月24日、RTC 2019第五会議 の特別なコーデック技術で、サウンドテクノロジーVPネットワークアゴラ高Zehua問い合わせ抗パケット損失のオーディオコーデック--Agora SOLOから正式に発表された、オープンソース・オーディオ・ネットワーク!

640?wx_fmt = PNG
何アゴラSOLOこと?

アゴラSOLO(以下、「SOLO」と呼ぶ)は、ネットワークの不安定性のために設計された音正味アゴラ自己開発したオーディオコーデックでは、それが絹に基づくものである等、帯域幅拡張(BWE)と多重記述符号化(MDC)を、組み合わせ下のネットワークの複雑で戦うために弱い能力を持っていることを可能にする技術。WebRTCと互換性のSOLOコーデックは、製品ののWebRTCベースの独立した研究開発に統合することができます。
640?wx_fmt = PNG
エンコーダアーキテクチャ図1. SOLO
640?wx_fmt = PNG
図2 SOLOデコーダアーキテクチャ。
従来の方法とは異なり、SOLO落下防止ポリシー。原則からの通信は、ソース符号化は、高圧縮率、冗長性の排除を追求することが可能です。チャンネルは、達成するための冗長性を追加することで、強力な誤り訂正符号化、誤り訂正の追求です。アゴラSOLO™は、冗長性を追加し、冗長性の重要でない場所で、重要な場所に加えて、冗長性を減らす組み合わせ冗長性を削減することです。
送信中に、ピアは、デコーダの限られた歪みを回復するために信号を受信した場合、二つにパケット送信されたスプリットを送信し、あなたが両端にある2つのパッケージを受信した場合に回復するために復号化することができます高品質の信号。それSOLOはにのみ、直接、ネットワークパケットロスの現在の状態に関する統計を待つ必要がない 抗損失内部コーデックをします。 3つの利点があります。
  • 低遅延を実現することができます。

  • 共通コーデックの品質レベルに到達するためにパケットを受信し、二つの高品質のコーデックレベルを達成するために、パケットを受信し、より高い品質を可能にします。

  • 環境以上に直面する可能性があります。


640?wx_fmt = PNG
SOLOキーテクノロジー

帯域幅の拡大
SOLO 使用带宽扩展的主要原因是希望减少计算复杂度,在 Silk WB 模式中,16khz 的信号都会进入后续处理模块,而对于语音来说,8khz 以上的信息是非常少的,这部分信息进入到后续处理模块,会带来一定的计算资源浪费。MDC 因为要引入额外分析模块处理多条码流,又会引入额外的复杂度,这是 MDC 在近些年来落地不顺畅的重要原因之一。为了减少复杂度,我们在编码宽带信号前,将其分为 0-8k 的窄带信息和 8-16k 的高频信息。只有窄带信息会进入到后续正常分析、编码流程中,这样后续的计算量就减少了一半,同时得益于带宽扩展算法,整体质量不会有明显下降。高频信息部分,SOLO 使用独立的分析与编码模块,默认将高频信息压缩成1.6kbps 的码流。这部分高频信息可以在解码器内结合低频信号恢复出高频信号。
结合delay-decision 的 MDC
在 Silk 中,delay-decision 模块是一个滞后计算编码误差的模块,它可以从多个候选码流中选择误差最小的码流作为编码输出,一定程度上来说,它使得标量量化拥有了矢量量化的性能。SOLO 利用delay-decision 模块,实现了多描述码流的分析与构建。SOLO 的MDC主要作用于滤波器输出的残差信号, SOLO 会根据当前信号状态,对残差信号做多增益控制:计算出 MD 增益 a(0<a<1),将 a 作用于奇数子帧,并将(1-a)作用于偶数子帧以产生两段互补的残差信号,这里记作residual 1 和residual 2。
640?wx_fmt = PNG
图 3. 多描述残差信号产生
随后,这两段残差信号会进入到新的delay-decision 模块中,每个残差信号使用不同的抖动和量化方法,一共可以产生 8 种不同的备选状态,两两组合起来共有 64 种备选合成状态,新的delay-decision 模块会对每个残差信号的独立误差和两个残差信号的合成误差进行加权求和,决定出最佳的两个残差信号进入到编码模块。
输出码流组包
640?wx_fmt = PNG
图 4. 编码器码流整合及组包
各40msの入力(2つのフレーム)のためのSOLOのデフォルト設定は、二つの相補的な多重記述ビットストリームの出力は、デコーダは40msでのデコードされた信号に、コードストリームのいずれかの期間を受け取ります。第四次ビットストリームのバイトコードストリーム右区別するために受信側シーケンシャルコードストリームを容易にするために、ビットフラグであり、ストリームフラグの最初のセグメントの値は、第二セグメントストリームフラグ、0であります値は1です。受信側ストリーム処理が実行されると、それによって順序フラグビットストリームが決定される追従します。
:統合されたアプローチは以下のアドレスで詳述のGithubで書かれていhttps://github.com/AgoraIO-Community/Solo、スターへようこそ。
【終わり】

640?wx_fmt = JPEG

 感熱紙  を推奨 

あなたは、いくつかを知って、HyperledgerファミリーメンバースーパーブックDLT、ライブラリ、開発ツールの記事?

640?wx_fmt = GIFギフトはノンストップを送信するために、オリジナルの参加アンケートを読むにはこちらをクリック!

640?wx_fmt = PNG
それぞれ「見た目」のあなたのポイント、私は真剣に好きなように

おすすめ

転載: blog.csdn.net/csdnnews/article/details/102752209