VLC 4.0.0-dev

Subpictures are pictures that should be displayed on top of the video, like subtitles and OSD. More...

Collaboration diagram for Video sub-pictures:

Files

file  vlc_subpicture.h
 Subpictures functions.
 

Data Structures

struct  subpicture_region_t
 Video subtitle region. More...
 
struct  vlc_spu_highlight_t
 
struct  subpicture_updater_t
 
struct  subpicture_t
 Video subtitle. More...
 

Macros

#define SUBPICTURE_ALIGN_LEFT   0x1
 
#define SUBPICTURE_ALIGN_RIGHT   0x2
 
#define SUBPICTURE_ALIGN_TOP   0x4
 
#define SUBPICTURE_ALIGN_BOTTOM   0x8
 
#define SUBPICTURE_ALIGN_MASK
 

Typedefs

typedef struct subpicture_region_private_t subpicture_region_private_t
 Video subtitle region spu core private. More...
 
typedef struct vlc_spu_highlight_t vlc_spu_highlight_t
 
typedef struct filter_t vlc_blender_t
 
typedef struct subpicture_private_t subpicture_private_t
 

Functions

subpicture_region_tsubpicture_region_New (const video_format_t *p_fmt)
 This function will create a new subpicture region. More...
 
void subpicture_region_Delete (subpicture_region_t *p_region)
 This function will destroy a subpicture region allocated by subpicture_region_New. More...
 
void subpicture_region_ChainDelete (subpicture_region_t *p_head)
 This function will destroy a list of subpicture regions allocated by subpicture_region_New. More...
 
subpicture_region_tsubpicture_region_Copy (subpicture_region_t *p_region)
 This function will copy a subpicture region to a new allocated one and transfer all the properties. More...
 
subpicture_tsubpicture_New (const subpicture_updater_t *)
 This function create a new empty subpicture. More...
 
void subpicture_Delete (subpicture_t *p_subpic)
 This function delete a subpicture created by subpicture_New. More...
 
subpicture_tsubpicture_NewFromPicture (vlc_object_t *, picture_t *, vlc_fourcc_t i_chroma)
 This function will create a subpicture having one region in the requested chroma showing the given picture. More...
 
void subpicture_Update (subpicture_t *, const video_format_t *src, const video_format_t *, vlc_tick_t)
 This function will update the content of a subpicture created with a non NULL subpicture_updater_t. More...
 
unsigned picture_BlendSubpicture (picture_t *, vlc_blender_t *, subpicture_t *)
 This function will blend a given subpicture onto a picture. More...
 

Detailed Description

Subpictures are pictures that should be displayed on top of the video, like subtitles and OSD.

Macro Definition Documentation

◆ SUBPICTURE_ALIGN_BOTTOM

#define SUBPICTURE_ALIGN_BOTTOM   0x8

◆ SUBPICTURE_ALIGN_LEFT

#define SUBPICTURE_ALIGN_LEFT   0x1

◆ SUBPICTURE_ALIGN_MASK

#define SUBPICTURE_ALIGN_MASK
Value:
SUBPICTURE_ALIGN_TOP |SUBPICTURE_ALIGN_BOTTOM )
#define SUBPICTURE_ALIGN_LEFT
Definition: vlc_subpicture.h:95
#define SUBPICTURE_ALIGN_RIGHT
Definition: vlc_subpicture.h:96
#define SUBPICTURE_ALIGN_BOTTOM
Definition: vlc_subpicture.h:98

◆ SUBPICTURE_ALIGN_RIGHT

#define SUBPICTURE_ALIGN_RIGHT   0x2

◆ SUBPICTURE_ALIGN_TOP

#define SUBPICTURE_ALIGN_TOP   0x4

Typedef Documentation

◆ subpicture_private_t

◆ subpicture_region_private_t

Video subtitle region spu core private.

◆ vlc_blender_t

typedef struct filter_t vlc_blender_t

◆ vlc_spu_highlight_t

Function Documentation

◆ picture_BlendSubpicture()

unsigned picture_BlendSubpicture ( picture_t dst,
vlc_blender_t blend,
subpicture_t src 
)

This function will blend a given subpicture onto a picture.

The subpicture and all its region must:

  • be absolute.
  • not be ephemere.
  • not have the fade flag.
  • contains only picture (no text rendering).
    Returns
    the number of region(s) successfully blent

References subpicture_t::b_absolute, subpicture_t::b_fade, filter_Blend(), filter_ConfigureBlend(), filter_t::fmt_in, filter_t::fmt_out, picture_t::format, subpicture_t::i_alpha, video_format_t::i_chroma, video_format_t::i_height, video_format_t::i_width, msg_Err, subpicture_region_t::p_next, subpicture_t::p_region, and es_format_t::video.

Referenced by ConvertRGB32AndBlend(), and PrerenderPicture().

◆ subpicture_Delete()

◆ subpicture_New()

◆ subpicture_NewFromPicture()

◆ subpicture_region_ChainDelete()

void subpicture_region_ChainDelete ( subpicture_region_t p_head)

This function will destroy a list of subpicture regions allocated by subpicture_region_New.

Provided for convenience.

References subpicture_region_t::p_next, and subpicture_region_Delete().

Referenced by subpicture_Delete(), and subpicture_Update().

◆ subpicture_region_Copy()

◆ subpicture_region_Delete()

void subpicture_region_Delete ( subpicture_region_t p_region)

◆ subpicture_region_New()

◆ subpicture_Update()