Keep the best quality file if there's no original
This commit is contained in:
parent
7674b9c05b
commit
0a8c0c704d
@ -52,7 +52,7 @@ class CommonAudioProcessor(MediaProcessor):
|
|||||||
"""
|
"""
|
||||||
Provides a base for various audio processing steps
|
Provides a base for various audio processing steps
|
||||||
"""
|
"""
|
||||||
acceptable_files = ['original', 'webm_audio']
|
acceptable_files = ['original', 'best_quality', 'webm_audio']
|
||||||
|
|
||||||
def common_setup(self):
|
def common_setup(self):
|
||||||
"""
|
"""
|
||||||
@ -76,6 +76,17 @@ class CommonAudioProcessor(MediaProcessor):
|
|||||||
self.entry, self.process_filename,
|
self.entry, self.process_filename,
|
||||||
self.name_builder.fill('{basename}{ext}'))
|
self.name_builder.fill('{basename}{ext}'))
|
||||||
|
|
||||||
|
def _keep_best(self):
|
||||||
|
"""
|
||||||
|
If there is no original, keep the best file that we have
|
||||||
|
"""
|
||||||
|
if not self.entry.media_files.get('best_quality'):
|
||||||
|
# Save the best quality file if no original?
|
||||||
|
if not self.entry.media_files.get('original') and \
|
||||||
|
self.entry.media_files.get('webm_audio'):
|
||||||
|
self.entry.media_files['best_quality'] = self.entry \
|
||||||
|
.media_files['webm_audio']
|
||||||
|
|
||||||
def transcode(self, quality=None):
|
def transcode(self, quality=None):
|
||||||
if not quality:
|
if not quality:
|
||||||
quality = self.audio_config['quality']
|
quality = self.audio_config['quality']
|
||||||
@ -93,6 +104,8 @@ class CommonAudioProcessor(MediaProcessor):
|
|||||||
|
|
||||||
self.transcoder.discover(webm_audio_tmp)
|
self.transcoder.discover(webm_audio_tmp)
|
||||||
|
|
||||||
|
self._keep_best()
|
||||||
|
|
||||||
_log.debug('Saving medium...')
|
_log.debug('Saving medium...')
|
||||||
store_public(self.entry, 'webm_audio', webm_audio_tmp,
|
store_public(self.entry, 'webm_audio', webm_audio_tmp,
|
||||||
self.name_builder.fill('{basename}.medium.webm'))
|
self.name_builder.fill('{basename}.medium.webm'))
|
||||||
|
@ -253,7 +253,7 @@ class CommonPdfProcessor(MediaProcessor):
|
|||||||
self._set_pdf_filename()
|
self._set_pdf_filename()
|
||||||
|
|
||||||
def _set_pdf_filename(self):
|
def _set_pdf_filename(self):
|
||||||
if self.name_builder.ext == 'pdf':
|
if self.name_builder.ext == '.pdf':
|
||||||
self.pdf_filename = self.process_filename
|
self.pdf_filename = self.process_filename
|
||||||
elif self.entry.media_files.get('pdf'):
|
elif self.entry.media_files.get('pdf'):
|
||||||
self.pdf_filename = self.workbench.localized_file(
|
self.pdf_filename = self.workbench.localized_file(
|
||||||
|
@ -122,7 +122,7 @@ class CommonVideoProcessor(MediaProcessor):
|
|||||||
"""
|
"""
|
||||||
Provides a base for various video processing steps
|
Provides a base for various video processing steps
|
||||||
"""
|
"""
|
||||||
acceptable_files = ['original', 'webm_640']
|
acceptable_files = ['original', 'best_quality', 'webm_640']
|
||||||
|
|
||||||
def common_setup(self):
|
def common_setup(self):
|
||||||
self.video_config = mgg \
|
self.video_config = mgg \
|
||||||
@ -144,6 +144,18 @@ class CommonVideoProcessor(MediaProcessor):
|
|||||||
self.entry, self.process_filename,
|
self.entry, self.process_filename,
|
||||||
self.name_builder.fill('{basename}{ext}'))
|
self.name_builder.fill('{basename}{ext}'))
|
||||||
|
|
||||||
|
def _keep_best(self):
|
||||||
|
"""
|
||||||
|
If there is no original, keep the best file that we have
|
||||||
|
"""
|
||||||
|
if not self.entry.media_files.get('best_quality'):
|
||||||
|
# Save the best quality file if no original?
|
||||||
|
if not self.entry.media_files.get('original') and \
|
||||||
|
self.entry.media_files.get('webm_640'):
|
||||||
|
self.entry.media_files['best_quality'] = self.entry \
|
||||||
|
.media_files['webm_640']
|
||||||
|
|
||||||
|
|
||||||
def transcode(self, medium_size=None, vp8_quality=None, vp8_threads=None,
|
def transcode(self, medium_size=None, vp8_quality=None, vp8_threads=None,
|
||||||
vorbis_quality=None):
|
vorbis_quality=None):
|
||||||
progress_callback = ProgressCallback(self.entry)
|
progress_callback = ProgressCallback(self.entry)
|
||||||
@ -189,6 +201,8 @@ class CommonVideoProcessor(MediaProcessor):
|
|||||||
dst_dimensions = self.transcoder.dst_data.videowidth,\
|
dst_dimensions = self.transcoder.dst_data.videowidth,\
|
||||||
self.transcoder.dst_data.videoheight
|
self.transcoder.dst_data.videoheight
|
||||||
|
|
||||||
|
self._keep_best()
|
||||||
|
|
||||||
# Push transcoded video to public storage
|
# Push transcoded video to public storage
|
||||||
_log.debug('Saving medium...')
|
_log.debug('Saving medium...')
|
||||||
store_public(self.entry, 'webm_640', tmp_dst,
|
store_public(self.entry, 'webm_640', tmp_dst,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user