前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【玩转腾讯云】搭建推流和拉流环境

【玩转腾讯云】搭建推流和拉流环境

原创
作者头像
我是技术小白
修改2020-04-15 15:11:34
13.8K2
修改2020-04-15 15:11:34
举报
文章被收录于专栏:技术小白的奇思妙想

【参考文章原文链接】

Ubuntu中使用Nginx+rtmp模块搭建流媒体视频点播服务

Ubuntu中使用Nginx+rtmp搭建流媒体直播服务

docker中使用源码方式搭建SRS流媒体服务

SRS-HTTP服务部署实例

本文代码来自:docker中使用源码方式搭建SRS流媒体服务 侵权删除。

【准备】一个带有公网 ip 且带宽够用的云服务器。

本文测试的服务器环境: 腾讯云服务器Ubuntu Server 18.04.1 LTS 64位 2C4G100M

【配置环境】

代码语言:javascript
复制
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账号执行上面的命令。

代码语言:javascript
复制
apt update
代码语言:javascript
复制
apt install -y git gcc g++ unzip make  python
代码语言:javascript
复制
git clone https://gitee.com/songboy/srs.git && ls srs
代码语言:javascript
复制
cd srs/trunk/ && ls
代码语言:javascript
复制
./configure && make
代码语言:javascript
复制
cat conf/srs.conf

【运行】

RTMP推流+RTMP拉流

代码语言:javascript
复制
./objs/srs -c conf/srs.conf

RTMP推流+RTMP/hls拉流

代码语言:javascript
复制
./objs/srs -c conf/http.hls.conf

RTMP推流+RTMP/hls拉流 后台运行

代码语言:javascript
复制
nohup ./objs/srs -c conf/http.hls.conf > myout.file 2>&1 &

当返回pid则程序正常运行,例如:[2] 10654。

【查找并结束进程】

1.查找正在运行的程序

代码语言:javascript
复制
ps -ef | grep srs.conf

得到以下结果

代码语言:javascript
复制
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

VLC media player 下载

下面的网址可以在线解析播放hls(m3u8)、RMTP流。

在线SRS播放器

手机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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云服务器
云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档