WebRTC-リアルタイム通信の革命

著者: Roger Morrison
作成日: 20 9月 2021
更新日: 21 六月 2024
Anonim
AllThingsRTC 2019-WebRTC and Go:サブセカンドで安全なP2PRTCを構築するための完璧な一致
ビデオ: AllThingsRTC 2019-WebRTC and Go:サブセカンドで安全なP2PRTCを構築するための完璧な一致

コンテンツ


ソース:Andreypopov / Dreamstime.com

取り除く:

WebRTCは、無料のオープンソース技術に依存する新しいブラウザベースのコミュニケーションツールです。

今日のWebベースの世界では、新しい技術がかなり長い間脚光を浴びています。この新しいテクノロジーの名前はWebRTCで、Webベースのリアルタイム通信の略です。これは、Googleが開発した新しいオープンソースプロジェクトです。名前が示唆するように、それはどんな種類のタイムラグもなしでリアルタイムベースで新しいレベルの柔軟なコミュニケーションを提供します。そして、これはすべて標準のWebブラウザーを使用して行われます。このリアルタイム通信サービスを作成するには、単純なHTML5およびJavaScriptプログラムの助けが必要です。何よりも、ユーザーはさまざまな種類のアプリケーションをダウンロードして実行するという面倒な作業を行う必要がありません。これは、この技術が動作するために必要なのはブラウザのみだからです。 WebRTCの主な使命は、ブラウザで豊富な機能を備えたアプリケーションの標準化を作成することです。このGoogleイニシアチブは、他の多くの組織にもこの種の製品を構築するよう促しました。

よく見る

WebRTCは、ブラウザでのリアルタイムの通信プロセスを促進するWebテクノロジーのオープンソースフレームワークです。これには、Webブラウザーを介した優れたリアルタイム通信を作成するための非常に基本的な構成要素の一部が含まれています。これらのブロックは、オーディオ、ビデオ、ビデオチャット、およびネットワーキングのコンポーネントです。開発者は、ブラウザで使用されている場合、JavaScript APIを使用して簡単にアクセスできます。これにより、開発者はリアルタイムの連絡プロセス用に独自のWebアプリを作成できます。 2つの異なるレベルで標準化されています。 APIレベルでは、W3Cによって標準化されますが、プロトコルレベルでは、IETFによって標準化されます。 (オープンソースの詳細については、「オープンソース:実現するのは良いことですか?」を参照してください。)


WebRTCを使用する理由

現在、非常に多くのさまざまな通信技術が利用可能であるため、アプリケーションベースのビデオチャット通信にこの特定の技術を選択する必要があると考える必要があります。さて、ここにいくつかの理由があります:

  • このフレームワークは、HTML、TCP / IPプロトコル、ハイパー転送プロトコルなど、すべてのオープンで無料のインターネットテクノロジーを使用します。これは、ブラウザを可能な限り安価な方法で通信マシンに変える完全なパッケージです。
  • さまざまな種類のプロキシをサポートし、NATのような抽象キーを持っています。また、ICE、TURN、STUN、およびRTP-over-TCPを介した最新のファイアウォールテクノロジーも使用します。
  • 音声およびビデオ品質を処理するための最高のエンジンと統合されており、多くの異なるエンドポイントに展開されています。
  • このフレームワークのユニークなシグナル伝達プロセスは、特別でユニークなシグナル伝達マシンによるものです。このマシンは、ピアツーピア接続に直接マッピングされる状態マシンです。それはブラウザの強さを構築します。開発者は、状況に応じて任意のプロトコルを選択できます。

コーデック

