一场直播的播放包括采集、处理、编码、推流、发布、解码和播放七个部分。其中推拉流是整个直播搭建影响最大的部分。前端推流可以实现将直播中采集到的数据包从终端传递到服务器的过称,是直播搭建中众多难题中的一个,如果想要实现直播搭建,最好是把各个基础的难题解决掉,今天给大家提供一个直播搭建的解决方案:
一、采用命令:ffmpeg-i input-vodec copy-acodec copy-f flv rtmp://127.0.0.1/live/cgstream0input可以推送实时流和文件,在推荐文件时,需要加上-re,在实际操作中需要将127.0.0.1换成rtmp所在机器的IP地址。
二、直播搭建常见推流协议:
1.RTMP,该协议基于TCP,包括RTMP、RTMPT、RTMPD等多种变化格式,广泛应用于直播搭建中,大多数直播软件推流都会用到它,所以想要进行直播搭建,推荐选择它,协议简单且支持大多数CDN厂商。
2.webrtc,可以实现网页端的直播播放,本身以API的形式存在,对主流的浏览器支持程度高,弱网络环境下表现良好,可以实现点对点通信,因此非常适合于连麦场景,广泛应用与视频会议和连麦中。它的优点在于延迟低,缺点在于不支持CDN。
3.HLS切片式传输,微信端常用,用户可以在客户端自主切换码率已获得更好的观看体验,我们在看直播时,线路上有主线、线路1、线路2等多种选择方式,用户可以根据自己的网络情况选择合适的线路。
4.CDN分布,CDN内容分发网络,是直播搭建离不开的内容分发辅助方式。CDN由无数服务器连成的一张网络组成,在音频数据包被推流到服务器上后,服务器会通过CDN分发网络把数据包发送出去,这样在用户想要观看时,服务器会自动选择距离用户最近的节点进行发送。
CDN的优势在于有效降低了主服务器的压力,提高了系统的反应速度,通过降低网络堵塞,把视频尽快的送到用户眼前,使用CDN服务器的原因在于直播搭建开发之后会面临很大的服务器压力。
三、解码方式。推荐使用H.264或H.265的编码方式+软硬结合的解码方式,这两个解码方式的压缩率都很高,但对音质和画质的压缩力度比较小,不会损坏音画质。软硬解码的嘉禾方式则是软解码是使用CPU解码,CPU的质量决定解码后视频的画质、细节,但对处理器占用比较大,对部分小内存机型很不友好,相比较而言,硬解码的解码方式对处理器的要求更低,更适合直播搭建使用。
声明:以上内容为云豹科技作者本人原创,未经作者本人同意,禁止转载,否则将追究相关法律责任m.yunbaokj.com