Ich führe diesen Befehl aus, um Video und Audio von meiner Webcam aufzunehmen:
ffmpeg -y -f video4linux2 -s 320x240 -i /dev/video0 -f alsa -i "plughw:CARD=U0x46d0x825,DEV=0" -ac 2 -strict experimental Filename.mp4
Es funktioniert, aber der Ton hinkt dem Video etwa eine halbe Sekunde hinterher (wenn ich beispielsweise klatsche, höre ich beim Ansehen des Videos das Klatschen und sehe dann, wie ich es tue).
Dies ist für einen Online-Stream, daher kann ich es später nicht mehr korrigieren, es muss korrekt aufgezeichnet werden.
Die Abweichung scheint immer um den gleichen Wert zu sein, daher versuche ich, eine Option zu finden, um den Beginn der Audioaufzeichnung einfach zu verzögern, aber ich komme nicht dahinter.
Irgendwelche Ideen?
Antwort1
Haben Sie es mit Google versucht?Hier
Sie empfehlen die Verwendung -async
oder -vsync
je nach Bedarf oder -map
in Kombination mit-itsoffset
Die Verwendung eines aktuellen Profils ffmpeg
mit dem folgenden Befehl sollte funktionieren:
ffmpeg -y -f video4linux2 -s 320x240 -i /dev/video0 -itsoffset 2 -f alsa -i "plughw:CARD=U0x46d0x825,DEV=0" -ac 2 -strict experimental Filename.mp4
Antwort2
SehenFFmpeg: Audio-Startzeit weit danebenwie ich ein sehr ähnliches Problem gelöst habe. Ich habe es früher verwendet -itsoffset
, aber es ist mir zu viel Rätselraten.