+import os
from archive.tasks import AudioFormatTask
from .models import YouTube
ext = 'mkv'
prefix = 'youtube'
- def encode(self, in_path, out_path):
- YouTube.objects.first().prepare_file(in_path, out_path)
+ def encode(self, in_paths, out_path):
+ self.audiobook.project.youtube.prepare_file(in_paths, out_path)
def set_tags(self, audiobook, filename):
pass
@classmethod
def save(cls, audiobook, file_name):
"""We do not save the video files."""
- pass
+ os.unlink(file_name)
def put(self, user, audiobook, filename):
- YouTube.objects.first().publish(audiobook, filename)
+ audiobook.project.youtube.publish(audiobook, filename)
+
+ def get_source_file_paths(self, audiobook):
+ if not audiobook.youtube_volume:
+ paths = [audiobook.source_file.path]
+ else:
+ paths = [
+ a.source_file.path
+ for a in type(audiobook)
+ .objects.filter(
+ slug=audiobook.slug, youtube_volume=audiobook.youtube_volume
+ )
+ .order_by("index")
+ ]
+ if audiobook.project.info_flac:
+ paths.append(audiobook.project.info_flac.path)
+ return paths