PS3 + Mac(MediaTomb)でAppleTVいらずの超快適メディアプレイヤーを実現
なにげにテレビっ子な私、Cocoonが壊れてしまい、かなりショックを受けてたんですが、一念発起MacをDLNAにしてPS3と接続する環境を構築したら、世界変わりました。マジPS3最高!! どうせ限られたPS3のHDDにコンテンツなんてコピーしないから、メディアプレイヤー機能なんて所詮オマケだぜと思ってたけど、やっぱコンテンツがあるって素晴しい。AppleTVなんてイラネーゼってくらい感動してます。しかも、なにげに環境作るの簡単~。ってことで、環境構築メモです。
まず、参考にさせて頂いたのが↓のサイト
PS3には標準でDLNAクライアント機能が備わっています.
[From cappuccinoのコンピタブログ : MediaTombで快適なPS3]
MacでフリーなDLNAアプリとしては、実質MediaTombしか存在しない状況である事は、昔から知ってたんですが、このMediaTombは元々Linux系のアプリの為、インストールがちょっと面倒そう。Finkとか使わないと、簡単にインストールできなそうと思い込んでたのが、そもそもの間違いでした。単純にソースだけ持ってきて、configure→make→sudu make installでインストール完了というお手軽っぷり。さらにお手軽に解説すると、ターミナルを起動して↓のコマンドをコピペすればインストール完了できます(事前にXcodeのインストールが必要です)
$ curl -O http://nchc.dl.sourceforge.net/sourceforge/mediatomb/mediatomb-0.11.0.tar.gz
$ tar zxvf mediatomb-0.11.0.tar.gz
$ cd mediatomb-0.11.0
$ ./configure
$ make
$ sudo make install
再度のコマンドで、管理者パスワードを入力すれば完了。あとは、ターミナルで
$ mediatomb --ip <自分のIPアドレス>
と入力すれば、起動できます。
2008-10-19 20:27:14 INFO: Loading configuration from: /Users/koh/.mediatomb/config.xml
2008-10-19 20:27:14 INFO: Checking configuration...
2008-10-19 20:27:14 INFO: Setting filesystem import charset to UTF-8-MAC
2008-10-19 20:27:14 INFO: Setting metadata import charset to UTF-8-MAC
2008-10-19 20:27:14 INFO: Setting playlist charset to US-ASCII
2008-10-19 20:27:14 INFO: Configuration check succeeded.
2008-10-19 20:27:14 INFO: Initialized port: 49152
2008-10-19 20:27:14 INFO: Server bound to: 192.168.0.9
2008-10-19 20:27:15 INFO: MediaTomb Web UI can be reached by following this link:
2008-10-19 20:27:15 INFO: http://192.168.0.9:49152/
みたいなメッセージが現れて、最後の行のhttp://192.168.0.9:49152/にSafariなどでアクセスすると、Web経由でDLNAの設定ができます。↑の最初のログにあるように、一回目の起動時に、~/.mediatomb/config.xmlという設定ファイルが作成されるので、これをviなどで開いて、PS3とMac用の設定をしてください。具体的にはPS3ではコメントアウトしてねって所の変更と、Macでの日本語文字化け対策で、数行修正するだけ。
18行目あたり <protocolInfo extend="yes"/><!-- For PS3 support change to "yes" -->
36行目あたり
<import hidden-files="no">
<filesystem-charset>UTF-8-MAC</filesystem-charset>
<metadata-charset>UTF-8-MAC</metadata-charset>
58行目あたり <map from="avi" to="video/divx"/>
という感じ、エントリーの末尾に、僕の設定を残しておきますので、良くわからなければ、参考にしてください。コピペしてください。
あとWeb側の設定などは、cappuccinoさんのブログ等を参考にしてくださいませ。
PS3のメディア再生能力の高さは、やっぱりピカイチだし、本気で、PS3のお得度が倍増した。
以下、現状のconfig.xmlのサンプルです
<?xml version="1.0" encoding="UTF-8"?>
<config version="1" xmlns="http://mediatomb.cc/config/1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mediatomb.cc/config/1 http://mediatomb.cc/config/1.xsd">
<server>
<ui enabled="yes">
<accounts enabled="no" session-timeout="30">
<account user="mediatomb" password="mediatomb"/>
</accounts>
</ui>
<name>MediaTomb</name>
<udn>uuid:f506efe5-eac2-4367-bba8-72da8e62679f</udn>
<home>/Users/koh/.mediatomb</home>
<webroot>/usr/local/share/mediatomb/web</webroot>
<storage>
<sqlite3 enabled="yes">
<database-file>mediatomb.db</database-file>
</sqlite3>
</storage>
<protocolInfo extend="yes"/><!-- For PS3 support change to "yes" -->
<!--
Uncomment the lines below to get rid of jerky avi playback on the
DSM320 or to enable subtitles support on the DSM units
-->
<!--
<custom-http-headers>
<add header="X-User-Agent: redsonic"/>
</custom-http-headers>
<manufacturerURL>redsonic.com</manufacturerURL>
<modelNumber>105</modelNumber>
-->
<!-- Uncomment the line below if you have a Telegent TG100 -->
<!--
<upnp-string-limit>101</upnp-string-limit>
-->
</server>
<import hidden-files="no">
<filesystem-charset>UTF-8-MAC</filesystem-charset>
<metadata-charset>UTF-8-MAC</metadata-charset>
<scripting script-charset="UTF-8">
<virtual-layout type="builtin"/>
</scripting>
<mappings>
<extension-mimetype ignore-unknown="no">
<map from="mp3" to="audio/mpeg"/>
<map from="ogg" to="application/ogg"/>
<map from="asf" to="video/x-ms-asf"/>
<map from="asx" to="video/x-ms-asf"/>
<map from="wma" to="audio/x-ms-wma"/>
<map from="wax" to="audio/x-ms-wax"/>
<map from="wmv" to="video/x-ms-wmv"/>
<map from="wvx" to="video/x-ms-wvx"/>
<map from="wm" to="video/x-ms-wm"/>
<map from="wmx" to="video/x-ms-wmx"/>
<map from="m3u" to="audio/x-mpegurl"/>
<map from="pls" to="audio/x-scpls"/>
<map from="flv" to="video/x-flv"/>
<!-- Uncomment the line below for PS3 divx support -->
<map from="avi" to="video/divx"/>
<!-- Uncomment the line below for D-Link DSM / ZyXEL DMA-1000 -->
<!-- <map from="avi" to="video/avi"/> -->
</extension-mimetype>
<mimetype-upnpclass>
<map from="audio/*" to="object.item.audioItem.musicTrack"/>
<map from="video/*" to="object.item.videoItem"/>
<map from="image/*" to="object.item.imageItem"/>
</mimetype-upnpclass>
<mimetype-contenttype>
<treat mimetype="audio/mpeg" as="mp3"/>
<treat mimetype="application/ogg" as="ogg"/>
<treat mimetype="audio/x-flac" as="flac"/>
<treat mimetype="image/jpeg" as="jpg"/>
<treat mimetype="audio/x-mpegurl" as="playlist"/>
<treat mimetype="audio/x-scpls" as="playlist"/>
<treat mimetype="audio/x-wav" as="pcm"/>
<treat mimetype="audio/L16" as="pcm"/>
<treat mimetype="video/x-msvideo" as="avi"/>
</mimetype-contenttype>
</mappings>
</import>
<transcoding enabled="no">
<mimetype-profile-mappings>
<transcode mimetype="video/x-flv" using="vlcmpeg"/>
<transcode mimetype="application/ogg" using="vlcmpeg"/>
<transcode mimetype="application/ogg" using="oggflac2raw"/>
<transcode mimetype="audio/x-flac" using="oggflac2raw"/>
</mimetype-profile-mappings>
<profiles>
<profile name="oggflac2raw" enabled="no" type="external">
<mimetype>audio/L16</mimetype>
<accept-url>no</accept-url>
<first-resource>yes</first-resource>
<accept-ogg-theora>no</accept-ogg-theora>
<agent command="ogg123" arguments="-d raw -f %out %in"/>
<buffer size="1048576" chunk-size="131072" fill-size="262144"/>
</profile>
<profile name="vlcmpeg" enabled="no" type="external">
<mimetype>video/mpeg</mimetype>
<accept-url>yes</accept-url>
<first-resource>yes</first-resource>
<accept-ogg-theora>yes</accept-ogg-theora>
<agent command="vlc" arguments="-I dummy %in --sout #transcode{venc=ffmpeg,vcodec=mp2v,vb=4096,fps=25,aenc=ffmpeg,acodec=mpga,ab=192,samplerate=44100,channels=2}:standard{access=file,mux=ps,dst=%out} vlc:quit"/>
<buffer size="14400000" chunk-size="512000" fill-size="120000"/>
</profile>
</profiles>
</transcoding>
</config>