给定一个命令行
显然,如果没有容器信息,另一端的管道需要知道如何解释数据流。但是假设我已经知道管道的另一端希望以 8 kHz 采样率、使用
ffmpeg -f lavfi -i "sine=frequency=1000:duration=5" -ar 8000 -c:a FOO pipe:1
,ffmpeg 可能会抱怨它“无法找到合适的输出格式”。对于某些编解码器,ffmpeg 有一个默认的容器格式,例如 -c:a libmp3lame
将生成 MP3。对于其他编解码器,您只需要重复自己(有点像):-c:a pcm_alaw -f alaw
但是如果我想流式传输原始编解码器输出,并且没有匹配的 -f
呢?我是否可以只取 -f alaw
并假设它不起作用?(G711 alaw 是一种简单的编解码器,它产生一个字节流,因此 -f alaw
可能只是复制该字节流)显然,如果没有容器信息,另一端的管道需要知道如何解释数据流。但是假设我已经知道管道的另一端希望以 8 kHz 采样率、使用
-c:a FOO
编码的音频流。