2017-02-28 3 views
0

Ich muss einen Video-Server-Client, in dem der Server die Videodaten in Chunks sendet, und der Client muss sie empfangen und zeigen sie. Im Gegensatz zu irgendwelchen der Projekte, die ich jemals gemacht habe, habe ich keine Hauptstruktur dafür, weil ich keine API oder ein Modul zum Anzeigen des Videos finden kann, die in Stücke getrennt werden könnten. Alle Dateien, die angezeigt werden sollen, sind matroska .mkv. Ich habe gesucht, aber alles, was ich finden konnte, war kivy, die Videoanzeige anbietet, aber es erfordert das ganze Video und gstreamer, das den gleichen Nachteil hat. Kann mir jemand ein Modul zeigen, auf das ich mich bei der Videoanzeige verlassen kann?Streaming-Video-Player

Vielen Dank im Voraus

Antwort

1

Sofern Sie dies selbst machen für das Lernen Zweck dann wird es viel einfacher sein, auf vorhandene Arbeiten zu bauen, wenn möglich als Video-Streaming und die Wiedergabe ist kompliziert.

Zum Streamen einer Datei in "Chunks" können Sie sie einfach als statische Ressource von einem HTTP-Server, der Byte-Range-Anfragen unterstützt, Server - so kann der Client eine Reihe von Bytes anstelle der gesamten Videodatei anfordern kann es Stück für Stück herunterladen.

Dies zusammen mit dem regulären HTML5-Video-Tag in einem Browser funktioniert für die meisten Videoformate - die Browserintelligenz hinter dem Video-Tag wird bereits wissen, ob der Server Byte-Range-Anfragen unterstützt und ob sie diese verwenden.

Wenn Sie ein anspruchsvolleres Video-Streaming wünschen, beispielsweise mit Adaptive Bit Rate, um abhängig von den Netzwerkbedingungen unterschiedliche Bit-Rate-Blöcke anzufordern, dann sollten Sie sich einen Streaming-Server wie Streamer oder VideoLan ansehen:

Auf der Clientseite die Open-Source-dash.js Referenz App Sie die HTML5 Media Source Ext geben ein gutes Beispiel für die Verwendung ension, damit der Client die Chunks anfordert und sie dann wieder in das Video zum Abspielen einbaut (dabei wird MPEG DASH als Streaming-Protokoll verwendet, das zum Industriestandard wird).

Wenn Sie die DASH Weg gehen wollen, dann gibt es eine gute Blog-Post ist auf den Link, unter dem durch die Schritte arbeitet für das Streaming auf diese Weise eine MKV-Datei zur Vorbereitung der offenen Verwendung Quelle MP4Box Werkzeug: