我想创建一种自动方法将.mp3文件削减到45秒。
到目前为止,我已经可以使用ffmpeg通过以下命令将音频削减到45秒:
ffmpeg -t 45 -i input.mp3 -acodec copy output.mp3
但是,这实际上并不能加快任何速度,就像我必须对每个文件执行此操作一样,我也可能会使用audacity。我知道我应该能够使用.bat文件为此创建一个循环,但是我不知道如何设置循环。在python中,我将使用listdir在目录中创建文件名列表:
fileNames = listdir(path)
,
然后创建一个for循环:
(类似
i = 1
for fileName in fileNames:
x = 2 * int(i)
ffmpeg -t 45 -i str(fileName)+'.mp3' -acodec copy str(x)+'.mp3'
那个)
但是,我不知道如何在.bat文件中创建类似的内容。在此方面提供的一些帮助,或在python中实现此目的的方法将不胜感激。
答案 0 :(得分:2)
您可以尝试使用以下脚本。将代码保存到您拥有mp3歌曲的文件夹中的* .bat文件中,然后执行它,它将处理所有歌曲。
@ECHO OFF
setlocal enableextensions enabledelayedexpansion
set /a count = 1
for %%f in (*.mp3) do (
set "output=!count!.mp3"
ffmpeg -t 45 -i %%f -acodec copy !output!
set /a count+=1
)
endlocal