ffmpeg pour ajouter de l'audio plus courte à la vidéo avec boucleFfmpeg commande pour ajouter audio plus courte à la vidéo avec boucle
J'utilise cette commande pour ajouter de l'audio à la vidéo, l'audio est de 18 secondes et la vidéo est à 3 minutes et 29 secondes, cette commande ajoute audio, mais seulement pour les 18 premières secondes, puis il arrête
"-y","-stream_loop","-1","-i", audio,"-i",j, "-filter_complex",
"[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.5[a1];" +
"[1:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.8[a2];" +
" [a1][a2]amerge,pan=stereo:c0<c0+c2:c1<c1+c3[out]",
"-map","1:v","-map","[out]","-c:v","copy","-c:a","aac","-shortest","-preset", "ultrafast", out
comment pouvons-nous ajouter l'audio dans une boucle et l'ajouter à la vidéo
Modifier
Pour l'instant question que j'avais fait les modifications suivantes
"-y","-i",video,"-filter_complex","amovie="+audio+":loop=999,asetpts=N/SR/TB,aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.5[a1];" +[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.8[a2];" +"[a1][a2]amerge,pan=stereo:c0<c0+c2:c1<c1+c3[out]",
"-t", timetoedit,
"-map","0:v","-map","[out]","-c:v","copy","-c:a","aac","-shortest","-preset", "ultrafast", out
cela fonctionne bien si nous voulons ajouter de l'audio la vidéo entière
maintenant, quand nous essayons d'ajouter de l'audio qui commence à un moment précis et pour une durée spécifique, il ne ici sont deux choses ici, 1) créer un nouveau clip avec audio et vidéo pour une durée spécifique cette commande doesnot travail
"-y","-i",video,,"ss",starttime,"-t", timetoedit,"-filter_complex","amovie="+audio+":loop=999,asetpts=N/SR/TB,aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.5[a1];" +[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.8[a2];" +"[a1][a2]amerge,pan=stereo:c0<c0+c2:c1<c1+c3[out]",
"-ss", starttime,"-t", timetoedit,
"-map","0:v","-map","[out]","-c:v","copy","-c:a","aac","-shortest","-preset", "ultrafast", out
ou si nous voulons simplement ajouter audio à un moment précis
comme
"-y","-i",video,"-filter_complex","amovie="+audio+":loop=999,asetpts=N/SR/TB,aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.5[a1];" +[0:a]aformat=sample_fmts=fltp:sample_rates=44100:channel_layouts=stereo,volume=0.8[a2];" +"[a1][a2]amerge,pan=stereo:c0<c0+c2:c1<c1+c3[out]",
"-ss", starttime,"-t", timetoedit,
"-map","0:v","-map","[out]","-c:v","copy","-c:a","aac","-shortest","-preset", "ultrafast", out
comment cela peut se faire
ce qui est utile https://superuser.com/questions/708125/add-audio-at-specific-time-in-video-using-ffmpeg
mais comment peut-on utiliser ceci pour une heure de début et une durée spécifiques
cela a fonctionné, mais la vidéo est 3min 29 sec long, il a ajouté audio seulement jusqu'à 2 min 30 sec après qu'il était silencieux – 1234567
il n'ajoute pas audio aux dernières 45 secondes, ne sais pas quel est le problème – 1234567
j'ai utilisé -t 100 commandes similaires pour la boucle lors de la création de vidéos de fichiers image, comment pouvons-nous utiliser la commande similaire pour obtenir la durée exacte pour audio et vidéo – 1234567