Linux mediatomb installation and setup for PS3
Last Updated on Friday, 07 May 2010 07:14
| Article Index |
|---|
| 1. Install a mediatomb media server |
| 2. Run mediatomb server |
| 3. Add shared directories |
This article briefly describes an installation of mediatomb media server on linux Debian / Ubuntu system and quick setup for Playstation 3 streaming.
1. Install a mediatomb media server
First we need to install mediatomb media server:
apt-get install mediatomb vlc
Create a .mediatomb directory within your home directory:
mkdir ~/.mediatomb
create a ~/.mediatomb/config.xml with with a following text:
NOTE: following lines for m2ts, ts and mp4 support :
<map from="m2ts" to="video/mpeg"/>
<map from="ts" to="video/mpeg"/>
<map from="mp4" to="video/avc"/>
~/.mediatomb/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:56907948-8122-479c-a53e-eb5a9c591ee4</udn>
   <webroot>/usr/share/mediatomb/web</webroot>
   <storage>
     <sqlite3 enabled="yes">
       <database-file>mediatomb.db</database-file>
     </sqlite3>
     <mysql enabled="no">
       <host>localhost</host>
       <username>mediatomb</username>
       <database>mediatomb</database>
     </mysql>
   </storage>
   <protocolInfo extend="yes"/>
 </server>
 <import hidden-files="no">
   <scripting script-charset="UTF-8">
     <common-script>/usr/share/mediatomb/js/common.js</common-script>
     <playlist-script>/usr/share/mediatomb/js/playlists.js</playlist-script>
     <virtual-layout type="builtin">
       <import-script>/usr/share/mediatomb/js/import.js</import-script>
     </virtual-layout>
   </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"/>
       <map from="vob" to="video/mpeg"/>
<map from="m2ts" to="video/mpeg"/>
<map from="ts" to="video/mpeg"/>
<map from="mp4" to="video/avc"/>
     </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>
Â
2. Run mediatomb server
Run mediatomb server manually:
# mv /etc/init.d/mediatomb /etc/init.d/mediatomb.back
# update-rc.d mediatomb remove
Now run mediatomb as a normal user:
$ mediatomb
for more troubleshooting messages use a following command:
mediatomb –f /etc/mediatomb/config.xml –D –l /var/log/mediatomb.log
3. Add shared directories
Add shared directories to a mediatomb by navigating to http://localhost:49153/ web interface.















