![]() |
DVBCore
22.11.0
Open Source DVB Engine
|
Header file - Function prototypes for DVB subtitles. More...
#include "techtype.h"Go to the source code of this file.
Classes | |
| struct | object |
| struct | clut |
| struct | region_object |
| struct | epoch_region |
| struct | region |
| struct | page_composition |
| struct | display_set |
Macros | |
| #define | NORMAL_CASE 0x00 |
| #define | ACQUISITION_POINT 0x01 |
| #define | MODE_CHANGE 0x02 |
| #define | RES_PAGE_STATE 0x03 |
Typedefs | |
| typedef struct object | S_OBJECT |
| typedef struct clut | S_CLUT |
| typedef struct region_object | S_REGION_OBJECT |
| typedef struct epoch_region | S_EPOCH_REGION |
| typedef struct region | S_REGION |
| typedef struct page_composition | S_PAGE_COMPOSITION |
| typedef struct display_set | S_DISPLAY_SET |
Functions | |
| BOOLEAN | STB_DSInitialiseDVBSubtitlesProcessing (void) |
| Initilises DVB subtitles, allocates a temporary buffer for use as a scratchpad and zero's the displayset structure and assigns the pages. More... | |
| S_CLUT * | STB_DSGetClut (S_CLUT *clut_list, U16BIT clut_id) |
| Finds or malloc's a new CLUT and assigns the family pointers to the default data. version_id is set to 0xff where the valid values are in the range 0 .. 0xf[4bits]. More... | |
| BOOLEAN | STB_DSSegmentDDS (U8BIT *data, U16BIT pes_len, U16BIT processed_bytes) |
| Processes the Display Definition segment in accordance with ETSI document ETS 300 743. More... | |
| BOOLEAN | STB_DSSegmentPCS (U8BIT *data, U16BIT pes_len, U16BIT processed_bytes, BOOLEAN force_acquisition) |
| Processes the Page Composition segment in accordance with ETSI document ETS 300 743. More... | |
| BOOLEAN | STB_DSSegmentRCS (U8BIT *data, U16BIT pes_len, U16BIT processed_bytes) |
| Processes the Region Composition segment in accordance with ETSI document ETS 300 743. More... | |
| BOOLEAN | STB_DSSegmentCDS (U8BIT *data, U16BIT pes_len, U16BIT processed_bytes) |
| Processes the CLUT Definition segment in accordance with ETSI document ETS 300 743. More... | |
| BOOLEAN | STB_DSSegmentODS (U8BIT *data, U16BIT pes_len, U16BIT processed_bytes) |
| Processes the Object Data segment in accordance with ETSI document ETS 300 743. More... | |
| BOOLEAN | STB_DSSegmentEDS (U8BIT *data, U16BIT pes_len, U16BIT processed_bytes) |
| DTG - Digital Terrestrial Television Requirements for Interoperability Subtitling: 28 August 1998: Version: 3.0 Clause 5.7.1 End of data segment, receit of this means the page is complete. More... | |
| BOOLEAN | STB_DSGetPesPts (U8BIT *data, U8BIT *pts) |
| Extracts the PTS from the PES packet header. More... | |
| BOOLEAN | STB_DSSetDisplaySetPts (U8BIT path, U8BIT *pts) |
| Copies the passed PTS into the display set structure. More... | |
| S_DISPLAY_SET * | STB_DSGetDetails (void) |
| Gets a pointer to the display set structure. More... | |
| void | STB_DSClearDisplaySetStruct (void) |
| Clears all information from the display set structure. | |
| void | STB_DSClearCompositionPageDetails (void) |
| Clears all information from the display set composition page. | |
| void | STB_DSCheckDisplaySetTimeout (S_DISPLAY_SET *subtitle_display_set, BOOLEAN timeout_override) |
| It checks the timeout of the current display set, and removes if/when necessary. More... | |
| void | STB_DSDisplay (U8BIT path, S_DISPLAY_SET *subtitle_display_set) |
| The subtitle display function. Provides timing of display and clean up when necessary. More... | |
| void | STB_DSRegisterCharRenderFunction (void(*DSCreateBitmap)(U8BIT *bitmap, U16BIT width, U16BIT height, U8BIT *char_array, U8BIT *tycrcb_palette, U8BIT fgnd_col, U8BIT bkgnd_col)) |
| Registers a STBUI function to use whatever font tool is present [if any] for the creation of a bitmap of characters. More... | |
| void | STB_DSShow (void) |
| Allows subtitles to display what it has decoded. | |
| void | STB_DSHide (void) |
| Prevents subtitles to display what it has decoded. | |
| void | STB_DSResetPhysicalDisplayRegions (void) |
| Deletes all regions and clears serice_aquired flag. | |
| void | STB_DSResetPhysicalCompositionRegions (void) |
| Deletes all regions and clears serice_aquired flag. | |
| void | STB_DSTerminateDisplayCycle (void) |
| Sets flag to exit display wait while loop. | |
| void | STB_DSCreateCompositionRegion (S_EPOCH_REGION *region, BOOLEAN page_reset) |
| By end of call ensures that the specified region has a suitable physical region waiting in the physical composition list. More... | |
| void | STB_DSRenderBitmapToRegion (S_EPOCH_REGION *region_list, S_OBJECT *object, U8BIT *scan_line, U16BIT y, U16BIT w, U16BIT h) |
| For the passed region list [PCS specified] get region handle, load the region with the correct CLUT, move regions if needed, and for each region render objects into. More... | |
| void | STB_DSFillRegion (U16BIT region_id, U8BIT fillcode) |
| Flood fills the identified region, with the specified colour index. More... | |
| U32BIT | STB_DSNumPixelOperations (S_DISPLAY_SET *subtitle_display_set) |
| Calculates the number of individual pixels in volved in the next display set. More... | |
| void | STB_DSFillEmptyRegions (S_EPOCH_REGION *epoch_region_list, S_REGION *region_list) |
| void | STB_SUBInitialise (void) |
| Initialises subtitling control. | |
| void * | STB_DSGetQueue (void) |
| BOOLEAN | STB_DSGetNextPesPts (U8BIT *next_pts) |
| Get the PTS of the next PES packet, does not process next PES, but places on the next PES pointer. More... | |
Header file - Function prototypes for DVB subtitles.
| void STB_DSCheckDisplaySetTimeout | ( | S_DISPLAY_SET * | subtitle_display_set, |
| BOOLEAN | timeout_override | ||
| ) |
It checks the timeout of the current display set, and removes if/when necessary.
| subtitle_display_set | - subtitle display structure |
| void STB_DSCreateCompositionRegion | ( | S_EPOCH_REGION * | region, |
| BOOLEAN | page_reset | ||
| ) |
By end of call ensures that the specified region has a suitable physical region waiting in the physical composition list.
| region | - the epoch region definition. page_reset - true => disregard old content (mode_change / needed acquisition) |
| void STB_DSDisplay | ( | U8BIT | path, |
| S_DISPLAY_SET * | subtitle_display_set | ||
| ) |
The subtitle display function. Provides timing of display and clean up when necessary.
| subtitle_display_set | - the complete subtitle display buffers, vis & composition |
| void STB_DSFillRegion | ( | U16BIT | region_id, |
| U8BIT | fillcode | ||
| ) |
Flood fills the identified region, with the specified colour index.
| region_id | - the regions id. |
| fillcode | - the colour index in the CLUT to fill region with. |
Finds or malloc's a new CLUT and assigns the family pointers to the default data. version_id is set to 0xff where the valid values are in the range 0 .. 0xf[4bits].
| clut_list | - pointer to a S_CLUT structure |
| clut_id | - the index of the CLUT to be modified |
| S_DISPLAY_SET* STB_DSGetDetails | ( | void | ) |
Gets a pointer to the display set structure.
| BOOLEAN STB_DSGetNextPesPts | ( | U8BIT * | next_pts | ) |
Get the PTS of the next PES packet, does not process next PES, but places on the next PES pointer.
| BOOLEAN STB_DSGetPesPts | ( | U8BIT * | data, |
| U8BIT * | pts | ||
| ) |
Extracts the PTS from the PES packet header.
| data | - pointer to the 1st byte of the PTS/DTS bytes |
| pts | - 5 byte array for the PTS info. |
| BOOLEAN STB_DSInitialiseDVBSubtitlesProcessing | ( | void | ) |
Initilises DVB subtitles, allocates a temporary buffer for use as a scratchpad and zero's the displayset structure and assigns the pages.
| U32BIT STB_DSNumPixelOperations | ( | S_DISPLAY_SET * | subtitle_display_set | ) |
Calculates the number of individual pixels in volved in the next display set.
| The | complete display set structure. |
| void STB_DSRegisterCharRenderFunction | ( | void(*)(U8BIT *bitmap, U16BIT width, U16BIT height, U8BIT *char_array, U8BIT *tycrcb_palette, U8BIT fgnd_col, U8BIT bkgnd_col) | DSCreateBitmap | ) |
Registers a STBUI function to use whatever font tool is present [if any] for the creation of a bitmap of characters.
| DSCreateBitmap | - function pointer to the callback function. |
| void STB_DSRenderBitmapToRegion | ( | S_EPOCH_REGION * | region_list, |
| S_OBJECT * | object, | ||
| U8BIT * | bitmap, | ||
| U16BIT | y, | ||
| U16BIT | w, | ||
| U16BIT | h | ||
| ) |
For the passed region list [PCS specified] get region handle, load the region with the correct CLUT, move regions if needed, and for each region render objects into.
| region_list | - pass region list to search and region bitmap into. |
| object | - the new object needing rendering. |
| bitmap | - the bitmap to render. |
| y | - the y coordinate in region. |
| w | - width of bitmap. |
| h | - height of bitmap. |
| BOOLEAN STB_DSSegmentCDS | ( | U8BIT * | data, |
| U16BIT | pes_len, | ||
| U16BIT | processed_bytes | ||
| ) |
Processes the CLUT Definition segment in accordance with ETSI document ETS 300 743.
| data | - pointer to the beginning of the segment, the sync_byte. |
| BOOLEAN STB_DSSegmentDDS | ( | U8BIT * | data, |
| U16BIT | pes_len, | ||
| U16BIT | processed_bytes | ||
| ) |
Processes the Display Definition segment in accordance with ETSI document ETS 300 743.
| data | - pointer to the beginning of the segment, the sync_byte. |
| BOOLEAN STB_DSSegmentEDS | ( | U8BIT * | data, |
| U16BIT | pes_len, | ||
| U16BIT | processed_bytes | ||
| ) |
DTG - Digital Terrestrial Television Requirements for Interoperability Subtitling: 28 August 1998: Version: 3.0 Clause 5.7.1 End of data segment, receit of this means the page is complete.
| data | - pointer to the beginning of the segment, the sync_byte. |
| BOOLEAN STB_DSSegmentODS | ( | U8BIT * | data, |
| U16BIT | pes_len, | ||
| U16BIT | processed_bytes | ||
| ) |
Processes the Object Data segment in accordance with ETSI document ETS 300 743.
| data | - pointer to the beginning of the segment, the sync_byte. |
| BOOLEAN STB_DSSegmentPCS | ( | U8BIT * | data, |
| U16BIT | pes_len, | ||
| U16BIT | processed_bytes, | ||
| BOOLEAN | external_force_acquisition | ||
| ) |
Processes the Page Composition segment in accordance with ETSI document ETS 300 743.
| data | - pointer to the beginning of the segment, the sync_byte. force_acquisition - signal to treat next acquisition point as a mode change, unless a mode change occurs first |
| BOOLEAN STB_DSSegmentRCS | ( | U8BIT * | data, |
| U16BIT | pes_len, | ||
| U16BIT | processed_bytes | ||
| ) |
Processes the Region Composition segment in accordance with ETSI document ETS 300 743.
| data | - pointer to the beginning of the segment, the sync_byte. |
| BOOLEAN STB_DSSetDisplaySetPts | ( | U8BIT | path, |
| U8BIT * | pts | ||
| ) |
Copies the passed PTS into the display set structure.
| pts | - 5 byte array containing the PTS. |
1.8.11