直播-拉流和推流怎么设置?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了直播-拉流和推流怎么设置?相关的知识,希望对你有一定的参考价值。
直播-拉流和推流首先要了解拉流和推流的原理。
直播中视频编码器可以称为推流,就是把前端的视频画面通过编码器推流到各个直播平台。
推流中只要将直播平台的推流地址复制到编码器管理后台即可实现推流操作。比方说RTSP,RTMP推流等。
视频解码器可以称为拉流,就是把你网络的视频流通过解码器拉流还原到大屏上显示,显示包括电视、拼接屏等。如果需要把视频还原在大屏幕显示出来,就需要解码器。设置跟编码器同样道理。
参考技术A 这个方式比较多,要看你用什么设备了。一般直播的话,我们都会选择采集卡,这样直接通过直播软件推流到直播平台的服务器就好了。推流协议是RTMP。那么另一种直播方式就是拉流,拉流的话,可以使用编码器,直接将视频源接入编码器,编码成网络流,然后通过VLC软件解码就好了。拉流协议是HTTP/RTSP居多。本回答被提问者采纳 参考技术B HoinWare流媒体直播软件支持拉流和推流
搭建推流和拉流环境
【准备】一个带有公网 ip 且带宽够用的云服务器。
本文测试的服务器环境: 腾讯云服务器Ubuntu Server 18.04.1 LTS 64位 2C4G100M
【配置环境】
echo \'deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse \' > /etc/apt/sources.list && cat /etc/apt/sources.list
需要使用root账号执行上面的命令。
apt update
apt install -y git gcc g++ unzip make python
git clone https://gitee.com/songboy/srs.git && ls srs
cd srs/trunk/ && ls
./configure && make
cat conf/srs.conf
【运行】
RTMP推流+RTMP拉流
./objs/srs -c conf/srs.conf
RTMP推流+RTMP/hls拉流
./objs/srs -c conf/http.hls.conf
RTMP推流+RTMP/hls拉流 后台运行
nohup ./objs/srs -c conf/http.hls.conf > myout.file 2>&1 &
当返回pid则程序正常运行,例如:[2] 10654。
【查找并结束进程】
1.查找正在运行的程序
ps -ef | grep srs.conf
得到以下结果
root 19522 2038 0 17:22 pts/0 00:00:00 ./objs/srs -c conf/http.hls.conf
2.结束进程
想要结束程序的话,只需要输入 kill -9 19522 就可以了。
【需要注意的地方】
【注意】hls拉流时,服务器应放行TCP:8080端口。
【问题】发现OBS 软件 RTMP推流不成功,无法连接服务器。
【解决】服务器端 系统设置及安全组出站、入站均放行TCP:1935端口。
【温馨提示】使用 nohup 可以使程序后台运行。
【先说结论】
可以手机/电脑RTMP推流,可以手机hls/电脑RTMP/电脑hls拉流。
【建议推流/拉流方法】
电脑RTMP推流+电脑RTMP拉流(VLC/web)延时约3秒。
【不同方式下的延时】
电脑RTMP推流 手机hls拉流 70秒
电脑RTMP推流 电脑RTMP拉流 3秒(VLC)
电脑RTMP推流 电脑RTMP拉流 3秒(web)
电脑RTMP推流 电脑hls拉流 30秒(VLC)
电脑RTMP推流 电脑hls拉流 极其不流畅(web)
手机RTMP推流 手机hls拉流 50秒
手机RTMP推流 电脑RTMP拉流 4秒(VLC)
手机RTMP推流 电脑RTMP拉流 2秒(web)
手机RTMP推流 电脑hls拉流 70秒(VLC)
手机RTMP推流 电脑hls拉流 极其不流畅(web)
【压力测试】
电脑OBS RTMP推流,电脑VLC播放器3个窗口RTMP拉流、3个窗口hls拉流。推流流量130k/s。
基本不占用云服务器内存和CPU,负载较低。
【实际测试】使用源码方式搭建SRS流媒体服务
服务器环境: 腾讯云服务器Ubuntu Server 18.04.1 LTS 64位 2C4G100M
电脑发送及接收端环境:WIN10纯净版 家用100M宽带
【以下软件使用方法】【玩转腾讯云】搭建推流和拉流环境
电脑RTMP推流:OBS软件 OBS下载
推流服务器:rtmp://123.57.228.113/live
推流串流密钥:123
OBS设置 【输出-视频比特率】为700kbps, 【音频-采样率】为44.1KHZ】,【视频-输出分辨率】为1920X1080时,延时约3秒,画质清晰,实际下行流量约150k/s。
电脑RMTP/hls拉流:VLC/网页播放
RTMP拉流rtmp://192.144.144.109:1935/live/123
hls拉流:http://192.144.144.109:8080/live/123.m3u8
下面的网址可以在线解析播放hls(m3u8)、RMTP流。
手机RMTP推流:杏林推流软件
推流: rtmp://192.144.144.109:1935/live/123
720P -Protrait 推流流量约200k/s,屏幕无变化时推流流量约70k/s。
手机hls拉流:Chrome浏览器网页播放
hls拉流:http://192.144.144.109:8080/live/123.m3u8
【参考文章原文链接】
Ubuntu中使用Nginx+rtmp模块搭建流媒体视频点播服务
本文代码来自:docker中使用源码方式搭建SRS流媒体服务 侵权删除。
以上是关于直播-拉流和推流怎么设置?的主要内容,如果未能解决你的问题,请参考以下文章