2013-04-16 9 views
6

jestem nagrywania wideo w android jak tenWideo Wydanie: android nagrane wideo nie grał w iPhone

List<Camera.Size> list = myCamera.getParameters().getSupportedPictureSizes(); 
      Parameters parameters = myCamera.getParameters(); 
      parameters.setColorEffect(coloreffects.get(index_color_effect)); 
      myCamera.setParameters(parameters); 
      mediaRecorder = new MediaRecorder(); 
      myCamera.unlock(); 
      mediaRecorder.setCamera(myCamera); 
       mediaRecorder.setOrientationHint(90); 
      mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER); 
      mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); 
      mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4); 
      mediaRecorder.setAudioEncoder(AudioEncoder.HE_AAC); 
      mediaRecorder.setVideoEncoder(VideoEncoder.H264); 
      mediaRecorder.setOutputFile(Constants.videourl); 
      mediaRecorder.setMaxDuration(30000); // Set max duration 60 sec. 
      mediaRecorder.setVideoFrameRate(24); 
      mediaRecorder.setVideoFrameRate(30); 
      mediaRecorder.setVideoSize(720, 480); 
      mediaRecorder.setPreviewDisplay(myCameraSurfaceView.getHolder().getSurface()); 

tym recored wideo i mógł grać w android dobrze, ale niezdolny do gry na iPhone.

jeśli jeśli użyć tego kodu do nagrywania

  // work two 
     { 
     mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER); 
     mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA); 

     mediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH)); 
     mediaRecorder.setOutputFile(videourl); 
     mediaRecorder.setMaxDuration(30000); // Set max duration 60 sec. 
     } 

rejestruje materiały wideo compatible.with iphone dobrze. ale to nagranie 30 sekund wideo o 47 mbs na samsung note2.

Każda pomoc?

+1

Mam rozwiązanie do zmniejszania rozmiarów wideo. Rozmiar wideo zależy od ** videobitrate. ** możesz ustawić szybkość transmisji wideo według mediaRecorder.setVideoEncodingBitRate (150 * 1000); – shailesh

+0

** Problem zgodności ** pochodzi z ** Verizon lg lucid ** i ** htc vivid **. Jakieś domysły lub pomoc? Nagranie wideo z tych urządzeń nie może być odtwarzane na iphone. – shailesh

Odpowiedz

1

iPhone obsługuje wideo w formacie MPEG-4 wideo, a w rozdzielczości nie większej niż 640x480

spróbować tej mediaRecorder.setVideoSize (640, 480);

WIĘCEJ INFO: odtwarzanie wideo na iPhone

Format wideo: MP4, MOV, M4V

Rozmiar wideo: do 640x480

wideo Framerate: do 30fps

wideo Szybkość transmisji: do 1,5 Mb/s dla H.264 lub 2,5 Mb/s dla MPEG-4

Dźwięk: AAC do 160 Kb/s, 48 ​​kHz