【问题标题】:android.media.MediaExtractor. Anyone got this beast to work? "Failed to instantiate extractor" exceptionandroid.media.MediaExtractor。有人让这个野兽工作吗? “无法实例化提取器”异常
【发布时间】:2013-02-18 17:18:23
【问题描述】:

尝试运行它(来自 developer.android.com 的示例代码)

MediaExtractor extractor = new MediaExtractor();
extractor.setDataSource("/sdcard/myvideo.mp4");

在第二行出现“无法实例化提取器”异常。 尝试将文件放在内部存储中,尝试通过 FileDescriptor 访问,但没有任何帮助。

有人吗??

I/MonoDroid( 6802): UNHANDLED EXCEPTION: Java.IO.IOException: Exception of type 'Java.IO.IOException' was thrown.
I/MonoDroid( 6802): at Android.Runtime.JNIEnv.CallVoidMethod (intptr,intptr,Android.Runtime.JValue[]) [0x00023] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:368
I/MonoDroid( 6802): at Android.Media.MediaExtractor.SetDataSource (Java.IO.FileDescriptor) [0x0002d] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/platforms/android-16/src/generated/Android.Media.MediaExtractor.cs:206
I/MonoDroid( 6802): at AndroidApplication1.Activity1.ExtractVideo () [0x0001e] in c:\Users\pka\Documents\Visual Studio 2012\Projects\AndroidApplication1\AndroidApplication1\Activity1.cs:64
I/MonoDroid( 6802): at AndroidApplication1.Activity1.<OnCreate>b__2 (object,System.EventArgs) [0x00001] in c:\Users\pka\Documents\Visual Studio 2012\Projects\AndroidApplication1\AndroidApplication1\Activity1.cs:53
I/MonoDroid( 6802): at Android.Views.View/IOnClickListenerImplementor.OnClick (Android.Views.View) [0x0000b] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/platforms/android-16/src/generated/Android.Views.View.cs:1382
I/MonoDroid( 6802): at Android.Views.View/IOnClickListenerInvoker.n_OnClick_Landroid_view_View_ (intptr,intptr,intptr) [0x00010] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/platforms/android-16/src/generated/Android.Views.View.cs:1353
I/MonoDroid( 6802): at (wrapper dynamic-method) object.0b69082c-1c66-4fd6-89c4-1d14273d4245 (intptr,intptr,intptr) <IL 0x00017, 0x00043>
I/MonoDroid( 6802): 
I/MonoDroid( 6802):   --- End of managed exception stack trace ---
I/MonoDroid( 6802): java.io.IOException: Failed to instantiate extractor.
I/MonoDroid( 6802):     at android.media.MediaExtractor.setDataSource(Native Method)
I/MonoDroid( 6802):     at android.media.MediaExtractor.setDataSource(MediaExtractor.java:158)
I/MonoDroid( 6802):     at mono.android.view.View_OnClickListenerImplementor.n_onClick(Native Method)
I/MonoDroid( 6802):     at mono.android.view.View_OnClickListenerImplementor.onClick(View_OnClickListenerImplementor.java:29)
I/MonoDroid( 6802):     at android.view.View.performClick(View.java:4211)
I/MonoDroid( 6802):     at android.view.View$PerformClick.run(View.java:17267)
I/MonoDroid( 6802):     at android.os.Handler.handleCallback(Handler.java:615)
I/MonoDroid( 6802):     at android.os.Handler.dispatchMessage(Handler.java:92)
I/MonoDroid( 6802):     at android.os.Looper.loop(Looper.java:137)
I/MonoDroid( 6802):     at android.app.ActivityThread.main(ActivityThread.java:4898)
I/MonoDroid( 6802):     at java.lang.reflect.Method.invokeNative(Native Method)
I/MonoDroid( 6802):     at java.lang.reflect.Method.invoke(Method.java:511)
I/MonoDroid( 6802):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
I/MonoDroid( 6802):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
I/MonoDroid( 6802):     at dalvik.system.NativeStart.main(Native Method)
W/dalvikvm( 6802): JNI WARNING: JNI method called with exception pending
W/dalvikvm( 6802):              in Lmono/android/view/View_OnClickListenerImplementor;.n_onClick:(Landroid/view/View;)V (CallObjectMethod)
W/dalvikvm( 6802): Pending exception is:
I/dalvikvm( 6802): java.io.IOException: Failed to instantiate extractor.
I/dalvikvm( 6802):   (raw stack trace not found)
I/dalvikvm( 6802): "main" prio=5 tid=1 NATIVE
I/dalvikvm( 6802):   | group="main" sCount=0 dsCount=0 obj=0x41094508 self=0x40e6f9a0
I/dalvikvm( 6802):   | sysTid=6802 nice=0 sched=0/0 cgrp=apps handle=1074282288
I/dalvikvm( 6802):   | schedstat=( 1587575495 261759711 782 ) utm=108 stm=50 core=3
I/dalvikvm( 6802):   #00  pc 00001260  /system/lib/libcorkscrew.so (unwind_backtrace_thread+27)
I/dalvikvm( 6802):   #01  pc 0005f904  /system/lib/libdvm.so (dvmDumpNativeStack(DebugOutputTarget const*, int)+35)
I/dalvikvm( 6802):   #02  pc 000537ac  /system/lib/libdvm.so (dvmDumpThreadEx(DebugOutputTarget const*, Thread*, bool)+303)
I/dalvikvm( 6802):   #03  pc 00053846  /system/lib/libdvm.so (dvmDumpThread(Thread*, bool)+25)
I/dalvikvm( 6802):   #04  pc 00038e02  /system/lib/libdvm.so
I/dalvikvm( 6802):   #05  pc 00040f60  /system/lib/libdvm.so
I/dalvikvm( 6802):   at mono.android.view.View_OnClickListenerImplementor.n_onClick(Native Method)
I/dalvikvm( 6802):   at mono.android.view.View_OnClickListenerImplementor.onClick(View_OnClickListenerImplementor.java:29)
I/dalvikvm( 6802):   at android.view.View.performClick(View.java:4211)
I/dalvikvm( 6802):   at android.view.View$PerformClick.run(View.java:17267)
I/dalvikvm( 6802):   at android.os.Handler.handleCallback(Handler.java:615)
I/dalvikvm( 6802):   at android.os.Handler.dispatchMessage(Handler.java:92)
I/dalvikvm( 6802):   at android.os.Looper.loop(Looper.java:137)
I/dalvikvm( 6802):   at android.app.ActivityThread.main(ActivityThread.java:4898)
I/dalvikvm( 6802):   at java.lang.reflect.Method.invokeNative(Native Method)
I/dalvikvm( 6802):   at java.lang.reflect.Method.invoke(Method.java:511)
I/dalvikvm( 6802):   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1006)
I/dalvikvm( 6802):   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:773)
I/dalvikvm( 6802):   at dalvik.system.NativeStart.main(Native Method)
I/dalvikvm( 6802): 
E/dalvikvm( 6802): VM aborting
I/mono    ( 6802): Stacktrace:
I/mono    ( 6802): 
I/mono    ( 6802):   at Android.Runtime.JNIEnv.CallObjectMethod (intptr,intptr) [0x00000] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:129
I/mono    ( 6802):   at Java.Lang.Throwable.get_Message () [0x0003e] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/platforms/android-16/src/generated/Java.Lang.Throwable.cs:195
I/mono    ( 6802):   at (wrapper runtime-invoke) <Module>.runtime_invoke_object__this__ (object,intptr,intptr,intptr) <IL 0x00050, 0xffffffff>
E/mono    ( 6802): 
E/mono    ( 6802): Unhandled Exception:
E/mono    ( 6802): Java.IO.IOException: Exception of type 'Java.IO.IOException' was thrown.
E/mono    ( 6802): at Android.Runtime.JNIEnv.CallVoidMethod (intptr,intptr,Android.Runtime.JValue[]) [0x00023] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:368
E/mono    ( 6802): at Android.Media.MediaExtractor.SetDataSource (Java.IO.FileDescriptor) [0x0002d] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/platforms/android-16/src/generated/Android.Media.MediaExtractor.cs:206
E/mono    ( 6802): at AndroidApplication1.Activity1.ExtractVideo () [0x0001e] in c:\Users\pka\Documents\Visual Studio 2012\Projects\AndroidApplication1\AndroidApplication1\Activity1.cs:64
E/mono    ( 6802): at AndroidApplication1.Activity1.<OnCreate>b__2 (object,System.EventArgs) [0x00001] in c:\Users\pka\Documents\Visual Studio 2012\Projects\AndroidApplication1\AndroidApplication1\Activity1.cs:53
E/mono    ( 6802): at Android.Views.View/IOnClickListenerImplementor.OnClick (Android.Views.View) 
I/mono    ( 6802): [ERROR] FATAL UNHANDLED EXCEPTION: Java.IO.IOException: Exception of type 'Java.IO.IOException' was thrown.
I/mono    ( 6802): at Android.Runtime.JNIEnv.CallVoidMethod (intptr,intptr,Android.Runtime.JValue[]) [0x00023] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/src/Runtime/JNIEnv.g.cs:368
I/mono    ( 6802): at Android.Media.MediaExtractor.SetDataSource (Java.IO.FileDescriptor) [0x0002d] in /Users/builder/data/lanes/monodroid-mac-monodroid-4.4-series/c6e52015/source/monodroid/src/Mono.Android/platforms/android-16/src/generated/Android.Media.MediaExtractor.cs:206
I/mono    ( 6802): at AndroidApplication1.Activity1.ExtractVideo () [0x0001e] in c:\Users\pka\Documents\Visual Studio 2012\Projects\AndroidApplication1\AndroidApplication1\Activity1.cs:64
I/mono    ( 6802): at AndroidApplication1.Activity1.<OnCreate>b__2 (object,System.EventArgs) [0x00001] in c:\Users\pka\Documents\Visual Studio 2012\Projects\AndroidApplication1\AndroidApplication1\Activity1.cs:53
I/mono    ( 6802): at Android.Views.View/IOnClickListenerImplementor.OnClick (Android
V/MediaPlayerService( 1901): Delete media recorder client
D/ISecCameraHardware( 1901): stopPreview E
W/ISecCameraHardware( 1901): stopPreview: warning, preview has been stopped
I/SurfaceFlinger( 1898): id=23 Removed TurfaceView idx=2 MapSz=3
D/ISecCameraHardware( 1901): cancelPicture EX
D/SecCameraHardware( 1901): release E
D/ISecCameraHardware( 1901): Camera.... release
W/InputDispatcher( 2253): channel ~ Consumer closed input channel or an error occurred.  events=0x9

【问题讨论】:

  • 我要补充一点,您在 Mono for Android 上遇到了这个问题

标签: android video-streaming media video-capture transcoding


【解决方案1】:

我是个白痴...我的程序的另一部分打开了提取器应该读取的同一个文件...

虽然来自 Android 的错误消息相当糟糕。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-08
    • 2016-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多