zoukankan      html  css  js  c++  java
  • 视频流媒体播放器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编码的视频播放了,如果有需要可以咨询我。

  • 相关阅读:
    SequenceInputStream
    BufferedReader
    FileWriter
    FileReader
    BufferedOutputStream
    javascript/html 禁止图片缓存
    localStorage util
    FormData上传文件 带进度条
    javascript 一些函数的实现 Function.prototype.bind, Array.prototype.map
    替代jquery中的几个函数
  • 原文地址:https://www.cnblogs.com/EasyNVR/p/13304024.html
Copyright © 2011-2022 走看看