Kev*_*ong 35 bash ffmpeg shell-script
我想将特定文件夹中的所有 *.flac 转换为 *.mp3。
这是我尝试过的,但不起作用:
# change to the home directory
cd ~/music
# convert all *.flac files
ffmpeg -i *.flac -acodec libmp3lame *.mp3
# (optional: check whether there are any errors printed on the terminal)
sleep 60
Run Code Online (Sandbox Code Playgroud)
如何达到我的目标?
Lew*_*ond 62
一个简单的 1 衬里解决方案:
find -name "*.flac" -exec ffmpeg -i {} -acodec libmp3lame -ab 128k {}.mp3 \;
http://lewisdiamond.blogspot.ca/2012/01/converting-flac-to-mp3.html
请注意,这将在给定目录中递归应用。也就是说,如果你从你的 Music 文件夹运行它,它会转换子文件夹中的所有 flas 并在它旁边生成一个 .mp3。您也可以在没有 ffmpeg 的情况下直接使用 flac 和 lame(即读取 w/flac,管道到 lame,输出到文件 .mp3),如链接中所示。
mkc*_*mkc 42
尝试这个:
for i in *.flac ; do
ffmpeg -i "$i" -acodec libmp3lame "$(basename "${i/.flac}")".mp3
sleep 60
done
Run Code Online (Sandbox Code Playgroud)
小智 8
如果文件名中有一些空格:
for a in *.flac; do
f="${a[@]/%flac/mp3}"
ffmpeg -i "$a" -qscale:a 0 "$f"
done
Run Code Online (Sandbox Code Playgroud)