X-Git-Url: https://git.mdrn.pl/audio.git/blobdiff_plain/4c89a14f13fe5d7dd3a6d2488dd08067a652c10d..651c3fcf0e96681e5dfeb5afbbc4900a9342beb3:/src/youtube/models.py diff --git a/src/youtube/models.py b/src/youtube/models.py index ecc05e4..f0ecc6c 100644 --- a/src/youtube/models.py +++ b/src/youtube/models.py @@ -5,6 +5,7 @@ from django.db import models from django.utils.translation import gettext_lazy as _ from django.template import Template, Context from apiclient import youtube_call +from archive.settings import LICENSE, LICENSE_NAME from .utils import ( concat_audio, concat_videos, @@ -12,6 +13,7 @@ from .utils import ( get_duration, get_framerate, mux, + standardize_audio, standardize_video, video_from_image, ) @@ -42,7 +44,11 @@ class YouTube(models.Model): verbose_name_plural = _("YouTube configurations") def get_context(self, audiobook): - return Context(dict(audiobook=audiobook)) + return Context(dict( + audiobook=audiobook, + LICENSE=LICENSE, + LICENSE_NAME=LICENSE_NAME, + )) def get_description(self, audiobook): return Template(self.description_template).render(self.get_context(audiobook)) @@ -56,7 +62,8 @@ class YouTube(models.Model): title=self.get_title(audiobook), description=self.get_description(audiobook), categoryId=self.category, - defaultLanguage='pl' + defaultLanguage='pl', + defaultAudioLanguage='pl', ), status=dict( privacyStatus=self.privacy_status, @@ -64,7 +71,7 @@ class YouTube(models.Model): ) def publish(self, audiobook, path): - data = self.get_data() + data = self.get_data(audiobook) part = ",".join(data.keys()) with open(path, "rb") as f: @@ -83,7 +90,7 @@ class YouTube(models.Model): return response def update_data(self, audiobook): - data = self.get_data() + data = self.get_data(audiobook) data['id'] = audiobook.youtube_id part = ",".join(data.keys()) youtube_call( @@ -112,12 +119,19 @@ class YouTube(models.Model): def prepare_audio(self, input_path): files = [] + delete = [] if self.intro_flac: - files.append(self.intro_flac.path) + files.append(standardize_audio(self.intro_flac.path)) + delete.append(files[-1]) files.append(input_path) if self.outro_flac: - files.append(self.outro_flac.path) - return concat_audio(files) + files.append(standardize_audio(self.outro_flac.path)) + delete.append(files[-1]) + output = concat_audio(files) + for d in delete: + unlink(d) + return output + def prepare_video(self, duration): concat = []