【发布时间】:2020-03-13 12:49:50
【问题描述】:
我正在尝试通过 RTP 多播传输 .wav 音频文件。我正在使用以下命令:
ffmpeg -re -i Melody_file.wav -f rtp rtp://224.0.1.211:5001
它成功启动了流。但是,音频输出非常不稳定。有什么想法可以使音频流干净吗?我根本不需要任何视频。下面是我的输出截图:
【问题讨论】:
-
你用什么软件播放流?您可以尝试增加 a) 在数据包被操作系统丢弃的情况下增加 UDP 套接字接收器缓冲区 b) RTP 抖动缓冲区或应用程序播放缓冲区以平滑播放。
-
我有一部 yealink VoIP 电话正在监听组播地址。当我多播相同的音频文件时,从一个电话到另一个电话没有问题。但是当我使用 ffmpeg 进行多播时,它会不断地切碎。我尝试了 pkt_size,我注意到的一件事是 300 或更低的数字会产生很多波动,但我尝试了一个非常高的数字,它不会变得完美。
-
我想我会尝试使用 tcpdump 或 wireshark 来捕获流量,看看电话到电话和 ffmpeg 到电话之间有什么区别。您确定手机在传输文件时正在发送 pcm mulaw 吗?当您发送压缩音频(我确定 VOIP 电话有多个内置编解码器)或您需要发送 pcm 时会发生什么?
-
我认为可能是编解码器问题。 VoIP 电话设置为 G722 的多播编解码器,但 wav 文件是 PCM MULAW。所以也许我需要更改 voip 电话上的编解码器设置,我看到 PCMU 的编解码器选项也许我需要选择它?我会在星期一试试
-
@Ralf 我尝试在 voip 电话上将多播编解码器更改为 PCMU,但仍然存在完全相同的问题。我在手机上有抖动设置,我试着玩弄它,但没有任何区别。有什么想法吗?
标签: ffmpeg