-1

Эй, я пытаюсь эту команду для слияния двух аудио в одном видео, но она слилась только, и мне нужно наложить его. Вот мой код:

String[] complexCommand = {"ffmpeg", "-y", "-i", "/sdcard/videokit/in.mp4", "-i", "/sdcard/videokit/bb.m4a", "-strict", "experimental", "-filter_complex", "amix=inputs=2:duration=first:dropout_transition=2",/**/ "-shortest", "/sdcard/videokit/out_water.mp4"};

После этого я также попробовал этот для оверлейного видео, но после того, как объединенное видео наложено, но только первый аудио видео входит в это. Вот код:

String[] complexCommands = {"ffmpeg", "-y", "-i", "/sdcard/videokit/in.mp4", "-i", "/sdcard/videokit/tttt.mp4", "-strict", "experimental", "-filter_complex", "[0:v:0]pad=iw*2:ih[bg];" + "[bg][1:v:1]overlay=w", "-s", "320x240", "-r", "30", "-b", "15496k", "-vcodec", "mpeg4", "-ab", "48000", "-ac", "2", "-ar", "22050", "/sdcard/videokit/partik.mp4"};

1 ответ1

1

Вы должны объединить два, как это

String[] complexCommands = {"ffmpeg", "-y", "-i", "/sdcard/videokit/in.mp4", "-i", "/sdcard/videokit/tttt.mp4", "-strict", "experimental", "-filter_complex", "[0:v:0]pad=iw*2:ih[bg];[bg][1:v:1]overlay=w,scale=320x240;[0][1]amix=inputs=2:duration=first:dropout_transition=2", "-r", "30", "-b", "15496k", "-vcodec", "mpeg4", "-ab", "48000", "-ac", "2", "-ar", "22050", "-shortest", "/sdcard/videokit/partik.mp4"};

В зависимости от версии FFmpeg может потребоваться назначить выходные пэды и отобразить их, но попробуйте сначала.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .