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

String [] cmd = {"- i", "/storage/emulated/0/Download/trasprent_bg.png", "- i", videourl_1.mp4, "- i", videourl_2.mp4, "- i", videourl_3 .mp4, "- я", videourl_4.mp4, "- я", image_collage.png, "- filter_complex", "[1:v] масштаб = 500:500, растениеводство = 266:266 [ПФП]; [2:v] масштаб = 500:500, растениеводство = 266:266 [BFG]; [3:v] масштаб = 500:500, растениеводство = 266:266 [threefg]; [4:v] масштаб = 500:500, растениеводство = 266:266 [fourfg]; [5:v] масштаб = -1:-1 [colage]; [0:v] [ПФП] наложения = 2:2 [o1]; [o1] [BFG] накладка = 272:2 [O2]; [O2] [threefg] наложение = 2:272 [O3]; [O3] [fourfg] накладка = 272:272 [O4]; [O4] [colage] наложение = 0:0" , "- », "videoCrop37.mp4"};

Пожалуйста, помогите мне.

1 ответ1

0

Вам нужно изменить метки времени для других видео.

String [] cmd = {"- loop", "1", "- i", "/storage/emulated/0/Download/trasprent_bg.png", "- i", videourl_1.mp4, "- i", videourl_2 .mp4, "- я", videourl_3.mp4, "- я", videourl_4.mp4, "- я", image_collage.png, "- filter_complex", "[1:v] масштаб = 500:500, растениеводство = 266:266 [ПФП]; [2:v] масштаб = 500:500, растениеводство = 266:266, setpts = PTS+X/ТБ [BFG]; [3:v] масштаб = 500:500, растениеводство = 266:266 , setpts = PTS+Y/ТБ [threefg]; [4:v] масштаб = 500:500, растениеводство = 266:266, setpts = PTS+Z/ТБ [fourfg]; [5:v] масштаб = -1:-1 [colage]; [0:v] [ПФП] наложения = 2:2:eof_action = передать [o1]; [o1] [BFG] накладка = 272:2:eof_action = проходят [O2]; [O2] [ threefg] наложения = 2:272:eof_action = передать [O3]; [O3] [fourfg] накладка = 272:272:eof_action = передать:кратчайшее = 1 [O4]; [O4] [colage] наложения = 0:0" , "- это", "videoCrop37.mp4"};

Для 2-го, 3-го и 4-го видео был добавлен фильтр setpts=PTS+T/TB , где T - задержка в секундах для времени начала этого видео. Если продолжительность 4 видео составляет 6,3,11,5 секунды, то X = 6, Y = 9 (6+3) и Z = 20 (6+3+11).

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