Bastelstunde: einen eigenen Streamingdienst

Los gehts:

  • Twonky Serverim lokalen Netzwerk am Router UPnP / DLNA aktivieren. Somit wird Streaming im gesamten lokalen Netzwerk grundsätzlich erstmal ermöglicht.
  • einen Medienserver in Betrieb nehmen. Meine Empfehlung: Twonky zb. auf dem NAS installieren wie beispielsweise dem Thecus N5550, einem Synology usw.
  • Ist Twonky erstmal konfiguriert, so kann man bereits im Normalfall damit die verfügbaren Videos am NAS durchsuchen und abspielen.

Soweit – so gut. Der Unterschied zu „normalem“ Abspielen:

Beim normalen Abspielen mit dem TV direkt von einer Netzwerkfestplatte ist der Player in der Firmware des TVs und dieser spielt das Video am Screen ab.

Beim DLNA Streaming werden diese Aufgaben zwischen 3 Instanzen aufgeteilt:

  1. dem Server bzw. der Library: hier liegen alle Audio/Videodateien und werden von dort angeboten (Twonky in unserem Beispiel)
  2. dem Renderer:  dem dummen „Bildschirm“, der die angeforderten Inhalte abspielen. (Handyapp, Windows Mediaplayer, XBMC, Raspberry etc)
  3. dem Controller: die „Fernbedienung“ zb. einer Handyapp (optional)

Nun können wir also beispielsweise ein Movie vom Medienserver rüberbeamen zum TV im Wohnzimmer, zwischendurch mal aufs Handy übernehmen für den Marsch in die Küche und den Film am TV im Schlafzimmer zu Ende sehen. Nett. Bubble UPNP Server

Aber wäre es nicht nett, wenn das auch außerhalb des heimischen Netzwerkes funktionieren würde?

Weiter gehts!

  • Also installieren wir auf dem NAS auch noch den BubbleUPnP Server (gibts auch für Qnap, Linux, Android, OSX und Win). Ausserdem müssen wir 2 Ports auf der Firewall für BubbleUPnP freischalten – z.b. 58050  und 58051 für SSL.

    nat
    Firewall NAT

Das Ergebnis der Übung ist nun, dass man zB. mit der Androidapp „BubbleUnP“ sich von unterwegs auf seine Library zuhause verbinden kann – und als Renderer das Handy, den TV des Freundes in seinem Netzwerk, das Android-Autoradio usw. auswählen kann. Voila – alle deine Movies unterwegs dabei!

Schon relativ nett. (Denn normal ist UPnP wie gesagt eine rein lokale Geschichte!)

Dadurch, dass in dieser Konstellation auch Transcoding (!) erfolgt, passt sich der Videostream auch der verfügbaren Bandbreite an!

  • Wer kein Androidhandy nutzen will, kann auch das BubbleUpnp Tethering Script auf seinem NAS installieren oder nur temporär auf einem Windowsrechner laufen lassen und kann somit unterwegs mal eben das LAN des Kollegen mit seiner Library verbinden – perfekt für einen Videoabend!
  • Update RASPI LÖSUNG: wer technisch weniger versierte Bekannte hat, die trotzdem gerne mal Zugriff hätten: Einfach ein Raspberry Pi z.b mit Openelec aufsetzen, Java installieren und das Tetheringscript per Autostart am Raspi laufen lassen:
    • Tethering Script runterladen und den Inhalt nach /storage/downloads entpacken (wichtig sind hier nur die 2 Java jars und das launch.sh)
    • Java nach /storage/java runterladen und entpacken:
    • wget http://ie.archive.ubuntu.com/funtoo/distfiles/oracle-java/jdk-8u33-linux-arm-vfp-hflt.tar.gz
      mkdir /storage/java
      tar xvf /storage/downloads/jdk-8u33-linux-arm-vfp-hflt.tar.gz -C /storage/java
    • -> Autostart /storage/.config/autostart.sh  um den Javapath und launch.sh erweitern:
    • #!/bin/sh
      sleep 10
      export PATH=$PATH:/storage/java/jdk1.8.0_33
      export PATH=$PATH:/storage/java/jdk1.8.0_33/bin
      /storage/downloads/launch.sh > /dev/null 2>&1 &
      exit 0
    • Inhalt von /storage/downloads/launch.sh um den Servernamen, Port, Username und Passwort erweitern:
    • #!/bin/sh
      
      if [ "x$JAVA_HOME" != "x" ]; then
       JAVA="$JAVA_HOME/bin/java"
      else
       JAVA="java"
      fi
      
      # -Xss256k: thread stack size. 256K reduces per-thread memory usage and may prevent "java.lang.OutOfMemoryError: unable to create new native thread" on some systems
      
      java  -Xss256k -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dfile.encoding="UTF-8" -jar BubbleUPnPTetherClient.jar $* -connect https://URL:PORT -login
      USER -password PASS &
      exit 0
      

       

    • In Kodi auf „Videos“ gehen, „Dateien“, „Videos hinzufügen“ und bei „Durchsuchen“ auf Upnp Geräte gehen… hier müsste jetzt der zb. Twonky Server aufscheinen und durch den Zusatz „[tethered]“ erkennt man, dass dies die remote UpnP Server sind.  Dann noch die gewünschte Auflistung wählen (Ordneransicht?) und als Bookmark bzw. Videoordner ablegen.Tetheringscript auf Raspberry Pi
  • Man drücke den Raspi einer x-beliebigem Person in die Hand, diese stecke das Ding an den TV und ans LAN -> Einschalten -> Raspi verbindet sich zum Medienserver -> Alle Filme sofort zur Verfügung mit deppensicherer Oberfläche. Bedienbar mit der Fernsehfernbedienung. Wer braucht schon Netflix?

Bingo 🙂

 

 

 

 


Kommentare

2 Antworten zu „Bastelstunde: einen eigenen Streamingdienst“

  1. Total endgeil! Funktioniert einwandfrei!!

  2. Für alle Fälle – wenn Java spinnt:

    wget http://ie.archive.ubuntu.com/funtoo/distfiles/oracle-java/jdk-8u33-linux-arm-vfp-hflt.tar.gz
    mkdir /storage/java
    tar xvf /storage/downloads/jdk-8u33-linux-arm-vfp-hflt.tar.gz -C /storage/java

    und dann export PATH=$PATH:/storage/java/jdk1.8.0_33 und export PATH=$PATH:/storage/java/jdk1.8.0_33/bin in den autostart!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.