dlna
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
| dlna [2019-06-19 16:09:13] – manfred | dlna [2019-06-19 16:09:58] (aktuell) – [MiniDLNA + FreeBSD 10.1] manfred | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | ====== DLNA (Digital Living Network Alliance) ====== | ||
| + | |||
| + | **DLNA => Digital Living Network Alliance** | ||
| + | |||
| + | => Im Switch bzw. Router muss **UPnP** aktiviert werden! | ||
| + | |||
| + | |||
| + | ===== DLNA-Server-software ===== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | |||
| + | ==== MiniDLNA ==== | ||
| + | |||
| + | // | ||
| + | |||
| + | |||
| + | ==== ServiIO ==== | ||
| + | |||
| + | __es benötigt JAVA!__ | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | |||
| + | ==== Subsonic ==== | ||
| + | |||
| + | __es benötigt JAVA!__ | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | |||
| + | ==== Emby ==== | ||
| + | |||
| + | __es wird MONO benötigt!__ | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | |||
| + | ==== Gerbera ==== | ||
| + | |||
| + | __läuft hauptsächlich auf verschiedenen Linux-Distributionen aber auch auf macOS__ | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | |||
| + | ===== FreeBSD ===== | ||
| + | |||
| + | |||
| + | ==== MediaTomb + FreeBSD 12 ==== | ||
| + | |||
| + | * [[http:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * **[[https:// | ||
| + | |||
| + | > pkg install net/ | ||
| + | ... | ||
| + | New packages to be INSTALLED: | ||
| + | mediatomb: 0.12.1_24 | ||
| + | gcc8: 8.2.0_4 | ||
| + | ffmpegthumbnailer: | ||
| + | spidermonkey17: | ||
| + | libexif: 0.6.21_4 | ||
| + | mysql56-client: | ||
| + | taglib: 1.11.1_2 | ||
| + | ... | ||
| + | | ||
| + | > chown mediatomb: | ||
| + | > vi / | ||
| + | ... | ||
| + | < | ||
| + | <ui enabled=" | ||
| + | < | ||
| + | ... | ||
| + | </ | ||
| + | ... | ||
| + | > service mediatomb restart | ||
| + | Starting mediatomb. | ||
| + | |||
| + | //Leider gab es bei mir ein paar Rechte-Probleme, | ||
| + | |||
| + | ich hatte keine Lust mehr noch länger nach der Ursache für den Fehler zu suchen (vielleicht später), deshalb habe ich ihn kurzer Hand so gestartet (macht man ja eigentlich nicht): | ||
| + | > / | ||
| + | > netstat -anp tcp | fgrep 49152 | ||
| + | tcp4 | ||
| + | > tail / | ||
| + | ... | ||
| + | 2019-02-01 20: | ||
| + | 2019-02-01 20: | ||
| + | 2019-02-01 20: | ||
| + | 2019-02-01 20: | ||
| + | 2019-02-01 20: | ||
| + | 2019-02-01 20: | ||
| + | |||
| + | MediaTomb muss einen Port geöffnet haben, dann kann man seinen Status per HTTP abfragen: | ||
| + | [[http:// | ||
| + | |||
| + | |||
| + | ==== MiniDLNA + FreeBSD 10.1 ==== | ||
| + | |||
| + | MiniDLNA (ReadyMedia) und Serviio laufen auch in einer [[:: | ||
| + | |||
| + | MiniDLNA arbeitet leider nur mit einem einzigen Prozess je System, da es den Port 1900 (SSDP-Discovery-Traffic) auf alle IPs (nicht konfigurierbar) öffnet. | ||
| + | Um mehrere MiniDLNA-Dienste gleichzeitig auf dem selben System zu betreiben, kann man [[:: | ||
| + | Mit virtuellen Netzwerkkarten, | ||
| + | |||
| + | ACHTUNG!\\ | ||
| + | leider verursacht inotify Abstürze des Programmes, deshlab ist es sinnvoll es abzuschalten '' | ||
| + | |||
| + | hier wird es jeden Morgen um 6 Uhr restartet für einen rescan: | ||
| + | # echo " | ||
| + | |||
| + | Dieses Programm ist sehr einfach, hat aber ein paar Schwächen: | ||
| + | * wenn man mehr als einen MiniDLNA-Server im Netz betreibt, kann es sein, dass man nicht alle findet; | ||
| + | * der MiniDLNA-Server kann nur ein paar Tausend Multimediadateien exportieren; | ||
| + | |||
| + | * [[https:// | ||
| + | * [[http:// | ||
| + | |||
| + | <file bash> | ||
| + | > mkdir / | ||
| + | > pkg install net/ | ||
| + | > chown dlna:dlna / | ||
| + | > vi / | ||
| + | ... | ||
| + | network_interface=sk0 | ||
| + | ... | ||
| + | # | ||
| + | | ||
| + | # Musik (Audio) | ||
| + | media_dir=A,/ | ||
| + | # Videos | ||
| + | media_dir=V,/ | ||
| + | # Bilder | ||
| + | media_dir=P,/ | ||
| + | ... | ||
| + | friendly_name=MiniDLNA | ||
| + | ... | ||
| + | uuid=550e8400-e29b-41d4-a716-446655440001 | ||
| + | ... | ||
| + | > echo ' | ||
| + | > killall -9 minidlnad | ||
| + | > ps alx|fgrep minidlna | ||
| + | > service minidlna start | ||
| + | > ls -lha / | ||
| + | > tail -f / | ||
| + | |||
| + | hier kann man schön sehen, wie das Verzeichnis bzw. die Verzeichnisse durchsucht und indiziert werden: | ||
| + | > top | ||
| + | </ | ||
| + | |||
| + | Um die Datenbank zu aktuallisieren, | ||
| + | > killall -9 minidlnad ; sleep 1 ; service minidlna rescan | ||
| + | > tail -f / | ||
| + | |||
| + | MiniDLNA muss seinen Port geöffnet haben | ||
| + | # netstat -anp tcp | fgrep 8895 | ||
| + | tcp4 | ||
| + | |||
| + | dann kann man seinen Status per HTTP abfragen: | ||
| + | [[http:// | ||
| + | |||
| + | |||
| + | ==== Serviio + FreeBSD 11.1 ==== | ||
| + | |||
| + | * [[http:// | ||
| + | |||
| + | Dieser DLNA-Server soll alle DLNA-Funktionen unterstützen, | ||
| + | |||
| + | die Jail bauen | ||
| + | > ezjail-admin create multimedia 192.168.2.206 | ||
| + | |||
| + | Multimedia-Verzeichnis anlegen | ||
| + | > mkdir -p / | ||
| + | |||
| + | ...hier wir das Originalverzeichnis mit den Multimediadateien per // | ||
| + | > echo '/ | ||
| + | > ezjail-admin stop multimedia | ||
| + | > ezjail-admin start multimedia | ||
| + | |||
| + | **in die Jail wechseln** | ||
| + | > ezjail-admin console multimedia | ||
| + | |||
| + | ein paar Basis-Programme installieren | ||
| + | > pkg install shells/bash misc/mc sysutils/ | ||
| + | |||
| + | die BASH laden (es arbeitet sich in ihr einfach besser) | ||
| + | # bash ; exit | ||
| + | |||
| + | ggf. einen DLNA-Benutzer anlegen | ||
| + | # pw useradd dlna -m -d /home/dlna | ||
| + | |||
| + | den FFmpeg (Video-Player) konfigurieren\\ | ||
| + | '' | ||
| + | '' | ||
| + | **'' | ||
| + | '' | ||
| + | '' | ||
| + | '' | ||
| + | # cd / | ||
| + | |||
| + | den Portmaster installieren, | ||
| + | # pkg install graphics/ | ||
| + | # pkg install ports-mgmt/ | ||
| + | |||
| + | Serviio installieren //(das dauert einige Zeit - auf älteren Systemen ein paar Stunden)// | ||
| + | # portmaster net/serviio | ||
| + | # chown dlna:dlna / | ||
| + | |||
| + | # echo ' | ||
| + | # echo serviio_args=\' | ||
| + | # echo ' | ||
| + | # vi / | ||
| + | |||
| + | Serviio starten | ||
| + | # / | ||
| + | |||
| + | # less / | ||
| + | |||
| + | leider wird aber (wegen eines Fehlers im Start-Stop-Skript) der Status immer als " | ||
| + | # / | ||
| + | command_args=" | ||
| + | serviio is not running | ||
| + | |||
| + | Damit der Status auch richtig ausgegeben wird, muss in der ServiIO-Version 1.9.2 noch eine kleine Anpassung in der Start-Stop-Datei vorgenommen werden. | ||
| + | # vi / | ||
| + | |||
| + | Es ist diese Zeile so abzuändern | ||
| + | serviio_pid=$(ps -wwwaU ${serviio_user} | awk '/ | ||
| + | |||
| + | das sie so aussieht: | ||
| + | serviio_pid=$(ps -wwwaU ${serviio_user} | awk '/ | ||
| + | |||
| + | Die Änderung ist hier vorzunehmen: | ||
| + | / | ||
| + | / | ||
| + | |||
| + | <file bash / | ||
| + | #!/bin/sh | ||
| + | |||
| + | # $FreeBSD: head/ | ||
| + | # | ||
| + | # PROVIDE: serviio | ||
| + | # REQUIRE: LOGIN | ||
| + | # KEYWORD: shutdown | ||
| + | # | ||
| + | # Add the following line to / | ||
| + | # | ||
| + | # serviio_enable=" | ||
| + | |||
| + | . / | ||
| + | |||
| + | name=serviio | ||
| + | rcvar=serviio_enable | ||
| + | command=/ | ||
| + | |||
| + | load_rc_config $name | ||
| + | |||
| + | : ${serviio_user=" | ||
| + | |||
| + | if [ -n " | ||
| + | export LANG=${serviio_lang} | ||
| + | fi | ||
| + | |||
| + | _dirs="/ | ||
| + | start_precmd=" | ||
| + | echo " | ||
| + | command_args=" | ||
| + | |||
| + | stop_cmd=" | ||
| + | |||
| + | status_cmd=${name}_status | ||
| + | serviio_status() { | ||
| + | # | ||
| + | serviio_pid=$(ps -wwwaU ${serviio_user} | awk '/ | ||
| + | if [ -n " | ||
| + | echo " | ||
| + | else | ||
| + | echo " | ||
| + | return 1 | ||
| + | fi | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | Jetzt wird auch angezeigt, dass serviio läuft, wenn es läuft... :-) | ||
| + | # service serviio status | ||
| + | serviio is not running | ||
| + | | ||
| + | # service serviio start | ||
| + | Starting serviio. | ||
| + | | ||
| + | # service serviio status | ||
| + | serviio is running as pid 77390 | ||
| + | |||
| + | |||
| + | === Konfigurationsoberfläche von Serviio === | ||
| + | |||
| + | * **[[http:// | ||
| + | |||
| + | man ruft die IP oder den Hostnamen der Jail **mit folgender Ergänzung** auf: '': | ||
| + | > firefox --new-tab http:// | ||
| + | |||
| + | Jetzt kann man Serviio in einer schönen Oberfläche konfigurieren, | ||
| + | |||
| + | |||
| + | === Web-GUI für Serviio === | ||
| + | |||
| + | * **[[http:// | ||
| + | |||
| + | |||
| + | ==== Emby + FreeBSD 12 ==== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | |||
| + | Emby-Oberfläche zum konfigurieren: | ||
| + | |||
| + | |||
| + | === Binär-Installation === | ||
| + | |||
| + | Leider gibt es nicht immer für die aktuellste Version ein Binärpaket: | ||
| + | > pkg add -f https:// | ||
| + | Fetching emby-server-freebsd_4.0.1.0_amd64.txz: | ||
| + | Installing emby-server-4.0.1.0_1... | ||
| + | pkg: wrong architecture: | ||
| + | ===> Creating groups. | ||
| + | Using existing group ' | ||
| + | ===> Creating users | ||
| + | Creating user ' | ||
| + | pw: user ' | ||
| + | pkg: PRE-INSTALL script failed | ||
| + | | ||
| + | Failed to install the following 1 package(s): https:// | ||
| + | |||
| + | |||
| + | === Installation aus dem Ports-Tree === | ||
| + | |||
| + | glücklicherweise gibt es Emby auch im Ports-tree: | ||
| + | > cd / | ||
| + | | ||
| + | > make clean | ||
| + | ===> | ||
| + | | ||
| + | > make | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> Fetching all distfiles required by emby-server-3.5.3.0 for building | ||
| + | ===> | ||
| + | => SHA256 Checksum OK for emby-server-freebsd_3.5.3.0_amd64.tar.xz. | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> Creating groups. | ||
| + | ===> Creating users | ||
| + | ... | ||
| + | | ||
| + | > make install | ||
| + | ===> | ||
| + | ===> | ||
| + | ===> | ||
| + | Installing emby-server-3.5.3.0... | ||
| + | ... | ||
| + | | ||
| + | If you had mediabrowser installed before the project was | ||
| + | renamed to emby-server, | ||
| + | group (note that moving the database is not supported): | ||
| + | # pw groupmod 989 -n mediabrowser -l emby | ||
| + | # pw usermod 989 -n mediabrowser -l emby -g emby -c Emby\ Server | ||
| + | | ||
| + | To automatically start Emby Server at boot time: | ||
| + | # echo ' | ||
| + | | ||
| + | To then manually start Emby Server without rebooting: | ||
| + | # service emby-server start | ||
| + | | ||
| + | Once started, visit the following webpage to configure: | ||
| + | http:// | ||
| + | | ||
| + | ===> SECURITY REPORT: | ||
| + | This port has installed the following files which may act as network | ||
| + | servers and may therefore pose a remote security risk to the system. | ||
| + | / | ||
| + | | ||
| + | This port has installed the following startup scripts which may cause | ||
| + | these network services to be started at boot time. | ||
| + | / | ||
| + | | ||
| + | If there are vulnerabilities in these programs there may be a security | ||
| + | risk to the system. FreeBSD makes no guarantee about the security of | ||
| + | ports included in the Ports Collection. Please type 'make deinstall' | ||
| + | to deinstall the port if this is a concern. | ||
| + | | ||
| + | For more information, | ||
| + | status of this software, see the following webpage: | ||
| + | https:// | ||
| + | |||
| + | __Allerdings ist das nicht immer die neueste Version, aktuell ist zur Zeit die Version 4.0.1.0, im Ports-Tree liegt aber noch die Version 3.5.3.0.__ | ||
| + | |||
| + | |||
| + | ===== Ubuntu 14.04 / Mint 17.2 ===== | ||
| + | |||
| + | |||
| + | ==== Mediatomb ==== | ||
| + | |||
| + | MediaTomb ist ein "UPnP MediaServer" | ||
| + | Er arbeitet im Vordergrund des Userland. | ||
| + | |||
| + | > aptitude install mediatomb | ||
| + | |||
| + | |||
| + | ==== uShare ==== | ||
| + | |||
| + | uShare ist ein kleiner und einfacher " | ||
| + | |||
| + | > aptitude install ushare | ||
| + | > dpkg-reconfigure ushare | ||
| + | |||
| + | [[http:// | ||
| + | |||
