首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android MediaMuxer非法状态异常未能阻止muxer mMediaMuxer.stop()

Android MediaMuxer非法状态异常未能阻止muxer mMediaMuxer.stop()
EN

Stack Overflow用户
提问于 2013-10-01 00:17:49
回答 1查看 3.9K关注 0票数 2

我在停止MediaMuxer时遇到了问题。

几乎所有的方式都跟随法登的例子,除了我正在使用音频,所以我不是100%确定音频和视频轨道已经排好。这可能就是问题所在。

当我到达mMediaMuxer.stop()的断点时,我得到了一个致命的错误:

代码语言:javascript
运行
复制
09-30 17:11:21.677: E/AndroidRuntime(32304): FATAL EXCEPTION: CaptureManager
09-30 17:11:21.677: E/AndroidRuntime(32304): java.lang.IllegalStateException: Failed to stop the muxer
09-30 17:11:21.677: E/AndroidRuntime(32304):    at android.media.MediaMuxer.nativeStop(Native Method)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at android.media.MediaMuxer.stop(MediaMuxer.java:190)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at com.harmonicprocesses.penelopefree.camera.MyMediaMux.stop(MyMediaMux.java:97)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at com.harmonicprocesses.penelopefree.camera.CaptureManager.stopMuxer(CaptureManager.java:86)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at com.harmonicprocesses.penelopefree.camera.MyMediaCodec.stop(MyMediaCodec.java:209)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at com.harmonicprocesses.penelopefree.camera.MyMediaCodec.checkEOS(MyMediaCodec.java:190)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at com.harmonicprocesses.penelopefree.camera.MyMediaCodec.runQue(MyMediaCodec.java:177)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at com.harmonicprocesses.penelopefree.camera.MyMediaCodec.runQue(MyMediaCodec.java:182)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at com.harmonicprocesses.penelopefree.camera.MyMediaCodec.sendEOS(MyMediaCodec.java:199)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at com.harmonicprocesses.penelopefree.camera.CaptureManager$2.run(CaptureManager.java:94)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at android.os.Handler.handleCallback(Handler.java:730)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at android.os.Handler.dispatchMessage(Handler.java:92)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at android.os.Looper.loop(Looper.java:137)
09-30 17:11:21.677: E/AndroidRuntime(32304):    at android.os.HandlerThread.run(HandlerThread.java:61)

当我呼叫停止时,我可以深入到足以告诉MediaMuxer.mState = MUXER_STATE_INITIALIZED。但它在nativeStart(mNativeObject)中失败了.

代码语言:javascript
运行
复制
if (mState == MUXER_STATE_INITIALIZED) {
    nativeStart(mNativeObject);
    mState = MUXER_STATE_STARTED;
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-10-10 10:08:29

我得到了完全相同的例外,对我来说,问题是,我忘了在线程中启动整个测试案例。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19105989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档