DLNA
Co je DLNA ?
DLNA je standard pro živý přenos médii po lokální síti. Přenost datového toku je přes HTTP 1.0/1.1 a nad tím běží protokoly UPnP AV.
Proč používat DLNA?
Na tuto otázku zkusím odpovědět vlastním případem. Mám televizi Sony Bravia 32W5500, ta umí přehrávát MPEG-1, JPG a MP3 z flash disku. Když se na to tak dívám, nic moc. Ale také má zároveň síťový port a schopnost připojit se do sítí DLNA. Tato shcopnost mi umožní přehrávat jakákoliv média na TV, aniž bych notebook musel propojovat HDMI kabelem a mnohem víc. DLNA server, který popíšu jak nainstalovat, se nakonfiguruje tak, že se mu předají složky ze kterých může čerpat data a ty následně nabídne koncovému zařízení.
Takže pokud si budu chtít pustit film budu mít složku „Filmy“ a budou tam soubory : „adam.mkv“,“bogocz.iso“,“linux.avi“,“linux.sub“ tak i když TV neumí mkv, tak si DLNA na notebooku zjistí jaký stream cíl podporuje a překóduje jej do něj. Stejné to bude s ISO(obraz DVD), při výběru bogocz.iso mi DLNA na notebooku převede menu i film a posílá přímo do TV. Pokud si chci spustit AVI nebo MKV v cizím jazyce tak můžu, transkódování přiloží i titulky.
Pokud ovšem chci spustit JPG, MP3 nebo ACC, tak DLNA server nic nepřevádí a posílá přímý bitový tok zdroje.
Instalace
Následující script jsem napsal tak, aby se vždy instalovala poslední verze.
Script
PROJ=ps3ms echo "Instalační script PS3 Media Serveru" echo "Kolik jader ma tvuj procesor ?" read CORES let cores++ mkdir $HOME/$PROJ cd $HOME/$PROJ sudo apt-get build-dep mplayer sudo apt-get install ubuntu-restricted-extras checkinstall ant mplayer mencoder ffmpeg subversion build-essential sleep 3 svn checkout svn://svn.mplayerhq.hu/mplayer/trunk mplayer if [ -d mplayer ] then cd mplayer echo "Spouštím konfiguraci a kompilaci" CFLAGS="-O2 -fomit-frame-pointer" ./configure --confdir=/etc/mplayer make -j $CORES > /dev/null 2> build_errors sudo checkinstall -D --install=yes --fstrans=no --pakdir "$HOME/$PROJ" --pkgname mplayer --backup=no --deldoc=yes --deldesc=yes --delspec=yes --default --pkgversion "3:1.0~svn-`grep "#define VERSION" version.h | cut -d"-" -f2`" cd .. else echo "Ukončuji skript, zdrojové kódy jsou nekompletní" exit 1 fi echo "Po spuštění stránky, stáhněte Java JDK 6 .., po stažení vypnout firefox, stažený balík přesunout do složky projektu ($HOME/$PROJ) a zmáčknout Enter" sleep 10 firefox http://java.sun.com/javase/downloads/widget/jdk6.jsp read enter if [ -f $(ls | grep jdk-6) ] then sh $(ls | grep jdk-6) JAVA_HOME=$HOME/$PROJ/$(ls | grep jdk1.6)/jre export JAVA_HOME svn checkout http://ps3mediaserver.googlecode.com/svn/trunk/ ps3mediaserver-read-only cd ps3mediaserver-read-only/ps3mediaserver ant chmod a+x PMS.sh chmod a+x linux/tsMuxeR cd ../.. cat > run_server << END #!/bin/sh cd $HOME/$PROJ/ps3mediaserver ./PMS.sh END chmod a+x run_server else echo "Instalátor JDK 6 nenalezen, přeskakuji instalaci PS3media serveru" exit 1 fi exit 0
Spuštění
Script stačí spustit a počkat až zkončí instalační proces, jen před instalcí javy vyskočí firefox, tak prosím následujte pokyny.