FFmpeg stürzt ab, wenn ich versuche, Wget zum Erstellen von 30 Sekunden zu verwenden. Videos

361
grimm reaperr

Ich versuche folgendes zu erreichen:

  1. Ich habe ständig FFmpeg auf meinem localhost 127.0.0.1:1234 gestreamt
  2. Ich versuche, Wget zu verwenden, um mehrere 30 Sekunden zu erstellen. Videos.

Probleme:

  1. Wget hat kein Timeout.
  2. Wenn ich CTRL+ Cin Wget eingebe, wird der FFmpeg-Daemon angehalten

Skripte, die ich verwende:

FFmpeg:

ffmpeg -i "udp://SOURCE:1234?overrun_nonfatal=1&fifo_size=1024000" -vf yadif=0:0:0 -s 320x240 -r 25 -c:v libx264 -x264opts weightb:bframes=16:keyint=125:min-keyint=125:scenecut=-1 -preset veryfast -crf 3 -b:v 300000 -maxrate 300000 -bufsize 900000 -profile:v baseline -ac 2 -ar 48000 -c:a mp3 -b:a 128000 -listen 1 -f matroska http://127.0.0.1:1234\;& 

FFmpeg wird mit der Conversion failed!Nachricht beendet.

WGET:

wget --timeout=30 -O output.mkv http://127.0.0.1:1234 

Hat jemand so etwas erlebt?

Danke im Voraus!

0
Sehen Sie sich diese Frage an, es ist ein anderer Ansatz. https://serverfault.com/questions/386261/save-the-stream-to-mp4-files Babblo vor 5 Jahren 0
@Babblo, soweit ich sehen kann, erzeugt der FFmpeg so die Ausgabedatei. Ich plane, diese Methode für 30 Multicast-Gruppen (30 verschiedene Eingaben) zu verwenden, und dies wird sehr ressourcenintensiv sein. Dies ist der Grund, warum ich versuche, dies zu erreichen, ohne dass FFmpeg die Ausgabedatei erstellt. grimm reaperr vor 5 Jahren 0
Bitte zeigen Sie die vollständige Ausgabe der ffmpeg-Befehlszeile an. Warum können Sie nicht mehrere ffmpeg-Prozesse erstellen, die die endgültige MKV-Datei direkt ausgeben? slhck vor 5 Jahren 0
@slhck, da die Ausgabe zu lang für die Kommentare ist, hier: https://paste.ofcode.org/hRFN9vnTLAQQWmTB2WTM2Y können Sie es sehen. grimm reaperr vor 5 Jahren 0
Ah ja, ich sehe jetzt. Matroska-Dateien können nicht so gestreamt werden (dh an einen URL-Endpunkt). Beim Schließen von ffmpeg wird erwartet, dass dort eine durchsuchbare Datei vorhanden ist. Bei IIRC können Sie `-f mpegts` ausprobieren und dann eine` .ts`-Datei speichern. slhck vor 5 Jahren 0
Sie können einen MP4 oder einen MKV nicht beliebig auf diese Weise teilen. Der Header befindet sich entweder am Anfang oder am Ende der Datei und wird benötigt, damit ein Player den Inhalt analysieren kann. Gyan vor 5 Jahren 0

0 Antworten auf die Frage