当前位置:网站首页>【流媒体】推流与拉流简介
【流媒体】推流与拉流简介
2022-08-02 20:22:00 【音视频开发进阶】
推流
推流:将直播的内容推送至服务器的过程。
即指的是把采集阶段封包好的内容传输到服务器的过程。其实就是将现场的视频信号传到网络的过程。
“推流”对网络要求比较高,如果网络不稳定,直播效果就会很差,观众观看直播时就会发生卡顿等现象,观看体验很是糟糕。
要想用于推流还必须把音视频数据使用传输协议进行封装,变成流数据。常用的流传输协议有RTSP、RTMP、HLS等,使用RTMP传输的延时通常在1–3秒,对于手机直播这种实时性要求非常高的场景,RTMP也成为手机直播中最常用的流传输协议。
最后通过一定的Qos算法将音视频流数据推送到网络断,通过CDN进行分发。
拉流
拉流:指服务器已有直播内容,用指定地址进行拉取的过程。
即是指服务器里面有流媒体视频文件,这些视频文件根据不同的网络协议类型(如RTMP、RTSP、HTTP等)被读取的过程,称之为拉流。
说的简单点,你观看优酷视频就可以看成是拉流,视频文件存储在优酷的服务器上面,你通过HTTP(或者RTMP/RTSP)协议,也就是网页的形式去获取视频观看,这就是拉流的过程。
在这个过程中有三个要素:1-服务器【提供视频文件存储的地方】 2-传输协议【就是你要通过什么方式传输视频】3-读取终端【就是通过什么播放出来】
示意图
以下是从网络上搜寻到的有关推流与拉流的示意图,

一张示意图没有看明白,没有关系,再来一张示意图:

其实可以简要的理解为推流就是直播端,而拉流就是客户端哦。
RTMP传输协议
流媒体中的传输协议有很多种,以下先介绍一种,其他可以参照此协议方便理解。
RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。一种设计用来进行实时数据通信的网络协议。
每一个推流码地址唯一指向单个的直播活动。它由rtmp://开头,包含了上传服务器地址,上传目录名和上传节点,三部分组成。所有的rtmp地址都是这种结构组成,基本同一个平台不同直播的地址前两部分是不变的。

流媒体协议与格式
同样用一张图来概括:

来源:https://blog.csdn.net/weixin_44299027/article/details/122711869
最后欢迎大家加入 音视频开发进阶 知识星球 ,这里有知识干货、编程答疑、开发教程,还有很多精彩分享。
更多内容可以在星球菜单中找到,随着时间推移,干货也会越来越多!!!

给出 10元 优惠券,涨价在即,目前还是白菜价,基本上提几个问题就回本,投资自己就是最好的投资!!!

加我微信 ezglumes ,拉你进技术交流群
推荐阅读:
觉得不错,点个在看呗~

边栏推荐
- Bena的生命周期
- 【实战 已完结】WPF开发自动化生产管理平台
- Implement fashion_minst clothing image classification
- 什么是 IDE
- Informatics Olympiad All-in-One (1260: [Example 9.4] Intercepting Missiles (Noip1999))
- X 2 Earn必须依靠旁氏启动?GameFi的出路在哪?(下)
- 二丙二醇甲醚醋酸酯
- ECCV 2022 | 通往数据高效的Transformer目标检测器
- ABAP grammar small review
- 信息学奥赛一本通(1256:献给阿尔吉侬的花束)
猜你喜欢

"A daily practice, happy water problem" 1374. Generate a string with an odd number of each character

【手撕AHB-APB Bridge】~ AMBA总线 之 APB

华为设备配置BFD多跳检测

Packages and packages, access modifiers

软件成分分析:华为云重磅发布开源软件治理服务

「每周译Go」这次我们来点不一样的!--《How to Code in Go》系列上线

56.【全局变量和局部变量专题】

太魔人招新啦|快来加入我们吧!

特拉维夫大学 | Efficient Long-Text Understanding with Short-Text Models(使用短文本模型进行高效的长文本理解)

The software testing process specification is what?Specific what to do?
随机推荐
How the sensor works
js Fetch返回数据res.json()报错问题
浅议.NET遗留应用改造
Day35 LeetCode
.NET性能优化-你应该为集合类型设置初始大小
一次线上事故,我顿悟了异步的精髓
笑话:如果你在河边等待得足够久,你会看到你的敌人的尸体漂过,是怎么翻译出来的?
Helm基础知识
数字孪生助力智慧城市可视化建设
基于“无依赖绝对定位”实现的圣杯三栏布局
The time series database has been developed for 5 years. What problem does it need to solve?
9,共模抑制比一-不受输入信号中共模波动的影响。【如何分析共模CM抑制比。】
Qt提升自定义控件,找不到头文件
供电系统电气图
有效解决MySQL报错:ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO/YES)
即时通讯开发移动端网络短连接的优化手段
【手撕AHB-APB Bridge】~ AMBA总线 之 APB
什么是 IDE
并发与并行
奥特学园ROS笔记--7(289-325节)