当前位置: 首页 > news >正文

怎样登录韵网网站浅谈一下网络营销的几个误区

怎样登录韵网网站,浅谈一下网络营销的几个误区,营销策划公司有哪些公司,简单的app开发制作1. 前言 市面上的开源RTSP服务器太过于复杂#xff0c;我们今天使用GO语言#xff0c;开发一款史上最简单的RTSP直播服务器#xff0c;不依赖任何第三方GO语言框架#xff0c;使用原生GO语言撸。 说起视频直播协议#xff0c;最开始#xff0c;笔者使用的是ffmpeg ngi…1. 前言 市面上的开源RTSP服务器太过于复杂我们今天使用GO语言开发一款史上最简单的RTSP直播服务器不依赖任何第三方GO语言框架使用原生GO语言撸。 说起视频直播协议最开始笔者使用的是ffmpeg nginxRTMP方案但是nginx的RTMP模块有个问题至少要六七秒才能够出画面不知道是RTMP协议问题还是nginx的rtmp模块问题。过一段时间我再用go语言撸一个RTMP服务器。 由于ffmpeg nginx的上述缺点所以我又转向了EasyDarwin的RTSP服务器方案也就是ffmpeg EasyDarwinRTSP方案相比之下RTSP可以在两秒之内出现画面超乎我的意料。 过了一段时间之后发现EasyDarwin也有一些缺点由于我需要鉴权、推流回调、播放回调而且好像EasyDarwin在github上并没有注明是否可以商用因此使用EasyDarwin也有一定的风险。 综上所述我决定开发一款自己的RTSP服务器首选语言当然是GO语言了而且我决定不引用任何第三方框架纯用原生GO撸。 其实我觉得flash已经被抛弃了相应的RTMP协议也应该被抛弃RTMP播放延迟高而且打开速度慢相比之下RTSP协议延迟在1秒以内打开速度超快。 2. RTSP 说到RTSP不得不说到RTP实时传输协议RTP是用来传输视频帧数据。但是在很多场景下我们要和服务器进行一些其他交互比如控制RTP传输然后RTSP协议就诞生了RTSP类似于HTTP协议在传输RTP视频帧之前双方先进行RTSP协议 交互RTSP协议交互完成后然后推流端不断发送RTP视频帧给RTSP服务器拉流端则等待RTSP服务器发送RTP视频帧。 说到底RTSP协议 RTSP字符串协议类似HTTP数据 RTP二进制协议数据其中RTP数据原样转发就行推流端推过来的RTP数据服务器原样转发给播放段就行。不同的是推流端和播放端首先要采用RTSP协议和服务器进行几个回合的交互交互完成后就轮到RTP二进制数据了。 我们这里不考虑RTSP走UDP协议我在其它文章中测试过UDP非常容易丢帧而且容易花屏受限制太多因此我们这里只考虑基于TCP的RTSP协议。 RTSP官方给的命令太多我们这里不考虑点播只考虑直播。 对于一个完整的RTSP直播系统来说有推流端Pusher、服务器端Server、播放端Player 3. 推流端 推流端的工作流程如下 3.1 OPTIONS 推流端发送 OPTIONS rtsp://192.168.1.201:5545/2_1 RTSP/1.0\nCSeq: 1\nUser-Agent: Lavf58.37.100\n\n 需要注意的是\n是回车符这是我特意标注出来的,在下面我就不把回车符显示出来了凡是换行必有回车符 RTSP回应 RTSP/1.0 200 OK CSeq: 1 Session: ZTnZLWlGg Public: DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, OPTIONS, ANNOUNCE, RECORD 在回应消息中Session是在此时RTSP服务器生成的在推流端整个连接周期内都使用这个Session 3.2 ANNOUNCE 推流端发送 ANNOUNCE rtsp://192.168.1.201:5545/2_1 RTSP/1.0 Content-Type: application/sdp CSeq: 2 User-Agent: Lavf58.37.100 Session: ZTnZLWlGg Content-Length: 296v0 o- 0 0 IN IP4 127.0.0.1 sNo Name cIN IP4 192.168.1.201 t0 0 atool:libavformat 58.37.100 mvideo 0 RTP/AVP 96 artpmap:96 H264/90000 afmtp:96 packetization-mode1; sprop-parameter-setsZ00AKp2oHgCJWbgICAoAAADAAgAAAMBlCA,aO48gA; profile-level-id4D002A acontrol:streamid0 RTSP服务器收到这个消息之后需要把从v0一直到最后这段文字保存起来因为这是这个RTSP通道的sdp消息播放端请求数据的时候需要这个。 RTSP服务器发送 RTSP/1.0 200 OK CSeq: 2 Session: ZTnZlWLGg 3.3 SETUP  推流端发送 SETUP rtsp://192.168.1.201:5545/2_1/streamid0 RTSP/1.0 Transport: RTP/AVP/TCP;unicast;interleaved0-1;moderecord CSeq: 3 User-Agent: Lavf58.37.100 Session: ZTnZLWlGg RTSP服务器回应 RTSP/1.0 200 OK CSeq: 3 Session: ZTnZLWlGg Transport: RTP/AVP/TCP;unicast;interleaved0-1;moderecord 3.4 RECORD 推流端发送 RECORD rtsp://192.168.1.201:5545/2_1 RTSP/1.0 Range: npt0.000- CSeq: 4 User-Agent: Lavf58.37.100 Session: ZTnZLWlGg RTSP服务器回应 RTSP/1.0 200 OK CSeq: 4 Session: ZTnZLWlGg 3.5 RTP消息 到这里推流端就开始源源不断的发送RTP消息RTSP服务器只需要把RTP消息转发给播放端即可无需回应推流端消息 4. 播放端 播放端的流程 4.1 OPTIONS  播放端发送 OPTIONS rtsp://192.168.1.201:5545/2_1 RTSP/1.0 CSeq: 1 User-Agent: Lavf58.37.100 RTSP服务器回应播放端的Session此时由RTSP服务器生成在播放端连接周期内保持不变 RTSP/1.0 200 OK CSeq: 1 Session: YXN_wZ_GR Public: DESCRIBE, SETUP, TEARDOWN, PLAY, PAUSE, OPTIONS, ANNOUNCE, RECORD 4.2 DESCRIBE 播放端发送 DESCRIBE rtsp://192.168.1.201:5545/2_1 RTSP/1.0 Accept: application/sdp CSeq: 2 User-Agent: Lavf58.12.100 Session: YXN_wZ_GR 还记得3.2中让保存起来的sdp消息吗就在此时发送给播放端。 RTSP服务器回应 RTSP/1.0 200 OK Session: YXN_wZ_GR Content-Length: 296 CSeq: 2v0 o- 0 0 IN IP4 127.0.0.1 sNo Name cIN IP4 192.168.1.201 t0 0 atool:libavformat 58.37.100 mvideo 0 RTP/AVP 96 artpmap:96 H264/90000 afmtp:96 packetization-mode1; sprop-parameter-setsZ00AKp2oHgCJWbgICAoAAADAAgAAAMBlCA,aO48gA; profile-level-id4D002A acontrol:streamid0 4.3  SETUP 播放端发送 SETUP rtsp://192.168.1.201:5545/2_1/streamid0 RTSP/1.0 Transport: RTP/AVP/TCP;unicast;interleaved0-1;moderecord CSeq: 3 User-Agent: Lavf58.37.100 Session: YXN_wZ_GR RTSP服务器回应 RTSP/1.0 200 OK CSeq: 3 Session: YXN_wZ_GR Transport: RTP/AVP/TCP;unicast;interleaved0-1;moderecord 4.4 PLAY 播放端发送 PLAY rtsp://192.168.1.201:5545/2_1 RTSP/1.0 Range: npt0.000- CSeq: 4 User-Agent: Lavf58.12.100 Session: YXN_wZ_GR RTSP服务器回应 RTSP/1.0 200 OK Session: YXN_wZ_GR Range: npt0.000- CSeq: 4 4.5 RTP消息 接下来RTSP服务器只需要把3.5中接受到的RTP消息原封不动原发给播放端即可。 5.  效果图 5.1  服务器 5.2 ffmpeg推流端 5.3 播放端 6. 代码 猛击这里进入码云
http://www.dnsts.com.cn/news/12399.html

