在 Windows 上轻松将 FLAC 转换为 ALAC?

在 Windows 上轻松将 FLAC 转换为 ALAC?

我想知道是否有人有一个干净、无痛的工作流程,可以将 FLAC 文件无损转码为等效的 ALAC?这应该是一个位完美的转换,这意味着它不应该很难,但是……它很难。

我为什么要这么做?(在操作系统的人把我活活吃掉之前)主要是因为我使用的音频应用程序(Serato Scratch Live)不支持 FLAC,尽管过去五年来用户不断催促,但很可能在一段时间内不会支持。然而,他们确实破解了 ALAC 支持

此外,让 iTunes 播放 FLAC 文件(并正确地将它们向下转换以有效利用 iPod 上的空间)似乎几乎是不可能的。

唯一的问题是我想保留一些奇怪、不寻常的元标签(BPM 和歌曲键),这些元标签重新生成起来有点麻烦。我对 Windows 或 Linux 上的任何内容都感到失望

谢谢

汤姆

答案1

在 Ubuntu 中,您可以打开终端,导航到相关目录,然后执行以下命令循环:

for f in *.flac; do ffmpeg -i "$f" -acodec alac "${f%.flac}.m4a"; done
  • 将把.flac目录中的所有文件转换为.alac文件,以位完美的方式执行。
  • ffmpeg没有随 Ubuntu 打包,因此您需要从 repos 安装;但是,我不能肯定地说这会保留您的 BPM 标签信息。

此外,让 iTunes 播放 FLAC 文件(并正确地将它们向下转换以有效利用 iPod 上的空间)似乎几乎是不可能的。

有一个项目叫福禄克福马克.flac这可能允许您在 iTunes 中播放文件。
至于如何进行转换以便高效使用 iPod,以下命令循环将发挥作用:

for file in *.flac; do $(flac -cd "$file" | lame --preset fast extreme - "${file%.flac}.mp3"); done`
  • 您可能需要--preset fast extreme用较低的比特率选项替换
    更多的预设lame

答案2

对于 Windows 使用PowerShellffmpeg(基于@boehj 答案):

Ls -Recurse -Include *.flac | %{C:\path_to_ffmpeg\ffmpeg.exe -i $_.FullName -acodec alac ($_.DirectoryName+"\\"+$_.BaseName+'.m4a')}

答案3

分贝功率放大器可以将 FLAC 转换为 ALAC;安装后,获取所需的编解码器这里

答案4

在 Windows 中,您可以打开命令提示符并运行以下命令,将 FLAC 文件转换为不同驱动器上同一目录中的 ALAC(我喜欢的方式),使用qaaclibFLACiTunes:

  1. 将当前工作目录更改为包含 flac 文件的源目录(s:\music此处用作示例)

  2. 将所有文件夹复制到目标目录,包括专辑封面文件,文件名为(folder.(jpg|png|gif)):

    robocopy "s:\music" "d:\music" folder.jpg folder.png folder.gif /E

    该选项/E包含空目录。如果您不想复制它们,请使用该/S选项。

  3. 用来qaac以“位完美”方式将该目录中的所有 FLAC 文件转换为另一个驱动器上的 ALAC 文件并保留大部分原始元数据:

    FOR /R %I IN (*.flac) DO qaac64 -A --copy-artwork -o "d:%~pI%~nI.m4a" "%I"

    插入IF NOT EXIST "d:%~pI%~nI.m4a"上述命令后将DO跳过转换目标目录中已存在的文件。

请注意

  • s:源 ( ) 和目标 ( ) 驱动器上的目录名称d:需要相同(否则您需要修改命令中的变量FORqaac不会为您创建目录)
  • 您需要切换到源目录(s:\music在上面的例子中)才能使命令起作用
  • 目标目录(d:\music在上面的例子中)应该为空,以避免覆盖文件
  • SUBST如果要在同一驱动器上创建 ALAC 文件,可以使用命令将目录映射到驱动器号
  • 您必须至少运行 2.57 版本qaac并使用适合您的 Windows 版本(32 位或 64 位)的二进制文件
  • qaac需要在 WindowsPATH变量中,否则你必须在FOR上面的命令中包含其二进制文件的完整路径
  • qaac需要安装 iTunes 或 QuickTime 才能工作
  • qaaclibFLAC需要目录中有匹配的 DLL 副本才能读取 FLAC 文件,您可以在稀有器皿地点
  • iDevices 无法处理采样率高于 48,000 kHz 且采样大小高于 24 位的文件(2016 年初)。iTunes 不允许您将这些文件复制到您的设备,并警告您“未复制曲目,因为 iDevice 不支持该采样率”。使用qaac这些选项--rate 48000 --bits-per-sample 24可以解决此问题,但请确保仅在实际的高清文件上使用这些选项,否则您将使所有文件变得臃肿而一无所获!
  • ALAC 文件将缺少 Apple iTunes 和 iDevices 所依赖的音量信息,这些信息用于其声音检查功能(将歌曲播放音量调整到相同级别)。可以使用iTunes将信息添加到文件中(似乎只将音量信息存储在其库中),美乐家(商业软件),音量(商业软件)和不同平台上的许多其他工具
  • 这不是同步工作流程:上述命令第二次运行会将您添加到源目录的 FLAC 文件添加到目标目录,但不会保持两个音乐目录同步(重命名的文件将导致具有不同名称的重复 ALAC 文件,已删除的文件不会从目标目录中删除,如果您使用IF NOT EXIST元数据,自上次运行以来的更改不会反映在 ALAC 文件中)

相关内容