java.lang.IllegalStateException native_dequeueOutputBuffer异常

简介: java.lang.IllegalStateException native_dequeueOutputBuffer异常

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

/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,由上层释放解码器,再重新初始化。

目录
相关文章
|
API
JDK8函数式接口之BiConsumer
JDK8函数式接口之BiConsumer
249 0
|
存储 程序员 BI
NumPy 1.26 中文官方指南(一)(1)
NumPy 1.26 中文官方指南(一)
181 1
|
数据采集 存储 分布式计算
构建智能数据湖:DataWorks助力企业实现数据驱动转型
【8月更文第25天】本文将详细介绍如何利用阿里巴巴云的DataWorks平台构建一个智能、灵活、可扩展的数据湖存储体系,以帮助企业实现数据驱动的业务转型。我们将通过具体的案例和技术实践来展示DataWorks如何集成各种数据源,并通过数据湖进行高级分析和挖掘,最终基于数据洞察驱动业务增长和创新。
607 53
基于GA-PSO遗传粒子群混合优化算法的CVRP问题求解matlab仿真
本文介绍了一种基于GA-PSO混合优化算法求解带容量限制的车辆路径问题(CVRP)的方法。在MATLAB2022a环境下运行,通过遗传算法的全局搜索与粒子群算法的局部优化能力互补,高效寻找最优解。程序采用自然数编码策略,通过选择、交叉、变异操作及粒子速度和位置更新,不断迭代直至满足终止条件,旨在最小化总行驶距离的同时满足客户需求和车辆载重限制。
SeLinux 权限配置技巧
SeLinux 权限配置技巧
345 2
|
Android开发
Android 高通平台集成无源码apk示例
Android 高通平台集成无源码apk示例
218 0
|
编解码 移动开发 算法
分享177个安卓游戏源码,总有一款适合你
分享177个安卓游戏源码,总有一款适合你
1478 0
|
关系型数据库 MySQL 数据库
Host 'XXX' is not allowed to connect to this MySQL server 解决方案
Host 'XXX' is not allowed to connect to this MySQL server 解决方案
416 0