このテクノロジーにとって非常に重要なコーデックはほとんどありません。

  • Opusオーディオコーデック:これはロイヤリティフリーのコーデックです。定数および可変タイプの両方のビットレートエンコーディングテクニックをサポートしています。また、8 kHz〜48 kHzのサンプリングレートもサポートしています。
  • iSACオーディオコーデック:これは、Voice over IPおよびオーディオストリーミング機能を使用するさまざまな種類のアプリケーションで使用される、適応性のある堅牢な手法です。
  • iLBCオーディオコーデック:これは、さまざまなプラットフォームで使用されるオーディオコーデックでもあります。ナローバンド技術を使用し、このコーデックの最新バージョンにはプロファイルドラフト機能があります。
  • VP8:これは、さまざまな種類のプラットフォームで使用される非常に効率的なビデオコーデックです。画像のサイズではなくサイズを縮小することが知られている独自の圧縮技術を使用します。 On2テクノロジーによって開発されていますが、On2はGoogleの一部であるため、このフレームワークは無料でコーデックを使用します。

WebRTCパッケージのコンポーネント

WebRTCパッケージ全体を構成するさまざまなコンポーネントがあります。主要なコンポーネントを説明とともに以下に示します。


  • オーディオ:このフレームワークは、通信プロセスで完璧なサウンドを提供する機能の完全なセットを提供します。さまざまなコーデックとオーディオコンポーネントがあり、サウンドの豊かな体験を向上させます。また、音響ベースのエコーキャンセル技術を使用して、エコーを低減するソフトウェアベースの機能も備えています。このフレームワークは、ノイズの抑制とその低減、自動利得制御、さまざまなタイプのプラットフォームでのハードウェアアクセスの制御にも機能します。
  • ビデオ:導入される最新のビデオコーデックであるため、ビデオにVP8を使用します。ビデオコンポーネントにこのコーデックを使用すると、このフレームワークはあらゆる種類のパケット損失を修正できます。さらに、フレームワークは、すべての種類のぼやけた、焦点の合っていない、ノイズの多い画像をクリーンアップでき、さまざまな種類のプラットフォームで再生をキャプチャおよび実行する機能も備えています。
  • ネットワーク:前述のように、このフレームワークは、異なるテクノロジーを使用した安全なピアツーピア接続で動作します。また、これには、信頼性の低いネットワーク上で動作して安定させる動的ジッタバッファとエラー修正技術があります。これらの技術を組み合わせることにより、フレームワークがあらゆる種類のプラットフォームを同じ品質で利用し、ネットワーク内のパケット損失を隠してビデオとオーディオの品質を向上させることができます。

WebRTCの事実

このフレームワークのコードには、こちらのサイトからアクセスできます。 WebRTCのプラットフォームに独自のレンダラーファイルとさまざまなタイプのフックを実装することもできます。 WebRTCのファイルをレンダリングするのに十分なプログラミングスキルがあれば、独自のソフトウェアアプリケーションを作成でき、コードを提供してこの技術の将来に貢献することもできます。 JavaScript APIといくつかのWeb開発スキルを知っていれば十分です。このフレームワークはOperaとMozillaでもサポートされています。ただし、NetEQ、AEC、音声、ビデオエンジンなどのコンポーネントの一部は、GoogleによるGIPS(Global IP Solutions)の買収によるものです。

このフレームワークはまだ開発期間を経ているAPIに基づいているため、コンポーネントは常に変更される可能性があります。いくつかのブラウザベンダーがテストとして実装を開始した場合にのみ、安定させることができます。 APIの安定性が維持されると、互換性や効率の向上など、さまざまな種類のバックエンドタスクが発生します。この後、開発者は、プレゼンテーション、機能、および品質を改善するためのレイヤー構造についても考えています。 (インターネットを介して通信する別の方法については、「IRCを覚えていますか?その周辺-まだ使用する価値がある」を参照してください。)

結論

WebRTCフレームワークは無料で、非常に効率的です。さまざまな種類のコーデックと堅牢な技術を使用して、リアルタイム通信をスムーズ、シンプル、安価にします。今後、リアルタイム通信の世界に大きな影響を与えることは間違いありません。

バグやストレスなし-あなたの人生を破壊することなく人生を変えるソフトウェアを作成するためのステップバイステップガイド

誰もソフトウェアの品質を気にしない場合、プログラミングスキルを向上させることはできません。