2

bigflakeの次のリンクで説明されている4.3でH264エンコーダーを使用してMedia Codec APIのサンプルコードを実行しようとしています

http://bigflake.com/mediacodec/CameraToMpegTest.java.txt

次の問題に直面しました。-> H264 エンコーダ コードでは、getpatameter の実装に問題があるため、カラー フォーマット、高さ、および幅が更新されません。そこで、このパッチを適用しました ( https://code.google.com/p/android/issues/detail?id=58834 )。-> パッチを適用した後、エンコーダーもエンコードしません -> D/CameraToMpegTest( 3421): エンコーダーの出力形式が変更されました: {csd-1=java.nio.ByteArrayBuffer[position=0,limit=8 、容量=8]、高さ=144、mime=ビデオ/avc、csd-0=java.nio.ByteArrayBuffer[位置=0、制限=12、容量=12]、何=1869968451、幅=176}

なぜこの値が変更されるのか、わかりません...その後、エンコーダーが queueOutputBuffer のステータスを INFO_TRY_AGAIN_LATER として与えるのを常に確認します。したがって、ファイルを作成しますが、何もエンコードせず、次のように停止します

I/MPEG4Writer( 3421): 合計/長さ 0 (0/0) のバッファーを受信し、0 フレームをエンコードしました。- ビデオ

D/MPEG4Writer( 3421): ビデオ トラックを停止しています

D/MPEG4Writer( 3421): ビデオトラックソースを停止しています

D/MPEG4Writer( 3421): ビデオ トラックが停止しました

D/MPEG4Writer( 3421): ライター スレッドを停止しています

D/MPEG4Writer( 3421): 最後のバッチで 0 チャンクが書き込まれました

D/MPEG4Writer( 3421): ライター スレッドが停止しました

したがって、私の理解では動作するはずですが、エンコーダがまだ正しく構成されていないようです...

これについてガイドしてください...ありがとう

ネハル

4

3 に答える 3