VLC 播放器的推流和拉流方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VLC 播放器的推流和拉流方法相关的知识,希望对你有一定的参考价值。
参考技术AVLC media player 可以将本地视频文件或电脑的视频采集信号编码成网络串流(stream), 这样普通电脑就可以作为一个流编码器, 在利用vlc或者其他流媒体播放器(如potplayer)进行拉流, 测试流效果.
5.流输出设置: 勾选激活转码, 可将媒体按照下方选中的格式转码成特定的封装格式, 配置文件选需要的转码格式
将播放循环模式设为单个循环, 推流将持续循环工作
注意: 如果勾选过"激活转码", 推流窗口第一遍播放将边转码边推流, 可能会出现卡顿掉帧无声等问题, 第二遍起不需要再转码, 推流会变得正常.
搭建推流和拉流环境
【准备】一个带有公网 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流媒体服务 侵权删除。
以上是关于VLC 播放器的推流和拉流方法的主要内容,如果未能解决你的问题,请参考以下文章