OMXCodec
を通じて使用しようとしていますStagefright
。ICS
Android のバージョンのコードを実装しましCustomDataSource
た。派生する 2 つのクラスと、メソッドを呼び出して読み取り操作を実行して h264 フレームをデコードするクラスMediaSource
があります。ソフトウェア デコーダーを搭載したデバイスでこの実装をテストしたところ、正常に動作しました。ここで、ハードウェア h264 デコードを使用して Android フォンで同じ実装を実行しようとすると、読み取り呼び出しでエラーが返されます。エラーは次のとおりです。CustomOmxCodec
OMXCodec::Create
omx.google.video.avc
[OMX.MTK.VIDEO.DECODER.AVC] ERROR (0x80001005, 0)
0x80001005
ですOMX_ErrorBadParameter
。-1103
読み取り操作でエラーコードを取得します。さまざまなパラメーターを試しましたが、成功しませんでした。
完全なログは次のとおりです。
[OMX.MTK.VIDEO.DECODER.AVC] mVideoInputErrorRate (0.000000)
!@@!>>create tid (21087) O<XCodec mOMXLivesLocally=0, mIsVideoDecoder (1), mIsVideoEncoder (0), mime(video/avc)
[OMX.MTK.VIDEO.DECODER.AVC] video dimensions are 640X480
mSupportesPartialFrames 1 err 0
[OMX.MTK.VIDEO.DECODER.AVC] allocating 10 buffers of size 65536 on input port.
[OMX.MTK.VIDEO.DECODER.AVC] mMemHeapBase = 0x00E8C288, mOutputBufferPoolMemBase=0x51F8E000, size = 9578848
[OMX.MTK.VIDEO.DECODER.AVC] ERROR (0x80001005, 0)
OMXCodec::onEvent--OMX Bad Parameter!!
Read Error : -1103
これに関する方向性に感謝します。