Как выполнить команду извлечения миниатюр ffmpeg с помощью подпроцесса в django?

Следующий код мы используем для извлечения миниатюр изображений из видео

ffmpeg -i low.mkv -vf thumbnail=10,setpts=N/TB -r 1 -vframes 10 inputframes%03d.png

Этот код работает абсолютно нормально на терминале, но он дает ошибку, когда мы обрабатываем то же самое с подпроцессом в django.

Наша цель-создать 10 эскизов из любой длины видео

Вот код

vaild_fps = "'thumbnail=10,setpts=N/TB -r 1 -vframes 10'"

subprocess.call([settings.FFMPEG_PATH,
        '-i',
        input_file_path,
        '-vf',
        vaild_fps,
        thumbnail_output_file_path,            
    ]
)

Ошибка нет такого фильтра: ‘thumbnail=10, setpts=N/TB-r 1-vframes 10’

Ошибка открытия фильтров!

1 ответ

  1. К сожалению, я в состоянии взломать его. Вот решение

    subprocess.call([settings.FFMPEG_PATH,
            '-i',
            input_file_path,
            '-vf',
            'thumbnail=10,setpts=N/TB',            
            '-r',
            '1',
            '-vframes',
            '10',
            thumbnail_output_file_path,
    
        ]
    )