2017-03-22 2 views
1

私はインターネット上でAndroid上のアプリケーションからライブビデオを録画してサーバーに送信する方法を探していましたが、私がより多くのことを研究するほど、私はより多くのことを学びます。AndroidでHTTPライブビデオストリーミングを実装する最も効率的な方法は何ですか?

まず、今後iOSでも使用できるストリーミングプロトコルを探していますので、DASH(Dynamic Adaptive Streaming over HTTP)が理想的なソリューションです。 さらに、最近のAndroidフレームワークExoPlayerは、この機能をサポートしています。 さらに、WOWZAなどのライブストリーミングエンジンは使用しません。

私の研究に基づいて、私はどんなHTTPサーバーもデータの "チャンク"を受け取ることができると結論付けましたが、ビデオをユーザーにストリーミングできるようにするにはストリーミングサーバーが必要です。 このプロセスは非常に複雑だと思いますが、正常に動作するまで私はあきらめません。

最後に、私の質問は、これを達成するためにどのサーバー、プロトコルを使用すべきですか?そして、ビデオを直接変換してサーバーに送る方法は?あなたの質問を見て

答えて

1

は、プロトコルとサーバーの再:「将来的にも、iOSのために使用することができるストリーミングプロトコル」

  • をそれはおそらくあなたが未来」で何を意味するかによって決まります。現時点では、アップルは10分以上のモバイルネットワーク(携帯電話)の動画にiOSでHLSを使用する必要があります。 DASHは業界標準としての地位を確立しているので、これは変わるかもしれません。リンゴもそれを受け入れるかもしれませんが、近い将来に何かが必要な場合は、DASHとHLSをサポートする予定です。

    • 何サーバーあなたはストリーミングに使用すべき

    ストリーミングビデオは複雑であり、本当に可能な場合は、専用のストリーミングサーバ上で使用したり、構築するために良いですので、ドメインは、急速に変化します。これらは一般的に、あなたが持っているリーチとユーザーエクスペリエンスの目標に応じて、入力ビデオをさまざまなフォーマットとビットレートに変換するための仕組みや文書化された手順を備えています。あなたが必要とするさまざまなエンコーディング、さまざまなエンコーディングをサポートするさまざまなブラウザとデバイスがReachによって決定されます。また、バッファリングを避けても良い経験をユーザに持たせたい場合、各フォーマットの複数のビットレートバージョンも必要になります.DASHとHLSでは、ストリーミング(ABR)は、クライアントがネットワーク状況に応じていつでも最高のビットレートを選択できることを意味します。ビデオ操作、特にトランスコーディングはCPUを大量に消費するため、専用のストリーミングサーバーソフトウェアのもう1つの利点は、サーバーの負荷を軽減するために可能な限り最適化することです。

    あなたはストリーミングサーバのルートを行くことに決めるならば、そのようなあなたは上記の言及オープンソースの代替だけでなく、Wowza、があります。

    は、これらの持っているプラ​​グインあなたが 'GStreamer streaming server ABR'を検索すると、これを設定する良いブログが見つかるでしょう。

関連する問題