Manchmal jedoch stoppt ffmpeg unerwartet während der Aufnahme die Videoaufnahme und verbleibt im letzten Frame (das Audio wird weiterhin aufgenommen). Die Fehlermeldung sieht so aus:
[video4linux2,v4l2 @ 0x23e51a0] Dequeued v4l2 buffer contains 414720 bytes, but 829440 were expected. Flags: 0x00002005. /dev/video0: Invalid data found when processing input
Ich habe im Internet fast keine Informationen darüber gefunden. Ich habe das Problem hier als Funktionsanforderung beschrieben: https://trac.ffmpeg.org/ticket/4795
Ich hatte auch einige Probleme mit einer Warnmeldung vor diesem Fehler, die nicht in Zusammenhang zu stehen scheint und die Videoaufzeichnung nicht zu beeinträchtigen scheint, aber ich frage mich auch, was dies bedeutet:
Bei Verwendung von Versuch und Irrtum scheinen die Warnungen verschwunden zu sein, wenn ich -f v4l2 -thread_queue_size 32und setze -f alsa -thread_queue_size 2048. Ich weiß nicht warum. Wenn ich die Thread-Warteschlangengröße für die Videoeingabe beispielsweise auf 512 anwende, habe ich keine Warnung, aber ich habe Frames verloren.
Ich wünschte, ich kann ffmpeg für meine Aufnahmen verwenden. VLC hat kein Problem mit der Aufnahme, aber ich habe auch Probleme mit den Parametern, ich habe sie noch nicht genug studiert. Wenn jemand einen alternativen Befehl für vlc vorschlagen kann, um verlustfrei aufzunehmen, wechsle ich zu vlc ...
Die vollständige Konsole-Ausgabe Ihres Befehls ist erforderlich.
LordNeckbeard vor 8 Jahren
0
Ich habe die Ausgabe in die ursprüngliche Nachricht eingefügt
Vassilis Kotaras vor 8 Jahren
0
Ich bin erstaunt, dass fast niemand ein ähnliches Problem zu haben scheint. Bin ist oder sind? Ich habe fast keine Informationen darüber gefunden und keine Lösung :(
Vassilis Kotaras vor 8 Jahren
0
Ich gebe zu, ich habe mich nicht wirklich mit Ihrer Frage beschäftigt, aber da die Entwicklung von FFmpeg so aktiv ist, müssen Sie zunächst einen neuen `ffmpeg` aus dem aktuellen Git Master-Zweig testen. [Herunterladen] (http://johnvansickle.com/ffmpeg/).
LordNeckbeard vor 8 Jahren
0
Ich habe die neuesten ffmpeg-Codecs installiert und folge den Anweisungen hier: https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu. Die ffmpeg-Version heißt jetzt N-79065-g7d9e064 (warum diese seltsame Nummer?). Zuvor war die Version 2.7.6 (von Ubuntu-Repositories). Wie auch immer, ich bekomme genau den gleichen Fehler: "Der v4l2-Puffer in der Warteschlange enthält 414720 Bytes usw.". Ich vermute, dass dies passiert, wenn das Videosignal von der VHS-Kassette schlecht ist und das Bild instabil ist, aber ich kann nichts dagegen tun.
Vassilis Kotaras vor 8 Jahren
0
2 Antworten auf die Frage
3
Vassilis Kotaras
Ich konnte keine Lösung für dieses ffmpeg-Problem finden und fand kürzlich in diesem Artikel Folgendes:
Wie es scheint, sendet das stk1160-Gerät diese defekten Frames an das v4l2-Gerät. Sobald sie ffmpeg erreichen, verschluckt und meldet sie ungültige Frames. Obwohl dies ein Teil der „ehrlichen“ Qualität von ffmpeg ist, halte ich es für einen Fehler, da es den Transcodierungsprozess beendet und ffmpeg für die anstehende Aufgabe ungeeignet macht.
Ich habe MPlayer (der Mencoder enthält) mit dem unter http://www.mplayerhq.hu angegebenen Quellcode kompiliert
Versuchen Sie, ffmpeg mit diesem Befehl: ffmpeg -f alsa -ac 2 -i default -f v4l2 -standardpal -err_detect ignore_err -i / dev / video0 -c: v libx264 -qp 0 -preset fast -strict -2 zzz.mp4 `
Gyan vor 8 Jahren
0
Ich habe es versucht. Gleiches passiert :(
Vassilis Kotaras vor 8 Jahren
0
0
phiresky
Dies ist immer noch ein Fehler in ffmpeg 3.3. Obwohl sich ffplay nach diesem Fehler (der für mich bei Szenenwechsel / schnellem Vorlauf auftritt) korrekt wiederhergestellt hat, stoppt ffmpeg einfach die Verarbeitung von Frames. Ich hatte das gleiche Problem mit diesem Gerät, und ich konnte mencoder nicht dazu bringen, die genauen Parameter zu verwenden (va in Bezug auf Deinterlacing), also wollte ich eine Kombination aus mencoder (raw AVI bis stdout) und ffmpeg (yadif deinterlace, map) verwenden Audio, x264 und Mux zu mkv), was großartig funktioniert.
Sie können die rohen AVI-Daten natürlich direkt speichern, aber mit ~ 70 GByte / h hatte ich nicht genügend Speicherplatz dafür.