Main Page   Modules   Data Structures   Data Fields   Related Pages   Examples  

Teletext and Closed Caption page render functions


Functions

void vbi_draw_vt_page_region (vbi_page *pg, vbi_pixfmt fmt, void *canvas, int rowstride, int column, int row, int width, int height, int reveal, int flash_on)
vbi_inline void vbi_draw_vt_page (vbi_page *pg, vbi_pixfmt fmt, void *canvas, int reveal, int flash_on)
void vbi_draw_cc_page_region (vbi_page *pg, vbi_pixfmt fmt, void *canvas, int rowstride, int column, int row, int width, int height)
vbi_inline void vbi_draw_cc_page (vbi_page *pg, vbi_pixfmt fmt, void *canvas)
void vbi_get_max_rendered_size (int *w, int *h)
void vbi_get_vt_cell_size (int *w, int *h)
int vbi_print_page_region (vbi_page *pg, char *buf, int size, const char *format, vbi_bool table, vbi_bool ltr, int column, int row, int width, int height)
vbi_inline int vbi_print_page (vbi_page *pg, char *buf, int size, const char *format, vbi_bool table, vbi_bool ltr)
void vbi_set_brightness (vbi_decoder *vbi, int brightness)
void vbi_set_contrast (vbi_decoder *vbi, int contrast)

Detailed Description

These are functions to render Teletext and Closed Caption pages directly into memory, essentially a more direct interface to the functions of some important export modules.

Function Documentation

void vbi_draw_vt_page_region ( vbi_page * pg,
vbi_pixfmt fmt,
void * canvas,
int rowstride,
int column,
int row,
int width,
int height,
int reveal,
int flash_on )
 

Parameters:
pg   Source page.
fmt   Target format. For now only VBI_PIXFMT_RGBA32_LE (vbi_rgba) permitted.
canvas   Pointer to destination image (currently an array of vbi_rgba), this must be at least rowstride * height * 10 bytes large.
rowstride   canvas byte distance from line to line. If this is -1, pg->columns * 12 * sizeof(vbi_rgba) bytes will be assumed.
column   First source column, 0 ... pg->columns - 1.
row   First source row, 0 ... pg->rows - 1.
width   Number of columns to draw, 1 ... pg->columns.
height   Number of rows to draw, 1 ... pg->rows.
reveal   If FALSE, draw characters flagged 'concealed' (see vbi_char) as space (U+0020).
flash_on   If FALSE, draw characters flagged 'blink' (see vbi_char) as space (U+0020).

Draw a subsection of a Teletext vbi_page. In this mode one character occupies 12 x 10 pixels.

vbi_inline void vbi_draw_vt_page ( vbi_page * pg,
vbi_pixfmt fmt,
void * canvas,
int reveal,
int flash_on )
 

Parameters:
pg   Source page.
fmt   Target format. For now only VBI_PIXFMT_RGBA32_LE (vbi_rgba) permitted.
canvas   Pointer to destination image (currently an array of vbi_rgba). This must be at least pg->columns * pg->rows * 12 * 10 * pixels large, without padding between lines.
reveal   If FALSE, draw characters flagged 'concealed' (see vbi_char) as space (U+0020).
flash_on   If FALSE, draw characters flagged 'blink' (see vbi_char) as space (U+0020).

Draw a Teletext vbi_page. In this mode one character occupies 12 x 10 pixels.

void vbi_draw_cc_page_region ( vbi_page * pg,
vbi_pixfmt fmt,
void * canvas,
int rowstride,
int column,
int row,
int width,
int height )
 

Parameters:
pg   Source vbi_page, see vbi_fetch_cc_page().
fmt   Target format. For now only VBI_PIXFMT_RGBA32_LE (vbi_rgba) permitted.
canvas   Pointer to destination image (currently an array of vbi_rgba), this must be at least rowstride * height * 26 bytes large.
rowstride   canvas byte distance from line to line. If this is -1, pg->columns * 16 * sizeof(vbi_rgba) bytes will be assumed.
column   First source column, 0 ... pg->columns - 1.
row   First source row, 0 ... pg->rows - 1.
width   Number of columns to draw, 1 ... pg->columns.
height   Number of rows to draw, 1 ... pg->rows.

