簡體   English   中英

RecordVideo:java.lang.RuntimeException:啟動失敗

[英]RecordVideo: java.lang.RuntimeException: start failed

我對使用android 4.1.2的nexus s進行視頻重新編碼存在問題。

 private static final String OUTPUT_FILE="/storage/sdcard0/uatestvideo1.mp4";

Android清單:

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.RECORD_AUDIO"/>
<uses-permission android:name="android.permission.RECORD_VIDEO"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.STORAGE" />
<uses-feature android:name="android.hardware.camra"/>

onCreate:在oncreate我有:...

final SurfaceHolder holder =    videoView.getHolder();
holder.addCallback(this);
holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);

...

private void beginRecording(SurfaceHolder holder) throws Exception{

        if(recorder!=null){
            recorder.stop();
            recorder.release();
            recorder=null;
        }
        File outFile = new File(OUTPUT_FILE);
        if(outFile.exists()){
            outFile.delete();
        }

        try{
            recorder = new MediaRecorder();
            recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
            recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
            recorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
            recorder.setVideoSize(320, 240);
            recorder.setVideoFrameRate(15);
            recorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
            recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
            recorder.setMaxDuration(200000);
            recorder.setPreviewDisplay(holder.getSurface());
            recorder.setOutputFile(OUTPUT_FILE);
            recorder.prepare();
                recorder.start();
        }catch(Exception e){
            Log.e(TAG, e.toString());
            e.printStackTrace();
        }

    }


}

錯誤:

11-25 10:46:07.723: E/MediaRecorder(15354): start failed: -19
11-25 10:46:07.727: E/RecordVideo(15354): java.lang.RuntimeException: start failed.
11-25 10:46:07.727: D/Blad w rekorder(15354): java.lang.RuntimeException: start failed.
11-25 10:46:07.727: W/System.err(15354): java.lang.RuntimeException: start failed.
11-25 10:46:07.727: W/System.err(15354):    at android.media.MediaRecorder.start(Native Method)
11-25 10:46:07.727: W/System.err(15354):    at com.plym.andr.UsVideoRecorder.beginRecording(UsVideoRecorder.java:198)
11-25 10:46:07.727: W/System.err(15354):    at com.plym.andr.UsVideoRecorder.access$2(UsVideoRecorder.java:168)
11-25 10:46:07.727: W/System.err(15354):    at com.plym.andr.UsVideoRecorder$1.onClick(UsVideoRecorder.java:76)
11-25 10:46:07.727: W/System.err(15354):    at android.view.View.performClick(View.java:4084)
11-25 10:46:07.727: W/System.err(15354):    at android.view.View$PerformClick.run(View.java:16966)
11-25 10:46:07.731: W/System.err(15354):    at android.os.Handler.handleCallback(Handler.java:615)
11-25 10:46:07.731: W/System.err(15354):    at android.os.Handler.dispatchMessage(Handler.java:92)
11-25 10:46:07.731: W/System.err(15354):    at android.os.Looper.loop(Looper.java:137)
11-25 10:46:07.731: W/System.err(15354):    at android.app.ActivityThread.main(ActivityThread.java:4745)
11-25 10:46:07.731: W/System.err(15354):    at java.lang.reflect.Method.invokeNative(Native Method)
11-25 10:46:07.731: W/System.err(15354):    at java.lang.reflect.Method.invoke(Method.java:511)
11-25 10:46:07.731: W/System.err(15354):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
11-25 10:46:07.731: W/System.err(15354):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
11-25 10:46:07.731: W/System.err(15354):    at dalvik.system.NativeStart.main(Native Method)

-19NO_INIT的錯誤。 這意味着您的recorder未正確初始化。

檢查此鏈接是否存在類似問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM