0

新しい API MediaCodec と MediaExtractor (API 16 から利用可能) を使用して、Android ビデオ プレーヤー アプリを構築しています。通常は問題なく動作しますが、非常に意味のないメッセージでクラッシュすることがあります。

09-30 16:39:13.985: A/MediaCodec(6508): frameworks/av/media/libstagefright/MediaCodec.cpp:423 CHECK(buffer->meta()->findInt64("timeUs", &timeUs)) failed.
09-30 16:39:13.985: A/libc(6508): Fatal signal 11 (SIGSEGV) at 0xdeadbaad (code=1), thread 12769 (MediaCodec_loop)

誰かが何がうまくいかなかったのかをよりよく理解してくれたらいいのにと思います。クラッシュは通常、ビデオを開いて少し再生し、終了して別のビデオに移動すると発生します。非常に短い時間しか発生しませんが、非常に迷惑です。

4

1 に答える 1

1

私は最終的に解決策を見つけます。同じ問題を見つけた人が修正できるように、ここで回答します。

メディアコーデックがファイルの終わり近くで再生するとき、それ以上の入力バッファーを inputQueue にキューイングしないため、バッファーをデキューする必要があるときに、再生するバッファーを見つけることができません。

于 2013-10-09T00:51:45.640 に答える