使用ffmpeg

时间:2018-12-25 23:49:20

标签: ffmpeg

我有一个装满歌曲的文件夹。我想制作一个mp3文件,其中包含每首歌曲10秒的混搭。

我发现FFMPEG是一种易于使用的软件。

我发现了how to cut a single file : ffmpeg -ss 0 -t 10 -i file.mp3 file.wav

还有how to write a loop for multiple steps : for i in *.mp3; do ...

但是我不确定如何将两者混合成一个文件。如果不可能,我想我也可以为每个文件制作一个10秒的文件,然后重新组合。

2 个答案:

答案 0 :(得分:0)

在Windows中

第1步:进入包含歌曲的文件夹

第2步:粘贴以下行

FOR /F "tokens=*" %G IN ('dir /b *.mp3') DO ffmpeg -ss 15 -t 10 -i "%G" -acodec mp3 "%~nG_10s.mp3"

第3步:将10s歌曲放入另一个文件夹(或修改正则表达式)并粘贴

copy /b *.mp3 E:\combined.mp3

答案 1 :(得分:0)

您可以使用ffmpeg的concat demuxer避免使用中间文件

#1 创建concat文本文件

FOR /F "tokens=*" %G IN ('dir /b *.mp3') DO (echo file '%G' >> list.txt & echo inpoint X >> list.txt & echo outpoint Y >> list.txt)

X和Y是开始和结束时间,以秒为单位。

#2 组合所选部分

ffmpeg -f concat -i list.txt -c copy -vn out.mp3