сетевой фильтр ffmpeg работает некорректно

#ffmpeg #android-ffmpeg #ffmpeg-php #pyffmpeg #sharpffmpeg

#ffmpeg #android-ffmpeg #ffmpeg-php #pyffmpeg #sharpffmpeg

Вопрос:

Я пытаюсь выполнить команду FFmpeg следующим образом

 -i "v1.mov" -i "0.mp3" -filter_complex "[0:v]trim=0:204,setpts=PTS-STARTPTS[TrimmedVideo];[0:a]atrim=0:204,asetpts=PTS-STARTPTS[TrimmedAudio];[TrimmedVideo]scale=848:360[BackgroundOutput];[1:a]atrim=0:20,asetpts=PTS-STARTPTS,volume=0.37,aloop=1:size=1*48000,adelay=0|0[AudioTrim0];[TrimmedAudio][AudioTrim0]amix=inputs=2:duration=first:dropout_transition=2,volume=2[AudioMixOut];[BackgroundOutput][AudioMixOut]concat=n=1:v=1:a=1[OutputVideo][OutputAudio]" -map [OutputVideo] -map [OutputAudio] -c:v libx264 -c:a aac -b:a 256k -preset ultrafast "ouput.mp4"
 

в этом я использовал aloop для зацикливания звука для заполнения видео, но этот звук не повторяется, он воспроизводится один раз, а затем останавливается

Ответ №1:

Итак, я обнаружил, что эта проблема заключается в параметре Size, который необходимо умножить на длительность обрезанного звука, но я использовал 1×4800 вместо 20×48000, и это решило проблему, и последняя команда становится

 -i "v1.mov" -i "0.mp3" -filter_complex "[0:v]trim=0:204,setpts=PTS-STARTPTS[TrimmedVideo];[0:a]atrim=0:204,asetpts=PTS-STARTPTS[TrimmedAudio];[TrimmedVideo]scale=848:360[BackgroundOutput];[1:a]atrim=0:20,asetpts=PTS-STARTPTS,volume=0.37,aloop=1:size=20*48000,adelay=0|0[AudioTrim0];[TrimmedAudio][AudioTrim0]amix=inputs=2:duration=first:dropout_transition=2,volume=2[AudioMixOut];[BackgroundOutput][AudioMixOut]concat=n=1:v=1:a=1[OutputVideo][OutputAudio]" -map [OutputVideo] -map [OutputAudio] -c:v libx264 -c:a aac -b:a 256k -preset ultrafast "ouput.mp4"