視頻流媒體播放器EasyPlayer-RTSP-Android 如何隨意切換播放視頻流?

我們的視頻流媒體播放器可以輸出多種視頻流,支持RTSP、RTMP、HTTP、HLS、UDP、RTP、File等多種流媒體協議播放,同時也支持本地文件播放。在我們的Easy Player.JS版裏面,由於是網頁播放器,切換哪種視頻流只需點擊哪種視頻格式,十分便捷,那麼在EasyPlayer-RTSP-Android 裏應該如何操作才能切換播放流?

EasyPlayerJS2.png

針對這個問題,分2種情況:

1、界面只有一個播放器,隨意切換;
2、界面有2個及更多個播放器,隨意切換。

對此我們也提供了兩種對應的解決辦法:

1、界面只有一個播放器

只需要切換視頻流就行,即在PlayFragment中,先關閉原來的流,重新開啓新的流:

public void change() {
        if (mStreamRender != null) {
            sendResult(RESULT_REND_STOP, null);
            mStreamRender.stop();
        }

        boolean autoRecord = SPUtil.getAutoRecord(getContext());

        try {
            mStreamRender.start(mUrl,
                    mType,
Client.EASY_SDK_VIDEO_FRAME_FLAG |
 	Client.EASY_SDK_AUDIO_FRAME_FLAG,
                    "",
                    "",
                    autoRecord ? FileUtil.getMovieName(mUrl).getPath() : null);
        } catch (Exception e) {
            e.printStackTrace();
            Toast.makeText(getContext(), e.getMessage(), Toast.LENGTH_LONG).show();
            return;
        }
    }

2、界面有2個播放器

由於surface機制的問題,需要在PlayActivity中重新初始化PlayFragment並重新加載:

388.jpg

這裏也是爲大家提供了一個思路,目前EasyPlayerPro已經支持H265編碼的視頻播放了,如果有需要可以諮詢我。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章