libclosedcaption 1.0.3
ISDB-Tb/SBTVD (Brazilian DTV) closed caption extraction from MPEG-TS
Loading...
Searching...
No Matches
caption-superimpose.h File Reference

Superimpose captions. More...

#include "caption-common.h"
#include "caption-data.h"
Include dependency graph for caption-superimpose.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  CaptionSuperImpose_s
 

Typedefs

typedef struct CaptionSuperImpose_s CaptionSuperImpose_t
 

Functions

CaptionSuperImpose_t * caption_superimpose_new (const CaptionData_t *caption)
 
void caption_superimpose_free (CaptionSuperImpose_t *csi)
 

Detailed Description

Superimpose captions.

Author
Jorge Pereira jpere.nosp@m.iran.nosp@m.@gmai.nosp@m.l.co.nosp@m.m
Date
Thu Aug 12 13:49:21 BRT 2010

Superimpose are the messages overlaid on the video that are not part of the program caption (broadcaster notices, alerts). They use the same data_group format as the caption (ARIB STD-B24, Volume 1, Part 3, Chapter 9), but on their own PID (component_tag 0x38 to 0x3f).

Each text data unit (CAPTION_HANDLER_TYPE_STATEMENT_BODY) of the data group becomes one message, with the text converted to UTF-8 like caption_closed_run() does.

Note
While it runs, caption_superimpose_new() replaces the global hooks of caption-hooking.h and puts the previous ones back before returning.

Definition in file caption-superimpose.h.

Typedef Documentation

◆ CaptionSuperImpose_t

Superimpose message. See CaptionSuperImpose_s.

Definition at line 25 of file caption-superimpose.h.

Function Documentation

◆ caption_superimpose_new()

CaptionSuperImpose_t * caption_superimpose_new ( const CaptionData_t *  caption)

Creates the struct from a superimpose data_group.

Parameters
captiondata_group loaded by caption_data_load(), not empty.
Returns
The first message (the others are chained in next), or NULL if out of memory, if the data group is invalid or if it has no text. Free with caption_superimpose_free().

◆ caption_superimpose_free()

void caption_superimpose_free ( CaptionSuperImpose_t *  csi)

Frees the struct created by caption_superimpose_new(), including all the messages chained in next.

Parameters
csiThe struct. NULL is fine.