В фильтрах loop
и aloop
необходимо указать максимальное количество кадров / сэмплов, поскольку по умолчанию оно равно 0.Например,
[0:v] loop = '5 : 10'
выводит [0:v]
без изменений, а затем первые 10 кадров этого цикла повторяются 5 раз.И не забывайте фиксировать временные метки усеченного вывода.
Итак, с помощью этого фильтра можно добиться того, что вы хотите сделать (при условии, что частота кадров на входе составляет 30 кадров в секунду, а частота дискретизации равна 48 К / с)
[0:v] trim = 'start = 6 : end = 46',
setpts = 'PTS - STARTPTS',
loop = 'loop = 4 : size = 40 * 30' [vf];
[0:a] atrim = 'start = 6 : end = 46',
asetpts = 'PTS - STARTPTS',
aloop = 'loop = 4 : size = 40 * 48000' [af]