2

Androidデバイスのフロントカメラからローカルサーバーへのビデオストリーミングでいくつかの実験を行っています。現在、WiFiを使用する予定です。将来的にはBluetooth4.0に移行する可能性があります。

プロトコルオプション(TCP、UDP、...?)およびビデオコーデックに関連して考慮すべき洞察、経験、およびすべきこととすべきでないこと、およびその他のアイデアを探しています。画質は、サーバー側で顔や物体の検出、認識、追跡などのコンピュータービジョンアルゴリズムを実行するのに十分な品質である必要があります。最大の関心事は力です。ストリーミングが可能な限り電力効率が高いことを確認したいと思います。電力効率が高いほどフレームレートが低くなることを理解しています。

また、ビデオフレームを画面に直接表示せずに送信する方法も必要です。

ありがとう。

4

1 に答える 1

2

デバイスでエンコードまたはデコードを行うかどうかについては言及していません。

いくつかのヒント: UDP は一般に、特にネットワークの状態が悪化している場合に消費電力が少なくなりますこれはグーグルで

一般的なコーデックに関しては、エンコードとデコードの両方に必要な電力に関して、H264 > MPEG4 > H.263 の順序であると言えます。

ビットレートが高いほどデコードに必要な電力は大きくなりますが、コーデックの違いはビットレートよりも大きな違いです。H.263 で H.264 ストリームと同じ品質を得るには、より高いビットレートが必要なためです。ただし、そのビットレートでの h.263 は、低いビットレートでの H.264 よりも消費電力が少なくなります。したがって、クロスコーデックを適用しないでください。選択したコーデックで、可能な限り低いビットレート/フレームレートを使用してください。

エンコードでは、ビットレートが非常に低いと、エンコーダーの動作が難しくなるため、消費電力が増加します。したがって、エンコードのビットレートは低くする必要がありますが、エンコーダーがストレッチされるほど低くはなりません。これは、連続的なブロック状のストリームを生成せず、適切なストリーム出力を提供する妥当なビットレートを選択することを意味します。

各コーデック内で、エンコードを制御できる場合は、デコード能力も制御できます。以下は両方に適用されます。つまり、デブロッキング、B ピクチャは電力要件に追加されます。低いプロファイル [H.264 のベースライン、MPEG4 のシンプル プロファイル、H.263 のベースライン] を維持すると、エンコードとデコードの電力要件が低くなります。MPEG4 では、可能であれば 4MV サポートをオフにします。ストリームのデコードがさらに簡単になります。これらのそれぞれにも品質への影響があることを忘れないでください。許容できる品質を見つける必要があります。

また、消費電力を実際に測定できない限り、ツールセットを微調整する必要があるかどうかもわかりません。低いプロファイルに固執するだけで十分です。

キャプチャ中のビデオ品質が低下すると、エンコード中に必要な電力が増えます。そのため、明るいビデオはエンコードに必要な労力が少なくて済み、暗いビデオはより多くの電力を必要とします。

ビデオを画面に送信する必要はありません。ソケットを介してビデオを受信し、そのデータでやりたいことを何でもします。あれは君次第だ。デコードして表示する必要はありません。

編集:考えられることをさらにいくつか追加します

一般に、コーデックとそのプロファイルの選択は、ビデオ エンコーディング/デコーディング システムの消費電力に最も影響を与えるものです。

最大の違いは、デバイスの構成にある可能性があります。デバイスに特定のコーデック用のハードウェア アクセラレータがある場合は、別のコーデック用のソフトウェア コーデックよりもそれらを使用する方が安価な場合があります。そのため、H.264 は両方がソフトウェアにある場合は MPEG4 よりも多くの電力を必要とする場合がありますが、デバイスのハードウェアに H.264 がある場合、ソフトウェアの MPEG4 よりも安価になる可能性があります。したがって、デバイスのハードウェア機能を確認してください。

また、ビデオの解像度も重要です。ビデオが小さいほど、エンコードのコストが低くなります。解像度が低い場合は、デバイスを低速でクロックできます。

于 2012-08-28T19:44:29.747 に答える