相关文章:

  • 培训方案网站建设wordpress实现预览
  • 怎样做网站分流赚钱庄河市城乡规划建设局网站
  • 深圳画册设计网站wordpress yeti2.0
  • 网站负责人可以备案织梦网站程序安装
  • 大型网站的制作国内网站开发平台哪家强
  • 制作自己的网站合肥生态丽景网站建设
  • 做招聘信息的网站有哪些搭建本地网站做色流
  • 公司网站制作申请报告深圳专业高端网站建设多少钱
  • 网站名称创意大全北京正规网站建设公司
  • 维护网站的职位叫什么网站制作套餐
  • 湖北网站设计制作公司有哪些搜索引擎优化包括哪些方面
  • 呼和浩特做网站的地方做网站公司汉狮价格
  • 站长检测同ip网站很多怎么办产品设计需要学的软件
  • 网站兼容性代码比百度更好的网站
  • 怎么做推广和宣传企业做网站seo排名优化培训班
  • 官网和门户网站的区别软件开发专业哪个学校好
  • 网站建设学生选课课程设计报告网络营销案例ppt
  • 网站开发类合同asp.net mvc做网站难吗
  • 手机网站制作哪家公司好做网站运营如何提升用户粘度
  • 网站建设印花税网站建设服务外包
  • 做网站是要写代码的吗广州室内设计培训学校
  • 流量网站建设教程黑客如何攻击网站
  • 网站服务内容有哪些电子商务网站建设管理
  • 邢台网站制作公司wordpress自适应极简主题
  • 网页游戏网站下载微信做明天展现网站要多少钱
  • 天津专门做网站的公司的电话深圳企业黄页
  • 沈阳智能模板建站私密性最好的浏览器
  • wordpress入门建站抖音最火轻奢装修
  • 可以免费打开网站的软件学网站制作多少钱
  • 太原网站建设总部地址毕业设计网站设计说明书