推流:将直播内容推送至服务器的过程
拉流:为服务器已有直播内容,用指定地址进行拉取的过程
推流码:
RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。
一种设计用来进行实时数据通信的网络协议。
每一个推流码地址唯一指向单个的直播活动。它由rtmp://开头,包含了上传服务器地址,上传目录名和上传节点,三部分组成。所有的rtmp地址都是这种结构组成,基本同一个平台不同直播的地址前两部分是不变的。
推流码构成
推流过程示意图
各流程协议与格式
实例
这里我们模拟本地视频播放并推流到rtsp服务器,然后采用vlc客户端播放rtsp流
准备工作:
-
搭建rtsp服务器
-
本地摄像头推流到rtsp
-
采用vlc客户端播放rtsp流
搭建rtsp服务器
参阅:搭建Rstp-simple-server
采用golang开发的,直接clone后,go build后即可直接启动。
本地视频播放并推流
直接采用ffmpeg工具进行推流
ffmpeg -re -i Sea.mp4 -vcodec copy -codec copy -f rtsp rtsp://172.31.164.23:8554/a/video
-
Sea.mp4是本地视频
-
rtsp://172.31.164.23:8554/live/audio是rtsp服务的url
过程如下示:
vlc拉流
-
打开VLC播放器
-
设置播放地址
-
设置拉流地址
rtsp://172.31.164.23:8554/live/audio
开始推流,点击open即后开始播放。
原文
https://zhuanlan.zhihu.com/p/486804108
★文末名片可以免费领取音视频开发学习资料,内容包括(FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,srs)以及音视频学习路线图等等。
见下方!↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