登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
每日签到
每天签到奖励2圆-6圆
发帖说明
VIP申请
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
VIP申请
VIP网盘
网盘
联系我们
每日签到
道具
勋章
任务
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
资源区
›
代码
›
FFmpeg开发笔记(三十六)Linux环境安装SRS实现视频直播 ...
FFmpeg开发笔记(三十六)Linux环境安装SRS实现视频直播推流
[ 复制链接 ]
殳世英
2025-6-4 18:32:11
《FFmpeg开发实战:从零基础到短视频上线》一书在第10章介绍了轻量级流媒体服务器MediaMTX,通过该工具可以测试RTSP/RTMP等流媒体协议的推拉流。不过MediaMTX的功能实在是太简单了,无法应用于真实直播的生产环境,真正能用于生产环境的流媒体服务器还要看SRS或者ZLMediaKit。 SRS是一款国产的开源实时视频服务器,支持RTMP、WebRTC、HLS、HTTP-FLV、SRT、MPEG-DASH和GB28181等流媒体协议。SRS媒体服务器和FFmpeg、OBS、VLC、WebRTC等客户端配合使用,提供音视频流的接收和分发的能力,是一个典型的发布(推流)和订阅(播放)服务器模型。SRS支持互联网广泛应用的音视频协议转换,比如可以将RTMP或SRT,转成HLS或HTTP-FLV或WebRTC等协议。
通过结合FFmpeg与SRS,可以很方便地测试音视频的推拉流。接下来以华为的欧拉系统为运行环境,介绍如何编译、安装、调试SRS,详细的操作步骤说明如下。
一、编译安装SRS
1、登录Linux服务器(比如华为云的欧拉系统),运行下列命令安装SRS的依赖包。
yum install git
yum install patch
复制代码
2、执行下面命令从gitee下载SRS的源码。
cd /usr/local/src
git clone -b develop https://gitee.com/ossrs/srs.git
复制代码
3、进入SRS的主干源码目录,运行下面命令配置SRS。
cd srs/trunk
./configure
复制代码
4、运行下面命令编译SRS。
make
复制代码
命令执行完毕,SRS的可执行程序srs就在srs/trunk/obj目录下生成。
二、编译安装FFmpeg
在Linux系统编译安装FFmpeg的详细步骤参见《FFmpeg开发实战:从零基础到短视频上线》一书的“1.2 Linux系统安装FFmpeg”,这里不再赘述。
三、启动SRS
1、进入SRS的主干配置目录,也就是执行下面命令:
cd /usr/local/src/srs/trunk/conf
复制代码
2、打开配置文件srs.conf,在vhost __defaultVhost__里面补充以下一行配置:
gop_cache on;
复制代码
以上配置表示开启缓存关键帧,一定要设置为on,否则客户端拉流找不到关键帧就无法渲染画面。
修改完毕,保存并退出srs.conf。
3、执行下面命令,启动SRS服务。
cd /usr/local/src/srs/trunk
./objs/srs -c conf/srs.conf
复制代码
4、检查服务器是否开启了下列端口:
1935端口,用于rtmp协议,访问“rtmp://”开头的直播地址需要。
8080端口,用于http协议,访问“http://”开头的直播地址需要。
四、检查SRS的视频推拉流
1、执行以下命令,将本地视频通过RTMP协议推流给SRS。
ffmpeg -re -stream_loop -1 -i "/usr/local/src/test/2018s.mp4" -vcodec h264 -f flv rtmp://127.0.0.1/live/test
复制代码
注意:SRS不支持RTSP推流,只支持RTMP推流。
2、打开VLC播放器,依次选择菜单“媒体”→“打开网络串流”,在网络URL框中输入下列任一地址,观看能否正常播放视频画面。
rtmp://124.***.***.***/live/test
http://124.***.***.***:8080/live/test.flv
http://124.***.***.***:8080/live/test.m3u8
复制代码
注意需要把上述地址中的“124.***.***.***”替换为流媒体服务器实际的公网地址。
更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
FFmpeg
开发
笔记
三十六
Linux
相关帖子
Linux性能分析工具和方法
Power BI学习笔记-周报销售数据分析
CMake构建学习笔记23-SQLite库的构建
CMake构建学习笔记24-使用通用脚本构建PROJ和GEOS
国产化Excel开发组件Spire.XLS教程:Python 读取 CSV 文件,从基础到进阶指南
CMake构建学习笔记25-SpatiaLite库的构建
国产化Excel开发组件Spire.XLS教程:Python 将 CSV 转换为 Excel(.XLSX)
C++ 开发环境配置
Linux系统编程入门(下)
在鸡哥14x上安装Linux:Fedora 42 上手体验
vip免费申请,1年只需15美金$
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
Linux性能分析工具和方法
0
128
眸胝
2025-09-01
业界
Power BI学习笔记-周报销售数据分析
0
840
恐肩
2025-09-01
业界
CMake构建学习笔记23-SQLite库的构建
0
427
涣爹卮
2025-09-02
业界
CMake构建学习笔记24-使用通用脚本构建PROJ和GEOS
0
700
左丘平莹
2025-09-03
业界
国产化Excel开发组件Spire.XLS教程:Python 读取 CSV 文件,从基础到进阶指南
0
591
颜清华
2025-09-03
业界
CMake构建学习笔记25-SpatiaLite库的构建
0
101
虽裘侪
2025-09-04
业界
国产化Excel开发组件Spire.XLS教程:Python 将 CSV 转换为 Excel(.XLSX)
0
980
皇甫佳文
2025-09-04
安全
C++ 开发环境配置
0
562
觐有
2025-09-06
业界
Linux系统编程入门(下)
0
778
卜笑
2025-09-07
业界
在鸡哥14x上安装Linux:Fedora 42 上手体验
0
885
闰咄阅
2025-09-08
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
浏览过的版块
业界
安全
签约作者
程序园优秀签约作者
发帖
殳世英
2025-6-4 18:32:11
关注
0
粉丝关注
12
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
敖可
9984
杭环
9988
凶契帽
9988
4
氛疵
9988
5
黎瑞芝
9988
6
猷咎
9986
7
里豳朝
9986
8
肿圬后
9986
9
蝓俟佐
9984
10
虽裘侪
9984
查看更多