前回 に引き続き、今回もUbuntuをWindows 7(以下、Win7)のサーバに仕立てます。今回はDLNAサーバ編です。
DLNAとは
DLNA(Digital Living Network Alliance)はガイドラインで、これに準拠している機器同士でのネットワーク接続を可能とし、動画や音楽や写真などのメディア・コンテンツを利用することができます。Win7に搭載されているWindows Media Player(以下、WMP)12では、WMPシリーズとして始めてDLNAをサポートしました[1] 。それまでWindows上でちゃんと動くDLNAクライアントは多くなかったので、WMP12のサポートによりDLNAの普及が進むのかもしれません。
ただし、Win7のStarter Editionに搭載されているWMP12では再生できませんでした。Ultimateだと問題なく再生できましたので、これもエディションによる制限なのでしょう。Starter Editionは今後Netbookに搭載して販売されるかもしれないので、あらかじめご注意ください[2] 。
UbuntuのDLNAサーバ
Ubuntuで使用できるDLNAサーバのフリーな実装はいくつかありますが、WMP12できちんと使おうとするとどれもしっくりきません。具体的には次のような感じです。
ここで苦渋の決断を迫られるわけですが、MediaTomb を選択することとしました。重複表示はどうにもなりませんが、運用で回避することはできますし、現在も活発に開発中で、これがもしMediaTombによる問題なのであれば、今後修正される可能性もあります。ただし、動画プレイヤー(Totem)ではこのようなことは起きず、WMP12の不具合ないし相性の可能性もあるので、修正されると断言するのは難しいです。
Mediatombのインストールと設定
リポジトリにパッケージが用意されているので、インストールするだけです。
$ sudo apt-get install mediatomb
基本的な設定は、[アプリケーション]-[サウンドとビデオ]-[MediaTomb]から行います。
追加したいフォルダを表示してパス名の右端の+をクリックすると、そのフォルダ全体が更新の対象となる
その右の○+をクリックすると、更新頻度を指定できる
[Scan Mode]は[Inotify]にチェックを入れる。これで、ファイルが置かれたら即座に更新される
[Initial Scan]は[Basic]でいいだろう
[Recursive]にチェックを入れると、そのフォルダより下のフォルダも再帰的に更新してくれる
[Database | Filesystem]の[Database]をクリックし、追加されたものを確認する
図1 フォルダを追加する。離れてはいるものの、パスの横の+をクリックする。実はすべて同じ曲で、エンコードが異なるだけである
図2 追加したフォルダを確認する。文字化けしているものがあることがわかる
WMP12で再生してみる
WMP12を起動すると、左ペインの[その他のライブラリ]に[MediaTomb]という項目が表示されているはずです[3] 。ここをクリックし、さらに[音楽]-[アーティスト]とダブルクリックすると、指定したフォルダにあるメディアファイルが表示されています。あとはこれを辿っていって再生するだけですが、いくつか問題があります。
MP3: メタデータが文字化けする
WMA: メタデータが読み取れず、アーティスト名が[不明]となる
Ogg Vorbis: メタデータは表示されず、そもそもWMPだと再生できない
もちろん、冒頭のとおり同じ項目が重複して表示されます。この問題に関しては[再生リスト]を作成することによって回避するのがいいでしょう。またWMAの問題は、ここでは特に解決しません。よって、Ogg VorbisとMP3の問題を解決します。
図3 文字化けしているのがMP3で、不明となっているのがWMA、Ogg Vorbisは表示されていない。また、曲数がおかしい
より新しいバージョンのMediaTombをインストールする
Ogg Vorbisを再生するためには、Ubuntu 9.04のリポジトリにあるMediaTombよりも新しいバージョンを使用する必要があります。PPAで公開してくれている人がいるので、それを使わせてもらいます。
/etc/apt/sources.listに次の行を追加し、保存する
deb http://ppa.launchpad.net/jamesh/ppa/ubuntu jaunty main
deb-src http://ppa.launchpad.net/jamesh/ppa/ubuntu jaunty main
公開鍵をインポートする
$ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 4FC578EC
mediatombをアップグレードする
$ sudo apt-get update
$ sudo apt-get dist-upgrade
なお、MediaTombのデータベースを1度でも作成したことがある場合は、後述する「データベースの再構築方法」を参考にして、再構築を行ってください。
Ogg Vorbisをトランスコード
MediaTombでは、トランスコードをサポートしています。トランスコードというのは、リアルタイムで別の形式にエンコードすることです。具体的には、Ogg Vorbisをその他の形式に変換すれば、WMP12でも再生可能となります。とても高度なことですが、MediaTombのパッケージではあらかじめある程度の設定がされており、わりと簡単に実現できます。
まずは、MP3プレイヤーをインストールしてください。
$ sudo apt-get install vorbis-tools
次に、/etc/mediatomb/config.xmlをエディタで開き、編集してください。
$ sudo gedit /etc/mediatomb/config.xml
/etc/mediatomb/config.xml 122行目
<transcoding enabled="no">
↓
<transcoding enabled="yes ">
/etc/mediatomb/config.xml 130行目
<profile name="oggflac2raw" enabled="no" type="external">
↓
<profile name="oggflac2raw" enabled="yes " type="external">
最後にMediaTombを再起動してください。
$ sudo /etc/init.d/mediatomb restart
以上です。行数が違う場合、9.04標準のMediaTombを使っている可能性がありますので、今一度確認してみてください。
図4 Ogg Vorbisが表示されるようになった
図5 やはり重複して表示されてはいるが、再生も可能だ
MP3のID3タグが文字化けする場合
MP3のID3タグの文字化けは、MediaTombで解決するよりもID3タグ自体を変換してしまった方が簡単です。具体的には、文字化けするShift_JISをUTF-8に書き換えます。書き換えツールはWindows用もUbuntu用もたくさんあるのでどれでもいいのですが、今回はEasyTAGを使用します。これだと、一括で変換できて便利です。
EasyTAGがインストールされていない場合、インストールします。
$ sudo apt-get install easytag
[アプリケーション]-[サウンドとビデオ]-[EasyTag]で起動し、MP3が置いてあるフォルダを指定して保存するだけです。[設定]の[ID3タグの設定]を確認しておくといいでしょう。この例のとおりになっていて、かつこの状態で保存すれば、MediaTombでは文字化けしなくなります。文字化けするファイルを一度削除し、修正したファイルをコピーするとわりと簡単に差し替えできるでしょう。
図6 [設定]の[ID3タグの設定]ダイアログ。一番下を[日本語 (Shift_JIS)]にするのがコツ
図7 メタデータが正しく表示されるようになった
データベースの再構築方法
何らかの理由でデータベースを再構築したい場合、やや強引な方法ですが次のようにすれば再構築できます。
mediatombを停止する
sudo /etc/init.d/mediatomb stop
データベースファイルを削除する
sudo rm -rf /var/lib/mediatomb/sqlite3.db
mediatombを起動する
sudo /etc/init.d/mediatomb start
Webブラウザで設定画面を開き、設定し直す
オマケ: Ubuntu 9.04をDLNAクライアントにする方法
第67回 に書きましたが、再掲します。
ちなみに、Ubuntu 9.04からは標準の動画プレイヤー(Totem)がDLNAクライアントになります。totem-plugins-extraをインストールし、[編集]-[プラグイン]を開いて[コヒーレンスDLNA/UPnPクライアント]にチェックを入れてください。あとはサイドバーの上のプルダウンから[コヒーレンスDLNA/UPnPクライアント]を選択してください。
いかがだったでしょうか。2009年10月は、WindowsもUbuntuも最新版が出る、とても楽しみな月ですね。どちらもお楽しみください。
次回は、以前Topicsを担当してたあの人がRecipeに登場する予定です。乞うご期待!