Ich versuche, eine zweite MP3-Datei (5 Sekunden lang) über die erste MP3-Datei (3 Minuten lang) zu legen. Sie sollte nach 50 Sekunden beginnen. Wenn möglich, wäre es gut, die beiden MP3s gut zu mischen und nach diesen 5 Sekunden die erste MP3 weiter abzuspielen.
ich stoppe die erste MP3 nicht, sondern mische die zweite nach 30 Sekunden mit der ersten MP3.
ich habe es mit einem Offset versucht, aber es beginnt am Anfang.
ffmpeg -i 12.mp3 -i 22.mp3 -vsync 2 -filter_complex amerge -ac 2 -c:a libmp3lame -q:a 4 arjun.mp3
ffmpeg -i "concat:12.mp3|22.mp3" -acodec copy arjun.mp3
ffmpeg -i 11.mp3 -i 22.mp3 -filter_complex "[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=mono,atrim=end=20[aud1];[1:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=mono,atrim=end=240[bud2];[bud2]adelay=10000[aud2];[aud1][aud2]amix=inputs=2" amerge -ac 2 -c:a libmp3lame -q:a 4
arjun9.mp3
ffmpeg -i 75.mp3 -itsoffset -700 -i 22.mp3 -vn -filter_complex amix 0055598.mp3
ffmpeg -i 75.mp3 -itsoffset -700 -i 22.mp3 -vn -filter_complex amix 0055598.mp3
Antwort1
Leider -itsoffset
funktioniert diese Option nur für Video-Streams. Verwenden Sie sie nicht für Audio.
Um das zu tun, was Sie verlangen, verwenden Sie den folgenden Befehl
OFFSET=5 ffmpeg -i in1.mp3 -f lavfi -i aevalsrc=0:d=$OFFSET -i in2.mp3 -filter_complex '[1] [2] concat=v=0:a=1 [a], [0] [a] amix' out.mp3
Dies wird wie folgt in1.mp3
gemischt :in2.mp3
out.mp3
in1.mp3
[--------------------------------------------------]
OFFSET seconds [---------]
in2.mp3