Как захватить изображение или создать миниатюру из видео в python django restframework?

На самом деле, я пытаюсь захватить, чтобы сделать миниатюру из загруженного видео в python Django. А затем мне нужно сохранить эту миниатюру в отдельном поле модели для последующего использования.

class Post(models.Model):
    user= models.ForeignKey(Profile, on_delete=models.CASCADE)
    video = models.FileField(upload_to='post_videos/%Y/%m', null=True)
    thumbnail = models.ImageField(upload_to='post_images/%Y/%m', null=True)

Я просто хочу загрузить видео, захватить миниатюру в любой момент времени и затем сохранить ее в поле миниатюры. Пожалуйста, дайте мне знать, если кто-нибудь может мне помочь. Я пробовал использовать FFmpeg и moviepy, но не смог решить проблему. жду помощи. Спасибо

Вы можете сделать это с помощью ffmpeg. С какой проблемой вы столкнулись?

import subprocess
video_input_path = post_object.video.path
# or whatever the path of the uploaded video file is
img_output_path = 'path/to/image'
subprocess.call(['ffmpeg', '-i', video_input_path, '-ss', '00:00:00.000', '-vframes', '1', img_output_path])

А затем вы можете назначить его полю миниатюры

Вернуться на верх