2017-07-05 1 views
1

Quelqu'un utilise-t-il le CameraKit-Android par gogopop, je l'utilise a un problème que je mets l'auditeur de la vidéo, mais le fichier de sortie est nul, quelqu'un sait comment le résoudre? mon anglais n'est pas bon, il pourrait vous faire paraître un peu confus. Pardon.cameraKit-android sortie vidéo

ceci est mon code:

 cameraView.getCamera().setVideoQuality(CameraKit.Constants.VIDEO_QUALITY_720P); 
     cameraView.getCamera().startRecordingVideo(); 
     cameraView.getCamera().setCameraListener(new CameraListener() { 
      @Override 
      public void onVideoTaken(final File video) { 
       super.onVideoTaken(video); 
      /* new Thread(new Runnable() { 
        @Override 
        public void run() { 
         final byte[] videoBytes = FileUtils.File2byte(video.getAbsolutePath()); 
         if (!isExit) { 
          new Thread(new Runnable() { 
           @Override 
           public void run() { 
            saveFile(videoBytes); 
           } 
          }).start(); 
         } 
         isExit = false; 
        } 
       }).start();*/ 
      } 
     }); 

i utilisé pour créer un nouveau fichier pour enregistrer le mp4, mais quand je RecordingVideo plus d'une minute, l'application est OOM. alors tout le monde peut m'aider? Merci.

Répondre

0

je l'enfonce. ce n'est pas cameraKit-android issuse. il est le problème de l » Android, il a deux points:

  1. le fichier est sortie, mais vous pas de notification du système. vous devriez donc:

     cameraView.getCamera().setCameraListener(new CameraListener() { 
         @Override 
         public void onVideoTaken(final File video) { 
          super.onVideoTaken(video); 
          //notify system refresh 
          Uri localUri = Uri.fromFile(video); 
          Intent localIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, localUri); 
          sendBroadcast(localIntent); 
    
  2. essayer cette idée gars, je l'utilise sauver susscess:

    String path = Environment.getExternalStorageDirectory().getAbsolutePath() + "/milai/"; 
    
    File appDir = new File(path); 
    
    if (!appDir.exists()) { 
        appDir.mkdir(); 
    } 
    mVideoFile = new File(mPreview.getView().getContext().getExternalFilesDir(null), getPicTime()+".mp4"); 
    String myFile = path+getPicTime()+".mp4"; 
    mMediaRecorder.setOutputFile(myFile); 
    

il la même apparence, mais je ne sais pas pourquoi le succès. Si quelqu'un a d'autres problèmes, vous pouvez me demander. je vais essayer de t'aider.

+0

U avez une solution pour cela ?? –