DSM-CC SI support.
More...
#include <string.h>
#include "stb_os.h"
#include "stb_filter.h"
#include "dsm_control.h"
#include "dm_debug.h"
#include "dsm_si.h"
Data Structures |
struct | s_pmtrequest |
struct | s_DsiInstance |
Defines |
#define | PAT_PID 0 |
#define | PAT_TID 0 |
#define | PMT_TID 2 |
#define | PAT_TIMEOUT 700 |
#define | PMT_TIMEOUT 1000 |
Typedefs |
typedef struct s_pmtrequest | S_PmtRequest |
typedef struct s_DsiInstance | S_DsiInstance |
Functions |
S_PmtRequest * | FindPmtRqst (H_DsiInstance dsi, U16BIT serviceId) |
H_DsiInstance | DSI_CreateInstance (F_FILTER_CALLBACK cbfunc, S_DsmccConfig *config) |
| Create instance of DSI.
|
void | DSI_DestroyInstance (H_DsiInstance dsi) |
| Destroy instance created by SIQ_CreateInstance.
|
BOOLEAN | DSI_Start (H_DsiInstance dsi, DMXREF dmxref) |
| Start getting SI data from Demux.
|
void | DSI_Stop (H_DsiInstance dsi) |
| Stop getting SI data from Demux.
|
BOOLEAN | DSI_RequestPmt (H_DsiInstance dsi, U16BIT serviceId, U16BIT pmtpid) |
| Request PMT data to be supplied to SIQ for this service. It supplies PMT soon after the call to this function, and then, whenever the PMT version changes. This state continues until DSI_CancelPmt is called.
|
void | DSI_CancelPmt (H_DsiInstance dsi, U16BIT serviceId) |
| Cancel request for PMT data made by DSI_RequestPmt()
|
U32BIT | DSI_CheckRequests (H_DsiInstance dsi, U32BIT now) |
| Check outstanding PMT (and PAT) requests to see whether any need to be refreshed.
|
BOOLEAN | DSI_RequireTable (H_DsiInstance dsi, U8BIT *hdr, U16BIT *pSid, U8BIT *pVer) |
| Check whether SI table section data is required.
|
Detailed Description
DSM-CC SI support.
- Date:
- 24 April 2014
- Author:
- Adam Sturtridge
Function Documentation
Cancel request for PMT data made by DSI_RequestPmt()
- Parameters:
-
dmxref | Demux handle used by DVB stack |
serviceId | Service no longer requiring PMT updates. |
- Returns:
- void
Check outstanding PMT (and PAT) requests to see whether any need to be refreshed.
- Parameters:
-
- Returns:
- U32BIT time when need to call this function again
Create instance of DSI.
- Parameters:
-
cbfunc | Function to process SI section data |
config | Configuration of DSM-CC |
- Returns:
- DSI Instance handle
Destroy instance created by SIQ_CreateInstance.
- Parameters:
-
H_DsiInstance | dsi DSI instance handle. |
- Returns:
Request PMT data to be supplied to SIQ for this service. It supplies PMT soon after the call to this function, and then, whenever the PMT version changes. This state continues until DSI_CancelPmt is called.
- Parameters:
-
dmxref | Demux handle used by DVB stack |
serviceId | Service that SIQ requires PMT updates. |
pmtpid | PID for PMT of the service |
- Returns:
- zero is failure, non-zero is success
Check whether SI table section data is required.
- Parameters:
-
dsi | DSI instance handle |
data | pointer to section data (starting at table Id byte |
pXid | pointer to return table extension |
pVer | pointer to return table version |
- Returns:
- BOOLEAN - TRUE if required, otherwise FALSE
Start getting SI data from Demux.
- Parameters:
-
H_DsiInstance | dsi DSI instance handle. |
DMXREF | dmxref Demux reference handle |
- Returns:
Stop getting SI data from Demux.
- Parameters:
-
H_DsiInstance | dsi DSI instance handle. |
- Returns: