Merge pull request #1466 from pypeclub/feature/extract_burnin_with_color_setting

This commit is contained in:
Milan Kolar 2021-05-04 22:44:12 +02:00 committed by GitHub
commit b0a7209430
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 52 additions and 16 deletions

View file

@ -114,8 +114,30 @@ class ExtractBurnin(openpype.api.Extractor):
# Prepare burnin options
profile_options = copy.deepcopy(self.default_options)
for key, value in (self.options or {}).items():
if value is not None:
profile_options[key] = value
if value is None:
continue
if key == "bg_color" and len(value) == 4:
bg_red, bg_green, bg_blue, bg_alpha = value
bg_color_hex = "#{0:0>2X}{1:0>2X}{2:0>2X}".format(
bg_red, bg_green, bg_blue
)
bg_color_alpha = float(bg_alpha) / 255
profile_options["bg_opacity"] = bg_color_alpha
profile_options["bg_color"] = bg_color_hex
continue
elif key == "font_color" and len(value) == 4:
fg_red, fg_green, fg_blue, fg_alpha = value
fg_color_hex = "#{0:0>2X}{1:0>2X}{2:0>2X}".format(
fg_red, fg_green, fg_blue
)
fg_color_alpha = float(fg_alpha) / 255
profile_options["opacity"] = fg_color_alpha
profile_options["font_color"] = fg_color_hex
continue
profile_options[key] = value
# Prepare global burnin values from presets
profile_burnins = {}

View file

@ -73,8 +73,18 @@
"enabled": true,
"options": {
"font_size": 42,
"opacity": 1.0,
"bg_opacity": 0.5,
"font_color": [
255,
255,
255,
255
],
"bg_color": [
0,
0,
0,
127
],
"x_offset": 5,
"y_offset": 5,
"bg_padding": 5

View file

@ -301,20 +301,24 @@
"minimum": 0
},
{
"type": "number",
"key": "opacity",
"label": "Font opacity",
"decimal": 2,
"maximum": 1,
"minimum": 0
"type": "schema_template",
"name": "template_rgba_color",
"template_data": [
{
"label": "Font Color",
"name": "font_color"
}
]
},
{
"type": "number",
"key": "bg_opacity",
"label": "Background opacity",
"decimal": 2,
"maximum": 1,
"minimum": 0
"type": "schema_template",
"name": "template_rgba_color",
"template_data": [
{
"label": "Background Color",
"name": "bg_color"
}
]
},
{
"type": "number",