FFMPEG объединяет два видео, которые не имеют аудио

372
Vivek Mishra

Я создал два разных видео, которые созданы путем объединения нескольких изображений в видео. Ниже приведена команда для этого.

"-f","concat","-safe", "0","-i",path,"-vsync","vfr","-pix_fmt","yuv420p",Environment.getExternalStorageDirectory().path+"/output1.mp4" 

Здесь путь - это путь ввода текстового файла, в котором я указал путь ко всем изображениям, которые необходимо объединить.

Сейчас я пытаюсь объединить эти два видео в одно видео. Для этого я использую следующую команду.

-i, /storage/emulated/0/output.mp4, -i, /storage/emulated/0/output1.mp4, -filter_complex, [1:v][0:v]scale2ref[ua][b];[ua]setsar=1;[0:v][1:v]concat=n=2:v=1:a=0[v], -map, [v], -preset, ultrafast, /storage/emulated/0/output3.mp4 

Но это не работает и не дает никаких ошибок в журналах. Но это последнее утверждение, которое печатается в методе progress и кажется мне какой-то ошибкой

Поток # 1: 0 (und): Видео: h264 (avc1 / 0x31637661), yuv420p, 1000x800 [SAR 1: 1 DAR 5: 4], 838 кбит / с, 0,83 к / с, 1 тб, 12800 тб, 50 тбк (по умолчанию )

Это детали обоих видео.

Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/output.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf58.12.100 Duration: 00:00:20.04, start: 0.000000, bitrate: 279 kb/s Stream #0:0(und): Video: h264 (avc1 / 0x31637661), yuv420p, 1280x854 [SAR 1:1 DAR 640:427], 279 kb/s, 0.25 fps, 0.20 tbr, 12800 tbn, 50 tbc (default) Metadata: handler_name : VideoHandler Input #1, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/emulated/0/output1.mp4': Metadata: major_brand : isom minor_version : 512 compatible_brands: isomiso2avc1mp41 encoder : Lavf58.12.100 Duration: 00:00:06.04, start: 0.000000, bitrate: 839 kb/s Stream #1:0(und): Video: h264 (avc1 / 0x31637661), yuv420p, 1000x800 [SAR 1:1 DAR 5:4], 838 kb/s, 0.83 fps, 1 tbr, 12800 tbn, 50 tbc (default) Metadata: handler_name : VideoHandler Input #2, lavfi, from 'anullsrc': Duration: N/A, start: 0.000000, bitrate: 705 kb/s Stream #2:0: Audio: pcm_u8, 44100 Hz, stereo, u8, 705 kb/s 

Что я здесь не так делаю?

ОБНОВЛЕНИЕ Это журналы после использования команды, представленной в ответе.

Successfully opened the file. D/ffmpeg: progress [Parsed_scale2ref_0 @ 0xf16390c0] w:iw h:ih flags:'bilinear' interl:0 D/ffmpeg: progress [Parsed_setsar_1 @ 0xf1639120] Setting 'sar' to value '1' D/ffmpeg: progress [Parsed_concat_2 @ 0xf1639180] Setting 'n' to value '2' D/ffmpeg: progress [Parsed_concat_2 @ 0xf1639180] Setting 'v' to value '1' D/ffmpeg: progress [Parsed_concat_2 @ 0xf1639180] Setting 'a' to value '0' D/ffmpeg: progress Parsing a group of options: output url /storage/emulated/0/output3.mp4. D/ffmpeg: progress Applying option map (set input stream mapping) with argument [v]. D/ffmpeg: progress Successfully parsed a group of options. D/ffmpeg: progress Opening an output file: /storage/emulated/0/output3.mp4. 
0
Удалите последний `[2: a]` из фильтра concat. Gyan 5 лет назад 0
@Gyan теперь выдает следующую ошибку `: a: 0 'в описании фильтра [1: v: 0] scale = 640: 480, setsar = 1 [1v]; [0: v: 0] [2: a] [ 1: v: 0] [1: a: 0] concat = n = 2: v = 1: a = 1 [v] [a] не соответствует ни одному потоку. Vivek Mishra 5 лет назад 0
Ваше второе видео не имеет звука, затем используйте `[2: a]`. Gyan 5 лет назад 0
Ни в одном из моих видео нет звука. Я создал эти видео путем объединения изображений в видео. Так что ни одно из них не имеет изображений Vivek Mishra 5 лет назад 0
@Gyan Я обновил вопрос. Пожалуйста, проверьте сейчас Vivek Mishra 5 лет назад 0

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

0
Gyan

использование

-i, /storage/emulated/0/output.mp4, -i, /storage/emulated/0/output1.mp4,  -filter_complex, [1:v][0:v]scale2ref[ua][b];[ua]setsar=1[ua];[b][ua]concat=n=2:v=1:a=0[v], -map, [v], -preset, ultrafast, /storage/emulated/0/output3.mp4 
Это не дает никакой ошибки, но и не завершает. Нет ошибок или предупреждений, отображаемых в журналах. Vivek Mishra 5 лет назад 0
Как и следовало ожидать, пользователь с вашим уровнем репутации и опытом знает, что мы предпочитаем, чтобы ответы содержали некоторые пояснения, а не просто «Использовать эту команду». Scott 5 лет назад 0
Поделись полным логом. Gyan 5 лет назад 0
Добавлены логи в вопросе Vivek Mishra 5 лет назад 0
Запустите с добавлением `-v 48` и предоставьте полный вывод на консоль. Gyan 5 лет назад 0
@Gyan обновил логи в вопросе с помощью `-v 48` Vivek Mishra 5 лет назад 0
Поделитесь полным выходом консоли. Gyan 5 лет назад 0
Спасибо за вашу помощь. Я получил это работает сейчас. Проблема была в том, что выходной файл не был создан командой. Я создал новый файл вручную, а затем передал его команде, и он работал. Vivek Mishra 5 лет назад 0

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