|
DVBCore
1.0
Open source DVB engine
|
Header file - Function prototypes for Demux control. More...

Go to the source code of this file.
Defines | |
| #define | MAX_HW_SECT_FILT_LEN 8 |
| #define | STB_DMX_PID_FILTER_INVALID 0xffff |
| #define | STB_DMX_SECT_FILTER_INVALID 0xffff |
| #define | STB_TPID_CBUFF_PRIORITY 10 |
Typedefs | |
| typedef void(* | FILTER_CALLBACK )(U8BIT path, U16BIT bytes, U16BIT pfilt_id) |
Enumerations | |
| enum | E_STB_DMX_DESC_TRACK { DESC_TRACK_AUDIO, DESC_TRACK_VIDEO, DESC_TRACK_TEXT, DESC_NUM_TRACKS } |
| enum | E_STB_DMX_DESC_KEY_PARITY { KEY_PARITY_EVEN, KEY_PARITY_ODD } |
| enum | E_STB_DMX_DESC_TYPE { DESC_TYPE_DVB, DESC_TYPE_AES, DESC_TYPE_AES_SCTE_52, DESC_TYPE_DES, DESC_TYPE_TDES } |
| enum | E_STB_DMX_KEY_USAGE { KEY_USAGE_PES, KEY_USAGE_TRANSPORT, KEY_USAGE_ALL } |
| enum | E_STB_DMX_DEMUX_SOURCE { DMX_TUNER, DMX_1394, DMX_MEMORY } |
| enum | E_STB_DMX_CAPS { DMX_CAPS_LIVE = 0x0001, DMX_CAPS_PIP = 0x0002, DMX_CAPS_RECORDING = 0x0004, DMX_CAPS_PLAYBACK = 0x0008 } |
Functions | |
| void | STB_DMXInitialise (U8BIT paths, BOOLEAN inc_pes_collection) |
| Initialises the demux / programmable transport interface. | |
| U16BIT | STB_DMXGetCapabilities (U8BIT path) |
| Returns the capability flags of the given demux. | |
| U8BIT | STB_DMXGetMaxSectionFilters (void) |
| Returns the maximum number of section filters available on this hw. | |
| void | STB_DMXSetDemuxSource (U8BIT path, E_STB_DMX_DEMUX_SOURCE source, U8BIT param) |
| Configures the source of the demux. | |
| void | STB_DMXGetDemuxSource (U8BIT path, E_STB_DMX_DEMUX_SOURCE *source, U8BIT *param) |
| Gets the current source of a given demux. | |
| void | STB_DMXReadTextPES (U8BIT path, U8BIT **buffer, U32BIT *num_bytes) |
| Reads Teletext PES data from the demux. | |
| void | STB_DMXChangeDecodePIDs (U8BIT path, U16BIT pcr_pid, U16BIT video_pid, U16BIT audio_pid, U16BIT text_pid, U16BIT data_pid, U16BIT ad_pid) |
| Changes the packet IDs for the PCR Video, Audio, Text and Data. | |
| void | STB_DMXChangeTextPID (U8BIT path, U16BIT text_pid) |
| Changes just the teletext PID. | |
| U16BIT | STB_DMXGrabPIDFilter (U8BIT path, U16BIT pid, FILTER_CALLBACK func) |
| Get a New PID Filter & Setup Associated Buffer and Callback Function Address. | |
| BOOLEAN | STB_DMXCopyPIDFilterSect (U8BIT path, U8BIT *buffer, U16BIT size, U16BIT pfilt_id) |
| Copies a filtered section to caller's buffer. | |
| void | STB_DMXSkipPIDFilterSect (U8BIT path, U16BIT pfilt_id) |
| Skips (discards) a section in the PID filter buffer. | |
| U16BIT | STB_DMXGrabSectFilter (U8BIT path, U16BIT pfilt_id) |
| Allocated a new section filter on the specified PID filter. | |
| void | STB_DMXSetupSectFilter (U8BIT path, U16BIT sfilt_id, U8BIT *match_ptr, U8BIT *mask_ptr, U8BIT not_equal_byte_index, BOOLEAN crc) |
| Configures a match and mask for a specified section filter. | |
| void | STB_DMXStartPIDFilter (U8BIT path, U16BIT pfilt_id) |
| Start Specified PID Filter Collecting Data. | |
| void | STB_DMXStopPIDFilter (U8BIT path, U16BIT pfilt_id) |
| Stop Specified PID Filter Collecting Data. | |
| void | STB_DMXReleasePIDFilter (U8BIT path, U16BIT pfilt_id) |
| Releases a previously allocated PID filter. | |
| void | STB_DMXReleaseSectFilter (U8BIT path, U16BIT sfilt_id) |
| Releases a previously allocated section filter. | |
| BOOLEAN | STB_DMXGetDescramblerKey (U8BIT path, E_STB_DMX_DESC_TRACK track) |
| Acquires a descrambler for the specified track on this path. | |
| BOOLEAN | STB_DMXFreeDescramblerKey (U8BIT path, E_STB_DMX_DESC_TRACK track) |
| Frees the descrambler for the specified track on this path. | |
| BOOLEAN | STB_DMXSetDescramblerKeyData (U8BIT path, E_STB_DMX_DESC_TRACK track, E_STB_DMX_DESC_KEY_PARITY parity, U8BIT *data) |
| Set the descrambler key data for the specified track on this path. | |
| BOOLEAN | STB_DMXGetKeyUsage (U8BIT path, E_STB_DMX_DESC_TRACK track, E_STB_DMX_KEY_USAGE *key_usage) |
| Get the descrambler key usage for the specified track on this path as set by STB_DMXSetKeyUsage. | |
| BOOLEAN | STB_DMXSetKeyUsage (U8BIT path, E_STB_DMX_DESC_TRACK track, E_STB_DMX_KEY_USAGE key_usage) |
| Set the descrambler key usage for the specified track on this path. | |
| BOOLEAN | STB_DMXGetDescramblerType (U8BIT path, E_STB_DMX_DESC_TRACK track, E_STB_DMX_DESC_TYPE *type) |
| Get the descrambler type for the specified track on this path, as set by STB_DMXSetDescramblerType. | |
| BOOLEAN | STB_DMXSetDescramblerType (U8BIT path, E_STB_DMX_DESC_TRACK track, E_STB_DMX_DESC_TYPE type) |
| Set the descrambler type for the specified track on this path. | |
Header file - Function prototypes for Demux control.
| void STB_DMXChangeDecodePIDs | ( | U8BIT | path, |
| U16BIT | pcr_pid, | ||
| U16BIT | video_pid, | ||
| U16BIT | audio_pid, | ||
| U16BIT | text_pid, | ||
| U16BIT | data_pid, | ||
| U16BIT | ad_pid | ||
| ) |
Changes the packet IDs for the PCR Video, Audio, Text and Data.
| path | The demux path to be configured |
| pcr_pid | The PID to use for the Program Clock Reference |
| video_pid | The PID to use for the Video PES |
| audio_pid | The PID to use for the Audio PES |
| text_pid | The PID to use for the Teletext data |
| data_pid | The PID to use for the data |
| void STB_DMXChangeTextPID | ( | U8BIT | path, |
| U16BIT | text_pid | ||
| ) |
Changes just the teletext PID.
| path | The demux path to configure |
| text_pid | The PID to use for the teletext data |
| BOOLEAN STB_DMXCopyPIDFilterSect | ( | U8BIT | path, |
| U8BIT * | buffer, | ||
| U16BIT | size, | ||
| U16BIT | pfilt_id | ||
| ) |
Copies a filtered section to caller's buffer.
| path | the demux path to use |
| buffer | the caller's buffer |
| size | the size of the caller's buffer |
| pfilt_id | the handle of the PID filter to read from |
| BOOLEAN STB_DMXFreeDescramblerKey | ( | U8BIT | path, |
| E_STB_DMX_DESC_TRACK | track | ||
| ) |
Frees the descrambler for the specified track on this path.
| path | the demux path for which the descrambler is freed |
| track | enum representing audio, video or subtitles PES |
| U16BIT STB_DMXGetCapabilities | ( | U8BIT | path | ) |
Returns the capability flags of the given demux.
| path | - demux |
| void STB_DMXGetDemuxSource | ( | U8BIT | path, |
| E_STB_DMX_DEMUX_SOURCE * | source, | ||
| U8BIT * | param | ||
| ) |
Gets the current source of a given demux.
| path | the demux path to query |
| source | the source of the demux |
| param | the source specific parameter (e.g. tuner number) |
| BOOLEAN STB_DMXGetDescramblerKey | ( | U8BIT | path, |
| E_STB_DMX_DESC_TRACK | track | ||
| ) |
Acquires a descrambler for the specified track on this path.
| path | the demux path for which the descrambler is acquired |
| track | enum representing audio, video or subtitles PES |
| BOOLEAN STB_DMXGetDescramblerType | ( | U8BIT | path, |
| E_STB_DMX_DESC_TRACK | track, | ||
| E_STB_DMX_DESC_TYPE * | type | ||
| ) |
Get the descrambler type for the specified track on this path, as set by STB_DMXSetDescramblerType.
| path | the demux path that the descrambler type refers to |
| type | descrambler type (DES, AES, etc...) |
| BOOLEAN STB_DMXGetKeyUsage | ( | U8BIT | path, |
| E_STB_DMX_DESC_TRACK | track, | ||
| E_STB_DMX_KEY_USAGE * | key_usage | ||
| ) |
Get the descrambler key usage for the specified track on this path as set by STB_DMXSetKeyUsage.
| path | the demux path that the descrambler key usage refers to |
| track | enum representing audio, video or subtitles PES |
| key_usage | whether the descrambler has been set to operate at PES level, transport level or all. |
| U8BIT STB_DMXGetMaxSectionFilters | ( | void | ) |
Returns the maximum number of section filters available on this hw.
| U16BIT STB_DMXGrabPIDFilter | ( | U8BIT | path, |
| U16BIT | pid, | ||
| FILTER_CALLBACK | func | ||
| ) |
Get a New PID Filter & Setup Associated Buffer and Callback Function Address.
| path | Required Decode Path Number. |
| pid | Required PID to Demux. |
| func_ptr | User's Interrupt Procedure Function Address. |
| U16BIT STB_DMXGrabSectFilter | ( | U8BIT | path, |
| U16BIT | pfilt_id | ||
| ) |
Allocated a new section filter on the specified PID filter.
| path | the demux path to use |
| pfilt_id | the PID filter to assign the section filter to |
| void STB_DMXInitialise | ( | U8BIT | paths, |
| BOOLEAN | inc_pes_collection | ||
| ) |
Initialises the demux / programmable transport interface.
| paths | Number of demux paths to be initialised |
| inc_pes_collection | Not used |
| void STB_DMXReadTextPES | ( | U8BIT | path, |
| U8BIT ** | buffer, | ||
| U32BIT * | num_bytes | ||
| ) |
Reads Teletext PES data from the demux.
| path | the demux path to read |
| buffer | pointer to PES data |
| num_bytes | the number of bytes of data |
| void STB_DMXReleasePIDFilter | ( | U8BIT | path, |
| U16BIT | pfilt_id | ||
| ) |
Releases a previously allocated PID filter.
| path | the demux path of the filter |
| pfilt_id | the handle of the filter |
| void STB_DMXReleaseSectFilter | ( | U8BIT | path, |
| U16BIT | sfilt_id | ||
| ) |
Releases a previously allocated section filter.
| path | the demux path of the filter |
| sfilt_id | the handle of the section filter |
| void STB_DMXSetDemuxSource | ( | U8BIT | path, |
| E_STB_DMX_DEMUX_SOURCE | source, | ||
| U8BIT | param | ||
| ) |
Configures the source of the demux.
| path | the demux path to configure |
| source | the source to use |
| param | source specific parameters (e.g. tuner number) |
| BOOLEAN STB_DMXSetDescramblerKeyData | ( | U8BIT | path, |
| E_STB_DMX_DESC_TRACK | track, | ||
| E_STB_DMX_DESC_KEY_PARITY | parity, | ||
| U8BIT * | data | ||
| ) |
Set the descrambler key data for the specified track on this path.
| path | the demux path for which the descrambler key data is set |
| track | enum representing audio, video or subtitles PES |
| parity | even or odd |
| data | pointer to the key data, its length depends on the descrambler type (see STB_DMXSetDescramblerType) |
| BOOLEAN STB_DMXSetDescramblerType | ( | U8BIT | path, |
| E_STB_DMX_DESC_TRACK | track, | ||
| E_STB_DMX_DESC_TYPE | type | ||
| ) |
Set the descrambler type for the specified track on this path.
| path | the demux path that the descrambler type refers to |
| type | descrambler type (DES, AES, etc...) |
| BOOLEAN STB_DMXSetKeyUsage | ( | U8BIT | path, |
| E_STB_DMX_DESC_TRACK | track, | ||
| E_STB_DMX_KEY_USAGE | key_usage | ||
| ) |
Set the descrambler key usage for the specified track on this path.
| path | the demux path that the descrambler key usage refers to |
| track | enum representing audio, video or subtitles PES |
| key_usage | whether the descrambler operates at PES level, transport level or all. |
| void STB_DMXSetupSectFilter | ( | U8BIT | path, |
| U16BIT | sfilt_id, | ||
| U8BIT * | match_ptr, | ||
| U8BIT * | mask_ptr, | ||
| U8BIT | not_equal_byte_index, | ||
| BOOLEAN | crc | ||
| ) |
Configures a match and mask for a specified section filter.
| path | the demux path of the section filter |
| sfilt_id | the handle of the section filter |
| match_ptr | pointer to the match bytes |
| mask_ptr | pointer to the mask bytes |
| not_equal_byte_index | the byte position for a not equal compare |
| crc | TRUE to use CRC checking FALSE to ignore |
| void STB_DMXSkipPIDFilterSect | ( | U8BIT | path, |
| U16BIT | pfilt_id | ||
| ) |
Skips (discards) a section in the PID filter buffer.
| path | the demux path of the filter |
| pfilt_id | the PID filter handle |
| void STB_DMXStartPIDFilter | ( | U8BIT | path, |
| U16BIT | pfilt_id | ||
| ) |
Start Specified PID Filter Collecting Data.
| path | Required Decode Path Number. |
| pfilter_id | Required PID Filter Identifier. |
| void STB_DMXStopPIDFilter | ( | U8BIT | path, |
| U16BIT | pfilt_id | ||
| ) |
Stop Specified PID Filter Collecting Data.
| path | Required Decode Path Number. |
| pfilter_id | Required PID Filter Identifier. |