dispatch stream update to celery
This commit is contained in:
parent
29395aeeff
commit
2d36ca047e
1 changed files with 24 additions and 17 deletions
|
@ -5,9 +5,32 @@ from django.conf import settings
|
||||||
import os
|
import os
|
||||||
from glob import glob
|
from glob import glob
|
||||||
|
|
||||||
|
from celery.task import task
|
||||||
|
|
||||||
from ... import models, extract
|
from ... import models, extract
|
||||||
|
|
||||||
|
|
||||||
|
@task(queue="encoding")
|
||||||
|
def update_stream(id):
|
||||||
|
s = models.Stream.objects.get(pk=id)
|
||||||
|
if not glob("%s*"%s.timeline_prefix):
|
||||||
|
s.make_timeline()
|
||||||
|
if not s.color:
|
||||||
|
s.cuts = tuple(extract.cuts(s.timeline_prefix))
|
||||||
|
s.color = tuple(extract.average_color(s.timeline_prefix))
|
||||||
|
s.save()
|
||||||
|
|
||||||
|
s.file.selected = True
|
||||||
|
s.file.save()
|
||||||
|
s.file.item.update_timeline()
|
||||||
|
#make sure all derivatives exist
|
||||||
|
s.extract_derivatives()
|
||||||
|
|
||||||
|
#update clips
|
||||||
|
for c in s.file.item.clips.all():
|
||||||
|
c.update_calculated_values()
|
||||||
|
c.save()
|
||||||
|
|
||||||
class Command(BaseCommand):
|
class Command(BaseCommand):
|
||||||
"""
|
"""
|
||||||
"""
|
"""
|
||||||
|
@ -49,20 +72,4 @@ class Command(BaseCommand):
|
||||||
s.save()
|
s.save()
|
||||||
print "update streams"
|
print "update streams"
|
||||||
for s in models.Stream.objects.filter(source=None):
|
for s in models.Stream.objects.filter(source=None):
|
||||||
if not glob("%s*"%s.timeline_prefix):
|
update_stream.delay(s.id)
|
||||||
s.make_timeline()
|
|
||||||
if not s.color:
|
|
||||||
s.cuts = tuple(extract.cuts(self.timeline_prefix))
|
|
||||||
s.color = tuple(extract.average_color(self.timeline_prefix))
|
|
||||||
s.save()
|
|
||||||
|
|
||||||
s.file.selected = True
|
|
||||||
s.file.save()
|
|
||||||
s.file.item.update_timeline()
|
|
||||||
#make sure all derivatives exist
|
|
||||||
s.extract_derivatives()
|
|
||||||
|
|
||||||
#update clips
|
|
||||||
for c in s.file.item.clips.all():
|
|
||||||
c.update_calculated_values()
|
|
||||||
c.save()
|
|
||||||
|
|
Loading…
Reference in a new issue