You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用ffmpeg将RTSP流转换为基于HTTP协议的MJPEG流

RTSP转HTTP MJPEG流ffmpeg实现方案(Ubuntu 20.04)

前置依赖安装

首先安装所需工具,Ubuntu 20.04默认自带socat,只需安装ffmpeg即可:

sudo apt update && sudo apt install ffmpeg socat -y

实现原理

通过socat监听指定HTTP端口,收到访问请求时触发ffmpeg拉取RTSP流,实时转码为符合HTTP标准的multipart MJPEG流返回,无需额外重型中间件,CPU占用远低于VLC方案,普通1080P摄像头场景下CPU占用通常低于10%。

分步操作

1. 快速测试方案

直接运行以下命令即可在8080端口暴露MJPEG流,注意替换命令中的RTSP地址为你实际的流地址:

socat TCP-LISTEN:8080,fork,reuseaddr EXEC:"ffmpeg -rtsp_transport tcp -i rtsp://<你的摄像头用户名>:<你的摄像头密码>@<摄像头IP>:<RTSP端口>/<流路径> -q:v 3 -f mpjpeg -boundary mjpeg_boundary -"

参数说明:

  • -rtsp_transport tcp:指定用TCP协议拉取RTSP流,避免弱网环境下UDP丢包导致的花屏,网络条件好可删除该参数使用UDP降低延迟
  • -q:v 3:JPEG图像质量,取值范围131,数值越小质量越高、带宽占用越大,可根据需求调整为510平衡性能和画质
  • TCP-LISTEN:8080:指定监听的HTTP端口,可自行修改,若开启了ufw防火墙需放行对应端口:sudo ufw allow 8080

测试时直接在浏览器访问http://<Ubuntu机器IP>:8080即可查看实时流。

2. 稳定后台运行方案

如果需要长期稳定运行,可配置systemd服务托管:

第一步:编写启动脚本

在你的用户目录下新建rtsp2mjpeg.sh文件,内容如下:

#!/bin/bash
# 替换为你实际的RTSP流地址
RTSP_URL="rtsp://admin:123456@192.168.1.100:554/stream1"
# 自定义监听端口
LISTEN_PORT=8080
# 自定义JPEG质量
QUALITY=3

socat TCP-LISTEN:${LISTEN_PORT},fork,reuseaddr EXEC:"ffmpeg -hide_banner -loglevel error -rtsp_transport tcp -i ${RTSP_URL} -q:v ${QUALITY} -f mpjpeg -boundary mjpeg_boundary -"

给脚本添加执行权限:

chmod +x ~/rtsp2mjpeg.sh

第二步:配置systemd服务

新建/etc/systemd/system/rtsp2mjpeg.service文件,内容如下:

[Unit]
Description=RTSP转HTTP MJPEG服务
After=network.target

[Service]
# 替换为你的Ubuntu系统用户名
User=ubuntu
ExecStart=/home/ubuntu/rtsp2mjpeg.sh
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target

第三步:启动服务并设置开机自启

sudo systemctl daemon-reload
sudo systemctl start rtsp2mjpeg
sudo systemctl enable rtsp2mjpeg

可通过以下命令查看运行状态:

sudo systemctl status rtsp2mjpeg

性能优化

如果你的Ubuntu机器带Intel核显,可开启硬解码进一步降低CPU占用,只需将ffmpeg命令修改为如下形式,在输入参数前添加硬解码参数:

ffmpeg -hwaccel qsv -c:v h264_qsv -rtsp_transport tcp -i ${RTSP_URL} -q:v ${QUALITY} -f mpjpeg -boundary mjpeg_boundary -

开启硬解码后1080P流CPU占用通常可降到3%以内。


内容的提问来源于stack exchange,提问作者SomebodySysop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 04:39:02