AmpacheでApple Losslessをトランスコードする
iTunes由来のm4aファイルにおいて、Ampacheで再生できる物とできない物があった。
んーっと考えて、一時期Apple Losslessを使ってたことを思い出した。
幸い、Ubuntu11.10 ServerのリポジトリにApple Losslessのサーバがあったのでトランスコード出来るようにしてみた。
必要なパッケージをインストールする
# apt-get install faad alac-decoder lame
変換シェルスクリプトを作る
パスの通ったディレクトリ(ここではお行儀が悪いけれど/usr/bin)にシェルスクリプトm4a2wavを作る。
拡張子m4aのファイルにはAACとApple Losslessの二種類があるため、それを判別して適切なデコーダに渡すのが目的。
#! /bin/sh export PATH=$PATH:/usr/bin:/bin/ alac-decoder -t "$1" | grep mp4a if [ "$?" = "0" ];then faad -f 2 -w "$1" else alac-decoder "$1" fi
もちろんパーミッションを与えておく。
# chmod 755 m4a2wav