首页 > 其他分享 >rtmp的拉流方式之ZLMRTCClient

rtmp的拉流方式之ZLMRTCClient

时间:2023-07-11 14:57:06浏览次数:42  
标签:function console ZLMRTCClient player rtmp 拉流 Events log

关于直播流rtmp的拉流因为延迟少比较好用(因为手机不支持flash,所以不支持手机浏览器)

zlmrtcclient是老式插件,在vue项目中使用的话需要在index.html里面进行引入,然后在项目中使用

  

标签代码

 <video  id='video1' class="jswebrtc" autoplay muted="true" width="100%" height="100%"></video>

 拉流js代码如下

let player = new ZLMRTCClient.Endpoint({
    element: document.getElementById(video1),// video1 标签
    debug: false,// 是否打印日志
    zlmsdpUrl: url,//流地址
    simulcast: true,
    useCamera: true,
    audioEnable: true,
    videoEnable: true,
    recvOnly: true,
    resolution: {
      w: 0,
      h: 0
    }
  });
  player.on(ZLMRTCClient.Events.WEBRTC_ICE_CANDIDATE_ERROR, function (e) {// ICE 协商出错
    console.log('ICE 协商出错')
  });

  player.on(ZLMRTCClient.Events.WEBRTC_ON_REMOTE_STREAMS, function (e) {//获取到了远端流,可以播放
    console.log('播放成功', e.streams)
  });

  player.on(ZLMRTCClient.Events.WEBRTC_OFFER_ANWSER_EXCHANGE_FAILED, function (e) {// offer anwser 交换失败
    console.log('offer anwser 交换失败', e)
    stop();
  });
  player.on(ZLMRTCClient.Events.WEBRTC_ON_LOCAL_STREAM, function (s) {// 获取到了本地流
    console.log('offer anwser 交换失败',e)
  });

  player.on(ZLMRTCClient.Events.CAPTURE_STREAM_FAILED, function (s) {// 获取本地流失败
    console.log('获取本地流失败')
  });
  player.on(ZLMRTCClient.Events.WEBRTC_ON_CONNECTION_STATE_CHANGE, function (state) {// RTC 状态变化 ,详情参考 https://developer.mozilla.org/en-US/docs/Web/API/RTCPeerConnection/connectionState
    console.log('当前状态==>', state, name)
  });

 文笔不好,自己做记录用的,有需要的可以拿去用

标签:function,console,ZLMRTCClient,player,rtmp,拉流,Events,log
From: https://www.cnblogs.com/xiaoyang459/p/17544597.html

相关文章

  • java 阿里云直播配置及推拉流地址获取
    原文地址:https://blog.csdn.net/zhanglei5415/article/details/131551685?spm=1001.2014.3001.5501一、开通阿里云直播首先进入阿里云直播产品主页:https://www.aliyun.com/product/live。点击下方的“立即开通”。如果是还未注册的用户请按照页面提示进行完成注册并实名认证......
  • 跨平台低延迟RTSP转RTMP推送技术方案探讨
    实现RTSP摄像头数据转RTMP推送到服务器,可以用第三方库或者工具实现,总体设计架构如下:一个好的转发模块,首先要低延迟!其次足够稳定、灵活、有状态反馈机制、资源占用低,跨平台,最好以接口形式提供,便于第三方系统集成,整体功能设计如下:1.拉流:通过RTSP直播播放SDK的数据回调接口,拿到音视频......
  • 电视频道rtmp推流地址搜索
    CCTV视频直播推流地址CCTV1高清:http://ivi.bupt.edu.cn/hls/cctv1hd.m3u8CCTV3高清:http://ivi.bupt.edu.cn/hls/cctv3hd.m3u8CCTV5高清:http://ivi.bupt.edu.cn/hls/cctv5hd.m3u8CCTV5+高清:http://ivi.bupt.edu.cn/hls/cctv5phd.m3u8CCTV6高清:http://ivi.bupt.edu.cn/hls/cctv......
  • RTMP 推流增加对H265的支持
     RTMP协议本身是不支持H265的。但现在的设备越来越追求更高的压缩比和更高的图形质量。H265相对其他的媒体格式更多受到厂家的重视。rtmp协议要支持H265首先要定义一个ID。按照大家的约定来看,基本使用12(0xc)作为ID.同时相对H264对NALU的分析要进行改变。并对发送的Metadata数据......
  • ZLMediaKit 服务器源码解读,RTSP推流拉流
    RTSP推流1、数据解析过程数据都会通过回调的方式到达RtspSession类(会话)的onRecv函数先给出类的继承关系:classRtspSession:publicTcpSession,publicRtspSplitter,publicRtpReceiver,publicMediaSourceEvent{}classRtspSplitter:publicHttpRequestSplitter{}数据回......
  • nginx RTMP推拉流,多个音频流合并。
    使用nginxRTMP(nginx的一个插件模块,具体的网上搜一下)做一个简易的多人音频通话流媒体服务器,多个端通话时,客户端无法处理其他端发过来的音频流,比如A、B、C三个端通话,A设备同时持有B、C的音频流,这样对设备端非常的不友好。这时候就需要用到一个强大的工具,FFMPEG,安装网上很多,搜下就......
  • FFmpeg混流及录制rtmp直播流
    1、什么是混流?混流就是把多路音视频流合成单流。准确的说,混流应该叫做混音(音频流)混画面(视频流)混流的过程包括解码、混流、编码和推流四个部分。混流这个环节包括做抖动缓冲,目的是把多路流进行画面对齐和音画同步,同时通过缓冲对抗网络抖动,以便混合成一路流以后能够达到良好的效果。......
  • EasyCVR平台如何推送RTMP流实现上级平台级联?
    EasyCVR可拓展性强、视频能力灵活、部署轻快,可支持的主流标准协议有GB28181、RTSP/Onvif、RTMP等,以及厂家私有协议与SDK接入,包括海康Ehome、海大宇等设备的SDK等,能对外分发RTSP、RTMP、FLV、HLS、WebRTC等格式的视频流。有用户反馈,现场的设备是运动相机,不支持国标和其他协议接入......
  • 音视频网络传输协议,RTSP/RTMP/SRT/NDI协议之间特点
    网络视频传输协议有哪些,RTSP/RTMP/SRT/RTP之间特点下面详细介绍:有兴趣的小伙伴可加qq群一起交流384170753RTP协议(Real-timeTransportProtocol)是一个网络传输协议,是一种实时传输协议技术,RTP协议常用于流媒体系统(配合RTSP协议)视频会议和一键通(PushtoTalk)系统(配合H.323或SIP),使它成为IP......
  • EasyRTMPLive拉转推硬件设备访问端口返回404报错,该如何解决?
    TSINGSEE青犀视频的各个平台部署灵活,视频能力丰富且全面、能满足用户的多场景视频监控需求。平台各具特点,可支持多类型的设备、多协议接入,包括国标GB28181协议、RTMP/RTSP/Onvif协议、海康EHOME、海康SDK、大华SDK等,在视频流分发上,能支持全终端、全平台的视频流输出,包括RTSP、RTMP......