通常我們可以用以下方法:
private MediaPlayer mp = new MediaPlayer();
mp.setDataSource("/sdcard/test.mp3");//Set the source
mp.prepare();
mp.start();
如果是網路上的串流,一樣可以,例如:
mp.setDataSource("rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov");基本上,http或rtsp都可以,
如果是拿 MediaPlayer 來播於影片,那就還需要SurfaceView的配合
此時,new MediaPlayer()就必需在surfaceCreated()裡宣告,類似以下方式:
@Overridepublic void surfaceCreated(SurfaceHolder sh) {
mp= new MediaPlayer();
mp.setDisplay(surfaceHolder);
mp.setOnPreparedListener(this);
}
@Override
public void surfaceDestroyed(SurfaceHolder arg0) {
mp.release();
}
@Override
public void onPrepared(MediaPlayer mp) {
mp.start();
}
如果有一個按鈕來控制播放,可以在按鈕的onClick()裡,
mp.setDataSource("your source path");
mp.prepareAsync();
MediaPlayer可以支援的檔案格式還蠻多的,MP3,MPEG2,H.264,3gp....
沒有留言:
張貼留言