Macでflacをm4aに変換する方法

やりたいこと

flacファイルをm4aに変換したい!

購入した海外アーティストの曲ファイルがflacだった。
flacが再生できる環境なら問題ないのだが、我が家のカーナビがflacに対応できず再生できなかった。

m4aファイルなら再生できるのは確認済みなので、flacから変換したい。

また、変換はCLIで行いたく、GUIは使いたくない。

CLIの方が楽だし、大量のファイルを扱えるしね。

結論

以下の3つの方法を試したが、XLDが一番ベストだった。

理由は、コマンドもシンプルだし音楽タグも正常に引き継がれて、カーナビで問題なく再生することができた。

XLD

インストール

brew install xld

変換コマンド

 xld hoge.flac -f aac

// 一括で変換するパターン
ls *.flac | xargs -I{} xld {} -f aac

参考

pianoforte32.com

Afconvrert

macにはAfconvrertがプリインストールされていた。

わざわざXLDをインストールせずとも、Afconvrertでflacからm4aに変換することはできた。
が、タグ情報が全て消えてしまう。。。

音楽タグが全て消えるのは困るので、この方法は微妙。
(タグが不要なファイルならこの方法でもいいと思う)

変換コマンド

afconvert -f m4af -d alac ファイル名.flac

参考

macos - What are the command line options for afconvert? - Ask Different

タグが消えるのは困るので、この方法はボツ

ffmpeg

ffmpegでもm4aに変換はできた。

しかし、変換したm4aがカーナビで再生できなかった。

ちゃんと変換できてないのだろうか...

変換コマンド

ffmpeg -i 変換前ファイル.flac -vn -acodec alac 変換後ファイル.m4a

変換できても再生できなければ意味がないので、この方法はボツ

感想

CLIで変換することはできたが、恥ずかしながら自分がshコマンドに精通していないため、xargsの存在を初めて知った。

メッチャ便利だね、xargs

今回、シェルコマンドにも興味が出たので、勉強していきたい。