1

我需要将使用 ffmpeg 不断更新的音频文件的内容流式传输到同一 LAN 上的另一台计算机。我已经下载了适用于 Windows 的 ffmpeg 静态版本。我了解在“ffmpeg”命令中指定目标 IP 地址和端口号的方法。但我无法弄清楚如何指定要流式传输的文件名。怎么办?

音频文件的格式没有条件。它可以是任何格式。

4

1 回答 1

1

WAV 文件不是缓冲编码数据以进行进一步流式传输的最佳工具。

我更喜欢使用ffserver。这个想法是ffmpeg对流进行编码并将其上传到ffserver的“提要文件”中,客户端(例如您的“远程计算机”)通过http或rtsp(rtp)从ffserver获取流(可能是不同格式的相同流) )。

只需在此处添加音频流,将 ffmpeg 连接到其源并将远程计算机连接到流:

  • 在 ffserver.conf 中定义单个流:

    <Stream audio.sdp>
    Feed feed1.ffm
    Format rtp
    
    NoVideo
    AudioCodec libmp3lame
    AudioBitRate 64
    AudioSampleRate 22050
    </Stream>
    

或 AVI(MPEGTS、FLV 等)

    <Stream audio.avi>
    Feed feed1.ffm
    Format avi
    ...
  • 开始音频编码/上传到服务器:

    ffmpeg -i [Your source] http://localhost:[ffserver's port]/feed1.ffm
    
  • 开始在“远程计算机”上获取 rtp(avi 等)流。

于 2013-09-24T01:34:08.733 回答