Node.js: - Echtzeit-Konvertierung von jpeg-Bildern-video-Datei
Ich bin mit node.js und durch den sockel.io-Bibliothek, die ich empfangen von Blöcken von Daten, die tatsächlich von jpeg-Bildern. Diese Bilder sind Bilder eines Echtzeit-video-gefangen von einem remote-webcam. Ich bin gezwungen, das video zu streamen als jpeg-frames. Ich bin auf der Suche nach einem Weg, um zu konvertieren on-the-fly diese jpeg-Bilder in eine video Datei (mpeg-4 oder mjpeg-Datei). Tut Knoten haben eine Bibliothek, die dies tun können? Ich habe schon mal einen Blick auf die Knoten-fließend-FFMPEG Bibliothek, aber das nur Beispiele waren etwa Umwandlungen von jpeg-Dateien auf eine video-und eine Konvertierung on-the-fly aus einem stream von jpeg-Bildern. Oder alternativ, hat ffmpeg für windows-Unterstützung ein Strom von jpeg-Bildern als input?
- Ich habe nicht wirklich die Antwort für Sie, aber ich vermute, du musst die Puffer von Bildern und Kodieren Sie Sie in Stücke - die meisten encoding-algorithmen erfordern viele Bilder in Folge zu bekommen, die auch grundlegende Kompression gehen. Ich weiß wirklich nicht, Ihren Fall also vielleicht die Komprimierung ist egal. Vielleicht webRTC ist eine option für Sie?
- Muss es ein video, konnte nicht ziehen Sie die jpeg-Bilder auf eine Leinwand, zum Beispiel ?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, Sie sollten sich auf videofy
Mit
require("child_process")
Sie verwenden können, ffmpeg, oder sind es wohl npm-Module, um Hilfe mit diesem. ffmpeg erlauben Sie zunächst eine Liste von JPEG-Dateien und konvertieren, dass zu einem video, zweiten können Sie eine Liste (oder nur einer) die JPEG-Bilder an den Anfang oder das Ende des videos.FFMPEG unterstützt streams als Input, wie es in der docs.
So zum Beispiel unterstützt es mit
schafft einen Lesbar stream aus der Datei mit
'/path/to/input3.avi'
.Ich weiß nicht, etwas über FFMPEG, aber Sie können ziehen Sie Ihre Nachrichten kommen aus der Buchse.io (Nachrichten kann ein Puffer schon) und wickeln Sie es mit Ihrer eigenen Implementierung Lesbar stream.