登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
社区
BBS
广播
Follow
园子
关于
博客
发1篇日志+1圆
记录
发1条记录+2圆币
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
VIP申请
网盘
联系我们
道具
勋章
任务
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
资源区
›
代码
›
FFmpeg开发笔记(三十四)Linux环境给FFmpeg集成libsrt ...
FFmpeg开发笔记(三十四)Linux环境给FFmpeg集成libsrt和librist
[ 复制链接 ]
挺喽蹂
2025-6-4 18:36:05
《FFmpeg开发实战:从零基础到短视频上线》一书的“10.2 FFmpeg推流和拉流”提到直播行业存在RTSP和RTMP两种常见的流媒体协议。除此以外,还有比较两种比较新的流媒体协议,分别是SRT和RIST。其中SRT全称为Secure Reliable Transport,中文叫做安全可靠传输协议。RIST全称为Reliable Internet Stream Transport,中文叫做可靠的互联网流传输协议。SRT和RIST两个协议均在2017年发布,腾讯视频云已将SRT作为传输层之上的协议。根据腾讯视频云的实践,相比传统的RTMP直播协议,SRT对推流卡顿问题有明显改善。下面就介绍如何在Linux环境给FFmpeg集成SRT协议的支持库libsrt,以及RIST协议的支持库librist。
一、安装libsrt
libsrt是一款SRT协议的支持库。它的源码托管页面是https://github.com/Haivision/srt,最新版本是2023年8月发布的libsrt-1.5.3,该版本的源码包下载地址是https://github.com/Haivision/srt/archive/refs/tags/v1.5.3.tar.gz。
libsrt的安装步骤说明如下。
1、将下载好的压缩包上传到服务器并解压,也就是依次执行以下命令。
cd /usr/local/src
tar zxvf srt-1.5.3.tar.gz
复制代码
2、进入解压后的srt目录,运行下面命令配置libsrt。
cd srt-1.5.3
./configure
复制代码
3、运行下面命令编译libsrt。
make -j4
复制代码
4、编译完成后,运行下面命令安装libsrt。
make install
复制代码
二、安装librist
librist是一款RIST协议的支持库。它的源码托管页面在https://code.videolan.org/rist/librist,最新版本是2023年10月发布的librist-v0.2.10,该版本的源码包下载地址是https://code.videolan.org/rist/librist/-/archive/v0.2.10/librist-v0.2.10.tar.gz。
librist的安装步骤说明如下。
1、安装编译工具meson和ninja
这两个工具已经在之前libdav1d的安装过程中安装了,这里不再赘述。
2、将下载好的压缩包上传到服务器并解压,也就是依次执行以下命令。
cd /usr/local/src
tar zxvf librist-v0.2.10.tar.gz
cd librist-v0.2.10
复制代码
3、进入解压后的build目录,运行下面命令配置librist。
mkdir build
cd build
meson setup
复制代码
4、运行下面命令编译librist。
ninja
复制代码
5、编译完成后,运行下面命令安装librist。
ninja install
复制代码
三、启用libsrt和librist
由于FFmpeg默认未启用libsrt和librist,因此需要重新配置FFmpeg,标明启用libsrt和librist,然后重新编译安装FFmpeg。FFmpeg的Linux环境完整编译过程参见《FFmpeg开发实战:从零基础到短视频上线》一书的“1.2.3 自行编译与安装FFmpeg”,详细的启用步骤说明如下。
1、回到FFmpeg源码的目录,执行以下命令重新配置FFmpeg,主要增加启用libsrt和librist。(增加了选项“ --enable-libsrt --enable-librist”)
./configure --prefix=/usr/local/ffmpeg --enable-shared --disable-static --disable-doc --enable-zlib --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libdavs2 --enable-libmp3lame --enable-libfreetype --enable-libass --enable-libfribidi --enable-libxml2 --enable-fontconfig --enable-sdl2 --enable-libvorbis --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-version3 --enable-libopus --enable-libvpx --enable-openssl --enable-libaom --enable-libsvtav1 --enable-libdav1d --enable-libuavs3d --enable-libwebp --enable-libxvid --enable-libsrt --enable-librist --enable-iconv --enable-gpl --enable-nonfree
复制代码
2、运行下面命令编译FFmpeg。
make clean
make -j4
复制代码
3、执行下面命令安装FFmpeg。
make install
复制代码
4、运行以下命令查看FFmpeg的版本信息。
ffmpeg -version
复制代码
查看控制台回显的FFmpeg版本信息,找到“ --enable-libsrt --enable-librist”,说明FFmpeg正确启用了SRT协议的支持库libsrt,以及RIST协议的支持库librist。
更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
本地部署deepseek,并投喂数据
libevent之bufferevents
HTTP-获取天气-dns版
【日记】每次修机器都有些头疼(721 字)
[技术探索者手记] C++自学之路 × linux下搭建属于自己风格的FFmpeg开发项目框架
RabbitMQ简单介绍及常见面试题
【日记】今天好忙(391 字)
mORMot 1.18 第23章 使用纯SQL
Swift whit Xcode 递归枚举实现(使用枚举模拟加减乘除复合运算)
FastAPI与Tortoise-ORM开发的神奇之旅
JAVA 24 环境安装与配置
物联网之使用Vertx实现UDP最佳实践【响应式】
重温c语言之,7天开整,就是随便的写写,第七天
CMake构建学习笔记14-依赖库管理工具
FFmpeg开发笔记(四十三)使用SRS开启SRT协议的视频直播服务
【日记】拼好了衣架!(524 字)
模拟实现 strcat(字符串追加) --浅谈C语言
c语言的编译与调试
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
浏览过的版块
业界
签约作者
程序园优秀签约作者
发帖
挺喽蹂
2025-6-4 18:36:05
关注
0
粉丝关注
11
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
敖可
9986
凶契帽
9992
背竽
9992
4
猷咎
9990
5
里豳朝
9990
6
处匈跑
9990
7
黎瑞芝
9990
8
松菊
9990
9
段干叶农
9990
10
炀餮氢
9990
查看更多