返回目录:设置问题
推流环节对直播链路的影响非常大,e799bee5baa6e78988e69d83338如果推流网络不稳定,就算前期在音视频处理、编码和封装上做何种优化,用户体验都会很糟糕。推流实际上就是在把封装好的视频和音频传输到服务器的过程。换句话说,就是将现场的视频信号传到网络的过程。此外,推流这个环节对网络的要求比较高,如果网络不稳定,直播的效果就会很差,像是遇到卡顿、延时等情况。
推送协议种类
根据使用案例,一对一直播软件开发中,接触到的推送协议有以下几个:
1、RTMP
RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT、RTMPS、RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在Flash平台和支持RTMP协议的流媒体之间进行音视频和数据通信。支持该协议的软件包括Adobe Media Server、Ultrant Media Server、red5等。
RTMP是目前主流的流媒体传输协议,广泛用于直播领域,可以说市面上大多数的直播平台都应用了这个协议。优点:CDN厂商基本都支持此协议,兼容性强,且在各平台上实现容易。缺点:传输成本高,在弱网环境下比较容易丢包;不支持浏览器推送;最重要的一点是RTMP是Adobe的私有协议,但是Adobe已经不再更新。
2、WebRTC
WebRTC,即网页即时通信的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。它目前已经开源并且在Google、Mozilla、Opera支持下被纳入万维网联盟的W3C推荐标准。相对于一对一直播软件,它更多的是广泛应用在各种视频会议中。此协议的优点是:由于是纳入W3C标准,主流浏览器对它的支持逐渐提高,相比起RTMP来讲,它在弱网情况下的空间优化较大,而且支持点对点通信,从而降低了整体延迟。但是缺点也比较棘手,就是目前传统CDN中没有类似的服务提供。
3、基于UDP的私有协议
有些一对一直播软件开发商会使用UDP作为底层协议开发自己的私有协议,因为UDP在弱网环境下,通过一些定制化的调优可以达到比较好的弱网优化效果,但同样因为是私有协议也势必会有现实问题:开发成本高,往往需要自建CDN或者和CDN达成协议,另外由于兼容性较差,在面对升级时可能得不到技术支持。
那么该如何推流?
1、在推流传输方面全部由开发商自己搭建,花费较大,总体来说不太现实。
2、在直播软件开发中,可以和一些主流CDN厂商或者云视频服务商合作,它们往往会提供推流的“一条龙”服务。
3、大多数直播平台都会同时接入多个视频云服务提供商,这样可以做拉流线路互备,对推流后视频集群再进行优化也可提高直播的流畅性和稳定性。
推流,指的是把采集阶段封包好的内容传输到服务器的过程e5a48de588b6e799bee5baa6e997aee7ad94336。其实就是将现场的视频信号传到网络的过程。“推流”对网络要求比较高,如果网络不稳定,直播效果就会很差,观众观看直播时就会发生卡顿等现象,观看体验很是糟糕。
要想用于推流还必须把音视频数据使用传输协议进行封装,变成流数据。常用的流传输协议有RTSP、RTMP、HLS等,使用RTMP传输的延时通常在1–3秒,对于手机直播这种实时性要求非常高的场景,RTMP也成为手机直播中最常用的流传输协议。最后通过一定的Qos算法将音视频流数据推送到网络断,通过CDN进行分发。
扩展资料:
直播中使用广泛的“推流协议”一般是RTMP(Real Time Messaging Protocol——实时消息传输协议)。该协议是一个基于TCP的协议族,是一种设计用来进行实时数据通信的网络协议,主要用来在Flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。支持该协议的软件包括Adobe Media Server/Ultrant Media Server/red5等。
在高精尖沙龙直播中,最初使用传统设备进行“推流”。
具体过程就是:通过网线将EFP系统中的切换台、网络编码器、笔记本按顺序连接,连接完成后确保笔记本电脑的IP地址和网络编码器的地址在同一网段,然后在电脑页面上对编码器的各种“推流参数”进行调整,为保证正常“推流”,还需设置网络推流地址,输入推流地址、直播地址、视频模式、分辨率、码率、播放域名、播放地址等内容。设置完毕后确认IP地址,再进行网络测速,并确保网络与网络编码器连接正常。此种“推流”所需设备过多,出现问题后十分麻烦,需要对设备进行逐一排查,极耗费时间。
后来,将直播系统改为Livestudio系统,“推流”内置在Livestudio的软件之中,整个“推流”过程不再需要额外的网络编码器和笔记本等设备,也无需再设置IP,只要网络正常,联网即可完成操作,还可根据网络的实际情况设置“推流”的质量以满足要求。此种操作十分便捷,有效避免了上述问题的出现。
参考资料:百度百科:网络直播
狼牙直播分析:推流是指用obs 等内容抓取软件把内容传输到服务器的过程,拉流是指服务器上已经有直播内容,用指定地址进行拉取。
这个方式比较多,要看你用什么设备了。一百般直播的话,我们都会选择采集卡,这样直接通过直播软件度推流到直播平台的服务器就好了。推流协议问是RTMP。
那么另一种直答播方式就是拉流,拉流的话,可以使用编码器,直接将视频源接版入编码器,编码成网络流,然后通过VLC软件解码就好了。权拉流协议是HTTP/RTSP居多。