OpenMAX を使用せずに、 Raspberry Pi でビデオを直接デコードする例を探しています。
これは、マルチメディア ソフトウェアのさまざまなレイヤーについて説明しています。
ここには示されていない追加のレイヤーがあります。これは、OpenMAX の Broadcom ラッパーである (私が信じている) " MMAL " レイヤーです。(そうでない場合は、カーネル ドライバーの上にある OpenMAX の代替になります) たとえば、raspivid と raspistill は MMAL を使用して記述されます。
入力が生のH.264で、出力がメモリ内のビデオまたは画面上のビデオのいずれかであるビデオデコードの例が必要です。OpenMAXを使用せずに、VCHIQを直接使用してこれを行いたいです。(主にパフォーマンスと柔軟性の理由から)
この github リポジトリ: https://github.com/raspberrypi/userland/には、上記のすべてのソース (オレンジと緑のボックス、VCHIQ 自体のソース、VCHIQ 上の OpenMAX IL 実装、OpenGL および EGL 実装、. ..)。したがって、理論的には、始めるのに十分なはずです。問題は、OpenMAX や一般的なマルチメディア フレームワークに精通している場合でも、その使用方法が非常にわかりにくいことです。
例: vchiq_bulk_transmit () は、ビデオをデコーダーに送信するために使用する関数のようです。しかし、 type の最初の引数を初期化する方法はVCHIQ_SERVICE_HANDLE_T
? フレームバッファ、結果ハンドル、または...?
EDIT報奨金は、vchiq を使用したビデオ デコードの実例、呼び出しシーケンスを示す API ウォークスルー (実例ではありませんが)、またはこれを書くのに十分なドキュメントへのポインタを提供することによって収集できます。実際の例では、多額の追加の報奨金が得られます:)