几种直播流媒体协议

更新时间:2023-04-21 17:30:28 阅读: 评论:0


2023年4月21日发(作者:裤子款式图)

⼏种直播流媒体协议

题外话:

HTTP渐进下载流媒体播放: 基于TCP。

yy、乐视、爱奇艺、优酷⼟⾖、搜狐视频、花椒直播,主要还是通过rtmp&hls来实现的,

但他们也意识到rtmp的天⽣缺陷,所以不管是技术预研也好,还是测试版也好,都已经或多或少在弄WebRTC了。

流媒体概述:

所谓流媒体是指采⽤流式传输的⽅式在 Internet 播放的媒体格式。

流媒体⼜叫流式媒体,它是指商家⽤⼀个视频传送服务器把节⽬当成数据包发出,传送到⽹络上。

⽤户通过解压设备对这些数据进⾏解压后,节⽬就会像发送前那样显⽰出来。

流媒体以流的⽅式在⽹络中传输⾳频、视频和多媒体⽂件的形式。

流媒体⽂件格式是⽀持采⽤流式传输及播放的媒体格式。

流式传输⽅式是将视频和⾳频等多媒体⽂件经过特殊的压缩⽅式分成⼀个个压缩包,

由服务器向⽤户计算机连续、实时传送。在采⽤流式传输⽅式的系统中,⽤户不必像⾮流式播放那样等到整个⽂件

全部下载完毕后才能看到当中的内容,⽽是只需要经过⼏秒钟或⼏⼗秒的启动延时即可在⽤户计算机上利⽤

相应的播放器对压缩的视频或⾳频等流式媒体⽂件进⾏播放,剩余的部分将继续进⾏下载,直⾄播放完毕。

RTP :(Real-time Transport Protocol)

是⽤于Internet上针对多媒体数据流的⼀种传输层协议.RTP 协议和 RTP 控制协议 RTCP ⼀起使⽤,

⽽且它是建⽴在 UDP 协议上的.

RTP 不像http和ftp可完整的下载整个影视⽂件,它是以固定的数据率在⽹络上发送数据,客户端也是按照这种速度观看影视⽂件,第一次作文600字 当

影视画⾯播放过后,就不可以再重复播放,除⾮重新向服务器端要求数据。

RTCP:Real-time Transport Control Protocol RTP Control Protocol或简写 RTCP)

实时传输控制协议,是实时传输协议(RTP)的⼀个姐妹协议.

注:--:RTP 协议和 RTP控制协议(RTCP) ⼀起使⽤,⽽且它是建⽴在UDP协议上的

RTSP:(Real Time Streaming Protocol)

实时流媒体会话协议,SDP(会话描述协议),RTP(实时传输协议)。

是⽤来控制声⾳或影像的多媒体串流协议,RTSP 提供了⼀个可扩展框架,使实时数据,如⾳频与视频的受控、点播成为可能。

媒体数据使⽤rtp,rtcp协议。

⼀般使⽤udp 作为传输层。适合IPTV场景。

数据源包括现场数据与存储在剪辑中的数据。该协议⽬的在于控制多个数据发送连接,为选择发送通道,如UDP、多播UDP与TCP提供途

径,并为选择基于RTP上发送机制提供⽅法

传输时所⽤的⽹络通讯协定并不在其定义的范围内,服务器端可以⾃⾏选择使⽤TCP或UDP来传送串流内容,⽐较能容忍⽹络延迟.

--->:RTSP 与 RTP 最⼤的区别在于:RTSP 是⼀种双向实时数据传输协议,它允许客户端向服务器端发送请求,如回放、快进、倒退等操

作。当

然,RTSP 可基于 RTP 来传送数据,还可以选择 TCP、UDP、组播 UDP 等通道来发送数据,具有很好的扩展性。它时⼀种类似与http协

的⽹络应⽤层协议.

WebRTC:

web端实现流媒体的协议。google刚推出WebRTC的时候巨头们要么冷眼旁观,要么抵触情绪很⼤。使⽤RTP协议传输。

RTMP(Real Time Messaging Protocol)

Macromedia 开发的⼀套视频直播协议,现在属于 Adobe。和 H安染染 LS ⼀样都可以应⽤于视频直播,基于TCP不会丢失。

// 区别是 RTMP 基于 flash ⽆法在 iOS 的浏览器⾥播放,但是实时性⽐ 狮子怎么画 HLS 要好。

实时消息传送协议是 Adobe Systems 公司为 Flash 播放器和服务器之间⾳频、恋爱小故事 视频和数据传输 开发的开放协议.

// iOS 代码⾥⾯⼀般常⽤的是使⽤ RTMP 推流,可以使⽤第三⽅库 librtmp-iOS 进⾏推流,librtmp 封装了⼀些核⼼的 API 供使⽤者调

RTMP 协议也要客户端和服务器通过“握⼿”来建⽴ RTMP Connection,然后在Connection上传输控制信息。RTMP 协议传输时orange音标 会对

数据格式化,⽽实际传输的时候为了更好数学教研组工作计划 地实现多路复⽤、分包和信息的公平性,发送端会把Message划分为带有 Message ID的

Chunk,每个Chunk可能是⼀个单独的Message,

也可能是Message的⼀部分,在接受端会根据Chunk中包含的data的长度,message id和message的长度把chunk还原成完整的

Message,从⽽实现信息的收发。

HLS:HTTP Live Streaming(HLS)

是苹果公司(Apple Inc.)实现的基于HTTP的流媒体传输协议小手爬儿歌 ,

可实现流媒体的 直播 和 点播 ,主要应⽤在iOS系

统,为iOS设备(如iPhone、iPad)提供⾳视频直播和点播⽅案。

HLS 点播,基本上就是常见的分段HTTP点播,不同在于,它的分段⾮常⼩。

相对于常见的流媒体直播协议,例如RTMP协议、RTSP 协议、MMS 协议等,HLS 直播最⼤的不同在于,直播客户端获取到的,并不是

⼀个完

整的数据流。

HLS 协议在服务器端将直播数据流存储为连续的、很短时长的媒体⽂件(MPEG-TS格式),⽽客户端则不断的下载并播放这些⼩⽂件,

因为服务器端总是会将最新的直播数据⽣成新的⼩⽂件,这样客户端只要不停的按顺序播放从服务器获取到的⽂件,就实现了直播。

由此可见,基本上可以认为,HLS 是以>>点播的技术⽅式来实现直播<<。由于数据通过 HTTP 协议传输,所以完全不⽤考虑防⽕墙或者代

理的问

题,⽽且分段⽂件的时长很短,客户端可以很快的选择和切换码率,以适应不同带宽条件下的播放。不过HLS的这种技术特点,决定了它的

延迟⼀般总是会⾼于普通的流媒体直播协议。

// iOS和 Android 都天然⽀持这种协议,配置简单,直接使⽤ video 标签即可

***VLS :是⼀种流服务器,专门⽤来解决流的各种问题,它也具有⼀些 VLC 的特征。 videolan 作为服务器可以输出http,rtp,rtsp的

流。

原则上,RTSP,RTMP,HTTP 都可以做直播和点播,但⼀般做 直播⽤ RTSP和RTMP,做点播⽤ HTTP。我们选⽤的是RTMP协议。


本文发布于:2023-04-21 17:30:28,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/507928.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:rtsp协议
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图