流媒体中的推流和拉流区别

Posted 道亦无名

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了流媒体中的推流和拉流区别相关的知识,希望对你有一定的参考价值。

简介

推流指的是把采集阶段封包好的内容传输到服务器的过程,而拉流是指服务器已有直播内容,用指定地址进行拉去的过程。

推流端的四个环节:

  1. 首先是采集环节:采集是指对图像和声音的采集,简单说就是能让网络视频直播系统和主播摄像头连起来,软件能获取到外界的音视频信息。然后是前处理阶段:这里也是俗称美颜的阶段,这要求我们在网络视频直播系统中加入美颜、特效、萌颜等效果,而这个算法需要涉及到GPU编程,这个阶段的难点不在于美颜,因为美颜通常使用SDK来解决的,重点在于GPU占比。
  2. 目前市面上的手机硬件配置已经越来越高了,但在一些老旧机型上,功耗仍然是个很大的问题,GPU占用太高会导致手机发烫、摄像头掉帧甚至软件闪退。
  3. 接下来就是编码了,编码是为了压缩数据也是为了更好的解码,通常我们会选择用硬编码来平衡编码速度和编码质量之间的效率比,但软编仍然是画面质量更高的选择,也有用户愿意使用软编码的方式,因此在最初设计系统时,我们应当同时设计好软编硬编两种编码方式。
  4. 推流端最后一个操作就是推流,把视频推流到服务器,以便于直播视频的分发和拉流,至此,主播端的全部设置就结束了,在这里有几点难点。

推流设计难点

推流端的设计难点现在的主流手机系统有ios和安卓,IOS还好,机型较少,适配起来还算容易,但是安卓市场手机硬件之间的差别是非常严重的,需要耗费大量的精力做对安卓机型的适配,否则在后期用户体验就会非常差,可能会出现像之前王者荣耀更新时出现的事故一样——某机型反复闪退或无法进入游戏——在

以上是关于流媒体中的推流和拉流区别的主要内容,如果未能解决你的问题,请参考以下文章

VLC 播放器的推流和拉流方法

直播-拉流和推流怎么设置?

阿里云直播鉴权

搭建推流和拉流环境

推流和拉流的概念以及RTMP和HLS协议

C++/Qt音视频通话开发MetaRTC源码解读,视频推流和拉流