WindowsでFLACをALACに簡単に変換しますか?


10

FLACファイルを同等のALACにロスレストランスコードするためのクリーンで痛みのないワークフローを誰かが持っているのだろうか?これはビットパーフェクトな変換になるはずです。つまり、それほど難しくはないはずですが、……そうです。

なぜこれを行うのですか?(OSの人が私を生きたまま食べる前に)主に、私が使用するオーディオアプリ(Serato Scratch Live)はFLACをサポートしていないため、過去5年間にわたってユーザーが絶え間なく提供しているにもかかわらず、おそらくながら。しかし、彼らはALACサポートを一緒にハッキングしました

また、iTunesでFLACファイルを再生する(そして、適切にダウンコンバートして、iPodのスペースを効率的に使用する)ことは、ほとんど不可能に思えます。

唯一の難点は、再生成するのが少し面倒な奇妙で風変わりなメタタグ(BPMと曲のキー)を保持したいということです。私はWindowsまたはLinuxで何かに夢中になっています

ありがとう

トム

回答:


11

Ubuntuでは、ターミナルを開き、問題のディレクトリに移動して、次のコマンドループを実行できます。

for f in *.flac; do ffmpeg -i "$f" -acodec alac "${f%.flac}.m4a"; done
  • .flacディレクトリ内のすべてのファイルをファイルに変換します.alac。これはビットパーフェクトな方法で行われます。
  • ffmpegUbuntuにはパッケージされていないため、リポジトリからインストールする必要があります。ただし、これでBPMタグ情報が保持されるかどうかはわかりません。

また、iTunesでFLACファイルを再生する(そして、適切にダウンコンバートして、iPodのスペースを効率的に使用する)ことは、ほとんど不可能に思えます。

iTunes でファイルを再生できるflukeformacというプログラムがあり.flacます。
iPodを効率的に使用するための変換については、次のコマンドループが役立ちます。

