Ankündigung

Einklappen
Keine Ankündigung bisher.

Wie streame ich ein Video, dass alle User das selbe sehen?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Wie streame ich ein Video, dass alle User das selbe sehen?

    Guten Abend!

    Ich möchte ein Video auf meiner Webseite streamen, es sollen aber alle Webseiten Besucher immer das selbe sehen, wie bei einem TV Sender.

    Hoffe es gibt da eine smarte Lösung, ohne dass ich da gleich ein enorm grosser Aufwand betreiben muss.

    Am liebsten würde ich einfach ein Webplayer einfügen und als Quelle ein .php File angeben und die entsprechenden Daten zurück geben. Aber das scheint so einfach doch nicht zu funktionieren...

    Kann mir da jemand weiter helfen?

  • #2
    Youtube bietet Livestreaming an...
    Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

    Kommentar


    • #3
      Zitat von lstegelitz Beitrag anzeigen
      Youtube bietet Livestreaming an...
      Ja, aber ich möchte bereits vorhandene video clips streamen (endlos aneinander gereiht), aber die Zuschauer können wählen, was als nächsten kommen soll. Aber alle sollen das selbe sehen.

      Könnte ich mit C# sowas wie ein stream server entwickeln und mit einem Player auf der Webseite auf diesen Server zeigen? Habe leider keine Ahnung wonach ich suchen soll. Finde nicht die richtigen Anhaltspunkte.

      Kommentar


      • #4
        [..] aber die Zuschauer können wählen, was als nächsten kommen soll. Aber alle sollen das selbe sehen. [..]
        Ja wat denn nu?

        Was du willst nennt sich "Fernsehen", Video-Broadcast auf eigenen Kanälen.

        Stichwörter sind "Livestreaming" bzw. "Webcast"

        Könnte ich mit C# sowas wie ein stream server entwickeln und mit einem Player auf der Webseite auf diesen Server zeigen? Habe leider keine Ahnung wonach ich suchen soll. Finde nicht die richtigen Anhaltspunkte.
        Vermutlich könntest du das... wenn du es könntest.
        Aufgrund der Fragestellung bezweifele ich das allerdings, denn könntest du es, solltest du auch wissen wonach du suchen solltest
        Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

        Kommentar


        • #5
          Zitat von lstegelitz Beitrag anzeigen
          Ja wat denn nu?
          Ich meinte:
          Die User können abstimmen, welcher clip als nächstes kommen soll (aus einer kleinen Auswahl) und dann wird als nächstes der clip mit den meisten stimmen abgespielt.
          Ich kenne mich gut mit Spieleentwicklung aus, aber das funktioniert alles ganz anders (nicht event basiert wie php, sondern loop basiert).

          Kommentar


          • #6
            Die Abstimmung ist unerheblich für das Streaming an sich. Naja, und wenn in Spielen keine Eventbasierte Programmierung steckt, weiß ich auch nicht mehr... was ist mit Keyboard, Maus und Controller? Auch innerhalb eines Spiels findet man überall Events (klassisches Beispiel sind scripted events)
            Über 90% aller Gewaltverbrechen passieren innerhalb von 24 Stunden nach dem Konsum von Brot.

            Kommentar


            • #7
              Eingaben sind in Spielen nicht Eventbasiert, sie werden in einer Schleife (die bei jedem Frame durchläuft) abgefragt. Auch Events bzw Event-Funktionen werden innerhalb der Schleife abgerufen. Aber natürlich kann man ganz normale Events wie z.B. in C# programmieren. In einem Spiel muss alles die ganze Zeit im Fluss bleiben, auch wenn der Benutzer keine Eingabe macht. Hier findest du z.B. die Schleife der Engine Unity 3d, ist ziemlich komplex das ganze.

              Back to topic: Hab jetzt den Mist Server (Media Streaming Server) installiert und ich denke ich bekomm das hin, indem ich diesen mit PHP Api Calls steuere.

              Kommentar


              • #8
                Ich hätte das wahrscheinlich so gemacht, dass ich per PHP und Abstimmung mir eine .m3u Datei generiert hätte oder halt irgend eine anderes Playlist format. Anschließend würde ich via VLC Player einfach die Playlist streamen. Man kann mit VLC auch auf Youtube/Twitch und weitere Dienste streamen. Den Stream dann einfach in deine Webseite einbinden
                apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

                Kommentar


                • #9
                  Zitat von BlackScorp Beitrag anzeigen
                  Ich hätte das wahrscheinlich so gemacht, dass ich per PHP und Abstimmung mir eine .m3u Datei generiert hätte oder halt irgend eine anderes Playlist format. Anschließend würde ich via VLC Player einfach die Playlist streamen. Man kann mit VLC auch auf Youtube/Twitch und weitere Dienste streamen. Den Stream dann einfach in deine Webseite einbinden
                  Ich muss aber immer einige Sekunden bevor ein Clip endet per Script definieren können, welcher als nächstes kommen soll. Das geht glaube ich nicht mit dem VLC Player und einer .m3u Datei.

                  Cool wäre es, wenn ich beim Webplayer eine PHP Datei als Quelle angeben könnte, die das passende Format zurück gibt. Zum Beispiel ein .m3u und ich die Playlist laufen anpasse. Also den nächsten Clip einfüge und den letzten lösche.

                  Kommentar


                  • #10
                    Zitat von ErrorWarrior Beitrag anzeigen

                    Cool wäre es, wenn ich beim Webplayer eine PHP Datei als Quelle angeben könnte, die das passende Format zurück gibt. Zum Beispiel ein .m3u und ich die Playlist laufen anpasse. Also den nächsten Clip einfüge und den letzten lösche.

                    du kannst in PHP ja mit header definieren welche Art von Anfrage wird da gesehendet, so kannst du zum Beispiel sowas machen

                    <img src="http://localhost/test.php">

                    und in PHP dann header('Content-Type:image/png');

                    du kannst das ähnlich machen für dein Webplayer, dort als Quelle dann eine php Datei angeben. Die PHP Datei kann dann aus einer Datei nachlesen welches Video als nächstes wiedergeben werden muss.

                    die weidergabe des Videos würdest du dann mit https://www.php.net/manual/de/function.fpassthru.php machen. du müsstest aber bereits gelesene bytes in eine Datei wegspeichern damit nicht jede Anfrage das Video von vorne abspielt. Und du musst viel über headers regelnd

                    ähnlich machen es viele streaming Dienste, öffne mal Vimeo etc und drücke im Browser die F12 Taste und start das Video, dann siehst du dass da mehrere Anfragen an den Server gehen, der Server antwortet mit ein paar bytes, diese werden im Browser wiedergeben und dann fragt der Server nach weiteren. bzw cached sogar das ergebnis.

                    Ich werde das mal für ein Youtube Tutorial vorbereiten, habe selber bock das umzusezten (aber vieleicht erst nächsten Monat oder so)

                    apt-get install npm -> npm install -g bower -> bower install <package> YOLO [URL]https://www.paypal.me/BlackScorp[/URL] | Mein Youtube PHP Kanal: [url]https://www.youtube.com/c/VitalijMik[/url]

                    Kommentar


                    • #11
                      Genau das habe ich jetzt gemacht: video.php gibt jetzt das passende mp4 zurück und der player startet das video, wenn es gebuffert ist und wenn es beendet ist, wird ein neues event aktiviert, welches das video wieder lädt... video.php gibt dann ein neues video zurück, entnommen aus einer Mysql-DB.

                      Das Problem: Wenn ein Nutzer zum Beispiel viel länger zum buffern braucht, geht es auch länger bis er das nächste wieder lädt und so verzögert sich alles, bis er plötzlich eines überspringt. Zudem gibt es beim reload immer wieder Probleme, dass der Player das video.php File für "corrupted" hält. Muss immer wieder mit Control-F5 refreshen.

                      Hab schon den video.js und afterglow Player ausprobiert.

                      Kommentar

                      Lädt...
                      X