Fügen Sie dem Video kürzere Audiodaten mit einer Schleife hinzu, mit Lautstärkeregelung für Audio und Video und nur für eine bestimmte Dauer mithilfe von FFMpeg

Fügen Sie dem Video kürzere Audiodaten mit einer Schleife hinzu, mit Lautstärkeregelung für Audio und Video und nur für eine bestimmte Dauer mithilfe von FFMpeg

Fügen Sie dem Video kürzeren Ton mit einer Schleife hinzu, mit Lautstärkeregelung für Audio und Video und nur für eine bestimmte Dauer ((ich möchte Audio hinzufügen und in beiden Fällen sowohl Audio als auch Videoton behalten))

Ich habe zwei Teile eines Problems

1) Audio ist 27 Sekunden lang. 2) Video ist 2 Minuten 24 Sekunden lang.

a) Ich möchte den Ton in einer Schleife abspielen und ihn dem Video hinzufügen, z. B. (nur Ton hinzufügen) von 50 Sekunden bis 1 Minute 30 Sekunden (nicht das ganze Video, aber trotzdem das ganze Video als Ausgabe) innerhalb des Videos, mit dem in Schleife abgespielten Ton

b) Erstellen Sie innerhalb des Videos einen Videoclip von 50 Sekunden bis 1 Minute 30 Sekunden (nicht das ganze Video als Ausgabe), mit dem geloopten Audio

Ich habe den folgenden Befehl von ffmpeg verwendet, um Audio zum Video hinzuzufügen, wodurch es dem gesamten Video hinzugefügt wird. Wie können wir i) nur einen Teil des Videos angeben, um den geloopten Ton zu haben? ii) einen neuen Clip für die ausgewählte Dauer mit dem geloopten Ton erstellen

Bisher konnte ich Audio und Video in einer Schleife wiedergeben, ihre Lautstärke ändern und sie mit dem folgenden Befehl für das gesamte Video mischen

"-y","-i",videofile, "-filter_complex",
                        "amovie=audiofile:loop=1000,asetpts=N/SR/TB,aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=1.5[a1];" +
                        "[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.5[a2];" +
                        " [a1][a2]amerge,pan=stereo:c0<c0+c2:c1<c1+c3[out]",
                        "-map","0:v","-map","[out]","-c:v","copy","-c:a","aac","-shortest","-preset", "ultrafast", outputfile

In beiden Fällen stecke ich beim Zeitmanagement fest.

Antwort1

Verwenden

amovie=audiofile:loop=1000,asetpts=N/SR/TB,atrim=0:40,adelay=50000|50000,apad,aformat=...

Beim Trimmen bleiben die ersten 40 Sekunden der Audioschleife erhalten, während bei der Verzögerung die Startzeit auf 50.000 Millisekunden, also 50 Sekunden, verschoben wird.

Antwort2

Dies ist ein Code zum Hinzufügen von Audio zu Video mit 1) Audioschleife 2) Ändern der Lautstärke von Audio und Video 3) Erstellen einer neuen Datei mit nur festgelegter Dauer 4) Erstellen einer Datei mit der ursprünglichen Videodauer und Audio an einer bestimmten Stelle des Videos

A) nur für neue Dateien mit festgelegter Dauer

"-y","-i",j,
                        "-filter_complex",
                        "amovie="+audio+":loop=999,asetpts=N/SR/TB," +
                                "atrim=0:40,adelay=50000|50000,aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=1.5[a1];" +
                                "[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=2.0[a2];" +
                                " [a1][a2]amerge,pan=stereo:c0<c0+c2:c1<c1+c3[out]",
                        "-ss","50", "-t","40","-map","0:v","-map","[out]","-c:v","copy","-c:a","aac","-preset", "ultrafast", out

wir fügen hinzu"-ss","50", "-t","40"

b) für eine Datei mit Originalvideodauer und Audio an einer bestimmten Stelle des Videos

"-y","-i",j,
                            "-filter_complex",
                            "amovie="+audio+":loop=999,asetpts=N/SR/TB," +
                                    "atrim=0:40,adelay=50000|50000,aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=1.5[a1];" +
                                    "[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=2.0[a2];" +
                                    " [a1][a2]amerge,pan=stereo:c0<c0+c2:c1<c1+c3[out]",
                            "-ss","50", "-map","0:v","-map","[out]","-c:v","copy","-c:a","aac","-preset", "ultrafast", out

wir fügen hinzu"-ss","50" aber nicht hinzufügen"-t","40"`

verwandte Informationen