for file in *.flac; do $(flac -cd "$file" | lame --preset fast extreme - "${file%.flac}.mp3"); done`
  • あなたは交換することが--preset fast extreme低めのビットレートオプションで
    もっと上のlameプリセット)

1
優れた包括的な答え。ありがとう
Tom Corelis、2011

私はそれがacodec ALACに変換することができ、窓10でのffmpegの静的ビルドを使用しようとしましたが、H264がでサポートされている形式ですが、それはvcodec H264を変換することはできませんffmpeg --codecs
user1022209

6

PowerShelland を使用するWindowsの場合ffmpeg(@boehj回答に基づく):

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


4

(Windows)コマンドライン中毒者には:

iTunes for Windows用の自動化スクリプトを記述しました。これは、指定されたフォルダーとそのサブフォルダーからすべてのFLACファイルをALAC形式でiTunesに一括インポートし、アルバム、アーティスト、曲名などの主要なメタ情報を保持します。それは必要とflac.exeし、metaflac.exeかつ文字コード変換のための小さなヘルパーユーティリティ。これらの依存関係を含むすぐに使えるパッケージ(下記参照)をダウンロードするか、GitHubで私のプロジェクトをフォークすることができます。

詳細、バイナリのダウンロード、制限事項などについては、私のブログ投稿を参照してください。


2

Windowsでは、コマンドプロンプトを開いて次のコマンドを実行しqaaclibFLACとiTunes を使用して、別のドライブの同じディレクトリにあるALACにFLACファイルを変換できます(希望する方法)。

  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:)ドライブのディレクトリ名は同じである必要があります(そうしないと、FORコマンドの変数をいじる必要がありqaac、ディレクトリが作成されません)
  • s:\musicコマンドが機能するためには、ソースディレクトリ(上記の例)に移動する必要があります。
  • d:\musicファイルの上書きを避けるため、宛先ディレクトリ(上記の例)は空にする必要があります
  • SUBST同じドライブにALACファイルを作成する場合は、コマンドを使用してディレクトリをドライブ文字にマップできます。
  • 少なくともバージョン2.57を実行しqaac、Windowsバージョン(32ビットまたは64ビット)に適したバイナリを使用する必要があります。
  • qaacWindows PATH変数に含まれている必要があります。そうでない場合は、FOR上記のコマンドにバイナリへのフルパスを含める必要があります
  • qaac 動作するにはiTunesまたはQuickTimeがインストールされている必要があります
  • qaaclibFLACFLACファイルを読み取るために、そのディレクトリに一致するDLLのコピーが必要です。レアウェアサイトで見つけることができます。
  • iDevicesは、サンプルレートが48,000 kHzを超え、サンプルサイズが24ビットを超えるファイル(2016年の初め)を処理できません。iTunesでは、これらのファイルをデバイスにコピーできません。「サンプルレートがiDeviceでサポートされていないため、コピーされなかった」という警告が表示されます。qaacオプションで呼び出すと--rate 48000 --bits-per-sample 24これが修正されますが、これらのオプションは実際の高解像度ファイルでのみ使用してください。そうしないと、何も得られずにすべてのファイルが膨張します。
  • ALACファイルには、サウンドチェック機能(AppleのiTunesとiDevicesがサウンド再生ボリュームを同じレベルに調整する)に依存するボリューム情報がありません。iTunesを使用してファイルに情報を追加できます(ライブラリにボリューム情報を格納しているようです)、beaTunes(商用ソフトウェア)、iVolume(商用ソフトウェア)、およびさまざまなプラットフォーム上の他のいくつかのツール
  • これは同期ワークフローではありません。上記のコマンドを2回実行すると、ソースディレクトリに追加したFLACファイルが宛先ディレクトリに追加されますが、音楽の2つのディレクトリの同期は維持されません(ファイル名を変更すると、IF NOT EXIST最後の実行がALACファイルに反映されないため、メタデータの変更を使用している場合、異なる名前の重複したALACファイル、削除されたファイルは宛先ディレクトリから削除されません)

スーパーユーザーへようこそ!そのような包括的な最初の答えを投稿してくれてありがとう。:)
Excellll 2016年

1

FFmpegはそれを実行できるはずです。そのための正しいコマンドを見つけるのはあなた次第です。


これは古くからの投稿ですが、解決策というよりは本当にコメントです。答えの拡大を検討してください。ありがとう。
fixer1234 2016


1

FLACをALACに変換する方法は複数あります。

  • Windowsでは、foobar2000とエンコーダーパックを使用できます。
  • Windows、Linux、Macでは、PowerShell 、、flacおよびを使用できますffmpeg

    $folder = "d:\demo"
    
    # Convert flac to wav
    Get-ChildItem -Recurse "$folder\*.flac" | ForEach-Object {
      & C:\tools\flac.exe -d --force --silent $_.FullName
    }
    
    # Convert wav to alac
    Get-ChildItem -Recurse "$folder\*.wav" | ForEach-Object {
      $filename = [System.IO.Path]::ChangeExtension($_.FullName, ".m4a")
      & C:\tools\ffmpeg.exe -hide_banner -loglevel panic -i $_.FullName -acodec alac -sample_fmt s16p $fileName
    }
    
    # Remove wav and flac file
    Get-ChildItem -Recurse "$folder\*.wav" | Remove-Item
    Get-ChildItem -Recurse "$folder\*.flac" | Remove-Item

詳細については、私のブログ投稿を確認してください:音楽ファイルをFLACからALACに変換します


0

MediaMonkeyもこれを行うことができますが、BPMタグのみが保持されます(これらの形式で標準化されたタグであるSong Keyについては知りません)。

注:ALACエンコーディング用の「MediaMonkeyコーデックパック」を購入する必要があります。


0

コンバーターにはFooBarとiTunesEncodeを使用しています。

  1. iTunesEncodeを入手する
  2. FooBarに移動> FLACプレイリストのすべてを選択>右クリック-変換
  3. 右側>フォーマット>カスタム

    Encode Tool : path to iTunesEncode.exe
    Extension : m4a 
    Parameters : -d -e "Lossless Encoder" -a "%artist%" -l "%album%" -t "%title%" -g "%genre%" -y %date% -n %tracknumber% -i %s -o %d
    Format is: lossless
    next propery : 24
    
    DisplayInfo example :
    "Encoder name" - iTunes
    "Bitrate" - 1000
    "Setting" - Apple Lossless
  4. その他のパラメーターを入力して変換>構成を保存(オプション)>変換
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.