Draw a subsection of a Closed Caption vbi_page. In this mode one character occupies 16 x 26 pixels.

vbi_inline void vbi_draw_cc_page ( vbi_page * pg,
vbi_pixfmt fmt,
void * canvas )
 

Parameters:
pg   Source page.
fmt   Target format. For now only VBI_PIXFMT_RGBA32_LE (vbi_rgba) permitted.
canvas   Pointer to destination image (currently an array of vbi_rgba). This must be at least pg->columns * pg->rows * 16 * 26 * pixels large, without padding between lines.

Draw a Closed Caption vbi_page. In this mode one character occupies 16 x 26 pixels.

void vbi_get_max_rendered_size ( int * w,
int * h )
 

Parameters:
w  
h  
Deprecated:
Character cells are 12 x 10 for Teletext and 16 x 26 for Caption. Page size is in vbi_page.

void vbi_get_vt_cell_size ( int * w,
int * h )
 

Parameters:
w  
h  
Deprecated:
Character cells are 12 x 10 for Teletext and 16 x 26 for Caption.

int vbi_print_page_region ( vbi_page * pg,
char * buf,
int size,
const char * format,
vbi_bool table,
vbi_bool ltr,
int column,
int row,
int width,
int height )
 

Parameters:
pg   Source page.
buf   Memory location to hold the output.
size   Size of the buffer in bytes. The function fails when the data exceeds the buffer capacity.
format   Character set name for iconv() conversion, for example "ISO-8859-1".
table   Scan page in table mode, printing all characters within the source rectangle including runs of spaces at the start and end of rows. When FALSE, scan all characters from column, row to column + width - 1, row + height - 1 and all intermediate rows to their full pg->columns width. In this mode runs of spaces at the start and end of rows are collapsed into single spaces, blank lines are suppressed.
rtl   Currently ignored.
column   First source column, 0 ... pg->columns - 1.
row   First source row, 0 ... pg->rows - 1.
width   Number of columns to print, 1 ... pg->columns.
height   Number of rows to print, 1 ... pg->rows.

Print a subsection of a Teletext or Closed Caption vbi_page, rows separated by linefeeds "
", in the desired format. All character attributes and colors will be lost. Graphics characters, DRCS and all characters not representable in the target format will be replaced by spaces.

Returns:
Number of bytes written into buf, a value of zero when some error occurred. In this case buf may contain incomplete data. Note this function does not append a terminating null character.

vbi_inline int vbi_print_page ( vbi_page * pg,
char * buf,
int size,
const char * format,
vbi_bool table,
vbi_bool ltr )
 

Parameters:
pg   Source page.
buf   Memory location to hold the output.
size   Size of the buffer in bytes. The function fails when the data exceeds the buffer capacity.
format   Character set name for iconv() conversion, for example "ISO-8859-1".
table   When FALSE, runs of spaces at the start and end of rows will be collapsed into single spaces, blank lines are suppressed.
ltr   Currently ignored, please set to TRUE.

Print a Teletext or Closed Caption vbi_page, rows separated by linefeeds "
", in the desired format. All character attributes and colors will be lost. Graphics characters, DRCS and all characters not representable in the target format will be replaced by spaces.

Returns:
Number of bytes written into buf, a value of zero when some error occurred. In this case buf may contain incomplete data. Note this function does not append a terminating null character.

void vbi_set_brightness ( vbi_decoder * vbi,
int brightness )
 

Parameters:
vbi   Initialized vbi decoding context.
brightness   0 dark ... 255 bright, default 128.

Change brightness of text pages, this affects the color palette of pages fetched with vbi_fetch_vt_page() and vbi_fetch_cc_page().

void vbi_set_contrast ( vbi_decoder * vbi,
int contrast )
 

Parameters:
vbi   Initialized vbi decoding context.
contrast   -128 inverse ... 0 none ... 127 maximum, default 64.

Change contrast of text pages, this affects the color palette of pages fetched with vbi_fetch_vt_page() and vbi_fetch_cc_page().


Generated at Sun May 28 21:44:34 2006 for ZVBI Library by doxygen1.2.8.1 written by Dimitri van Heesch, © 1997-2001