Linux(debian 12)下有什么工具能方便的将 目录及子目录 下所有的 Wav 文件和 Ape 文件转换为 Flac 格式的么?

linux(debian 12)下有什么工具能方便的将 目录及子目录 下所有的 Wav 文件和 Ape 文件转换为 Flac 格式的么?

一直以来我都是开Windows虚拟机用 aimp 转换格式,想寻找一个linux的工具,减少开虚拟机的需求

叫gpt写个python文件调用ffmpeg吧

1 Like

ffmpeg写个循环就行。
我自用的转mp3函数如下,可供参考。
子目录的话可以用find命令,另外ffmpeg转wav和ape的命令有所不同,要比这个简单。

ffmpegmp3 () 
{ 
    ( set -eu;
    _1_="${1:?}";    #需要转换的格式
    cd "${2:-.}";    #操作目录,默认当前目录
    pwd;
    for loopfor in *.${_1_};
    do
        [[ -r "${loopfor}" ]] && { 
            mkdir -pv "./_ffmpeg_mp3"
        };
        ffmpeg -i "${loopfor}" -ab 640k "./_ffmpeg_mp3/${loopfor%.*}.mp3";
    done
}

我去试一下

写了个 shell 脚本,您可以试一试,不知道行不行(手头没有电脑,凭经验在手机上写的)

#!/bin/sh

for FILE in `find . -name ".wav"`
do
    ffmpeg -i $FILE ${FILE::-3}flac
done

for FILE in `find . -name ".ape"`
do
    ffmpeg -i $FILE ${FILE::-3}flac
done

我发现我漏写了一个需求,因为 wav 和 ape 格式的音乐基本都是整轨的,所以还需要先借助 cue 文件将 wav 和 ape 文件进行分轨,然后才行进行格式转换 :rofl:

用wine, 别用虚拟机?

Linux 上可以用 shntool 进行分轨,您可以看看这篇文章的第 3 节:

使用 flacon, 带gui界面。

补个官网链接:

https://flacon.github.io/

1 Like

试了一下

  1. 使用 ffmpeg 不知道为啥,老出错,放弃
  2. 使用 shntool 倒是可以完成分轨和格式转换,但转换好的 flac 文件,音乐标签全都丢失了
  3. 使用 flacon 顺利完成分轨和格式转换,也保留了所有的音乐标签,基本完美

在此多谢各位大佬的支援,若有其他更优秀的工具,也望追加支援