您当前的位置: 首页 >  Java

java.lang.IllegalStateException native_dequeueOutputBuffer异常

柳鲲鹏 发布时间:2020-04-12 07:46:26 ,浏览量:0

  最近测试手机的硬件编解码,经常遇到以下错误:

/net.quantum6.codectest W/System.err: java.lang.IllegalStateException
        at android.media.MediaCodec.native_dequeueInputBuffer(Native Method)
        at android.media.MediaCodec.dequeueInputBuffer(MediaCodec.java:2726)
        at net.quantum6.mediacodec.AndroidVideoCodec.process(AndroidVideoCodec.java:116)
        at net.quantum6.codectest.AbstractCodecHelper.processData(AbstractCodecHelper.java:146)
        at net.quantum6.codectest.AbstractCameraHelper.onPreviewFrame(AbstractCameraHelper.java:167)
        at android.hardware.Camera$EventHandler.handleMessage(Camera.java:1288)
        at android.os.Handler.dispatchMessage(Handler.java:107)
        at android.os.Looper.loop(Looper.java:213)
        at android.app.ActivityThread.main(ActivityThread.java:8147)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101)
net.quantum6.codectest W/System.err: java.lang.IllegalStateException
        at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
        at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:2789)
        at net.quantum6.mediacodec.AndroidVideoCodec.process(AndroidVideoCodec.java:142)
        at net.quantum6.codectest.AbstractCodecHelper.processData(AbstractCodecHelper.java:146)
        at net.quantum6.codectest.AbstractCameraHelper.onPreviewFrame(AbstractCameraHelper.java:167)
        at android.hardware.Camera$EventHandler.handleMessage(Camera.java:1288)
        at android.os.Handler.dispatchMessage(Handler.java:107)
        at android.os.Looper.loop(Looper.java:213)
        at android.app.ActivityThread.main(ActivityThread.java:8147)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101)

  具体代码可以看:https://github.com/quantum6/Android-CodecTest

  有时有,有时没有,是解码器产生的。什么原因吾亦搞不清楚。于是吾在收到异常时返回-1,由上层释放解码器,再重新初始化。

关注
打赏
1688896170
查看更多评论

柳鲲鹏

暂无认证

  • 0浏览

    0关注

    4641博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0495s