流媒体服务器Media MTX使用教程

2025-10-19 03:58:34

Media MTX 介绍

Media MTX 是一个高性能的开源媒体服务器,用于处理实时音视频流。它支持多种协议,包括 RTSP、RTMP 和 WebRTC,适合用作直播、视频监控(如 IPCAM)、和流媒体中继的解决方案。Media MTX 轻量、灵活,并具有广泛的协议兼容性,非常适合嵌入式设备和云环境。

官方地址:Media MTX GitHub 项目

Media MTX 的功能特点

支持多种协议:

输入协议:RTSP、RTMP、WebRTC。输出协议:RTSP、RTMP、WebRTC、HLS。高性能:

支持高并发客户端和数据传输。消耗资源少,非常适合嵌入式设备或云计算平台。简单的配置和易用性:

使用一个易读的 YAML 配置文件进行配置。跨平台支持:

可运行在 Windows、Linux 和 macOS 上,也支持 Docker 容器化运行。

Media MTX 安装教程

以下是 Media MTX 的安装与基本使用教程,基于 Linux 系统(如 Ubuntu 或树莓派)。其他平台可参考类似步骤。

方法 1:通过预编译二进制文件安装

下载 Media MTX 二进制文件 从 GitHub Releases 页面获取最新版本:

wget https://github.com/bluenviron/mediamtx/releases/latest/download/mediamtx-linux-amd64.tar.gz

解压文件

tar -xvzf mediamtx-linux-amd64.tar.gz

cd mediamtx-linux-amd64

运行 Media MTX

./mediamtx

程序默认读取 mediamtx.yml 作为配置文件,并启动服务。

方法 2:通过源码编译安装

适用于需要定制功能或支持非官方平台的情况。

安装依赖 安装 Go 编译器(需要 Go 1.19 或更高版本):

sudo apt update

sudo apt install -y golang

下载源码 克隆 Media MTX 源代码:

git clone https://github.com/bluenviron/mediamtx.git

cd mediamtx

编译项目 使用 make 工具编译:

make

成功后,生成的可执行文件位于 ./mediamtx。

运行 Media MTX

./mediamtx

方法 3:通过 Docker 安装

Media MTX 提供了官方的 Docker 镜像,适合快速部署。

安装 Docker 如果尚未安装 Docker,可按以下步骤安装:

sudo apt update

sudo apt install -y docker.io

运行 Media MTX Docker 容器 使用默认配置运行容器:

docker run -it --rm -p 8554:8554 -p 1935:1935 -p 8888:8888 bluenviron/mediamtx

8554:RTSP 服务端口。1935:RTMP 服务端口。8888:HTTP 服务端口(用于 WebRTC)。 挂载自定义配置文件 如果需要使用自定义配置文件,可将其挂载到容器内:

docker run -it --rm -p 8554:8554 -p 1935:1935 -p 8888:8888 \

-v $(pwd)/mediamtx.yml:/mediamtx.yml bluenviron/mediamtx

Media MTX 配置说明

Media MTX 使用 YAML 格式的配置文件,名为 mediamtx.yml,提供了灵活的设置选项。以下是基本的配置示例:

默认配置文件示例

# RTSP 服务配置

rtsp:

enabled: yes

address: :8554

# RTMP 服务配置

rtmp:

enabled: yes

address: :1935

# WebRTC 服务配置

webrtc:

enabled: yes

address: :8888

# 源流(输入)配置

paths:

all:

source: publisher # 允许外部推流到此路径

sourceOnDemand: no

典型用例配置

使用网络摄像头(RTSP 输入)

paths:

cam1:

source: rtsp://192.168.1.100:554/stream

设置访问认证

paths:

all:

source: publisher

publishUser: myuser

publishPass: mypassword

开启 HLS 输出

hls:

enabled: yes

address: :8889

配置完成后,保存为 mediamtx.yml,然后重启服务。

测试和验证

测试 RTSP 推流

使用 ffmpeg 推送本地视频到 Media MTX:

ffmpeg -re -i video.mp4 -c:v copy -f rtsp rtsp://127.0.0.1:8554/stream

测试 RTSP 播放

使用 VLC 或 ffplay 播放推送的视频流:

vlc rtsp://127.0.0.1:8554/stream

# 或者

ffplay rtsp://127.0.0.1:8554/stream

测试 WebRTC 播放

打开浏览器访问 http://<服务器IP>:8888/stream。播放器会加载 WebRTC 流。

总结

Media MTX 是一个功能强大的流媒体服务器,支持多种协议和灵活配置,适用于直播、视频监控等多种场景。本教程提供了多种安装方法和基本配置示例,用户可以根据实际需求进一步扩展和定制 Media MTX 的功能。

[优化]Timings分析
狗狗腿扭伤的康复期及护理措施(揭秘狗狗腿扭伤康复的时间、方法和注意事项)