srs安装与ffmpeg推流

环境说明:ubuntu 16.04
当前目录为~/。

一、 下载

git clone https://github.com/ossrs/srs.git

二、部署SRS

关闭防火墙,执行如下命令。

  

ufw disable //关闭防火墙
cd srs/trunk
./configure && make //编译文件
./objs/srs -c conf/srs.conf // 启动srs服务
ps -ef | grep srs  //查看服务是否启动成功

输入cd 3rdparty进入第三方组件包,可以看到srs自带了很多第三方插件

第三方软件安装

cd 3rdparty
ls
unzip yasm-1.2.0.zip  //我的是yasm-1.2.0.zip
cd yasm-1.2.0
./configure //编译yasm ,
make && make install //安装yasm,建议切换到管理员进行操作 sudo su

cd ..
//准备安装ffmpeg 4.1
unzip ffmpeg-4.1.zip
cd ffmpeg-4.1
./configure //编译ffmpeg ,
make && make install //安装ffmpeg,建议切换到管理员进行操作 sudo su

  到这里,基本就全部安装完毕了。直接启动服务即可,推流的时候往linux直接推流即可,如:rtmp://srs服务器IP地址:1935/live/xxx,然后客户端再拉流就可以了.

三、推流拉流测试

1.ffmpeg

推流

编写一个脚本,pushflow.sh,赋予a+x权限。

##!/bin/sh
for((;;)); do

    ./objs/ffmpeg/ffmpeg -re -i ./doc/source.200kbps.768x320.flv   -vcodec copy -acodec copy -f flv -y rtmp://172.17.172.45/live/livestream;

    sleep 1; 

done

执行,./pushflow.sh。

拉流

下载安装VLC,
媒体->打开网络串流->输入网络URL
rtmp://172.17.172.45/live/livestream,稍等1s左右即可看到视频。

2.用obs采集摄像头推流

用obs采集摄像头推流以及文件推流,可以参考下面第三个博客,写的很好。以下为复制部分,除了效果展示。

FFmpeg的命令行方式不太友好,推荐使用主流的OBS开源推流软件,可从官网https://obsproject.com/ 下载最新版本,目前很多网络主播都是用它做直播。该软件支持本地视频文件以及摄像头推流。

2.1 文件推流

先添加一个:“媒体源”

然后新建一个名称(随便输入)

选择本机视频文件

接下来是关键的部分,进入设置:

在串流->服务器这里,输入srs的地址:rtmp://srs_server_ip:1935/live (注意这里不要带livestream), 然后在串流密钥这里,才是输入livestream

设置好以后,就可以点击“开始推流”了。如果顺利,下面的状态栏,会显示一些实时数据:

播放效果

2.2 摄像头推流

跟上面的其实差不多,区别只是添加“视频捕捉设备”

然后选择本机检测到的摄像头设备(比如:下图为win10笔记本自带的 Integrated Webcan)

接下来的操作就一样了,播放效果如下:

参考博客1
参考博客2
参考博客3

原文地址:https://www.cnblogs.com/Pan-xi-yi/p/11970135.html