Ich habe einige Skripte, die Streaming, Aufzeichnung in Datei und die Kombination von Stream und Aufzeichnung realisieren. Aber wie kann ich realisieren, dass beim Streaming und Auftreten eines Ereignisses die Aufzeichnung in Datei mit vorgefülltem Puffer gestartet wird – wie etwa ein Voralarmpuffer? Oder segmentierte Dateien speichern und bei Auftreten eines Ereignisses t-5 und t+5 kombinieren?
Ist das mit FFMPEG + Skript möglich?
Antwort1
Ja es ist möglich.
ffmpeg
Wird zum Generieren von HLS-Videosegmenten verwendet. Nach dem Ereignis (oder sogar währenddessen) können Sie die aufeinanderfolgenden Dateien anhand ihres Dateinamens oder Zeitstempels zu einer temporären Datei zusammenfügen und .ts
sie dann in ein Format wie MP4 transmuxen.
Ich habe keinen Beispielcode zur Hand, aber wir machen intern etwas Ähnliches. (Der Plan ist, dies irgendwann in der Zukunft auf GitHub zu veröffentlichen.)