video.add_subtitle(SubtitleStyle()) function supports many parameters for styling your captions or subtitles according to your brand and guidelines.
This document provides an API Reference to the parameters of SubtitleStyle function.
Subtitles Guide
Dive deep into subtitle styling with practical examples and visual outputs
Styling Categories
Typography and Style
Font families, sizes, spacing, bold, italic, underline, and strike-through options
Color and Effects
Primary colors, secondary colors, outline colors, and background styling
Positioning and Margins
Alignment configuration and margin settings for subtitle positioning
Text Transformation
Scaling, rotation, and skewing effects for subtitle text
Borders and Shadow
Border styles, outlines, and shadow depth effects
Import
ImportSubtitleStyle from VideoDB module
SubtitleStyle
This function supports following parameters for styling 👇font_name
The name of the font to use for the subtitles.
- Default:
"Arial" - Type:
str
font_size
The size of the subtitle text in points.
- Default:
18 - Type:
float
primary_colour
The color of the main subtitle text in &HBBGGRR or &HAABBGGRR format. See the Color Format section below for details.
- Default:
"&H00FFFFFF"(white) - Type:
str
secondary_colour
The color used for secondary effects like karaoke
- Default:
"&H000000FF"(red) - Type:
str
outline_colour
The color of the text outline.
- Default:
"&H00000000"(black) - Type:
str
back_colour
The background color of the subtitle box
- Default:
"&H00000000"(black) - Type:
str
bold
Indicates if the subtitle text is bold.
- Default:
False - Type:
bool
italic
Indicates if the subtitle text is italicized.
- Default:
False - Type:
bool
underline
Indicates if the subtitle text is underlined.
- Default:
False - Type:
bool
strike_out
Indicates if the subtitle text has a strikethrough.
- Default:
False - Type:
bool
scale_x
The horizontal scale of the subtitle text in percentage.
- Default:
1.0(100%, no scaling) - Type:
float
scale_y
The vertical scale of the subtitle text in percentage.
- Default:
1.0(100%, no scaling) - Type:
float
spacing
Space between characters in pixels.
- Default:
0 - Type:
float
angle
The rotation angle of the subtitle text in degrees.
- Default:
0(no rotation) - Type:
float
border_style
The style of the border around the text
- Default:
SubtitleBorderStyle.outline - Type:
intorSubtitleBorderStyle
SubtitleBorderStyle.no_borderor1SubtitleBorderStyle.opaque_boxor3SubtitleBorderStyle.outlineor4
outline
The width (px) of the outline around the text.
- Default:
1.0(px) - Type:
float
shadow
The depth of the shadow behind the text in pixels.
- Default:
0.0 - Type:
float
alignment
The position of the subtitle text on the screen, typically an enumerated type following the SSA/ASS standard.
- Default:
SubtitleAlignment.bottom_center - Type:
SubtitleAlignmentorint
SubtitleAlignment.bottom_leftor1SubtitleAlignment.bottom_centeror2SubtitleAlignment.bottom_rightor3SubtitleAlignment.middle_leftor8, 9SubtitleAlignment.middle_centeror10SubtitleAlignment.middle_rightor11SubtitleAlignment.top_leftor4,5SubtitleAlignment.top_centeror6SubtitleAlignment.top_rightor7
margin_l
The left margin in pixels.
- Default:
10 - Type:
int
margin_r
The right margin in pixels.
- Default:
10 - Type:
int
margin_v
The vertical margin (both top and bottom) in pixels.
- Default:
10 - Type:
int
Color Format
SubtitleStyle accepts colors in the &HBBGGRR hexadecimal format, where the sequence represents the blue, green, and red components.
&H prefix is required in this color format.
And when transparency is needed, an alpha value is placed at the beginning, yielding &HAABBGGRR.
Supported Fonts
Currently VideoDB supports following Fonts:- Sans
- Inter
- Roboto
- Open Sans
- Lato
- Montserrat
- Oswald
- Raleway
- Poppins
- Ubuntu
- Clear Sans
- Arial
- Times New Roman
- Courier New
- Georgia
- Verdana