X-Git-Url: https://git.mdrn.pl/audio.git/blobdiff_plain/5420ae6bee0c35cfab499555054e350507c21fe1..5f3db867cdab89e934f4946c58568039b780defe:/src/youtube/tasks.py?ds=sidebyside diff --git a/src/youtube/tasks.py b/src/youtube/tasks.py index 32e41b7..7cf5eac 100644 --- a/src/youtube/tasks.py +++ b/src/youtube/tasks.py @@ -7,10 +7,10 @@ class YouTubeTask(AudioFormatTask): 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): + def set_tags(self, tags, filename): pass @classmethod @@ -19,4 +19,20 @@ class YouTubeTask(AudioFormatTask): 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