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

使用FFmpeg从RTSP流录制双分辨率分段视频(按30分钟整点/半点分割)的命令报错求助

使用FFmpeg从RTSP流录制双分辨率分段视频(按30分钟整点/半点分割)的命令报错求助

我目前遇到这样的需求:要从RTSP流同时录制两种分辨率的视频——原分辨率和一个更低的分辨率,并且要求生成的视频文件按照时钟时间每30分钟分割一次(比如1:00、1:30、2:00这类偶数30分钟的时间点)。

我自己尝试写了一条FFmpeg命令,但运行失败了,命令如下:

ffmpeg -rtsp_transport tcp -i rtsp://<rtsp url> \
-filter_complex "[0:v]split=2[v1][v2];[v1]scale=1920:1080[out1];[v2]scale=448:252[out2]" \
-map "[out1]" \
-c:v -an -vcodec libx264 \
-f segment -segment_format mp4 -segment_time 00:30:00 -strftime 1 \
/mnt/data/original-%Y-%m-%d-%H.%M.%S.mp4 \
-map "[out2]" \
-c:v -an -vcodec libx264 \
-f segment -segment_format mp4 -segment_time 00:30:00 -strftime 1 \
/mnt/data/low-reso-%Y-%m-%d-%H.%M.%S.mp4

运行后出现了以下错误:

[NULL @ 0x556c999c2140] Unable to find a suitable output format for 'segment'
segment: Invalid argument

我试了好几种修改方式都没解决问题,有没有人知道正确的命令应该怎么写?


解决方案

你的命令主要有两个问题:参数顺序错误,以及缺少对齐时钟分段的关键参数,修正后的命令如下:

ffmpeg -rtsp_transport tcp -i rtsp://<rtsp url> \
-filter_complex "[0:v]split=2[v1][v2];[v1]scale=1920:1080[out1];[v2]scale=448:252[out2]" \
# 输出原分辨率视频
-map "[out1]" \
-c:v libx264 -an \
-f segment -segment_format mp4 -segment_time 1800 -segment_atclocktime 1 -strftime 1 \
/mnt/data/original-%Y-%m-%d-%H.%M.%S.mp4 \
# 输出低分辨率视频
-map "[out2]" \
-c:v libx264 -an \
-f segment -segment_format mp4 -segment_time 1800 -segment_atclocktime 1 -strftime 1 \
/mnt/data/low-reso-%Y-%m-%d-%H.%M.%S.mp4

关键修正点说明:

  1. 修正编码参数顺序:你原来写的-c:v -an -vcodec libx264是错误的,-c:v本身就是指定视频编码器的参数,不需要重复用-vcodec,而且必须先指定编码器再写-an(禁用音频),正确写法是-c:v libx264 -an。参数顺序混乱是导致FFmpeg无法识别输出格式的核心原因。
  2. 添加时钟对齐参数:原来的-segment_time 00:30:00是从录制开始计时30分钟分割,无法对齐到整点/半点。加上-segment_atclocktime 1后,FFmpeg会自动把分割点对齐到系统时钟的30分钟倍数节点,完全符合你的需求。这里把00:30:00换成秒数1800是更简洁的写法,效果完全一样。
  3. 规范输出参数组:每个输出流的参数(-map、编码设置、segment配置、输出路径)要形成完整的一组,FFmpeg才能正确识别每个输出的配置逻辑。

这样修改后,命令应该就能正常运行,同时满足双分辨率录制和按时钟30分钟分段的需求了。

备注:内容来源于stack exchange,提问作者Eric Hansen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 09:53:01