通常我們可以用以下方法:
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....
沒有留言:
張貼留言