之前的一篇文章:搭建内网音频直播源基于天津相声广播音频_gsls200808的博客-CSDN博客
实际上这篇文章搭建的效果不尽如人意。由于虚拟声卡的存在,导致音频会卡顿。
大部分融媒体中心在推广播流的时候用的是OBS,OBS没法传纯音频,必须带一个背景视频,这个视频按默认设置的话是高码率的,视频占用的带宽是音频的几十倍
所以还是有必要进行转发的。ffmpeg有直接转发流的命令,但是流本身是会丢包的,转发再丢一次这样还是不太稳定。
所以如果有m3u8地址的还是用VLC播放,然后用之前的ffmpeg命令串流本机音频。
centos7安装带GUI的服务器
安装VLC ffmpeg pavucontrol
- #安装VLC ffmpeg pavucontrol
- yum -y install epel-release
- rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
- yum install vlc
- yum install ffmpeg
- yum install pavucontrol
VLC-打开网络串流 填m3u8地址 ,点击播放
为了保证持续连接,还需要进行http持续连接设置
VLC--工具--偏好设置--全部--输入/编解码器--访问模块--HTTPS--勾选 自动重新连接 --保存
实测发现,vlc也有一定概率崩溃,使用ffplay播放能更流畅
ffplay -nodisp xxx.m3u8
centos的ffmpeg版本比较低,不支持48000采样率音频,所以需要手动指定为41000采样率
所以推流命令为
ffmpeg -f alsa -i default -b:a 64k -c:a libfdk_aac -ar 44100 -f flv rtmp://192.168.3.57/live/livegb
CentOS用伪传输声卡可以直接把VLC播放的声音传过去,不需要添加虚拟声卡再进控制台设置了。而且伪传输的方式传过去的比虚拟声卡的方式流畅很多。