avconv(またはavconvのフォークであるffmpeg)は、コマンドラインからこれを行うことができます。
avconv -i input.flac -c:a alac output.m4a
メタデータを単独で保持する必要があります。
ディレクトリ内のすべてのflacを実行するには:
for f in ./*.flac; do avconv -i "$f" -c:a alac "${f%.*}.m4a"; done
すべてのflacを再帰的に実行するには(現在のディレクトリとすべてのサブディレクトリで):
shopt -s globstar
for f in ./**/*.flac; do avconv -i "$f" -c:a alac "${f%.*}.m4a"; done
oggファイルなどにflacがある場合は、明らかにに変更./*.flac
し./*.ogg
ます。
medibuntuのバージョンはインストールされていますが、これはリポジトリのavconv / ffmpegで動作するはずです(ALACはApacheライセンスの下でリリースされ、合法的に配布できるため)。
元のファイルを削除したい場合はrm
、ループに入れることができます。このバージョンは-n
avconv のフラグを使用するため、既存のALACファイルを上書きせず、&&
代わりに;
avconvがエラーで停止した場合、元のFLACファイルは削除されません。
for f in ./*.flac; do avconv -n -i "$f" -c:a alac "${f%.*}.m4a" && rm "$f"; done
rmを使用してファイルを削除すると元に戻せないことに注意してください(フォレンジックデータリカバリ以外)。使用には注意してください。