教室環境で使用するインタラクティブな言語学習アプリケーションを構築しています。アイデアは、教師が生徒と話すことができる (= オーディオ ストリームをすべての生徒に)、生徒が 2 人以上のグループで互いに話せるようにする (= オーディオ P2P)、生徒がビデオを視聴できるようにすることです。 DVDプレーヤーまたはメディアサーバーからのもの。オーディオ/ビデオ ストリームを保存できるはずです。教師は、生徒のデスクトップを監視、乗っ取り、またはブロックすることもできます。プラットフォームは Windows で、デスクトップ アプリケーションであり、Web アプリケーションではありません。オーディオの遅延は可能な限り最小限に抑える必要があります。必要に応じて、自宅に座っている学生をサポートする必要がありますが、優先度は高くありません。
これで、アプリケーションの教室制御部分 (ログイン、モニター、ブロックなど) が完了し、音声とビデオの部分を開始したいと考えています。DirectX、GStreamer、SIP などのいくつかのオプションを評価してきましたが、今は決断を迫られています。
Windows プラットフォームでは DirectX が当然の選択肢のように思えますが、オーディオとビデオのキャプチャと再生しかできません。エンコード/デコード/ネットワークの部分は自分で行う必要があります。
GStreamer には、オーディオおよびビデオ ストリームをキャプチャ/エンコード/ストリーミング/保存するためのあらゆる種類のオプションが含まれています。私はそれを少し試しました (ossbuild) が、何かを機能させるには多くの試行錯誤が必要なようです:ネットワークを介した生のオーディオのストリーミングは、サンプリングレート8000でのみ動作し、それ以上ではありません-mpeg4ビデオ(不良Iフレーム)を受信すると、多くのエラーが発生します.一部のコンピューターでは、他のコンピューターよりも悪いです.gstreamerが主にターゲットにされているという私の印象ですLinux プラットフォームで。Windows プラットフォームの開発とサポートは少し遅れているようです。それでも、これは強力なフレームワークであり、何ヶ月も何年もかかる作業を節約できます。
SIP は私が望むすべてのことを実行できるように見えますが、テレフォニーと IM をターゲットにしています。SIP がどれほど柔軟かはわかりません。すべてのストリームを制御およびセットアップできる中央 (教師) アプリケーションが既にあるため、SIP レイヤーは単にオーバーヘッドになるように思えます。opalvoip や freeswitch などのフレームワークの興味深い部分は、実際のオーディオ/ビデオのキャプチャ、エンコード、および送信です。これらの興味深い部分が gstreamer のようなフレームワークにどのように関連しているか知っている人はいますか? カスタムアプリケーションに簡単に統合できますか? それらは十分に柔軟ですか?
これらのテクノロジのすべてまたは 1 つを使用した経験のある人はいますか? 多分私が見ることができる他のオプションさえありますか?
アドバイスありがとうございます