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

MacOS High Sierra下FFmpeg推RTSP流遇Connection refused问题求助

解决FFmpeg推送RTSP流时的Connection Refused错误

问题场景

你在MacOS High Sierra系统上用brew安装的FFmpeg,执行以下命令推送RTSP流:

sudo ffmpeg -re -i ./Big_Buck_Bunny_1080_10s_1MB.mp4 -c:v libx264 -preset superfast -tune zerolatency -c:a aac -ar 44100 -f rtsp -rtsp_transport udp rtsp://127.0.0.1:8888/live

但出现了连接拒绝的错误:

[tcp @ 0x7fb979e22ec0] Connection to tcp://127.0.0.1:1935?timeout=0 failed: Connection refused
Could not write header for output file #0 (incorrect codec parameters ?): Connection refused
Error initializing output stream 0:0 -- Conversion failed!

你尝试过加/不加sudo、更换协议、修改端口等操作都没解决问题。

问题根源

这个错误的核心原因很简单:FFmpeg只是推流工具,它需要一个能接收并处理流的流媒体服务器,而你当前没有启动任何这类服务器。没有接收端的情况下,FFmpeg自然无法建立连接,就会抛出Connection Refused错误。

解决方法

  1. 先启动流媒体服务器
    你需要先部署一个支持RTSP协议的流媒体服务器,常用的选择有:

    • VLC:作为简易服务器非常方便,打开VLC后通过「媒体」→「流」选项,按照向导设置好接收端口和路径,就能搭建一个临时的RTSP接收服务器
    • Wowza:如果需要更专业的流处理能力(比如多终端分发、转码等),可以选择这类商用/开源的专业流媒体服务器
      注意要让服务器监听的地址、端口和你FFmpeg命令中的目标地址保持一致(比如命令里的rtsp://127.0.0.1:8888/live,就要确保服务器在8888端口开启了RTSP服务,并配置对应流路径)
  2. 重新执行推流命令
    等服务器完全启动并处于正常监听状态后,再运行你之前的FFmpeg推流命令,此时就能成功建立连接并推送流了。

额外建议

关于FFmpeg流媒体推送的更多细节和最佳实践,可以参考FFmpeg官方文档中的Streaming Guide部分,里面有更详细的配置说明和常见问题排查方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 17:13:15