环境准备
推流服务器
我用 SRS 运行在 Debian/Jessie 下 v2.0.209 。
编译安装
./configure --prefix=/opt/srs --with-stat --with-nginx --with-ffmpeg --full --jobs=32
make -j32
make -j32 install
cp -fv /opt/srs/etc/init.d/srs /etc/init.d/srs
推流工具
我用 OBS MAC版 v0.15.1 ,手动下载安装。
用 ffmpeg 也可以,brew 命令行安装。
拉流工具
我用 VLC MAC版 v2.2.4 ,手动下载安装或用 brew 命令行安装。
配置使用
配置SRS
主配置文件 /opt/srs/conf/srs.conf
listen 1935;
max_connections 1000;
srs_log_tank file;
srs_log_file /tmp/srs.log;
http_api {
enabled on;
listen 1985;
}
http_server {
enabled on;
listen 0.0.0.0:80 backlog=8192;
server_name ;
location / {
resolver 223.5.5.5;
proxy_buffering off;
proxy_set_header Host ;
proxy_pass /;
}
rewrite ^/(.+)\.flv$ [app]/[stream].flv;
}
stats {
network 0;
}
vhost __defaultVhost__ {
http_remux {
enabled on;
mount [vhost]/[app]/[stream].flv;
}
}
向上推流
将推流服务端指定到服务器IP:
务必记住你的推流路径(/live)和流密钥(livestream)。或者用 ffmpeg:
ffmpeg -re -i /Volumes/Data/BML/Demo.MP4 -c copy -f flv rtmp://:1935/live/livestream
手动拉流
用VLC就可以在线看直播了:
整个URL地址就是推流时用到的推流路径(/live)和流密钥(livestream)拼接而成。
测试效果
测试环境
Debian / Jessie 8.4
Linux live626 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt25-1 (-03-06) x86_64 GNU/Linux
OSX EI 10.11.5
Darwin higkoo-mac-mini 15.5.0 Darwin Kernel Version 15.5.0: Tue Apr 19 18:36:36 PDT ; root:xnu-3248.50.21~8/RELEASE_X86_64 x86_64
SRS/2.0.209(ZhouGuowen)
Build: -06-24 08:03:25 Configuration:--x86-x64 --prefix=/usr --with-stat --with-nginx Features:--prefix=/usr --with-hls --with-hds --with-dvr --with-nginx --with-ssl --without-ffmpeg --with-transcode --with-ingest --with-stat --with-http-callback --with-http-server --without-stream-caster --with-http-api --with-librtmp --without-research --with-utest --without-gperf --without-gmc --without-gmp --without-gcp --without-gprof --without-arm-ubuntu12 --without-mips-ubuntu12 --log-trace
OBS 0.15.1 (mac)
VLC media player 2.2.4 Weatherwax (revision 2.2.4-3-g2fc51dd)
编译者 fpk 编译时间 rufus.local (Jun 1 17:58:56) 编译器: clang: warning: argument unused during compilation: '-mmacosx-version-min=10.6'