Open Source Streaming Solution

  • I would start shutting down virus-and security scanners and killing all other resident crap sw that may interfer with the VLC transcoding process. I am on OSX and/or Linux and don't have these issues.

    Kathrein UFS910 (AAF E2)
    Dbox2 (latest Petze)

  • Hi, habe leider auch ein kleiners Problem...


    Streamen auf dem PC als auch auf das Blackberry Playbook funzt perfekt, Problem ist das ich meine Bouquets nicht sehen kann.


    Konnte bisher lediglich streamen, indem ich manuell in die channels.ini Sender eingefügt habe (dort wird eine default Senderliste vom Programm/Entwickler angezeigt).


    Gleichzeitig habe ich noch Fehlermeldungenim Streamingverzeichnis, die hier mal per screen anhänge...

  • Ok, konnte das Problem selbst lösen...


    Hatte in den Zeilen
    define("LINKSOURCE","airvideo"
    define("LINKSOURCE","enigma2"


    das Kommentar Zeichen falsch gesetzt, jetzt funzt es.


    Trotzdem Danke !

  • 1. localhost/streaming funktioniert insofern, als das ich die bouquets sehe. wenn ich nun showvideo wähle kommt die Fehlermeldung "Video not found or access denied: http://...1:8081/livestream.flv


    Dieses Problem trat im Thread schon zweimal auf. Beantwortet wurde es leider noch nicht.


    2. Normal würde ich gerne bei meiner Box HTTP authentification auf "Ja" und ein Passwort setzen. So bekomme ich mit wamp aber keinen Zugriff auf die Box. Gibt es da eine Möglichkeit wamp entsprechend zu konfigurieren?

  • Hallo,


    bei mir läufts nach langem Herumprobieren leider immer noch nicht...


    - Wamp installiert
    - VLC media player 2.1.0-git-20120713-0003 Rincewind installiert


    - Streaming übers Dreambox Webinterface funktioniert



    Folgende Einstellungen in den Config-Files:


    channels.ini habe ich vom AirVideo übernommen:


    zB


    008-RTL.mp4
    no-zap
    http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:


    Diesen Pfad zeigt er mir auch an, wenn ich übers DB Webinterface via VLC-Player streame



    config.php:


    define("DREAMBOX_URL","http://192.168.1.11");


    define("localhostip","192.168.1.12");


    define("VLC_PATH","C:\\Program Files (x86)\\VideoLAN\\VLC\\");


    define("VLC_STREAMINGPORT","8081");


    Den Streamingport habe ich auch schon auf 8001 geändert, was auch nichts genützt hat.



    Beim Aufruf von http://localhost/streaming/ bekomme ich die Senderliste angezeigt.


    Wenn ich dann zB RTL auswähle kommt:


    Source: Airvideo


    Channel: RTL


    Url: http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:
    Status:running


    Bei showvideo startet zwar das Fenster mit dem jwplayer, jedoch bleibts immer in der Ladeposition, dh der Kreis in der Mitte dreht sich und das Bild bleibt dunkel.



    Es scheint, als ob ich etwas entscheidendes übersehen habe :-). Vorschläge, Ideen?


    Danke
    Roli

  • Hier noch der Auszug aus dem Logfile:


    15:43:57 (index page=live&channel_name=RTL&channel=http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:) $options
    Array
    (
    [player-width] => 320
    [player-height] => 240
    [videobitrate] => 700
    [audiobitrate] => 96
    [channels] => 1
    [fps] => 25
    [do-zap] => true
    )



    15:43:57 (index page=live&channel_name=RTL&channel=http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:) $output_device
    pc


    15:43:57 (index page=live&channel_name=RTL&channel=http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:) ADDITIONAL_TRANSCODE_OPTIONS : venc=x264{me=dia,subme=3,analyse=none,bframes=0,b-adapt=none,chroma-me=none,merange=12},
    15:43:57 (index page=live&channel_name=RTL&channel=http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:) $_SESSION['channel']
    http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:


    15:43:57 (index page=live&channel_name=RTL&channel=http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:) $action



    15:43:58 (index page=live&channel_name=RTL&channel=http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:) $output getStatus_VLC
    Array
    (
    [0] => "vlc.exe","5268","Services","0","70.404 K"
    [1] => "vlc.exe","5776","Services","0","68.748 K"
    [2] => "vlc.exe","3280","Services","0","69.788 K"
    [3] => "vlc.exe","6104","Console","1","23.792 K"
    )



    15:43:59 (index page=live&action=showvideo&time=1342187038) $options
    Array
    (
    [player-width] => 320
    [player-height] => 240
    [videobitrate] => 700
    [audiobitrate] => 96
    [channels] => 1
    [fps] => 25
    [do-zap] => true
    )



    15:43:59 (index page=live&action=showvideo&time=1342187038) $output_device
    pc


    15:43:59 (index page=live&action=showvideo&time=1342187038) ADDITIONAL_TRANSCODE_OPTIONS : venc=x264{me=dia,subme=3,analyse=none,bframes=0,b-adapt=none,chroma-me=none,merange=12},
    15:43:59 (index page=live&action=showvideo&time=1342187038) $_SESSION['channel']
    http://192.168.1.11:8001/1:0:1:7080:443:1:C00000:0:0:0:


    15:43:59 (index page=live&action=showvideo&time=1342187038) $action
    showvideo


    15:43:59 (index page=live&action=showvideo&time=1342187038) $vlc_streamurl
    http://::1:8081/livestream.flv&autostart=true




    Vor allem die letzte Zeile kommt mir komisch vor -> Sollte hier nicht der komplette Pfad stehen?



    LG
    Roli

  • Roli77


    Bin auch kein Experte, aber habe mich letzte Woche auch durchgekämpft...


    Wegen des ladenden Kreises (hatte das Problem auch)....
    Bei mir wurde der Stream nicht gestartet, weil im Firefox das Javascript (NoScript) deaktiviert war, danach hat es gefunzt.



    Oder versuche mal keine channel.ini zu benutzen und direkt deine Senderlisten (Bouquets) anzuzeigen.


    War bei mir auch ein Stolperstein...

  • Wie kann man die channels.ini umgehen?


    Wenn ich sie umbennen, dann bekomme ich eine Fehlermeldung, das eben diese nicht gefunden werden kann.


    Ich verwende im Moment den Internet Explorer. Beim Firefox bekomme ich nichtmal das Fenster fürs Video. Javascript ist aktiviert.

  • In der config.php


    Zeile 11 -13


    So wierden die Bouquets geladen:
    // switch zwischen enigma und airvideo
    //define("LINKSOURCE","airvideo");
    define("LINKSOURCE","enigma2");



    So (Standard) die channels.ini
    // switch zwischen enigma und airvideo
    define("LINKSOURCE","airvideo");
    //define("LINKSOURCE","enigma2");



    entscheidend ist die Position der "//" Zeichen

  • Hi,


    ok, danke!


    Ich habe nun zwar die Liste inkl. der Sendersymbole von meiner Dreambox, aber das Streamen funktioniert immer noch nicht. Ladekreis...


    Roli

  • Prüfe evtl. nochmals kurzfristig, Firewall und Viren-Scanner deaktivieren ob das was bringt.


    Prüfe noch im Taskmanager, nachdem du deinen Stream gestartet hast (wen der Ladekreis kommt) ob ein Vlc Prozess im Taskmanager gestartet ist.


    Oder (war bei mir auch ein Problem) das der VLC Player nicht an das Internet herankam weil duch Firewall geblockt.



    Mehr fällt mir auf die schnelle auch nicht ein...

  • Allgemein:
    So bin wieder Daheim und habe etwas Zeit.
    Ich fasse mal die ganzen Bugs/Probleme zusammen die ich glaube erkannt zu haben:
    [list=1]
    [*] Kein speichern der Optionen im IE 8/9
    [*] HTTP authentification der Box bisher nicht möglich


    Gebt eure dreambox url folgendermaßen in der config.php an "username doppelpunkt passwort @" zur IP hinzufügen (natürlich mit eurem usernamen + passwort und ohne leerzeichen)

    Code
    define("DREAMBOX_URL","http://username:password@192.168.5.32");


    [*] iphone 6 beta problem (habe leider keine beta also keine Testmöglichkeit)
    [*] Streaming port der Dreambox sollte einstellbar sein
    [*] OSX users sollten eigentlich in livestream.php alle 8081 andern nach 8001
    Ähm da hab ich an 2 Stellen vergessen die Definition VLC_STREAMINGPORT aus der config.php zu nutzen wird gefixed :winking_face:
    Beim OSX System auf welchem ich getestet habe war aus irgendeinem Grund der Port 8081 nicht belegt. Wodurch wird dieser bei betroffenen belegt?
    [*] Mamp probleme auf OSX < gibts die immer noch ?
    [*] Abbrüche bei streamen aufs iphone wegen segment Einstellungen siehe unten
    [/list=1]


    Zudem wüsste ich jetzt mal gerne bei wem es läuft welche cpu er nutzt, welche Probleme noch sind usw. z.B. in dem format:
    OS: Windows 7
    CPU: Core2 duo 6600
    Cpu-Last: bei SD oder HD wäre vielleicht auch interessant bei mir glaub 45% ? ist natürlich abhängig von den gesetzten Streaming Optionen
    Box: enigma2 ohne http auth
    Linksource: enigma2 / airvideo
    lokales Netz: kein Problem
    Internet: getestet 3g über VPN (oder virtual host mit portforwarding)
    Probleme: -keine-


    Ich muß zugestehen ich habs bisher selbst nicht über nen vhost probiert, da ich sowieso nur alles über vpn mache, aber eventuell teste ich das ganze auch mal (wenn ich zeit dazu finde).


    Zitat

    Original von svoerie
    1. localhost/streaming funktioniert insofern, als das ich die bouquets sehe. wenn ich nun showvideo wähle kommt die Fehlermeldung "Video not found or access denied: http://...1:8081/livestream.flv


    Dieses Problem trat im Thread schon zweimal auf. Beantwortet wurde es leider noch nicht.


    2. Normal würde ich gerne bei meiner Box HTTP authentification auf "Ja" und ein Passwort setzen. So bekomme ich mit wamp aber keinen Zugriff auf die Box. Gibt es da eine Möglichkeit wamp entsprechend zu konfigurieren?


    zu 1. die ganze url zu posten wäre schonmal hilfreich, so mit den ... hilft es garnichts das problem zu finden. Rufst du die Seite auf dem gleichen Rechner auf oder einem anderen?
    Falls es durch die Forensoftware entfernt wurde mußt du den code tag benutzen (code einfügen button).


    2. eine direkte http authentifizierung ist noch nicht eingebaut.
    Es sollte aber denke ich so funktionieren wie oben angegeben. Bitte testen und Feedback geben


    Zitat

    Original von Roli77
    Vor allem die letzte Zeile kommt mir komisch vor -> Sollte hier nicht der komplette Pfad stehen?


    Du versuchst die Seite auf dem gleichen Rechner zu öffnen wo auch der wamp läuft, richtig? Du hast in der config.php localhostip nicht mit deiner lokalen IP deines Rechners gefüllt.


    Zitat

    Original von Teckl
    Hopefully the quality settings will be able to change more for less upstream / quality.
    ...


    I can't see any options in your picture which can't be set through the options on the page. Have in mind that the option is saved for any individual device (iphone,pc,ipad) so you have to set the options on each device or just manually edit the stream_settings.ini in a Texteditor if the setting couldn't be set through the options page.


    Zitat


    Actually the displaying of the stream stops after some time (1 to 15 min) on ios-devices (iPad, iPhone).


    This is because I have changed some values in the last update which seems to work on some PC's or configurations. I have used the setting JockyW has mentioned (we tested the settings on his machine) to get the duration to get forwarded to the m3u8 file as low as possible. Therefore we have fiddled arround with the IPHONE_SEGMENT_DURATION and IPHONE_SEGMENT_COUNT.


    After my holiday i also checked on my private PC (E6600 so quite old) and also had this stoping in the streaming sometimes. If the stream stops the vlc still is runnig in the background but the iphone seems not to get the new transcoded segment.


    I tested around and come to this settings, which seems to work quite good on my pc.
    Also it seems even if you set a duration for a segment i get segments longer than my setting. This is either a vlc issue or has something to do with what's happening on the screen, which format etc. I don't know how this can be avoided.


    But it seems that it runs best if you have a longer segmenting duration e.g. 10 and a longer segmentation count. You have to try it yourself whats is best on your system. And if the streaming on iphone/ipad stops just hit the show video button.


    in config.php change this:
    // = Comments :winking_face:


  • zu 2:


    Die authentification funktioniert so wie Du es beschrieben hast. thumbs up...


    zu 1:


    Die Adresse ist nicht länger (siehe Printscreen) Mittlerweile kommt der Fehler einfach auf Port 8001 statt 8081, da ich sowohl in config.php als auch livestream.php den Port auf 8001 umgestellt habe. -> selbes Ergebnis wie vorher.

  • Neue Version mit ein paar kleinen Verbesserungen siehe 1. Post.
    Fixed some bugs so plz test the new version in 1st post



    svoerie
    Den port von 8081 auf 8001 oder so zu ändern bringt sowieso nur etwas wenn dieser auf deinem Rechner durch irgendwas belegt sein sollte (was denke ich bei Windows nicht der Fall sein sollte).


    Ich nehme mal an es geht um den vlc streaming port ? Dieser kann jetzt ohne probleme in der config.php geändert werden. (also keine anderen Dateien editieren mehr nötig)... ich hatte leider an 2 stellen die definition aus der config zu nehmen.


    Deine Anzeige sieht aber leider immer noch so aus, als hättest du keine localhost ip gesetzt.
    Ich nehme mal an du hockst an dem Rechner auf dem wamp installiert ist und rufst die seite mit http://localhost/streaming auf. Richtig?


    Nochmal zum verständnis
    8001 ist der Port auf dem die dreambox std. streamed. Sieht man wenn man z.b. aus dem dortgen webinterface nen stream startet
    8081 ist der von mir gewählte port auf dem dann VLC das transcodierten streamt.

  • localhostip habe ich config.php gesetzt: define("localhostip","192.168.178.32");


    richtig, ich versuche auf dem rechner, auf dem wamp läuft localhost/streaming aufzurufen und dann auf showvideo zu klicken.


    ich habe das Gefühl, der Hund liegt irgendwo da:


    if ($_SERVER['SERVER_ADDR'] == '127.0.0.1')
    $vlc_streamurl = 'http://' . localhostip . ':' . VLC_STREAMINGPORT . '/livestream.flv&autostart=true';
    else
    $vlc_streamurl = 'http://' . $_SERVER['SERVER_ADDR'] . ':' . VLC_STREAMINGPORT . '/livestream.flv&autostart=true';


    streaming_log(print_pre($vlc_streamurl, '$vlc_streamurl', true));


    Weil hier wird irgendwie die localhostip nicht richtig abgefüllt.


    Bei mir kommt übrigens der "else"-Ausdruck zur Anwendung.

  • Hmm also mal um eins klar zu stellen. Meine Ip meines Rechner (auf dem wamp läuft) ist
    192.168.5.22
    Bei mir ist demnach define("localhostip","192.168.178.32");


    Wenn ich nun mit http://localhost/streaming die Seite aufrufe
    ist $_SERVER['SERVER_ADDR'] 127.0.0.1 daher wird dann die definierte localhost ip genutzt um den stream anzuzeigen


    wenn ich mit http://192.168.5.22/streaming die seite aufrufe (so wäre der aufruf von jedem anderem gerät)
    ist $_SERVER['SERVER_ADDR'] 192.168.5.22


    wenn bei dir bei $_SERVER['SERVER_ADDR'] nichts drinsteht ist was anderes faul.


    erstetze mal den part und mache nur
    $vlc_streamurl = 'http://' . localhostip . ':' . VLC_STREAMINGPORT . '/livestream.flv&autostart=true';


    rein
    kannst es einfach auskommentieren indem du den part in /* */ setzt.
    Ich bin gerade eh am überlegen ob das überhaupt sinn macht, denn eigentlich müsste wenn ich mit localhost aufrufe ja auch das andere funktionieren.. im prinzip ist also diese if abfrage ähm sinnlos :)

  • Ja, so läuft der Stream auf dem "wamp-PC".


    Super. Danke bis hierhin. Der Zugriff von einem anderen PC von innerhalb bzw. ausserhalb meines Netzwerks probier ich dann morgen. :thx: & gdn8

  • Ich weiß zwar nicht warum $_SERVER['SERVER_ADDR'] bei Dir einfach nur Leer war, aber ich hab das ganze jetzt mal ganz entfernt. Vielleicht haben ja andere auch das Problem.
    Wie gesagt die If abfrage ist eigentlich nicht wirklich nötig (war nur drin falls manche anfangs nichtmal wissen wie sie ihre ip bekommen und zumindest lokal testen können wie das streaming funktioniert) daher hab ich es nun mal auskommentiert.

  • Zitat

    Original von horizons


    Du versuchst die Seite auf dem gleichen Rechner zu öffnen wo auch der wamp läuft, richtig? Du hast in der config.php localhostip nicht mit deiner lokalen IP deines Rechners gefüllt.


    Hi,


    stimmt, ich habs auf dem gleichen Rechner versucht, wo wamp läuft, aber in der Config ist die lokale IP eingetragen (wie im Post geschrieben):


    define("localhostip","192.168.1.12");


    Muß dann später weitersuchen, bin gerade nicht bei dem PC.


    Roli

  • Hallo,


    habe das gleiche Problem wie svoerie.


    In welcher Datei liegt denn bzw. lag die Zeile $_SERVER['SERVER_ADDR']?


    Edit: habs gefunden. livestream.php. Geht bei mir trotzdem nicht.


    Nochmal zum Grundlegenden Verständnis:


    Ich habe eine vuplus duo und das streamen per webinterface geht. Dazu wird eine stream.m3u abgelegt und mit vlc geöffnet.


    Der inhalt dieser m3u Datei ist z.B.:


    #EXTM3U #EXTVLCOPT--http-reconnect=true http://192.168.178.24:8001/1:0:19:283D:3FB:1:C00000:0:0:0:


    Was hat das nun mit livestream.flv auf sich? Passt das in dem Fall nicht zur Vuplus und der stream.m3u und das Ganze geht so im Moment nur auf einer Dream?


    Was müsste ich anpassen und geht das überhaupt?