more things depend on gif.
This commit is contained in:
parent
1e408d9b25
commit
c1063b4ff8
1 changed files with 21 additions and 20 deletions
|
@ -200,26 +200,27 @@ class Content(models.Model):
|
|||
if self.photo and self.photo.image.url.endswith('.gif'):
|
||||
video_path = self.photo.image.path.replace('.gif', '.mp4')
|
||||
image_path = self.photo.image.path.replace('.gif', '.jpg')
|
||||
if os.path.exists(self.photo.image.path) and not os.path.exists(video_path):
|
||||
height = self.photo.image.height
|
||||
if height % 2:
|
||||
height += 1
|
||||
cmd = [
|
||||
'ffmpeg',
|
||||
'-hide_banner', '-nostats', '-loglevel', 'error',
|
||||
'-i', self.photo.image.path,
|
||||
'-vf', 'scale=-2:%s' % height,
|
||||
'-pix_fmt', 'yuv420p',
|
||||
video_path
|
||||
]
|
||||
subprocess.call(cmd)
|
||||
if not os.path.exists(image_path):
|
||||
cmd = [
|
||||
'ffmpeg',
|
||||
'-hide_banner', '-nostats', '-loglevel', 'error',
|
||||
'-i', self.photo.image.path, '-frames:v', '1', image_path
|
||||
]
|
||||
subprocess.call(cmd)
|
||||
if os.path.exists(self.photo.image.path):
|
||||
if not os.path.exists(video_path):
|
||||
height = self.photo.image.height
|
||||
if height % 2:
|
||||
height += 1
|
||||
cmd = [
|
||||
'ffmpeg',
|
||||
'-hide_banner', '-nostats', '-loglevel', 'error',
|
||||
'-i', self.photo.image.path,
|
||||
'-vf', 'scale=-2:%s' % height,
|
||||
'-pix_fmt', 'yuv420p',
|
||||
video_path
|
||||
]
|
||||
subprocess.call(cmd)
|
||||
if not os.path.exists(image_path):
|
||||
cmd = [
|
||||
'ffmpeg',
|
||||
'-hide_banner', '-nostats', '-loglevel', 'error',
|
||||
'-i', self.photo.image.path, '-frames:v', '1', image_path
|
||||
]
|
||||
subprocess.call(cmd)
|
||||
return self.photo.image.url.replace('.gif', '.mp4')
|
||||
|
||||
@cached_property
|
||||
|
|
Loading…
Add table
Reference in a new issue