mediamtx v1.15.2已于2025 年 10 月 14 日发布,本次更新在功能、性能优化以及问题修复方面带来了多项改进,同时也更新了部分依赖库并提升了安全性。以下为本次更新的详细内容:
通用功能更新
1.新增自我升级功能
新增自我升级命令./mediamtx --upgrade,允许用户直接将 MediaMTX 升级到最新版本,简化了升级流程。2.Windows 配置路径修复
在 Windows 系统中不再搜索 Linux 路径中的配置文件,避免了路径匹配错误的问题。3.字节统计修正
在 API(/paths/list、/paths/get)及指标(paths_bytes_sent)中,不再将写入录制器(recorder)和 HLS muxer 的数据计入已发送字节数,因为这些数据不会产生实际的网络流量。4.HTTP 服务器读写超时
为 HTTP 服务器新增读写超时机制,防止僵尸连接累积造成资源占用。5.绝对时间戳优化
• 提高了绝对时间戳的精确度,通过检测延迟最低点并记录作为流的参考时间,替代之前受延迟累积影响的方案。
• 增加了防止绝对时间戳漂移过大的机制。
6.录制器优化
• 切换片段时重置 fMP4 序列号,无需全流唯一。
• 替换所有来源的绝对时间戳,防止用户不必要地修改,支持参数
useAbsoluteTimestamp来重新启用。• 在片段中记录更多信息(流 ID、片段编号、DTS、NTP),以便播放端优化合并算法。
7.播放端合并算法改进
• 仅在属于同一流且连续时进行片段合并。
• DTS 计算不依赖 NTP 时间戳,提高了应对 NTP 波动的稳定性。
• 新增
/info端点,方便获取系统信息。
• 修复 SDP 中
c=IN无效语法导致的解析错误。• 服务器新增空闲超时机制,防止空闲连接和会话堆积。
• 提升网页性能,使 hls.js 与页面并行加载,加快播放启动速度。
• 修复读取 Opus 音频时的噪音问题,通过重新计算时间戳提升音频稳定性。
• 修复读取 G711 音频时的包损坏问题,解决了多读者情况下的全局流数据被修改的问题。
•
code.cloudfoundry.org/bytefmt升级至 v0.54.0•
github.com/MicahParks/keyfunc/v3升级至 v3.7.0•
github.com/bluenviron/gortsplib/v5升级至 v5.1.0•
github.com/bluenviron/mediacommon/v2升级至 v2.5.0•
github.com/go-git/go-git/v5升级至 v5.16.3•
github.com/matthewhartstonge/argon2升级至 v1.4.1•
github.com/pion/interceptor升级至 v0.1.41•
github.com/pion/rtp升级至 v1.8.23•
golang.org/x/crypto升级至 v0.43.0•
golang.org/x/sys升级至 v0.37.0•
golang.org/x/term升级至 v0.36.0•
github.com/pion/srtp/v3升级至 v3.0.8•
github.com/quic-go/quic-go升级至 v0.54.1•
golang.org/x/net升级至 v0.46.0•
golang.org/x/text升级至 v0.30.0
新增依赖库:
•
github.com/Masterminds/semver/v3v3.4.0•
github.com/minio/selfupdatev0.6.0•
aead.dev/minisignv0.2.0
• 二进制文件通过 Release 流程自动从源码构建,无人工干预,防止外部干扰。
• 可以通过 GitHub Attestations 验证二进制文件的来源:
.
ls mediamtx_* | xargs -L1 gh attestation verify --repo bluenviron/mediamtx• 可以验证二进制文件的校验和:
.
cat checksums.sha256 | grep "$(ls mediamtx_*)" | sha256sum --check本次mediamtx v1.15.2更新在稳定性、性能和安全性方面均有显著提升,尤其是自我升级功能、绝对时间戳优化以及 HTTP、RTSP、WebRTC 等模块的修复,将为视频流媒体场景带来更高的可用性和可靠性。
我们相信人工智能为普通人提供了一种“增强工具”,并致力于分享全方位的AI知识。在这里,您可以找到最新的AI科普文章、工具评测、提升效率的秘籍以及行业洞察。 欢迎关注“福大大架构师每日一题”,发消息可获得面试资料,让AI助力您的未来发展。
热门跟贴