2010-07-13 123 views
0

使用:视频播放只是前5秒

private void play() { 
    VideoView v = (VideoView) findViewById(R.id.videoView); 
    MediaPlayer mp = MediaPlayer.create(this, R.raw.video); 
    mp.setDisplay(v.getHolder()); 
    mp.start(); 
} 

我的视频播放只是第5秒,并留样暂停..为什么会发生?它与缓冲区有关吗? (我打本地资源)

-

我尝试另一个3GP视频,和同样的问题发生。

回答

0

工作代码(也许是一些问题与资源过度使用):

private void play() throws Exception { 
    v = (VideoView) findViewById(R.id.videoView); 
    if (!firstPlay) { 
     mp.release(); 
    } 
    mp = MediaPlayer.create(this, R.raw.video); 
    mp.setDisplay(v.getHolder()); 
    mp.start(); 
    firstPlay = false; 
} 
+0

试回第一个代码,停下来需要的时间再长一点,我真的认为是因为我的许多播放资源过度使用.. – 2010-07-13 14:26:54

0

合并VideoViewMediaPlayer可能不是正确的方法。 VideoView使用自己的MediaPlayeruse VideoView by itselfuse a combination of MediaPlayer and SurfaceView

+0

此外,模拟器上进行视频回放往往不会很好地工作,除非你有一个非常快的PC。 – CommonsWare 2010-07-13 13:29:55

+0

其实我在这里有一个非常快的四核。顺便说一下,如何使用您的示例的MediaControler播放视频? – 2010-07-13 14:09:47

+0

@Tom Brito:要播放VideoView样本,请点击屏幕的顶部以调出MediaController,或在设置过程结束时向'play()'添加一个调用。要播放“MediaPlayer”示例,您应在启动应用程序时获取URL字段,以键入要测试的流式视频剪辑的路径。 – CommonsWare 2010-07-13 16:03:26