2013-06-20 6 views
0

안녕하세요. 다음과 같은 문제가 있습니다. VideoView에서 * .3gp 비디오 형식을 재생하고 싶습니다.Android VideoView가 일부 장치에서 * 3.gp 파일을 재생하지 않습니다.

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.mylay); 
    VideoView videoHolder = new VideoView(this); 
    videoHolder = (VideoView) findViewById(R.id.videoView1); 
    Uri video = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.asd); 
    videoHolder.setVideoURI(video); 
    videoHolder.setOnPreparedListener(new OnPreparedListener() { 
    public void onPrepared(MediaPlayer mp) { 
     mp.start(); 
     mp.setLooping(true); 
    } 
    }); 
} 

모든 것이 에뮬레이터와 HTC 욕망 S.에서 잘 작동하지만 때마다 "비디오를 재생할 때 오류"나에게를 제공하는 중국어 태블릿 온다 V972이있다 : 나는이 코드를 사용하여 시도했다 :

06-19 18:34:18.890: W/AudioSystem(25145): AudioFlinger server died! 
06-19 18:34:18.890: W/IMediaDeathNotifier(25145): media server died 
06-19 18:34:18.890: E/MediaPlayer(25145): error (100, 0) 
06-19 18:34:18.890: E/MediaPlayer(25145): Error (100,0) 
06-19 18:34:18.890: D/VideoView(25145): Error: 100,0 

이 문제를 해결할 수 있는지 알려주십시오. 정말 고맙습니다. VideoView에 비디오 파일을로드하는 다른 방법이 있습니까?

UPDATE 21.06 : 내 태블릿의

그냥 업데이트 된 펌웨어는 현재 비디오가 재생되지만 반복되지 않습니다. 다음 코드를 시도했지만 rusult는 동일합니다. HTC 및 에뮬레이터는 잘 작동하지만 태블릿에서는 비디오가 반복되지 않습니다. 어떻게 비디오가 모든 장치에서 반복 할 수 있습니다 -

VideoView videoHolder = new VideoView(this); 
videoHolder = (VideoView) findViewById(R.id.videoView1); 
// videoHolder.setMediaController(new MediaController(this)); 
Uri video = Uri.parse("android.resource://" + getPackageName() + "/" + R.raw.asd); 
videoHolder.setVideoURI(video); 
// setContentView(videoHolder); 

videoHolder.setOnPreparedListener(new OnPreparedListener() { 
    @Override 
    public void onPrepared(MediaPlayer mp) { 
     mp.setLooping(true); 
     mp.start(); 
    } 
}); 

videoHolder 
     .setOnCompletionListener(new MediaPlayer.OnCompletionListener() { 
      @Override 
      public void onCompletion(MediaPlayer mp) { 
       mp.mp.seekTo(0); 
       mp.start(); 
      } 

     }); 

질문은 : 나는 또한 * .MP4 모두 같은 시도했습니다?

답변

0

는 불행하게도 효과가 동일 미디어 컨트롤러

public class HelloInterruptVideoStream extends Activity 
{ 
    private String path = "http://dl.dropbox.com/u/145894/t/rabbits.3gp"; 
    private VideoView videoview; 

    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     videoview = (VideoView)findViewById(R.id.surface_view); 

     getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,WindowManager.LayoutParams.FLAG_FULLSCREEN); 

     videoview.setVideoURI(Uri.parse(path)); 
     videoview.setMediaController(new MediaController(this)); 
     videoview.requestFocus(); 
     videoview.start(); 

    } 
} 
+0

설정이 VideoView를 지켜 보면서 같이하려고합니다. 그런 장치가 많이있는 것 같고 비디오가 모든 장치에서 제대로 작동하기를 바랍니다. –

관련 문제