
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的互联网用户都开始通过看直播来获取一些自己需要的内容,而本文我们就通过案例分析来简单了解一下,零基础学直播需要掌握哪些知识。
1、采集:
采集是整个直播过程中的一个环节,负责从采集设备中采集原始数据传递到下一个环节,采集设备可以是手机也可以是摄像机等设备,原始数据的采集涉及两方面数据的采集:音频采集和图像采集。
2、编码:
编码分为视频编码和图像编码,这里我们主要指视频编码,也就是对连续图像的编码。
简单说就是压缩和可能改变视频内容格式的过程,主要的本质是通过消除连续图像之间的时域冗余信息来压缩视频。
几个视频编码关键的技术名词:
帧率/帧速率:
单位:FrameperSecond,(FPS)。即这个视频每秒钟播放多少帧图像,如果帧率为30fps,则说明这个视频每秒钟播放30帧图像。
视频码率:
视频码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。通俗一点的理解就是取样率,单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件。
I帧、P帧
I帧:表示关键帧。你可以理解为这一帧画面的完整保留;解码时只需要本帧数据就可以完成。
P帧:表示这一帧跟之前的一个关键帧的差别,解码时需要用之前缓存的画面叠加上本帧定义的差别,生成终画面
3、网络传输:
传输的阶段包括主播端推流到服务端,服务端的流分发,观众端的拉流几部分。
在直播中,想要进行推拉流,就要用到流媒体传输协议,没有传输协议,视频流无法进行传输。
直播协议:
国内常见公开的直播协议有几个:RTMP、HLS、HDL(HTTP-FLV)、RTP
RTMP
Real-TimeMessagingProtocol实时消息传输协议,基于FLV格式进行开发,底层为tcp协议传输
优点:国内流行度高,开源软件和开源库的支持稳定完整,播放端安装率高。只要浏览器支持FlashPlayer就能非常简易的播放RTMP的直播。建立TCP长连接之后,延迟大概在2-5秒
缺点:不支持HTML5。国外大部分CDN已经不支持,此协议本身底层实现基于TCP,初次建立连接的时候握手过程过于复杂,开带来100ms以上的延迟。
HDL(HTTP-FLV)
与RTMP类似,基于HTTP,RTMP直接将流的传输在RTMP协议之上,HTTP-FLV是在RTMP和客户端之间套了了一层,
相比RTMP,HTTP-FLV会生成一个非常大的http流,只能做主播,RTMP可以做推流/拉流.
优点:同RTMP,中等延迟,大概2-5秒
缺点:不容易被防火墙干掉。很多防火墙会强RTMP,不会强HTTP
RTP
即Real-timeTransportProtocol,用于Internet上针对多媒体数据流的一种传输层协议,底层用的UDP(单个数据报,不用建立连接,简单,不可靠,会丢包,会乱序)
优点:实时性高,延迟低。
缺点:网络抖动的时候,丢帧非常严重,适用于视频会议、视频监控之类,对实时性要求特别高的场景
4、解码、播放
做简单简介。就是获取到编码之后的流,通过先解析I帧(关键帧),然后再解析P帧(差别帧),拼凑成一个流畅画面。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。