Ubuntu Weekly Recipe

第86回UbuntuをWindows 7のサーバとして使う(2)DLNAサーバ編

前回に引き続き、今回も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できちんと使おうとするとどれもしっくりきません。具体的には次のような感じです。

  • Coherenceサーバ機能を使うにはパッケージが足りない
  • uShareID3タグやVorbisコメントなどのメタデータが表示できない
  • GMediaServerOgg Vorbisが表示されない。長期間開発が止まっている
  • FUPPESパッケージが存在しない
  • MediaTomb同じコンテンツが複数表示される

ここで苦渋の決断を迫られるわけですが、MediaTombを選択することとしました。重複表示はどうにもなりませんが、運用で回避することはできますし、現在も活発に開発中で、これがもしMediaTombによる問題なのであれば、今後修正される可能性もあります。ただし、動画プレイヤー(Totem)ではこのようなことは起きず、WMP12の不具合ないし相性の可能性もあるので、修正されると断言するのは難しいです。

Mediatombのインストールと設定

リポジトリにパッケージが用意されているので、インストールするだけです。

$ sudo apt-get install mediatomb

基本的な設定は、[アプリケーション]-[サウンドとビデオ]-[MediaTomb]から行います。

  1. 追加したいフォルダを表示してパス名の右端の+をクリックすると、そのフォルダ全体が更新の対象となる
  2. その右の○+をクリックすると、更新頻度を指定できる
    1. [Scan Mode]は[Inotify]にチェックを入れる。これで、ファイルが置かれたら即座に更新される
    2. [Initial Scan]は[Basic]でいいだろう
    3. [Recursive]にチェックを入れると、そのフォルダより下のフォルダも再帰的に更新してくれる
  3. [Database | Filesystem]の[Database]をクリックし、追加されたものを確認する
図1 フォルダを追加する。離れてはいるものの、パスの横の+をクリックする。実はすべて同じ曲で、エンコードが異なるだけである
図1 フォルダを追加する
図2 追加したフォルダを確認する。文字化けしているものがあることがわかる
図2 追加したフォルダを確認する

WMP12で再生してみる

WMP12を起動すると、左ペインの[その他のライブラリ]に[MediaTomb]という項目が表示されているはずです[3]⁠。ここをクリックし、さらに[音楽]-[アーティスト]とダブルクリックすると、指定したフォルダにあるメディアファイルが表示されています。あとはこれを辿っていって再生するだけですが、いくつか問題があります。

  • MP3:メタデータが文字化けする
  • WMA:メタデータが読み取れず、アーティスト名が[不明]となる
  • Ogg Vorbis:メタデータは表示されず、そもそもWMPだと再生できない

もちろん、冒頭のとおり同じ項目が重複して表示されます。この問題に関しては[再生リスト]を作成することによって回避するのがいいでしょう。またWMAの問題は、ここでは特に解決しません。よって、Ogg VorbisとMP3の問題を解決します。

図3 文字化けしているのがMP3で、不明となっているのがWMA、Ogg Vorbisは表示されていない。また、曲数がおかしい
図3 文字化けしているのがMP3で、不明となっているのがWMA、Ogg Vorbisは表示されていない

より新しいバージョンのMediaTombをインストールする

Ogg Vorbisを再生するためには、Ubuntu 9.04のリポジトリにあるMediaTombよりも新しいバージョンを使用する必要があります。PPAで公開してくれている人がいるので、それを使わせてもらいます。

  1. /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
  2. 公開鍵をインポートする
    $ sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 4FC578EC
  3. 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が表示されるようになった
図4 Ogg Vorbisが表示されるようになった
図5 やはり重複して表示されてはいるが、再生も可能だ
図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)]にするのがコツ
図6 [設定]の[ID3タグの設定]ダイアログ
図7 メタデータが正しく表示されるようになった
図7 メタデータが正しく表示されるようになった

データベースの再構築方法

何らかの理由でデータベースを再構築したい場合、やや強引な方法ですが次のようにすれば再構築できます。

  1. mediatombを停止する
    sudo /etc/init.d/mediatomb stop
  2. データベースファイルを削除する
    sudo rm -rf /var/lib/mediatomb/sqlite3.db
  3. mediatombを起動する
    sudo /etc/init.d/mediatomb start
  4. Webブラウザで設定画面を開き、設定し直す

オマケ: Ubuntu 9.04をDLNAクライアントにする方法

第67回に書きましたが、再掲します。

ちなみに、Ubuntu 9.04からは標準の動画プレイヤー(Totem)がDLNAクライアントになります。totem-plugins-extraをインストールし、[編集]-[プラグイン]を開いて[コヒーレンスDLNA/UPnPクライアント]にチェックを入れてください。あとはサイドバーの上のプルダウンから[コヒーレンスDLNA/UPnPクライアント]を選択してください。

いかがだったでしょうか。2009年10月は、WindowsもUbuntuも最新版が出る、とても楽しみな月ですね。どちらもお楽しみください。

次回は、以前Topicsを担当してたあの人がRecipeに登場する予定です。乞うご期待!

おすすめ記事

記事・ニュース一覧