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 回答