如何使用ffmpeg将给定文件夹中的所有mp4
文件转换为mp3
格式。
几乎所有我在谷歌上找到的链接都是关于将mp4视频转换为mp3音频。
我可以通过VLC播放器完成此操作,但我有约1000个mp4音频文件,并希望通过一些脚本或命令行完成此操作。
是否可以通过gstreamer完成?
如何使用ffmpeg将给定文件夹中的所有mp4
文件转换为mp3
格式。
几乎所有我在谷歌上找到的链接都是关于将mp4视频转换为mp3音频。
我可以通过VLC播放器完成此操作,但我有约1000个mp4音频文件,并希望通过一些脚本或命令行完成此操作。
是否可以通过gstreamer完成?
其中一种方法是使用 bash for 循环。
仅对 .mp4
文件进行转换:
mkdir outputs
for f in *.mp4; do ffmpeg -i "$f" -c:a libmp3lame "outputs/${f%.mp4}.mp3"; done
用于转换 .m4a
、.mov
和 .flac
格式的工具:
mkdir outputs
for f in *.{m4a,mov,flac}; do ffmpeg -i "$f" -c:a libmp3lame "outputs/${f%.*}.mp3"; done
要将任何内容转换,请使用“*”通配符:
mkdir outputs
for f in *; do ffmpeg -i "$f" -c:a libmp3lame "outputs/${f%.*}.mp3"; done
FileInfo[] Files = d.GetFiles("*.mp4").Union(d.GetFiles("*.<any other file extension>")).ToArray();
foreach (FileInfo file in Files)
{
// str = str + ", " + file.Name;
builder.Append(Path.GetFileNameWithoutExtension(file.Name));
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.CreateNoWindow = false;
startInfo.UseShellExecute = false;
startInfo.FileName = "ffmpeg.exe";
startInfo.WindowStyle = ProcessWindowStyle.Hidden;
startInfo.RedirectStandardOutput = !string.IsNullOrEmpty("test");
startInfo.Arguments = "-i " + filename + ".mp4 -q:a 0 -map a " + filename + ".mp3";
}