OMX.ffmpeg.h264.decoder和MediaCodec相关的错误

时间:2014-06-17 01:47:04

标签: android genymotion mediacodec

应用流传输H.264视频,可在许多设备和模拟器上正常运行。但是,在Genymotion Android 4.4.2模拟器(Google Nexus 7 2013)上,以下代码始终会导致应用崩溃:

try
{
    myMediaCodec .configure(myMediaFormat, mySurface, null, 0);
}
catch(Exception ex)
{
    //no exception has ever been caught here
}

try-catch块无法捕获错误。以下是LogCat崩溃产生的内容:

06-16 23:06:22.749: E/ACodec(4535): [OMX.ffmpeg.h264.decoder] storeMetaDataInBuffers failed w/ err -2147483648
06-16 23:06:22.769: A/ACodec(4535): frameworks/av/media/libstagefright/ACodec.cpp:3813 CHECK_EQ( (status_t)OK,mCodec->initNativeWindow()) failed: 0 vs. -2147483648
06-16 23:06:22.769: A/libc(4535): Fatal signal 4 (SIGILL) at 0xb77b763d (code=2), thread 4608 (CodecLooper)

如果我知道这只能在模拟器上发生,我不会担心。由于我无法测试Android的每个型号,我担心这可能会发生在其他一些设备上。我想知道是否有人可以提供一些提示,如何防止或捕获这些,以避免崩溃的应用程序。我对上面的LogCat消息了解甚少。

1 个答案:

答案 0 :(得分:0)

评论

// videoFormat.setInteger("max-input-size", this.mWidth*this.mWidth);