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

如何使用FFmpeg将MP3文件推流到SRS且能被PotPlayer正常播放

问题原因

原命令的核心问题是RTMP协议不支持直接输出裸MP3封装格式,你指定-f mp3输出到RTMP地址时,输出的流不符合RTMP的传输规范,PotPlayer无法识别该流的封装结构导致播放失败。

解决方案

方案1:无转码直接推流(推荐,无音质损失)

将输出封装格式改为RTMP原生支持的FLV格式,音频流直接复用原MP3编码,不需要转码:

ffmpeg.exe -re -stream_loop -1 -i ./ring.mp3 -c:a copy -f flv rtmp://${domain}/live/test

方案2:转码为通用AAC编码(兼容性最好)

如果原MP3的编码参数(如采样率、声道数、编码层级)不符合FLV封装规范,可转码为RTMP通用的AAC编码,PotPlayer对该格式的适配最成熟:

ffmpeg.exe -re -stream_loop -1 -i ./ring.mp3 -c:a aac -b:a 128k -ar 44100 -ac 2 -f flv rtmp://${domain}/live/test
额外排查项
  • 确认RTMP服务端正常运行,1935默认端口未被防火墙拦截,推流地址的域名、应用名、流名配置完全正确
  • 确认PotPlayer拉流地址与推流地址完全一致,无拼写错误
  • 可先通过FFmpeg拉流测试排查服务端问题:执行ffmpeg -i rtmp://${domain}/live/test -c copy test_output.flv,如果能正常生成可播放的FLV文件,则说明推流正常,问题出在PotPlayer的拉流配置;如果拉流失败,则需要先排查RTMP服务端配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 11:15:01