2017-01-17 14 views
0

Следующий код, который мы используем для извлечения уменьшенных изображений из видеоКак выполнить команду извлечения эскизов ffmpeg с использованием подпроцесса в django?

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

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

Наша цель состоит в том, чтобы генерировать 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,    
    ] 
) 

Ошибка Нет такого фильтра: «эскиз = 10, setpts = N/ТБ - r 1 -vframes 10 '

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

ответ

0

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

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

    ] 
)