WebRTCは、JavaScript APIを使用してReal-Time Communications(RTC)機能を備えたWebブラウザを使用できるオープンソーステクノロジです。WebRTCは現在、IETFとW3Cで標準化されており、インターネットと電気通信分野で最も重要な企業の支援を受けています。WebRTCは、ブラウザがあらゆる種類のインフラストラクチャを介することなく直接通信できるピアツーピア技術として考案されました。このモデルは基本的なアプリケーションを作成するのには十分ですが、グループ通信、メディアストリームレコーディング、メディアブロードキャスト、またはメディアトランスコードなどの機能は、その上に実装するのが難しいです。このため、多くのアプリケーションでは、メディア・サーバを使用する必要があります。

Real time processin media
stream1

概念的には、WebRTCメディア・サーバは、発信元から宛先に移動するときにメディアトラフィックが通過する"マルチメディアミドルウェア"(通信中のピアの真中にあります)に過ぎません。メディア・サーバは、メディアストリームを処理し、グループ通信(複数の受信者の間で生成するメディアストリームの配信、つまりマルチ会議ユニット、MCUとして動作するメディアストリームの配信)、ミキシング(複数の入力ストリームを単一のコンポジットストリームに変換) 、トランスコーディング(互換性のないクライアント間のコーデックとフォーマットの適合)、録音(ピア間で交換されるメディアの永続的な保存)などのさまざまなタイプを提供することができます。

Real-time Processing Stream Oriented GEであるKurentoは、WebRTC対応メディア・サーバとして考えられています。Kurentoアーキテクチャの中心には、Kurento Media Server(KMS)というメディア・サーバがあります。Kurento Media Serverは、プラガブルなメディア処理機能をベースにしています。これは、提供されている機能のいずれかが、有効化または無効化できるプラガブル・モジュールであることを意味します。さらに、開発者は、動的にプラグインできる新しい機能でKurento Media Serverを拡張する追加のモジュールをシームレスに作成できます。

Kurento Media Serverは、グループ通信、ミキシング、トランスコード、録音、再生を自由に行うことができます。さらに、コンピュータ・ビジョン、拡張現実感、アルファブレンディングなどのメディア処理用の高度なモジュールも提供しています。さらに、Kurento Media Serverは、RTSPまたはHTTPプロトコルをサポートするほとんどのタイプのIPカメラからビデオストリームを受信することができます。