2015-07-06 5 views
0

У меня проблема, когда я пытаюсь воспроизвести видео в формате hd с классом MediaPlayer в андроиде (он дает мне черный дисплей, но он играет звук) ... это не работайте с hd-видео, но он работает с не hd-видео ... я бы хотел знать, что вы думаете об этом, и если есть способ исправить проблему. это мой код ...Как играть в HD-видео в Media Player android

SingletonMedia singletonMedia = SingletonMedia.getIstance(); 
      final MediaPlayer player = new MediaPlayer(); 
      //String uri = singletonMedia.listaMedia.get(currentMedia).url; 
      //MediaPlayer player = MediaPlayer.create(getActivity(), Uri.parse(uri)); 
      SurfaceHolder mHolder; 
      SurfaceView mPreview; 
      mPreview = (SurfaceView) getActivity().findViewById(R.id.surfaceView); 
      //mPreview.setVisibility(View.VISIBLE); 
      mHolder = mPreview.getHolder(); 
      try { 
       Log.w(null, singletonMedia.listaMedia.get(currentMedia).url); 
       player.setDataSource(singletonMedia.listaMedia.get(currentMedia).url); 
      } 
      catch (Exception e) { 
       Log.w(null, "Entrato nell'eccezione del setDataSource nel Fragment: "+e.getMessage()); 
      } 
      player.setDisplay(mHolder); 
      try { 
       player.prepare(); 
      } catch (Exception e) { 
       Log.w(null, "Entrato nell'eccezione del prepare nel Fragment: " + e.getMessage()); 
      } 
      player.start(); 

заранее спасибо за помощь. Есть ли способ воспроизвести видео hd в андроиде?

ответ

0

Вы должны узнать формат кодирования вашего HD-видео. Android os не поддерживает слишком много форматов. MediaPlayer может воспроизводить видео с форматом h264, даже если видео является hd. Если кодировка foramt h264, вы должны попробовать другое устройство.

Или вы должны убедиться, что ваша игра будет запущена после SurfaceView.surfaceCreated.

+0

видео формат 1080x1920.mp4 –

+0

Вы должны использовать инструмент ffprobe для проверки формата видеоизображения видео. Mp4 - это просто контейнер, а не формат кодирования. – dragonfly

+0

как? вы можете написать мне код? –