Guia de Instalação do Mediatomb v0.1
-
Upload
weslley-silva -
Category
Documents
-
view
259 -
download
4
Transcript of Guia de Instalação do Mediatomb v0.1
Pag. 1 de 16
Guia de Instalação do MediaTomb
Autor: Alexsander Loula ([email protected])
Data: 14/07/2010
Versão: 0.1
1. Introdução
O MediaTomb é um servidor UPnP de código aberto (GPL) que permite fazer streaming de
mídia digital (vídeo, áudio, foto) via rede. Ele é compatível com uma grande variedade de
dispositivos compatíveis com o UPnP, como: PS3, XBOX 360, TV, Receiver, etc. A lista completa
de dispositivos testados pode ser encontrada aqui: http://mediatomb.cc/pages/devices
Seguem abaixo algumas características do MediaTomb:
• Extração do metadata de arquivos MP3, OGG, FLAC, JPEG, etc;
• Suporta thumbnail EXIF;
• Definição de layout baseado em scripts customizáveis pelo usuário;
• Transcodificação de formatos via plugins e scripts.
2. Material utilizado
Segue abaixo o material utilizado para os testes:
• 01 - Computador com Ubuntu 9.10 – Server Edition
• 01 - PS3 (Firmware v3.40)
• 01 - Router WRT54GL (Firmware Tomato v1.27)
• 01 - TV/Monitor
• 01 - Receiver (opcional, o áudio pode ser reproduzido na TV)
Pag. 2 de 16
3. Instalação e configuração
O MediaTomb é muito flexível e customizável, portanto as instruções e configurações
abaixo podem variar de acordo com as necessidades de cada usuário e devem servir somente
como referência.
a. Atualize do sistema operacional e instale as dependências:
sudo password root
su
aptitude update
aptitude safe-upgrade
reboot
/etc/init.d/apparmor stop
update-rc.d -f apparmor remove
aptitude remove --purge apparmor apparmor-utils
aptitude install build-essential autoconf ffmpeg ffmpegthumbnailer \
libavcodec-extra-52 libavdevice-extra-52 libavfilter-extra-0 \
libavformat-extra-52 libavutil-extra-49 libavcodec-dev libavdevice-dev \
libavfilter-dev libavformat-dev libavutil-dev libffmpegthumbnailer-dev \
libdvdread-dev libdvdnav-dev libfaac-dev libfaad-dev libmp3lame-dev \
libmp4v2-dev libopencore-amrnb-dev libopencore-amrwb-dev \
libxvidcore4-dev libx264-dev libexif-dev libtag1-dev \
libcurl4-gnutls-dev libexpat1-dev \
libmagic-dev libmozjs-dev libmysqlclient-dev libsqlite3-dev \
x264 zlib1g-dev subversion
b. Baixe e compile o MediaTomb:
svn co https://svn.mediatomb.cc/svnroot/mediatomb/trunk/mediatomb mediatomb
cd mediatomb
autoreconf -i
./configure --prefix=/usr/local
CONFIGURATION SUMMARY ----
sqlite3 : yes
mysql : yes
libjs : yes
libmagic : yes
inotify : yes
libexif : yes
id3lib : disabled
taglib : yes
libmp4v2 : yes
ffmpeg : yes
ffmpegthumbnailer : yes
lastfmlib : missing
Pag. 3 de 16
external transcoding : yes
curl : yes
YouTube : yes
Weborama : yes
Apple Trailers : yes
SopCast : disabled
libextractor : disabled
db-autocreate : yes
make
make install
adduser --add_extra_groups --disabled-login --shell /usr/sbin/nologin
mediatomb
sudo -u mediatomb -s -H
c. Execute o MediaTomb:
mediatomb
MediaTomb UPnP Server version 0.12.0 - http://mediatomb.cc/
==========================================================================
Copyright 2005-2008 Gena Batsyan, Sergey Bostandzhyan, Leonhard Wimmer.
MediaTomb is free software, covered by the GNU General Public License version
2
2010-02-04 14:36:08 INFO: MediaTomb configuration was created in:
/home/mediatomb/.mediatomb/config.xml
2010-02-04 14:36:08 INFO: Loading configuration from:
/home/mediatomb/.mediatomb/config.xml
2010-02-04 14:36:08 INFO: UUID generated: 39f7268a-f88f-418a-80d7-
99c4233e9dd7
2010-02-04 14:36:08 INFO: Checking configuration...
2010-02-04 14:36:08 INFO: Setting filesystem import charset to UTF-8
2010-02-04 14:36:08 INFO: Setting metadata import charset to UTF-8
2010-02-04 14:36:08 INFO: Setting playlist charset to UTF-8
2010-02-04 14:36:08 WARNING: You enabled the YouTube feature, which allows
You to watch YouTube videos on your UPnP device!
Please check http://www.youtube.com/t/terms
By using this feature you may be violating
YouTube service terms and conditions!
2010-02-04 14:36:08 INFO: Configuration check succeeded.
2010-02-04 14:36:09 WARNING: Sqlite3 database seems to be corrupt or doesn't
exist yet.
2010-02-04 14:36:09 INFO: no sqlite3 backup is available or backup is
corrupt. automatically creating database...
2010-02-04 14:36:09 INFO: database created successfully.
2010-02-04 14:36:09 INFO: Initialized port: 49152
Pag. 4 de 16
2010-02-04 14:36:09 INFO: Server bound to: 192.168.1.100
2010-02-04 14:36:10 INFO: MediaTomb Web UI can be reached by following
this link:
2010-02-04 14:36:10 INFO: http://192.168.1.100:49152/
Com o MediaTomb sendo executado, acesse a interface WEB através de algum navegador
(http:// 192.168.1.100:49152):
Verifique no PS3 se o mesmo pode ser encontrado em Music, Video e Photo:
d. Configure o MediaTomb para execução automática:
Edite do arquivo ‘/etc/default/mediatomb’ conforme abaixo:
# Set whether the daemon should be started. Set this value to anything
# but 'yes' to enable the daemon
NO_START="no"
# Additional options that are passed to the daemon.
Pag. 5 de 16
# Vai fazer o bind na porta 50500
OPTIONS="-p 50500"
# The network interface for MediaTomb to bind to and for which the multicast
# routing entry should be added; "" if the route shouldn't be added at all.
# For example: INTERFACE="eth0"
INTERFACE="eth0"
# The route command and arguments to be used if INTERFACE is defined.
# These variables should normally be left unmodified.
ROUTE_ADD="/sbin/route add -net 239.0.0.0 netmask 255.0.0.0"
ROUTE_DEL="/sbin/route del -net 239.0.0.0 netmask 255.0.0.0"
# The user and group that MediaTomb should be run as.
USER="mediatomb"
GROUP="mediatomb"
Crie o script de inicialização:
vi /etc/init.d/mediatomb
Copie o conteúdo abaixo e cole no novo arquivo ‘/etc/init.d/mediatomb’:
#! /bin/sh
#
# MediaTomb initscript
#
# Original Author: Tor Krill <[email protected]>.
# Modified by: Leonhard Wimmer <[email protected]>
# Modified again by Andres Mejia <[email protected]> to
# base it off of /etc/init.d/skeleton
# Modified again by Flexion.Org <[email protected]> to
# reference /usr/local/ and ~/ for a simple from source build
#
#
### BEGIN INIT INFO
# Provides: mediatomb
# Required-Start: $all
# Required-Stop: $all
# Should-Start: $all
# Should-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: upnp media server
### END INIT INFO
# Do NOT "set -e"
# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/bin
Pag. 6 de 16
DESC="upnp media server"
NAME=mediatomb
DAEMON=/usr/local/bin/$NAME
PIDFILE=/var/run/$NAME.pid
LOGFILE=/var/log/$NAME.log
SCRIPTNAME=/etc/init.d/$NAME
DEFAULT=/etc/default/$NAME
# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0
# Read configuration variable file if it is present
[ -r $DEFAULT ] && . $DEFAULT
# Load the VERBOSE setting and other rcS variables
[ -f /etc/default/rcS ] && . /etc/default/rcS
# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions
# Start the daemon if NO_START is disabled in DEFAULT
if [ "$NO_START" = "yes" ]; then
test "$1" = "start" && \
{
log_warning_msg "$NAME: Not starting $DESC."
log_warning_msg "$NAME: Disabled in $DEFAULT."
}
exit 0
fi
# Run as root if USER not specified
if [ ! $USER ]; then
USER=root
fi
# Check for an invalid user or one without a home directory
eval USERHOME=~$USER
if [ "${USERHOME#/}" = "${USERHOME}" ]; then
log_failure_msg "$NAME: The user '$USER' specified in $DEFAULT is
invalid."
exit 1
fi
if [ "$INTERFACE" != "" ] ; then
INTERFACE_ARG="-e $INTERFACE"
else
INTERFACE_ARG=""
fi
Pag. 7 de 16
DAEMON_ARGS="-c /home/$USER/.mediatomb/config.xml -d -u $USER -g $GROUP -P
$PIDFILE -l $LOGFILE $INTERFACE_ARG $OPTIONS"
#
# Function that starts the daemon/service.
#
do_start() {
# Return
# 0 if daemon has been started
# 1 if daemon was already running
# 2 if daemon could not be started
touch $PIDFILE
chown $USER:$GROUP $PIDFILE
touch $LOGFILE
chown $USER:$GROUP $LOGFILE
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON \
--test > /dev/null \
|| return 1
start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --
\
$DAEMON_ARGS \
|| return 2
}
#
# Function that stops the daemon/service.
#
do_stop() {
# Return
# 0 if daemon has been stopped
# 1 if daemon was already stopped
# 2 if daemon could not be stopped
# other if a failure occurred
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile
$PIDFILE --name $NAME
RETVAL="$?"
[ "$RETVAL" = 2 ] && return 2
rm -f $PIDFILE
return "$RETVAL"
}
#
# Function that sends a SIGHUP to the daemon/service.
#
do_reload() {
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name
$NAME
return 0
Pag. 8 de 16
}
case "$1" in
start)
if [ -n "$INTERFACE" ]; then
# try to add the multicast route
if [ "$VERBOSE" != no ]; then
{
log_action_begin_msg \
"$NAME: Trying to add the multicast route"
$ROUTE_ADD $INTERFACE \
&& log_action_end_msg 0
} || {
true && \
log_warning_msg "Failed to add multicast route.
skipping."
}
else
$ROUTE_ADD $INTERFACE >/dev/null 2>&1 || true
fi
fi
log_daemon_msg "Starting $DESC" "$NAME"
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_warning_msg "$DESC" "'$NAME'" "was already started" ;;
2) log_end_msg 1 ;;
esac
;;
stop)
log_daemon_msg "Stopping $DESC" "$NAME"
do_stop
case "$?" in
0)
log_end_msg 0
if [ -n "$INTERFACE" ]; then
# try to add the multicast route
if [ "$VERBOSE" != no ]; then
{
log_action_begin_msg \
"$NAME: Trying to delete the multicast route"
$ROUTE_DEL $INTERFACE \
&& log_action_end_msg 0
} || {
true && \
log_warning_msg \
"Failed to delete multicast route. skipping."
}
else
Pag. 9 de 16
$ROUTE_DEL $INTERFACE >/dev/null 2>&1 || true
fi
fi
;;
1) log_warning_msg "$DESC" "'$NAME'" "was already stopped" ;;
2) log_end_msg 1 ;;
esac
;;
reload|force-reload)
log_daemon_msg "Reloading $DESC" "$NAME"
do_reload
log_end_msg $?
;;
restart)
#
# If the "reload" option is implemented, move the "force-
reload"
# option to the "reload" entry above. If not, "force-reload" is
# just the same as "restart".
#
log_daemon_msg "Restarting $DESC" "$NAME"
do_stop
case "$?" in
0|1)
sleep 1
do_start
case "$?" in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running
*) log_end_msg 1 ;; # Failed to start
esac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
exit 3
;;
esac
:
Torne-o executável:
chmod 755 /etc/init.d/mediatomb
Pag. 10 de 16
Teste-o:
/etc/init.d/mediatomb start
* Starting upnp media server mediatomb [ OK ]
Verifique no log se o mesmo está sendo executado:
tail -f -n 20 /var/log/mediatomb.log
Crie um link para o script de inicialização:
update-rc.d mediatomb defaults 95
e. Crie o arquivo de configuração:
Crie o um backup do arquivo original:
mv /home/mediatomb/.mediatomb/config.xml
/home/mediatomb/.mediatomb/config.xml_original
Altere o arquivo ‘/home/mediatomb/.mediatomb/config.xml’ conforme suas necessidades
(principalmente as linhas em negrito):
<?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" show-tooltips="yes">
<accounts enabled="no" session-timeout="30">
<account user="mediatomb" password="mediatomb"/>
</accounts>
</ui>
<name>MediaTomb</name>
<udn>uuid:c539d7b0-e27e-4b06-a47a-a450772c4675</udn>
<home>/home/mediatomb/.mediatomb</home>
<webroot>/usr/local/share/mediatomb/web</webroot>
<storage>
<sqlite3 enabled="yes">
<database-file>mediatomb.db</database-file>
</sqlite3>
<mysql enabled="no">
<host>localhost</host>
<username>user</username>
<password>password</password>
<database>mediatomb</database>
</mysql>
</storage>
<protocolInfo extend="yes"/><!-- For PS3 support change to "yes" -->
<!--
Pag. 11 de 16
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>
-->
<extended-runtime-options>
<ffmpegthumbnailer enabled="yes">
<thumbnail-size>128</thumbnail-size>
<seek-percentage>10</seek-percentage>
<filmstrip-overlay>yes</filmstrip-overlay>
<workaround-bugs>no</workaround-bugs>
<image-quality>8</image-quality>
</ffmpegthumbnailer>
<mark-played-items enabled="no" suppress-cds-updates="yes">
<string mode="prepend">*</string>
<mark>
<content>video</content>
</mark>
</mark-played-items>
</extended-runtime-options>
</server>
<import hidden-files="no">
<filesystem-charset>UTF-8</filesystem-charset>
<metadata-charset>UTF-8</metadata-charset>
<playlist-charset>UTF-8</playlist-charset>
<autoscan use-inotify="auto">
<directory location="/home/user/music" mode="inotify" recursive="yes"
hidden-files="no"/>
<directory location="/home/user/picture" mode="inotify" recursive="yes"
hidden-files="no"/>
<directory location="/home/user/video" mode="inotify" recursive="yes"
hidden-files="no"/>
</autoscan>
<scripting script-charset="UTF-8">
<common-script>/usr/local/share/mediatomb/js/common.js</common-script>
<playlist-script>/usr/local/share/mediatomb/js/playlists.js</playlist-
script>
<virtual-layout type="js">
Pag. 12 de 16
<import-script>/usr/local/share/mediatomb/js/import.js</import-
script>
<dvd-script>/usr/local/share/mediatomb/js/import-dvd.js</dvd-script>
</virtual-layout>
</scripting>
<mappings>
<extension-mimetype ignore-unknown="no">
<map from="mpg" to="video/mpeg"/>
<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"/>
<map from="avi" to="video/divx"/>
<map from="mts" to="video/mpeg"/>
<map from="ts" to="video/mpeg"/>
<map from="m2ts" to="video/mpeg"/>
<map from="mkv" to="video/mpeg"/>
<map from="mkv" to="video/x-matroska"/>
<map from="flac" to="audio/x-flac"/>
<map from="mov" to="video/x-quicktime"/>
<map from="vob" to="video/mpeg"/>
<map from="m4v" to="video/mp4"/>
<map from="iso" to="application/x-iso9660-image"/>
</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"/>
<treat mimetype="video/mp4" as="mp4"/>
Pag. 13 de 16
<treat mimetype="audio/mp4" as="mp4"/>
<treat mimetype="video/quicktime" as="mov"/>
<treat mimetype="video/x-quicktime" as="mov"/>
<treat mimetype="application/x-iso9660" as="dvd"/>
<treat mimetype="application/x-iso9660-image" as="dvd"/>
</mimetype-contenttype>
</mappings>
<online-content>
<!-- Make sure to setup a transcoding profile for flv -->
<YouTube enabled="yes" refresh="28800" update-at-start="yes" purge-
after="604800" racy-content="exclude" format="mp4" hd="no">
<favorites user="youtubeuser"/>
<playlists user="youtubeuser"/>
<uploads user="youtubeuser"/>
<standardfeed feed="most_viewed" time-range="today"/>
<standardfeed feed="recently_featured" time-range="today"/>
<standardfeed feed="top_rated" time-range="this_week"/>
</YouTube>
<Weborama enabled="no" refresh="28800" update-at-start="no">
<playlist name="Active" type="playlist" mood="active"/>
<playlist name="Metal" type="playlist">
<filter>
<genres>metal</genres>
</filter>
</playlist>
</Weborama>
<AppleTrailers enabled="yes" refresh="43200" update-at-start="yes"
resolution="640"/>
</online-content>
</import>
<transcoding enabled="yes">
<mimetype-profile-mappings>
<transcode mimetype="application/ogg" using="audio-generic"/>
<transcode mimetype="audio/x-flac" using="audio-generic"/>
<transcode mimetype="video/x-ms-asf" using="video-generic"/>
<transcode mimetype="video/x-flv" using="video-generic"/>
<transcode mimetype="video/x-matroska" using="video-generic"/>
<transcode mimetype="video/mpeg" using="video-generic"/>
<transcode mimetype="video/quicktime" using="video-mov-mpeg"/>
<transcode mimetype="video/x-quicktime" using="video-mov-mpeg"/>
</mimetype-profile-mappings>
<profiles>
<profile name="audio-generic" enabled="yes" type="external" >
<mimetype>audio/L16</mimetype>
<first-resource>yes</first-resource>
<accept-url>yes</accept-url>
<sample-frequency>44100</sample-frequency>
<audio-channels>2</audio-channels>
Pag. 14 de 16
<hide-original-resource>yes</hide-original-resource>
<agent command="/usr/bin/ffmpeg" arguments="-ac 2 -ar 44100 -y -i
%in -f s16be %out"/>
<buffer size="1048576" chunk-size="4096" fill-size="1024"/>
</profile>
<profile name="video-generic" enabled="yes" type="external">
<avi-fourcc-list mode="ignore">
<fourcc>DX50</fourcc>
<fourcc>DM4V</fourcc>
<fourcc>M4S2</fourcc>
</avi-fourcc-list>
<mimetype>video/mpeg</mimetype>
<accept-url>yes</accept-url>
<first-resource>yes</first-resource>
<hide-original-resource>yes</hide-original-resource>
<accept-ogg-theora>yes</accept-ogg-theora>
<agent command="/usr/local/bin/mediatomb-video-generic" arguments="%in
%out"/>
<buffer size="1048576" chunk-size="26214" fill-size="52428"/>
</profile>
<profile name="video-mov-mpeg" enabled="yes" type="external">
<mimetype>video/mpeg</mimetype>
<accept-url>yes</accept-url>
<first-resource>yes</first-resource>
<hide-original-resource>yes</hide-original-resource>
<accept-ogg-theora>yes</accept-ogg-theora>
<agent command="/usr/local/bin/mediatomb-mov-mpeg" arguments="%in
%out"/>
<buffer size="262144" chunk-size="6553" fill-size="13108"/>
</profile>
</profiles>
</transcoding>
</config>
f. Crie os scripts para transcodificação:
Crie o arquivo ‘/usr/local/bin/mediatomb-video-generic’ e cole o conteúdo abaixo:
#!/bin/bash
INPUT="$1"
OUTPUT="$2"
VIDEO_CODEC="mpeg2video"
VIDEO_BITRATE="4096k"
AUDIO_CODEC="mp2"
AUDIO_BITRATE="128k"
AUDIO_SAMPLERATE="48000"
AUDIO_CHANNELS="2"
FORMAT="dvd"
Pag. 15 de 16
exec /usr/bin/ffmpeg -threads 2 -i "${INPUT}" -vcodec ${VIDEO_CODEC} -b
${VIDEO_BITRATE} \
-acodec ${AUDIO_CODEC} -ab ${AUDIO_BITRATE} -ar ${AUDIO_SAMPLERATE} -ac
${AUDIO_CHANNELS} \
-f ${FORMAT} - > "${OUTPUT}" 2>/dev/null
Torne-o executável:
chmod 755 /usr/local/bin/mediatomb-video-generic
Crie o arquivo ‘/usr/local/bin/mediatomb-mov-mpeg’ e cole o conteúdo abaixo:
#!/bin/bash
INPUT="$1"
OUTPUT="$2"
VIDEO_CODEC="mpeg2video"
VIDEO_BITRATE="4096k"
AUDIO_CODEC="mp2"
AUDIO_BITRATE="128k"
AUDIO_SAMPLERATE="48000"
AUDIO_CHANNELS="2"
FORMAT="dvd"
FPS="ntsc"
exec /usr/bin/ffmpeg -threads 2 -i "${INPUT}" -vcodec ${VIDEO_CODEC} -b
${VIDEO_BITRATE} \
-acodec ${AUDIO_CODEC} -ab ${AUDIO_BITRATE} -ar ${AUDIO_SAMPLERATE} -ac
${AUDIO_CHANNELS} \
-f ${FORMAT} -r ${FPS} - > "${OUTPUT}" 2>/dev/null
Torne-o executável:
chmod 755 /usr/local/bin/mediatomb-mov-mpeg
g. Teste o MediaTomb
/etc/init.d/mediatomb restart
tail -f -n 20 /var/log/mediatomb.log
2010-02-02 13:41:58 INFO: Loading configuration from:
/home/mediatomb/.mediatomb/config.xml
2010-02-02 13:41:58 INFO: Checking configuration...
2010-02-02 13:41:58 INFO: Setting filesystem import charset to UTF-8
2010-02-02 13:41:58 INFO: Setting metadata import charset to UTF-8
2010-02-02 13:41:58 INFO: Setting playlist charset to UTF-8
2010-02-02 13:41:58 WARNING: You enabled the YouTube feature, which allows
you
to watch YouTube videos on your UPnP device!
Please check http://www.youtube.com/t/terms
Pag. 16 de 16
By using this feature you may be violating
YouTube
service terms and conditions!
2010-02-02 13:41:58 INFO: Configuration check succeeded.
2010-02-02 13:41:59 INFO: Initialized port: 50500
2010-02-02 13:41:59 INFO: Server bound to: 192.168.1.100
2010-02-02 13:42:00 INFO: MediaTomb Web UI can be reached by following
this link:
2010-02-02 13:42:00 INFO: http://192.168.1.100:50500/
4. Conclusão
O MediaTomb é uma boa opção como servidor UPnP para streaming de mídia.
Teoricamente ele pode fazer streaming de qualquer formato mídia a partir do uso de scripts,
conforme os exemplos mostrados nesse tutorial. As possibilidades de customização são
imensas e dependem somente da criatividade e necessidade de casa usuário.
5. Referências
http://mediatomb.cc/
http://www.upnp.org/
http://wiki.flexion.org/InstallingMediaTomb012.html