通过FFmpeg命令进行RTMP推流

流程

  1. 启动SRS服务器
  2. 使用FFmpeg推流
  3. 使用VLC拉流播放

启动SRS

  1. 切换到srstrunk目录
  2. 执行./scripts/run.sh
  3. 根据提示,修改/etc/hosts文件

或者,

  1. 切换到srstrunk目录
  2. 执行./objs/srs -c ./conf/rtmp.conf

推流脚本(示例)

1
2
3
4
for((;;)); do \
ffmpeg -re -i input.mp4 -c copy -f flv -y rtmp://172.16.146.11:1935/live/apple; \
sleep 1; \
done

后台执行推流脚本

nohup bash push_rtmp.sh &>/dev/null &

此处使用bash push_rtmp.sh而不是./push_rtmp.sh的原因是:默认的shell可能不是bash

HTTP FLV

当使用./objs/srs -c ./conf/http.flv.live.conf启动时,可以使用浏览器打开直播流。

推流:

ffmpeg -re -i input.mp4 -c copy -f flv -y rtmp://172.16.146.11:1935/live/apple

在浏览器中播放:

http://172.16.146.11:8080/live/apple.flv

HTTP HLS

当使用./objs/srs -c ./conf/http.hls.conf启动时,可以使用浏览器打开直播流。

推流:

ffmpeg -re -i input.mp4 -c copy -f flv -y rtmp://172.16.146.11:1935/live/apple

在浏览器中播放:

http://172.16.146.11:8080/live/apple.m3u8


通过FFmpeg命令进行RTMP推流
https://daniate.github.io/2018/11/17/通过FFmpeg命令进行RTMP推流/
作者
Daniate
发布于
2018年11月17日
许可协议