我将如何使用 ffmpeg 创建批量转换文件for sample rate conversion,例如:
$ ffmpeg -i *.wav -ar 22050 *.wav
请注意,我只是在进行采样率转换,但最后我想将所有 *.wav 文件批量转换为 22050 *.wav 文件,同时为所有转换的文件保留相同的文件名。
FFMpeg 不能在读取同一个文件时写入,因为它会导致错误。
唯一的方法是转换成另一个文件并替换原始文件。
或者您可以将其转换为另一个文件夹并替换原始文件夹,这更容易。
对于 Windows:
mkdir outdir
for %i in (*.bmp) do (
ffmpeg -i %i -ar 22050 outdir\%i
)
Run Code Online (Sandbox Code Playgroud)
注意:将 %i 放入 Windows 批处理文件时,请将 %i 替换为 %%i。
对于 Linux:
mkdir outdir
for i in *.wav; do
ffmpeg -i $i -ar 22050 outdir/$i;
done
Run Code Online (Sandbox Code Playgroud)
现在只需将您的目录替换为 outdir。
对于您的情况:
如果您想要 Counter Strike:GO 或 HLDJ,请看这里。HL 需要更多设置,
音频必须是单声道(-ac 1在 FFMpeg 中添加标志)和 16 位(添加-acodec pcm_s16le)。
因此,您的 FFMpeg 命令(在 Linux 上)将如下所示:
mkdir outdir
for i in *.wav; do
ffmpeg -i $i -acodec pcm_s16le -ac 1 -ar 22050 outdir/$i;
done
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17158 次 |
| 最近记录: |