Move logic to make it clearer that we always process the same input files of the source representation but used for multiple output profiles

This commit is contained in:
Roy Nieterau 2024-11-06 09:12:19 +01:00
parent d072da86d1
commit 363824d589

View file

@ -100,7 +100,19 @@ class ExtractOIIOTranscode(publish.Extractor):
self.log.warning("Config file doesn't exist, skipping")
continue
# Get representation files to convert
if isinstance(repre["files"], list):
repre_files_to_convert = copy.deepcopy(repre["files"])
else:
repre_files_to_convert = [repre["files"]]
repre_files_to_convert = self._translate_to_sequence(
repre_files_to_convert)
# Process each output definition
for output_def in profile_output_defs:
# Local copy to avoid accidental mutable changes
files_to_convert = list(repre_files_to_convert)
output_name = output_def["name"]
new_repre = copy.deepcopy(repre)
@ -108,11 +120,6 @@ class ExtractOIIOTranscode(publish.Extractor):
new_staging_dir = get_transcode_temp_directory()
new_repre["stagingDir"] = new_staging_dir
if isinstance(new_repre["files"], list):
files_to_convert = copy.deepcopy(new_repre["files"])
else:
files_to_convert = [new_repre["files"]]
output_extension = output_def["extension"]
output_extension = output_extension.replace('.', '')
self._rename_in_representation(new_repre,
@ -121,7 +128,6 @@ class ExtractOIIOTranscode(publish.Extractor):
output_extension)
transcoding_type = output_def["transcoding_type"]
target_colorspace = view = display = None
# NOTE: we use colorspace_data as the fallback values for
# the target colorspace.