Hacken von Medienströmen im HTML5-Websocket-Server für webbasierte Chat- / Videokonferenzanwendungen
Derzeit arbeiten wir an einem chat + (file-sharing +) video-Konferenz-Anwendung mithilfe von HTML5-websockets. Um unsere Anwendung mehr zugänglich, den wir umsetzen wollen, Adaptive Streaming, mithilfe der folgenden Reihenfolge:
- Raw-audio - /video-Daten-client geht auf server
- Stream ist aufgeteilt in 1 Sekunde Brocken
- Kodieren Streams in unterschiedlichen Bandbreiten
- Client erhält eine manifest-Datei zur Beschreibung Verfügbarer Segmente
- Downloads ein segment mit normalen HTTP
- Bandbreite nächsten segment ausgewählt, das auf die Leistung der vorherigen
- Kunde kann wählen Sie aus einer Reihe von verschiedenen alternativen streams bei einer Vielzahl von Datenraten
Also.. Wie tun wir teilen unsere audio - /video-Daten in Blöcken mit Python?
Wir wissen, dass Microsoft bereits bauen die Expression Encoder 2die ermöglicht das Adaptive Streaming, aber es unterstützt nur Silverlight-und das ist nicht das, was wir wollen.
Edit:
Es gibt auch eine Lösung namens FFmpeg (und für Python eine PyFFmpeg wrapper), aber es unterstützt nur Apple Adaptive streaming.
InformationsquelleAutor der Frage Enrico Pallazzo | 2010-11-22
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke ffmpeg ist das wichtigste Werkzeug, das Sie wollen, zu betrachten. Es werden die meisten gut unterstützt open-source-Medien-manipulator. Es ist ein python-wrapper. Es ist jedoch auch möglich,Zugriff auf die Befehlszeile über den subprocess-Modul.
InformationsquelleAutor der Antwort mjhm
Habe ich einige nette Artikel darüber, wie andere Menschen bauen eine
stream segmenter
für andere Plattformen, jetzt wissen wir also, wie baut man in Python.InformationsquelleAutor der Antwort Enrico Pallazzo