2010-06-23 5 views
0

J'essaie d'enregistrer une vidéo dans SDCard. Mais chaque fois que je clique sur le bouton pour enregistrer, il montre "arrêté de façon inattendue" erreur. Je ne sais pas trop où l'erreur s'est produite. Je ne suis pas sûr si le chemin de setOutputFile est comment je devrais indiquer.Android enregistre une vidéo dans SDCard

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.camera); 

    cam = new cameraview(this); 
    ((FrameLayout) findViewById(R.id.preview)).addView(cam); 
    // Create A Preview View 

    buttonClick = (Button) findViewById(R.id.buttonClick); 
    buttonClick.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      if(toogleButtonFlag) 
      { 
       startRecording(); 
       toogleButtonFlag = false; 
      } 
      else{ 
       stopRecording(); 
       toogleButtonFlag = true; 
      } 

     } 
    }); 
} 

public void startRecording(){ 
    recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); 
    recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 
    recorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264); 
    recorder.setOutputFile("/sdcard/.3pg"); 
    try{ 
    recorder.prepare(); 
    } 
    catch(IOException e) 
    { 
     e.printStackTrace(); 
     recorder.reset(); 
     recorder.release(); 
    } 
    recorder.start(); // Recording is now started 
} 

public void stopRecording(){ 
    recorder.stop(); 
    recorder.reset(); 
    recorder.release(); 
} 

Répondre

1
  1. Assurez-vous que vous avez la WRITE_EXTERNAL_STORAGE permission

  2. Votre fichier de sortie prend la carte SD est à /sdcard, ce qui est incorrect sur certains appareils et versions Android - s'il vous plaît utiliser Environment.getExternalStorageDirectory()

  3. Votre fichier de sortie n'a pas de nom de fichier

  4. Votre fichier de sortie n'a pas de nom de fichier le fichier de sortie a une extension mal orthographiée