FFMPEG: наложение двух видео со звуком в одном видео

689
parik dhakan

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

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
**Да уж!!! Я сделал это сам с настроенным кодом. ** parik dhakan 7 лет назад 0
String [] complexCommand = {"ffmpeg", "-y", "-i", "/sdcard/videokit/g1.mp4", "-i", "/sdcard/videokit/t4.mp4", "-strict "," экспериментальный "," -filter_complex "," [0: v: 0] pad = iw * 2: ih [bg]; " + "[bg] [1: v: 1] оверлей = w, масштаб = 320x240; [0: 1] pan = стерео | c0 = 2 * c0 | c1 = 3 * c0 [a0]; [1: a] панорамирование = стерео | с0 = 1 * с0 | с1 = 4 * с0 [а1]; [a0] [a1] Amix = входы = 2: длительность = первая: dropout_transition = 2" , parik dhakan 7 лет назад 0
"-r", "30", "-b", "15496k", "-vcodec", "mpeg4", "-ab", "48000", "-ac", "2", "-ar", "22050", "-shortest", "/sdcard/videokit/parik.mp4"}; parik dhakan 7 лет назад 0

1 ответ на вопрос

1
Gyan

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

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 может потребоваться назначить выходные пэды и отобразить их, но попробуйте сначала.

не работает Пожалуйста, помогите мне parik dhakan 7 лет назад 0
Отредактированный cmd. Попробуй сейчас. Gyan 7 лет назад 0
До сих пор не работает. Также пробовал [0: 1] [1: 1] amix, но так как не работает. получить только первый звук первого видео. Я хочу наложить оба аудио параллельного видео. parik dhakan 7 лет назад 0
Показать полный вывод консоли. Gyan 7 лет назад 1
Вы можете вставить его в Q. И выше это команда, а не вывод консоли. Gyan 7 лет назад 0
07/07 16:03:26: Запуск ffmpeg4android_demo $ adb push C: \ Users \ Admin \ Downloads \ ffmpeg4android_demo_studio_25_24_9 \ ffmpeg4android_demo_studio \ ffmpeg4android_demo \ build \ output \ apk \ ffmdek.dem_data.data .ffmpeg4android_demo $ adb shell pm install -r "/data/local/tmp/com.examples.ffmpeg4android_demo" pkg: /data/local/tmp/com.examples.ffmpeg4android_demo Success parik dhakan 7 лет назад 0
$ adb shell am start -D -n "com.examples.ffmpeg4android_demo / com.examples.ffmpeg4android.Main" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER Ожидание появления приложения в сети: com .examples.ffmpeg4android_demo.test | com.examples.ffmpeg4android_demo Ожидание появления приложения в сети: Ожидание появления приложения в сети: com.examples.ffmpeg4android_demo.test | com.examples.ffmpeg4android_demo Подключение к com.examples.ffmpeg4android_demo Подключено к целевой виртуальной машине, адрес: «localhost: 8609», транспорт: «сокет» parik dhakan 7 лет назад 0
Нужно увидеть вывод консоли ffmpeg. Gyan 7 лет назад 1
Давайте [продолжим обсуждение в чате] (http://chat.stackexchange.com/rooms/42154/discussion-between-parik-dhakan-and-mulvya). parik dhakan 7 лет назад 0

Похожие вопросы