Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
libdvbpsi
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
libdvbpsi
Commits
15d26b4c
Commit
15d26b4c
authored
Feb 02, 2011
by
Jean-Paul Saman
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Doxygen documentation fixex.
parent
52d1a27c
Changes
18
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
80 additions
and
79 deletions
+80
-79
src/demux.h
src/demux.h
+7
-6
src/descriptors/dr_0a.h
src/descriptors/dr_0a.h
+5
-5
src/descriptors/dr_45.h
src/descriptors/dr_45.h
+10
-10
src/descriptors/dr_47.h
src/descriptors/dr_47.h
+1
-1
src/descriptors/dr_4d.h
src/descriptors/dr_4d.h
+5
-5
src/descriptors/dr_4e.h
src/descriptors/dr_4e.h
+14
-14
src/descriptors/dr_52.h
src/descriptors/dr_52.h
+3
-3
src/descriptors/dr_55.h
src/descriptors/dr_55.h
+4
-4
src/descriptors/dr_56.h
src/descriptors/dr_56.h
+8
-8
src/descriptors/dr_58.h
src/descriptors/dr_58.h
+2
-2
src/descriptors/dr_59.h
src/descriptors/dr_59.h
+6
-6
src/dvbpsi.h
src/dvbpsi.h
+5
-5
src/tables/bat.h
src/tables/bat.h
+0
-2
src/tables/eit.h
src/tables/eit.h
+4
-2
src/tables/nit.h
src/tables/nit.h
+2
-3
src/tables/pmt.h
src/tables/pmt.h
+1
-0
src/tables/sis.h
src/tables/sis.h
+1
-1
src/tables/tot.h
src/tables/tot.h
+2
-2
No files found.
src/demux.h
View file @
15d26b4c
...
...
@@ -85,12 +85,12 @@ typedef void (*dvbpsi_demux_subdec_cb_t)
struct
dvbpsi_demux_s
;
typedef
struct
dvbpsi_demux_subdec_s
{
uint32_t
i_id
;
dvbpsi_demux_subdec_cb_t
pf_callback
;
void
*
p_cb_data
;
struct
dvbpsi_demux_subdec_s
*
p_next
;
uint32_t
i_id
;
/*!< subtable id */
dvbpsi_demux_subdec_cb_t
pf_callback
;
/*!< subdec callback */
void
*
p_cb_data
;
/*!< subdec callback data */
struct
dvbpsi_demux_subdec_s
*
p_next
;
/*!< next subdec callback */
void
(
*
pf_detach
)(
dvbpsi_t
*
,
uint8_t
,
uint16_t
);
void
(
*
pf_detach
)(
dvbpsi_t
*
,
uint8_t
,
uint16_t
);
/*!< detach subdec callback */
}
dvbpsi_demux_subdec_t
;
...
...
@@ -143,7 +143,8 @@ dvbpsi_t *dvbpsi_AttachDemux(dvbpsi_t * p_dvbpsi,
/*!
* \fn void dvbpsi_DetachDemux(dvbpsi_t *p_dvbpsi)
* \brief Destroys a demux structure.
* \param h_dvbpsi The handle of the demux to be destroyed.
* \param p_dvbpsi The handle of the demux to be destroyed.
* \return nothing
*/
void
dvbpsi_DetachDemux
(
dvbpsi_t
*
p_dvbpsi
);
...
...
src/descriptors/dr_0a.h
View file @
15d26b4c
...
...
@@ -39,8 +39,8 @@
extern
"C"
{
#endif
#define DR_0A_API_VER 2
typedef
uint8_t
iso_639_language_code_t
[
3
];
#define DR_0A_API_VER 2
/*!< descriptor 0a API version */
typedef
uint8_t
iso_639_language_code_t
[
3
];
/*!< ISO639 three letter language codes */
/*****************************************************************************
* dvbpsi_iso639_dr_t
...
...
@@ -61,9 +61,9 @@ typedef struct dvbpsi_iso639_dr_s
uint8_t
i_code_count
;
/*!< length of the i_iso_639_code
array */
struct
{
iso_639_language_code_t
iso_639_code
;
/*!< ISO_639_language_code */
uint8_t
i_audio_type
;
/*!< audio_type */
}
code
[
64
];
iso_639_language_code_t
iso_639_code
;
/*!< ISO_639_language_code */
uint8_t
i_audio_type
;
/*!< audio_type */
}
code
[
64
];
/*!< list of ISO 639 codes */
}
dvbpsi_iso639_dr_t
;
...
...
src/descriptors/dr_45.h
View file @
15d26b4c
...
...
@@ -23,7 +23,7 @@
/*!
* \file <dr_45.h>
* \author Jean-Paul Saman <jpsaman
at videolan dot
org>
* \author Jean-Paul Saman <jpsaman
@videolan.
org>
* \brief VBI data descriptor parsing.
*
* DVB VBI data descriptor parsing, according to ETSI EN 300 468
...
...
@@ -43,7 +43,7 @@ extern "C" {
* dvbpsi_vbidata_line_t
*****************************************************************************/
/*!
* \struct dvbpsi_vbidata_line_
t
* \struct dvbpsi_vbidata_line_
s
* \brief one VBI Data line structure.
*
* This structure is used since vbidata_t structure will contain several
...
...
@@ -55,8 +55,8 @@ extern "C" {
*/
typedef
struct
dvbpsi_vbidata_line_s
{
uint8_t
i_parity
;
/*
1 bits
*/
uint8_t
i_line_offset
;
/*
5 bits
*/
uint8_t
i_parity
;
/*
!< parity bit (1 bits)
*/
uint8_t
i_line_offset
;
/*
!< line offset (5 bits)
*/
}
dvbpsi_vbidata_line_t
;
...
...
@@ -64,7 +64,7 @@ typedef struct dvbpsi_vbidata_line_s
* dvbpsi_vbidata_t
*****************************************************************************/
/*!
* \struct dvbpsi_vbidata_
t
* \struct dvbpsi_vbidata_
s
* \brief one VBI data structure.
*
* This structure is used since vbi_descriptor will contain several
...
...
@@ -76,9 +76,9 @@ typedef struct dvbpsi_vbidata_line_s
*/
typedef
struct
dvbpsi_vbidata_s
{
uint8_t
i_data_service_id
;
/*
8 bits
*/
uint8_t
i_lines
;
dvbpsi_vbidata_line_t
p_lines
[
255
];
uint8_t
i_data_service_id
;
/*
!< data service id (8 bits)
*/
uint8_t
i_lines
;
/*!< number of lines */
dvbpsi_vbidata_line_t
p_lines
[
255
];
/*!< VBI lines data */
}
dvbpsi_vbidata_t
;
...
...
@@ -98,8 +98,8 @@ typedef struct dvbpsi_vbidata_s
*/
typedef
struct
dvbpsi_vbi_dr_s
{
uint8_t
i_services_number
;
dvbpsi_vbidata_t
p_services
[
85
];
uint8_t
i_services_number
;
/*!< service number */
dvbpsi_vbidata_t
p_services
[
85
];
/*!< services table */
}
dvbpsi_vbi_dr_t
;
...
...
src/descriptors/dr_47.h
View file @
15d26b4c
...
...
@@ -82,7 +82,7 @@ dvbpsi_bouquet_name_dr_t* dvbpsi_DecodeBouquetNameDr(
* dvbpsi_GenBouquetNameDr
*****************************************************************************/
/*!
* \fn dvbpsi_descriptor_t * dvbpsi_Gen
Stuffing
Dr(
* \fn dvbpsi_descriptor_t * dvbpsi_Gen
BouquetName
Dr(
dvbpsi_bouquet_name_dr_t * p_decoded, int b_duplicate)
* \brief "bouquet name" descriptor generator.
* \param p_decoded pointer to a decoded "bouquet name" descriptor
...
...
src/descriptors/dr_4d.h
View file @
15d26b4c
...
...
@@ -55,11 +55,11 @@ extern "C" {
*/
typedef
struct
dvbpsi_short_event_dr_s
{
uint8_t
i_iso_639_code
[
3
];
int
i_event_name_length
;
uint8_t
i_event_name
[
256
];
int
i_text_length
;
uint8_t
i_text
[
256
];
uint8_t
i_iso_639_code
[
3
];
/*!< ISO 639 language code */
int
i_event_name_length
;
/*!< length of event name */
uint8_t
i_event_name
[
256
];
/*!< "short event" name */
int
i_text_length
;
/*!< text length */
uint8_t
i_text
[
256
];
/*!< "short event" text */
}
dvbpsi_short_event_dr_t
;
...
...
src/descriptors/dr_4e.h
View file @
15d26b4c
...
...
@@ -44,10 +44,10 @@ extern "C" {
* dvbpsi_extended_event_dr_t
*****************************************************************************/
/*!
* \struct dvbpsi_
short
_event_dr_s
* \brief "
short
event" descriptor structure.
* \struct dvbpsi_
extended
_event_dr_s
* \brief "
extended
event" descriptor structure.
*
* This structure is used to store a decoded "
short
event" descriptor.
* This structure is used to store a decoded "
extended
event" descriptor.
*/
/*!
* \typedef struct dvbpsi_short_event_dr_s dvbpsi_extended_event_dr_t
...
...
@@ -55,21 +55,21 @@ extern "C" {
*/
typedef
struct
dvbpsi_extended_event_dr_s
{
uint8_t
i_descriptor_number
;
uint8_t
i_last_descriptor_number
;
uint8_t
i_descriptor_number
;
/*!< descriptor number */
uint8_t
i_last_descriptor_number
;
/*!< last descriptor number */
uint8_t
i_iso_639_code
[
3
];
uint8_t
i_iso_639_code
[
3
];
/*!< 3 letter ISO 639 language code */
int
i_entry_count
;
uint8_t
i_item_description_length
[
126
];
uint8_t
*
i_item_description
[
126
];
uint8_t
i_item_length
[
126
];
uint8_t
*
i_item
[
126
];
int
i_entry_count
;
/*!< entry count */
uint8_t
i_item_description_length
[
126
];
/*!< length of item_description */
uint8_t
*
i_item_description
[
126
];
/*!< item description */
uint8_t
i_item_length
[
126
];
/*!< length of item */
uint8_t
*
i_item
[
126
];
/*!< items */
int
i_text_length
;
uint8_t
*
i_text
;
int
i_text_length
;
/*!< text length */
uint8_t
*
i_text
;
/*!< text */
uint8_t
i_buffer
[
256
];
/* do not use
*/
uint8_t
i_buffer
[
256
];
/*!< do not used
*/
}
dvbpsi_extended_event_dr_t
;
...
...
src/descriptors/dr_52.h
View file @
15d26b4c
...
...
@@ -40,17 +40,17 @@ extern "C" {
/*****************************************************************************
* dvbpsi_s
ervice_dr_t
* dvbpsi_s
tream_identifier_dr_s
*****************************************************************************/
/*!
* \struct dvbpsi_s
ervice
_dr_s
* \struct dvbpsi_s
tream_identifier
_dr_s
* \brief "stream identifier" descriptor structure.
*
* This structure is used to store a decoded "stream identifier"
* descriptor. (ETSI EN 300 468 section 6.2.37).
*/
/*!
* \typedef struct dvbpsi_s
ervice
_dr_s dvbpsi_stream_identifier_dr_t
* \typedef struct dvbpsi_s
tream_identifier
_dr_s dvbpsi_stream_identifier_dr_t
* \brief dvbpsi_stream_identifier_dr_t type definition.
*/
typedef
struct
dvbpsi_stream_identifier_dr_s
...
...
src/descriptors/dr_55.h
View file @
15d26b4c
...
...
@@ -53,8 +53,8 @@ extern "C" {
*/
typedef
struct
dvbpsi_parental_rating_s
{
uint32_t
i_country_code
;
uint8_t
i_rating
;
uint32_t
i_country_code
;
/*!< country code of parental rating */
uint8_t
i_rating
;
/*!< parental rating */
}
dvbpsi_parental_rating_t
;
...
...
@@ -75,8 +75,8 @@ typedef struct dvbpsi_parental_rating_s
*/
typedef
struct
dvbpsi_parental_rating_dr_s
{
uint8_t
i_ratings_number
;
dvbpsi_parental_rating_t
p_parental_rating
[
64
];
uint8_t
i_ratings_number
;
/*!< number of rating */
dvbpsi_parental_rating_t
p_parental_rating
[
64
];
/*!< parental rating table */
}
dvbpsi_parental_rating_dr_t
;
...
...
src/descriptors/dr_56.h
View file @
15d26b4c
...
...
@@ -23,7 +23,7 @@
/*!
* \file <dr_56.h>
* \author Derk-Jan Hartman <hartman
at videolan dot
org>
* \author Derk-Jan Hartman <hartman
@videolan.
org>
* \brief EBU Teletext descriptor parsing.
*
* DVB EBU Teletext descriptor parsing, according to ETSI EN 300 468
...
...
@@ -43,7 +43,7 @@ extern "C" {
* dvbpsi_teletext_t
*****************************************************************************/
/*!
* \struct dvbpsi_teletextpage_
t
* \struct dvbpsi_teletextpage_
s
* \brief one teletext page structure.
*
* This structure is used since teletext_descriptor will contain several
...
...
@@ -55,10 +55,10 @@ extern "C" {
*/
typedef
struct
dvbpsi_teletextpage_s
{
uint8_t
i_iso6392_language_code
[
3
];
/*
24 bits
*/
uint8_t
i_teletext_type
;
/*
5 bits
*/
uint8_t
i_teletext_magazine_number
;
/*
3 bits
*/
uint8_t
i_teletext_page_number
;
/*
8 bits
*/
uint8_t
i_iso6392_language_code
[
3
];
/*
!< ISO 6392 Language codes (24 bits)
*/
uint8_t
i_teletext_type
;
/*
!< teletext type (5 bits)
*/
uint8_t
i_teletext_magazine_number
;
/*
!< teletext magazine number (3 bits)
*/
uint8_t
i_teletext_page_number
;
/*
!< teletext page number (8 bits)
*/
}
dvbpsi_teletextpage_t
;
...
...
@@ -79,8 +79,8 @@ typedef struct dvbpsi_teletextpage_s
*/
typedef
struct
dvbpsi_teletext_dr_s
{
uint8_t
i_pages_number
;
dvbpsi_teletextpage_t
p_pages
[
64
];
uint8_t
i_pages_number
;
/*!< number of pages */
dvbpsi_teletextpage_t
p_pages
[
64
];
/*!< teletext pages */
}
dvbpsi_teletext_dr_t
;
...
...
src/descriptors/dr_58.h
View file @
15d26b4c
...
...
@@ -82,8 +82,8 @@ typedef struct dvbpsi_local_time_offset_s
*/
typedef
struct
dvbpsi_local_time_offset_dr_s
{
uint8_t
i_local_time_offsets_number
;
dvbpsi_local_time_offset_t
p_local_time_offset
[
19
];
uint8_t
i_local_time_offsets_number
;
/*!< local time offset number */
dvbpsi_local_time_offset_t
p_local_time_offset
[
19
];
/*!< local time offset */
}
dvbpsi_local_time_offset_dr_t
;
...
...
src/descriptors/dr_59.h
View file @
15d26b4c
...
...
@@ -54,10 +54,10 @@ extern "C" {
*/
typedef
struct
dvbpsi_subtitle_s
{
uint8_t
i_iso6392_language_code
[
3
];
uint8_t
i_subtitling_type
;
uint16_t
i_composition_page_id
;
uint16_t
i_ancillary_page_id
;
uint8_t
i_iso6392_language_code
[
3
];
/*!< ISO 6392 language code */
uint8_t
i_subtitling_type
;
/*!< subtitling type */
uint16_t
i_composition_page_id
;
/*!< composition page id */
uint16_t
i_ancillary_page_id
;
/*!< ancillayr page id */
}
dvbpsi_subtitle_t
;
...
...
@@ -78,8 +78,8 @@ typedef struct dvbpsi_subtitle_s
*/
typedef
struct
dvbpsi_subtitling_dr_s
{
uint8_t
i_subtitles_number
;
dvbpsi_subtitle_t
p_subtitle
[
20
];
uint8_t
i_subtitles_number
;
/*!< subtiles number */
dvbpsi_subtitle_t
p_subtitle
[
20
];
/*!< subtitles */
}
dvbpsi_subtitling_dr_t
;
...
...
src/dvbpsi.h
View file @
15d26b4c
...
...
@@ -34,8 +34,8 @@
#ifndef _DVBPSI_DVBPSI_H_
#define _DVBPSI_DVBPSI_H_
#define DVBPSI_VERSION 1.0.0
#define DVBPSI_VERSION_INT ((1<<16)+(0<<8)+0)
#define DVBPSI_VERSION 1.0.0
/*!< Human readible DVBPSI version*/
#define DVBPSI_VERSION_INT ((1<<16)+(0<<8)+0)
/*!< Machine readible DVBPSI version */
#ifdef __cplusplus
extern
"C"
{
...
...
@@ -91,7 +91,7 @@ struct dvbpsi_s
* dvbpsi_NewHandle
*****************************************************************************/
/*!
* \fn dvbpsi_t *dvbpsi_NewHandle(dvbpsi_message_cb
*
callback, int level)
* \fn dvbpsi_t *dvbpsi_NewHandle(dvbpsi_message_cb callback, int level)
* \brief Create a new dvbpsi_t handle to be used by PSI decoders or encoders
* \param callback message callback handler, if NULL then no errors, warnings
* or debug messages will be sent to the caller application
...
...
@@ -108,9 +108,9 @@ dvbpsi_t *dvbpsi_NewHandle(dvbpsi_message_cb callback, int level);
* dvbpsi_DeleteHandle
*****************************************************************************/
/*!
* \fn void dvbpsi_
New
Handle(dvbpsi_t *handle)
* \fn void dvbpsi_
Delete
Handle(dvbpsi_t *handle)
* \brief Deletes a dvbpsi_t handle created with dvbpsi_NewHandle
* \param pointer to dvbpsi_t malloced data
* \param
handle
pointer to dvbpsi_t malloced data
* \return nothing
*
* Delets a dvbpsi_t handle by calling free(handle). Make sure to detach any
...
...
src/tables/bat.h
View file @
15d26b4c
...
...
@@ -156,7 +156,6 @@ void dvbpsi_DetachBAT(dvbpsi_t *p_dvbpsi, uint8_t i_table_id,
* \param i_bouquet_id bouquet ID
* \param i_version BAT version
* \param b_current_next current next indicator
* \param i_network_id original network id
* \return nothing.
*/
void
dvbpsi_InitBAT
(
dvbpsi_bat_t
*
p_bat
,
uint16_t
i_bouquet_id
,
uint8_t
i_version
,
...
...
@@ -169,7 +168,6 @@ void dvbpsi_InitBAT(dvbpsi_bat_t *p_bat, uint16_t i_bouquet_id, uint8_t i_versio
* \param i_bouquet_id bouquet ID
* \param i_version BAT version
* \param b_current_next current next indicator
* \param i_network_id original network id
* \return nothing.
*/
#define dvbpsi_NewBAT(p_bat, i_bouquet_id, i_version, b_current_next) \
...
...
src/tables/eit.h
View file @
15d26b4c
...
...
@@ -64,7 +64,6 @@ typedef struct dvbpsi_eit_event_s
dvbpsi_descriptor_t
*
p_first_descriptor
;
/*!< First of the following
DVB descriptors */
struct
dvbpsi_eit_event_s
*
p_next
;
/*!< next element of
the list */
...
...
@@ -171,10 +170,13 @@ void dvbpsi_InitEIT(dvbpsi_eit_t* p_eit, uint16_t i_service_id, uint8_t i_versio
* \def dvbpsi_NewEIT(p_eit, i_ts_id, i_version, b_current_next, i_network_id)
* \brief Allocate and initialize a new dvbpsi_eit_t structure.
* \param p_eit pointer to the EIT structure
* \param i_
ts_id transport stream
ID
* \param i_
service_id service
ID
* \param i_version EIT version
* \param b_current_next current next indicator
* \param i_ts_id transport stream ID
* \param i_network_id original network id
* \param i_segment_last_section_number segment_last_section_number
* \param i_last_table_id i_last_table_id
* \return nothing.
*/
#define dvbpsi_NewEIT(p_eit, i_service_id, i_version, b_current_next, i_ts_id, i_network_id, i_segment_last_section_number, i_last_table_id) \
...
...
src/tables/nit.h
View file @
15d26b4c
...
...
@@ -160,7 +160,6 @@ void dvbpsi_InitNIT(dvbpsi_nit_t* p_nit, uint16_t i_network_id,
* \param i_network_id network id
* \param i_version NIT version
* \param b_current_next current next indicator
* \param i_pcr_pid PCR_PID
* \return nothing.
*/
#define dvbpsi_NewNIT(p_nit, i_network_id, \
...
...
@@ -218,11 +217,11 @@ dvbpsi_descriptor_t* dvbpsi_NITAddDescriptor(dvbpsi_nit_t* p_nit,
*****************************************************************************/
/*!
* \fn dvbpsi_nit_ts_t* dvbpsi_NITAddTS(dvbpsi_nit_t* p_nit,
uint
8
_t i_ts_id, uint16_t i_orig_network_id)
uint
16
_t i_ts_id, uint16_t i_orig_network_id)
* \brief Add an TS in the NIT.
* \param p_nit pointer to the NIT structure
* \param i_ts_id type of TS
* \param i_
p
id PID of the TS
* \param i_
orig_network_
id PID of the TS
* \return a pointer to the added TS.
*/
dvbpsi_nit_ts_t
*
dvbpsi_NITAddTS
(
dvbpsi_nit_t
*
p_nit
,
...
...
src/tables/pmt.h
View file @
15d26b4c
...
...
@@ -112,6 +112,7 @@ typedef void (* dvbpsi_pmt_callback)(void* p_cb_data, dvbpsi_pmt_t* p_new_pmt);
void* p_cb_data)
* \brief Creates and initialization of a PMT decoder and attaches it to dvbpsi_t
* handle
* \param p_dvbpsi handle
* \param i_program_number program number
* \param pf_callback function to call back on new PMT
* \param p_cb_data private data given in argument to the callback
...
...
src/tables/sis.h
View file @
15d26b4c
...
...
@@ -178,7 +178,7 @@ void dvbpsi_EmptySIS(dvbpsi_sis_t *p_sis);
/*!
* \def dvbpsi_DeleteSIS(p_sis)
* \brief Clean and free a dvbpsi_sis_t structure.
* \param p_s
It
pointer to the SIS structure
* \param p_s
is
pointer to the SIS structure
* \return nothing.
*/
#define dvbpsi_DeleteSIS(p_sis) \
...
...
src/tables/tot.h
View file @
15d26b4c
...
...
@@ -98,7 +98,7 @@ int dvbpsi_AttachTOT(dvbpsi_t* p_dvbpsi, uint8_t i_table_id,
/*!
* \fn int dvbpsi_DetachTOT(dvbpsi_t *p_dvbpsi, uint8_t i_table_id, uint16_t i_extension)
* \brief Destroy a TDT/TOT decoder.
* \param p_d
emux
Subtable demultiplexor to which the decoder is attached.
* \param p_d
vbpsi
Subtable demultiplexor to which the decoder is attached.
* \param i_table_id Table ID, usually 0x70
* \param i_extension Table ID extension, unused in the TDT/TOT
* \return nothing.
...
...
@@ -178,7 +178,7 @@ dvbpsi_descriptor_t* dvbpsi_TOTAddDescriptor(dvbpsi_tot_t* p_tot,
* dvbpsi_GenTOTSections
*****************************************************************************/
/*!
* \fn dvbpsi_psi_section_t* dvbpsi_GenTOTSections(dvbpsi_t *p_dvbpsi, dvbpsi_
T
tot_t* p_tot)
* \fn dvbpsi_psi_section_t* dvbpsi_GenTOTSections(dvbpsi_t *p_dvbpsi, dvbpsi_tot_t* p_tot)
* \brief TDT/TOT generator
* \param p_dvbpsi handle to dvbpsi with attached decoder
* \param p_tot TDT/TOT structure
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment