97干视频,99国产精品懂色,亚洲精品99久久久久中文字幕,伊人五月丁香综合AⅤ,国产精品成人免费999

  您的位置:華清遠(yuǎn)見教育科技集團(tuán) >> 新聞動態(tài) >> Android資料 >> Android基于MediaPlayer的視頻播放  
 
Android基于MediaPlayer的視頻播放
分享到:

在VideoView.java中提供了視頻播放的實(shí)例。視頻播放和音頻播放一樣都是通過MediaPlayer來實(shí)現(xiàn)的。

為了進(jìn)行視頻播放,必須設(shè)置數(shù)據(jù)源、音頻流類型等,以加載不同的解碼器和采用相應(yīng)的音頻沖突策略。為了捕捉到視頻播放中的各種消息,需要設(shè)置不同的監(jiān)聽器。

MediaPlayer的常用方法包括:

SipManager用于初始化SIP鏈接和接入SIP服務(wù)等。能夠創(chuàng)建SIP會話。比較常用的方法包括:

setDataSource() //設(shè)置數(shù)據(jù)源
    getVideoHeight() //獲得視頻高度
    getVideoWidth() //獲得視頻寬度
    getDuration() //獲得時長
    getCurrentPosition() //獲得當(dāng)前位置
    setVolume() //設(shè)置音量
    start() //開始播放
    stop() //停止播放
    seekto() //定位
    setAudioSessionId() //設(shè)置音頻會話ID

try {
        mMediaPlayer=new MediaPlayer(); //創(chuàng)建MediaPlayer
        //設(shè)置監(jiān)聽器
        mMediaPlayer.setOnPreparedListener(mPreparedListener);
        mMediaPlayer.setOnVideoSizeChangedListener(mSizeChangedListener);
        mDuration=-1;
        mMediaPlayer.setOnCompletionListener(mCompletionListener);
        mMediaPlayer.setOnErrorListener(mErrorListener);
        mMediaPlayer.setOnBufferingUpdateListener(mBufferingUpdateListener);
        mCurrentBufferPercentage=0;
        //設(shè)置數(shù)據(jù)源
        mMediaPlayer.setDataSource(mContext, mUri);
        mMediaPlayer.setDisplay(mSurfaceHolder);
        //設(shè)置音頻流類型
        mMediaPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); mMediaPlayer.工補(bǔ)農(nóng) setScreenOnWhilePlaying(true);
        mMediaPlayer.prepareAsync();
        mCurrentState=STATE_PREPARING;
        attachMediaController();
        mMediaPlayer.start();
        mCurrentState=STATE_PLAYING;
        }
        catch (IOException ex) {
        Log.w(TAG, "Unable to open content: " + mUri, ex);
        mCurrentState=STATE_ERROR;
        mTargetState=STATE_ERROR;
        mErrorListener.onError(mMediaPlayer, MediaPlayer.MEDIA_ERROR_UNKNOWN, 0);
        return;
                }
        catch (IllegalArgumentException ex) {
        Log.w(TAG, "Unable to open content: " + mUri, ex);
        mCurrentState=STATE_ERROR;
        mTargetState=STATE_ERROR;
        mErrorListener.onError(mMediaPlayer, MediaPlayer.MEDIA_ERROR_UNKNOWN, 0);
        return;
        }
        …

視頻播放的原生接口位于android_media_MediaPlayer.cpp文件中。

 
 更多相關(guān)文章

·Android 中如何使用SIP服務(wù)
·Android音頻混響特效的設(shè)置
·Android可視化音頻均衡器
·Android重低音及環(huán)繞音音效的添加
·如何使用Android JetPlayer類
·Android RingtoneManager 鈴聲管理