如何在输入和输出的ffmpeg(-f)中指定文件类型?

C M*_*das 6 ffmpeg

我正在使用ffmpeg将stdin(pipe:0)转换为stdout(pipe:1).我的输入格式是"s16le",我的输出格式是"wav".如何在ffmpeg命令中指定两种不同的格式?

我也使用两个不同的频率(-ar),输入44100Hz和输出22050Hz,如何在ffmpeg命令中指定两个不同的频率?

Bra*_*rad 6

在 FFmpeg 中,参数位于输入/输出之前,用于特定的输入/输出。

在你的情况下,你的命令看起来像:

ffmpeg -sample_rate 44100 -f s16le -i - -ar 22050 -codec copy -f wav -
Run Code Online (Sandbox Code Playgroud)

在这种情况下,-ar 44100-f s16le应用于输入,因为它们在输入之前出现。

-ar 22050, -codec copy, 并-f wav应用于输出,因为它们在输入之后但在输出之前。