descriptor.h   descriptor.h 
skipping to change at line 42 skipping to change at line 42
* and NULL on error. They do not use a dvbpsi_t handle as first argument. * and NULL on error. They do not use a dvbpsi_t handle as first argument.
*/ */
#ifndef _DVBPSI_DESCRIPTOR_H_ #ifndef _DVBPSI_DESCRIPTOR_H_
#define _DVBPSI_DESCRIPTOR_H_ #define _DVBPSI_DESCRIPTOR_H_
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
/************************************************************************** *** /************************************************************************** ***
* common definitions * common definitions
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \typedef uint8_t iso_639_language_code_t[3] * \typedef uint8_t iso_639_language_code_t[3]
* \brief ISO639 three letter language codes * \brief ISO639 three letter language codes
*/ */
typedef uint8_t iso_639_language_code_t[3]; typedef uint8_t iso_639_language_code_t[3];
/************************************************************************** *** /************************************************************************** ***
 End of changes. 1 change blocks. 
0 lines changed or deleted 4 lines changed or added


 dr.h   dr.h 
skipping to change at line 48 skipping to change at line 48
#include "dr_06.h" #include "dr_06.h"
#include "dr_07.h" #include "dr_07.h"
#include "dr_08.h" #include "dr_08.h"
#include "dr_09.h" #include "dr_09.h"
#include "dr_0a.h" #include "dr_0a.h"
#include "dr_0b.h" #include "dr_0b.h"
#include "dr_0c.h" #include "dr_0c.h"
#include "dr_0d.h" #include "dr_0d.h"
#include "dr_0e.h" #include "dr_0e.h"
#include "dr_0f.h" #include "dr_0f.h"
#include "dr_10.h"
#include "dr_11.h"
#include "dr_12.h"
#include "dr_13.h" #include "dr_13.h"
#include "dr_14.h" #include "dr_14.h"
#include "dr_1b.h"
#include "dr_1c.h"
#include "dr_40.h" #include "dr_40.h"
#include "dr_41.h" #include "dr_41.h"
#include "dr_42.h" #include "dr_42.h"
#include "dr_43.h" #include "dr_43.h"
#include "dr_44.h" #include "dr_44.h"
#include "dr_45.h" #include "dr_45.h"
#include "dr_47.h" #include "dr_47.h"
#include "dr_48.h" #include "dr_48.h"
#include "dr_49.h" #include "dr_49.h"
#include "dr_4a.h" #include "dr_4a.h"
 End of changes. 2 change blocks. 
0 lines changed or deleted 5 lines changed or added


 dr_56.h   dr_56.h 
skipping to change at line 70 skipping to change at line 70
uint8_t i_teletext_magazine_number; /*!< teletext magazine number ( 3 bits) */ uint8_t i_teletext_magazine_number; /*!< teletext magazine number ( 3 bits) */
uint8_t i_teletext_page_number; /*!< teletext page number (8 bi ts) */ uint8_t i_teletext_page_number; /*!< teletext page number (8 bi ts) */
} dvbpsi_teletextpage_t; } dvbpsi_teletextpage_t;
/*! /*!
* \def DVBPSI_TELETEXT_DR_MAX * \def DVBPSI_TELETEXT_DR_MAX
* \brief Maximum number of dvbpsi_teletextpage_t entries present in * \brief Maximum number of dvbpsi_teletextpage_t entries present in
* @see dvbpsi_teletext_dr_t * @see dvbpsi_teletext_dr_t
*/ */
#define DVBPSI_TELETEXT_DR_MAX 64 #define DVBPSI_TELETEXT_DR_MAX 51
/************************************************************************** *** /************************************************************************** ***
* dvbpsi_teletext_dr_t * dvbpsi_teletext_dr_t
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \struct dvbpsi_teletext_dr_s * \struct dvbpsi_teletext_dr_s
* \brief "teletext" descriptor structure. * \brief "teletext" descriptor structure.
* *
* This structure is used to store a decoded "teletext" * This structure is used to store a decoded "teletext"
* descriptor. (ETSI EN 300 468 version 1.7.1 section 6.2.42 and 6.2.47). * descriptor. (ETSI EN 300 468 version 1.7.1 section 6.2.42 and 6.2.47).
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 dr_7c.h   dr_7c.h 
skipping to change at line 36 skipping to change at line 36
* \author Jean-Paul Saman <jpsaman@videolan.org> * \author Jean-Paul Saman <jpsaman@videolan.org>
* \brief AAC Audio descriptor * \brief AAC Audio descriptor
* *
* AAC Audio descriptor parsing, according to * AAC Audio descriptor parsing, according to
* ETSI EN 300 468 V1.13.1 (2012-04) Annex H * ETSI EN 300 468 V1.13.1 (2012-04) Annex H
*/ */
#ifndef _DVBPSI_DR_7C_H_ #ifndef _DVBPSI_DR_7C_H_
#define _DVBPSI_DR_7c_H_ #define _DVBPSI_DR_7c_H_
#include "types/aac_profile.h"
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/**************************************************************************
***
* dvbpsi_aac_dr_t
**************************************************************************
***/
/*!
* \enum dvbpsi_aac_profile_and_level_s
* \brief enumeration of AAC profile and levels as specified in ISO/IEC 138
18-1:2007 table 2.71
*/
/*!
* \typedef enum dvbpsi_aac_profile_and_level_s dvbpsi_aac_profile_and_leve
l_t
* \brief AAC profile and level as specified in ISO/IEC 13818-1:2007 table
2.71.
*/
typedef enum dvbpsi_aac_profile_and_level_s
{
DVBPSI_AAC_PROFILE_RESERVED = 0x00, /*!< 0x00-0x0F Reserved */
DVBPSI_AAC_PROFILE_MAIN_LEVEL_1 = 0x10, /*!< Main profile, level 1 */
DVBPSI_AAC_PROFILE_MAIN_LEVEL_2 = 0x11, /*!< Main profile, level 2 */
DVBPSI_AAC_PROFILE_MAIN_LEVEL_3 = 0x12, /*!< Main profile, level 3 */
DVBPSI_AAC_PROFILE_MAIN_LEVEL_4 = 0x13, /*!< Main profile, level 4 */
/** 0x14-0x17 Reserved */
DVBPSI_AAC_PROFILE_SCALABLE_LEVEL_1 = 0x18, /*!< Scalable Profile, leve
l 1 */
DVBPSI_AAC_PROFILE_SCALABLE_LEVEL_2 = 0x19, /*!< Scalable Profile, leve
l 2 */
DVBPSI_AAC_PROFILE_SCALABLE_LEVEL_3 = 0x1A, /*!< Scalable Profile, leve
l 3 */
DVBPSI_AAC_PROFILE_SCALABLE_LEVEL_4 = 0x1B, /*!< Scalable Profile, leve
l 4 */
/** 0x1C-0x1F Reserved */
DVBPSI_AAC_PROFILE_SPEECH_LEVEL_1 = 0x20, /*!< Speech profile, level 1
*/
DVBPSI_AAC_PROFILE_SPEECH_LEVEL_2 = 0x21, /*!< Speech profile, level 2
*/
/** 0x22-0x27 Reserved */
DVBPSI_AAC_PROFILE_SYNTHESIS_LEVEL_1 = 0x28, /*!< Synthesis profile, le
vel 1 */
DVBPSI_AAC_PROFILE_SYNTHESIS_LEVEL_2 = 0x29, /*!< Synthesis profile, le
vel 2 */
DVBPSI_AAC_PROFILE_SYNTHESIS_LEVEL_3 = 0x2A, /*!< Synthesis profile, le
vel 3 */
/** 0x2B-0x2F Reserved */
DVBPSI_AAC_PROFILE_HQ_LEVEL_1 = 0x30, /*!< High quality audio profile,
level 1 */
DVBPSI_AAC_PROFILE_HQ_LEVEL_2 = 0x31, /*!< High quality audio profile,
level 2 */
DVBPSI_AAC_PROFILE_HQ_LEVEL_3 = 0x32, /*!< High quality audio profile,
level 3 */
DVBPSI_AAC_PROFILE_HQ_LEVEL_4 = 0x33, /*!< High quality audio profile,
level 4 */
DVBPSI_AAC_PROFILE_HQ_LEVEL_5 = 0x34, /*!< High quality audio profile,
level 5 */
DVBPSI_AAC_PROFILE_HQ_LEVEL_6 = 0x35, /*!< High quality audio profile,
level 6 */
DVBPSI_AAC_PROFILE_HQ_LEVEL_7 = 0x36, /*!< High quality audio profile,
level 7 */
DVBPSI_AAC_PROFILE_HQ_LEVEL_8 = 0x37, /*!< High quality audio profile,
level 8 */
DVBPSI_AAC_PROFILE_LOW_DELAY_LEVEL_1 = 0x38, /*!< Low delay audio profi
le, level 1 */
DVBPSI_AAC_PROFILE_LOW_DELAY_LEVEL_2 = 0x39, /*!< Low delay audio profi
le, level 2 */
DVBPSI_AAC_PROFILE_LOW_DELAY_LEVEL_3 = 0x3A, /*!< Low delay audio profi
le, level 3 */
DVBPSI_AAC_PROFILE_LOW_DELAY_LEVEL_4 = 0x3B, /*!< Low delay audio profi
le, level 4 */
DVBPSI_AAC_PROFILE_LOW_DELAY_LEVEL_5 = 0x3C, /*!< Low delay audio profi
le, level 5 */
DVBPSI_AAC_PROFILE_LOW_DELAY_LEVEL_6 = 0x3D, /*!< Low delay audio profi
le, level 6 */
DVBPSI_AAC_PROFILE_LOW_DELAY_LEVEL_7 = 0x3E, /*!< Low delay audio profi
le, level 7 */
DVBPSI_AAC_PROFILE_LOW_DELAY_LEVEL_8 = 0x3F, /*!< Low delay audio profi
le, level 8 */
DVBPSI_AAC_PROFILE_NATURAL_LEVEL_1 = 0x40, /*!< Natural audio profile,
level 1 */
DVBPSI_AAC_PROFILE_NATURAL_LEVEL_2 = 0x41, /*!< Natural audio profile,
level 2 */
DVBPSI_AAC_PROFILE_NATURAL_LEVEL_3 = 0x42, /*!< Natural audio profile,
level 3 */
DVBPSI_AAC_PROFILE_NATURAL_LEVEL_4 = 0x43, /*!< Natural audio profile,
level 4 */
/** 0x44-0x47 Reserved */
DVBPSI_AAC_PROFILE_MOBILE_LEVEL_1 = 0x48, /*!< Mobile audio internetwor
king profile, level 1 */
DVBPSI_AAC_PROFILE_MOBILE_LEVEL_2 = 0x49, /*!< Mobile audio internetwor
king profile, level 2 */
DVBPSI_AAC_PROFILE_MOBILE_LEVEL_3 = 0x4A, /*!< Mobile audio internetwor
king profile, level 3 */
DVBPSI_AAC_PROFILE_MOBILE_LEVEL_4 = 0x4B, /*!< Mobile audio internetwor
king profile, level 4 */
DVBPSI_AAC_PROFILE_MOBILE_LEVEL_5 = 0x4C, /*!< Mobile audio internetwor
king profile, level 5 */
DVBPSI_AAC_PROFILE_MOBILE_LEVEL_6 = 0x4D, /*!< Mobile audio internetwor
king profile, level 6 */
/** 0x4E-0x4F Reserved */
DVBPSI_AAC_PROFILE_LEVEL_1 = 0x50, /*!< AAC profile, level 1 */
DVBPSI_AAC_PROFILE_LEVEL_2 = 0x51, /*!< AAC profile, level 2 */
DVBPSI_AAC_PROFILE_LEVEL_4 = 0x52, /*!< AAC profile, level 4 */
DVBPSI_AAC_PROFILE_LEVEL_5 = 0x53, /*!< AAC profile, level 5 */
/** 0x54-0x57 RESERVED */
DVBPSI_HE_AAC_PROFILE_LEVEL_2 = 0x58, /*!< High efficiency AAC profile,
level 2 */
DVBPSI_HE_AAC_PROFILE_LEVEL_3 = 0x59, /*!< High efficiency AAC profile,
level 3 */
DVBPSI_HE_AAC_PROFILE_LEVEL_4 = 0x5A, /*!< High efficiency AAC profile,
level 4 */
DVBPSI_HE_AAC_PROFILE_LEVEL_5 = 0x5B /*!< High efficiency AAC profile,
level 5 */
/** 0x5C-0xFF RESERVED */
} dvbpsi_aac_profile_and_level_t;
/*! /*!
* \enum dvbpsi_aac_type_s * \enum dvbpsi_aac_type_s
* \brief AAC type information as described in table 26, page 41 where colu mn * \brief AAC type information as described in table 26, page 41 where colu mn
* *
* The AAC Audio descriptor is used to label the PIDs that carry AAC audio data. * The AAC Audio descriptor is used to label the PIDs that carry AAC audio data.
* 'stream_content' has value 0x06 as specified in ISO/IEC 13818-1:2007. * 'stream_content' has value 0x06 as specified in ISO/IEC 13818-1:2007.
*/ */
/*! /*!
* \typedef enum dvbpsi_aac_type_s dvbpsi_aac_type_t * \typedef enum dvbpsi_aac_type_s dvbpsi_aac_type_t
* \brief AAC type information as descripted in table 26, page 41 where c olumn * \brief AAC type information as descripted in table 26, page 41 where c olumn
 End of changes. 2 change blocks. 
116 lines changed or deleted 2 lines changed or added


 dr_81.h   dr_81.h 
skipping to change at line 58 skipping to change at line 58
* \brief dvbpsi_ac3_audio_dr_t type definition. * \brief dvbpsi_ac3_audio_dr_t type definition.
*/ */
typedef struct dvbpsi_ac3_audio_dr_s typedef struct dvbpsi_ac3_audio_dr_s
{ {
uint8_t i_sample_rate_code; /*!< sample rate code (3bits) */ uint8_t i_sample_rate_code; /*!< sample rate code (3bits) */
uint8_t i_bsid; /*!< bsid (5bits) */ uint8_t i_bsid; /*!< bsid (5bits) */
uint8_t i_bit_rate_code; /*!< bitrate code (6bits) */ uint8_t i_bit_rate_code; /*!< bitrate code (6bits) */
uint8_t i_surround_mode; /*!< surround mode indicator (2bits) */ uint8_t i_surround_mode; /*!< surround mode indicator (2bits) */
uint8_t i_bsmod; /*!< (3bits) */ uint8_t i_bsmod; /*!< (3bits) */
uint8_t i_num_channels; /*!< number of audio channels (4bits) */ uint8_t i_num_channels; /*!< number of audio channels (4bits) */
int b_full_svc; /*!< */ int b_full_svc; /*!< full SVC flag */
uint8_t i_lang_code; /*!< language code (8bits) */ uint8_t i_lang_code; /*!< language code (8bits) */
uint8_t i_lang_code2; /*!< language code (8bits( */ uint8_t i_lang_code2; /*!< language code (8bits( */
uint8_t i_mainid; /*!< main identifier (3bits) */ uint8_t i_mainid; /*!< main identifier (3bits) */
uint8_t i_priority; /*!< priority (2bits) */ uint8_t i_priority; /*!< priority (2bits) */
uint8_t i_asvcflags; /*!< asvc flags (8bits) */ uint8_t i_asvcflags; /*!< asvc flags (8bits) */
uint8_t i_textlen; /*!< text length (7bits) */ uint8_t i_textlen; /*!< text length (7bits) */
int b_text_code; /*!< text code is present */ int b_text_code; /*!< text code is present */
unsigned char text[128]; /*!< text code */ unsigned char text[128]; /*!< text code */
int b_language_flag; /*!< language flag */ int b_language_flag; /*!< language flag */
int b_language_flag_2; /*!< language flag */ int b_language_flag_2; /*!< language flag */
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 dr_83.h   dr_83.h 
skipping to change at line 88 skipping to change at line 88
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \fn dvbpsi_lcn_dr_t dvbpsi_DecodeLCNDr(dvbpsi_descriptor_t *p_descriptor ) * \fn dvbpsi_lcn_dr_t dvbpsi_DecodeLCNDr(dvbpsi_descriptor_t *p_descriptor )
* \brief Decode a Logical Channel Number descriptor (tag 0x83) * \brief Decode a Logical Channel Number descriptor (tag 0x83)
* \param p_descriptor Raw descriptor to decode. * \param p_descriptor Raw descriptor to decode.
* \return NULL if the descriptor could not be decoded or a pointer to a * \return NULL if the descriptor could not be decoded or a pointer to a
* dvbpsi_lcn_dr_t structure. * dvbpsi_lcn_dr_t structure.
*/ */
dvbpsi_lcn_dr_t *dvbpsi_DecodeLCNDr(dvbpsi_descriptor_t *p_descriptor); dvbpsi_lcn_dr_t *dvbpsi_DecodeLCNDr(dvbpsi_descriptor_t *p_descriptor);
/**************************************************************************
***
* dvbpsi_GenLCNDr
**************************************************************************
***/
/*!
* \fn dvbpsi_descriptor_t *dvbpsi_GenLCNDr(
dvbpsi_lcn_dr_t* p_decoded, bool b_duplicate)
* \brief "logical_channel" descriptor generator.
* \param p_decoded pointer to a decoded "logical_channel" descriptor
* structure
* \param b_duplicate if true then duplicate the p_decoded structure into
* the descriptor
* \return a pointer to a new descriptor structure which contains encoded d
ata.
*/
dvbpsi_descriptor_t* dvbpsi_GenLCNDr(dvbpsi_lcn_dr_t* p_decoded, bool b_dup
licate);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif
#endif #endif // _DR_83_H
 End of changes. 2 change blocks. 
0 lines changed or deleted 19 lines changed or added


 dr_86.h   dr_86.h 
skipping to change at line 54 skipping to change at line 54
* This structure is used to store a decoded Caption Service. * This structure is used to store a decoded Caption Service.
*/ */
/*! /*!
* \typedef struct dvbpsi_caption_service_s dvbpsi_caption_service_t * \typedef struct dvbpsi_caption_service_s dvbpsi_caption_service_t
* \brief dvbpsi_caption_service_t type definition. * \brief dvbpsi_caption_service_t type definition.
*/ */
typedef struct dvbpsi_caption_service_s typedef struct dvbpsi_caption_service_s
{ {
char i_iso_639_code[3]; /*!< ISO 639 language code */ char i_iso_639_code[3]; /*!< ISO 639 language code */
int b_digital_cc; /*!< Digital CC flag */ int b_digital_cc; /*!< Digital CC flag */
int b_line21_field; /*!< */ int b_line21_field; /*!< Line 21 */
uint16_t i_caption_service_number; /*!< */ uint16_t i_caption_service_number; /*!< Caption Service Number */
int b_easy_reader; /*!< */ int b_easy_reader; /*!< Easy reader flag */
int b_wide_aspect_ratio; /*!< Wide aspect ratio flag */ int b_wide_aspect_ratio; /*!< Wide aspect ratio flag */
} dvbpsi_caption_service_t; } dvbpsi_caption_service_t;
/************************************************************************** *** /************************************************************************** ***
* dvbpsi_caption_service_dr_s * dvbpsi_caption_service_dr_s
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \struct dvbpsi_caption_service_dr_s * \struct dvbpsi_caption_service_dr_s
* \brief Caption Service Descriptor * \brief Caption Service Descriptor
* *
 End of changes. 1 change blocks. 
3 lines changed or deleted 3 lines changed or added


 dr_a1.h   dr_a1.h 
skipping to change at line 38 skipping to change at line 38
*/ */
#ifndef _DVBPSI_DR_A1_H_ #ifndef _DVBPSI_DR_A1_H_
#define _DVBPSI_DR_A1_H_ #define _DVBPSI_DR_A1_H_
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/**************************************************************************
***
* dvbpsi_service_location_element_s
**************************************************************************
***/
/*!
* \struct dvbpsi_service_location_element_s
* \brief "service location element" structure
*
* This structure is used to store a decoded server location element.
*/
/*!
* \typedef struct dvbpsi_service_location_element_s dvbpsi_service_locatio
n_element_t
* \brief dvbpsi_service_location_element_t typedefinition.
*/
typedef struct dvbpsi_service_location_element_s typedef struct dvbpsi_service_location_element_s
{ {
uint8_t i_stream_type; /*!< service stream type */ uint8_t i_stream_type; /*!< service stream type */
uint16_t i_elementary_pid; /*!< PID of elementary stream */ uint16_t i_elementary_pid; /*!< PID of elementary stream */
char i_iso_639_code[3]; /*!< ISO 936 language code */ char i_iso_639_code[3]; /*!< ISO 936 language code */
} dvbpsi_service_location_element_t; } dvbpsi_service_location_element_t;
/************************************************************************** *** /************************************************************************** ***
* dvbpsi_service_location_dr_s * dvbpsi_service_location_dr_s
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \struct dvbpsi_service_dr_s * \struct dvbpsi_service_location_dr_s
* \brief "service" descriptor structure. * \brief "service" descriptor structure.
* *
* This structure is used to store a decoded "service location" * This structure is used to store a decoded "service location"
* descriptor. * descriptor.
*/ */
/*! /*!
* \typedef struct dvbpsi_service_location_dr_s dvbpsi_service_location_dr_ t * \typedef struct dvbpsi_service_location_dr_s dvbpsi_service_location_dr_ t
* \brief dvbpsi_service_dr_t type definition. * \brief dvbpsi_service_location_dr_t type definition.
*/ */
typedef struct dvbpsi_service_location_dr_s typedef struct dvbpsi_service_location_dr_s
{ {
uint16_t i_pcr_pid; /*!< PCR_PID */ uint16_t i_pcr_pid; /*!< PCR_PID */
uint8_t i_number_elements; /*!< number of elements used for this servic e */ uint8_t i_number_elements; /*!< number of elements used for this servic e */
dvbpsi_service_location_element_t elements[0xff]; /*!< service location elements array */ dvbpsi_service_location_element_t elements[0xff]; /*!< service location elements array */
} dvbpsi_service_location_dr_t; } dvbpsi_service_location_dr_t;
/************************************************************************** *** /************************************************************************** ***
* dvbpsi_DecodeServiceDataDr * dvbpsi_DecodeServiceLocationDr
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \fn dvbpsi_service_dr_t * dvbpsi_DecodeServiceLocationDr( * \fn dvbpsi_service_location_dr_t * dvbpsi_DecodeServiceLocationDr(
dvbpsi_descriptor_t * p_descriptor) dvbpsi_descriptor_t * p_descriptor)
* \brief "service location" descriptor decoder. * \brief "service location" descriptor decoder.
* \param p_descriptor pointer to the descriptor structure * \param p_descriptor pointer to the descriptor structure
* \return a pointer to a new "service" descriptor structure * \return a pointer to a new "service" descriptor structure
* which contains the decoded data. * which contains the decoded data.
*/ */
dvbpsi_service_location_dr_t dvbpsi_service_location_dr_t
*dvbpsi_DecodeServiceLocationDr (dvbpsi_descriptor_t * p_descriptor); *dvbpsi_DecodeServiceLocationDr (dvbpsi_descriptor_t * p_descriptor);
#if 0
/************************************************************************** *** /************************************************************************** ***
* dvbpsi_GenServiceDataDr * dvbpsi_GenServiceLocationDr
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \fn dvbpsi_descriptor_t * dvbpsi_GenServiceDr( * \fn dvbpsi_descriptor_t * dvbpsi_GenServiceLocationDr(
dvbpsi_service_dr_t * p_decoded, bool b_duplicate) dvbpsi_service_location_dr_t * p_decoded, bool b_du
plicate)
* \brief "service" descriptor generator. * \brief "service" descriptor generator.
* \param p_decoded pointer to a decoded "service" descriptor * \param p_decoded pointer to a decoded "service" descriptor
* structure * structure
* \param b_duplicate if true then duplicate the p_decoded structure into * \param b_duplicate if true then duplicate the p_decoded structure into
* the descriptor * the descriptor
* \return a pointer to a new descriptor structure which contains encoded d ata. * \return a pointer to a new descriptor structure which contains encoded d ata.
*/ */
dvbpsi_descriptor_t *dvbpsi_GenServiceLocationDr (dvbpsi_service_dr_t * dvbpsi_descriptor_t* dvbpsi_GenServiceLocationDr(
p_decoded, dvbpsi_service_location_dr_t* p_dec
bool b_duplicate); oded,
#endif bool b_duplicate);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#else #else
#error "Multiple inclusions of dr_a1.h" #error "Multiple inclusions of dr_a1.h"
#endif #endif
 End of changes. 9 change blocks. 
12 lines changed or deleted 28 lines changed or added


 dvbpsi.h   dvbpsi.h 
skipping to change at line 38 skipping to change at line 38
* Jean-Paul Saman <jpsaman@videolan.org> * Jean-Paul Saman <jpsaman@videolan.org>
* \brief Application interface for all DVB/PSI decoders. * \brief Application interface for all DVB/PSI decoders.
* *
* Application interface for all DVB/PSI decoders. The generic decoder * Application interface for all DVB/PSI decoders. The generic decoder
* structure is public so that external decoders are allowed. * structure is public so that external decoders are allowed.
*/ */
#ifndef _DVBPSI_DVBPSI_H_ #ifndef _DVBPSI_DVBPSI_H_
#define _DVBPSI_DVBPSI_H_ #define _DVBPSI_DVBPSI_H_
#define DVBPSI_VERSION 1.2.0 /*!< Human readible DVBPSI v #define DVBPSI_VERSION 2.0.0 /*!< Human readible DVBPSI v
ersion*/ ersion*/
#define DVBPSI_VERSION_INT ((1<<16)+(2<<8)+0) /*!< Machine readible DVBPSI #define DVBPSI_VERSION_INT ((2<<16)+(0<<8)+0) /*!< Machine readible DVBPSI
version */ version */
#ifdef __cplusplus #ifdef __cplusplus
extern "C" { extern "C" {
#endif #endif
/************************************************************************** *** /************************************************************************** ***
* Helper for GCC version checks borrowed from VLC. * Helper for GCC version checks borrowed from VLC.
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \def DVBPSI_GCC_VERSION(maj,min) * \def DVBPSI_GCC_VERSION(maj,min)
 End of changes. 1 change blocks. 
4 lines changed or deleted 4 lines changed or added


 nit.h   nit.h 
skipping to change at line 116 skipping to change at line 116
typedef void (* dvbpsi_nit_callback)(void* p_cb_data, dvbpsi_nit_t* p_new_n it); typedef void (* dvbpsi_nit_callback)(void* p_cb_data, dvbpsi_nit_t* p_new_n it);
/************************************************************************** *** /************************************************************************** ***
* dvbpsi_nit_attach * dvbpsi_nit_attach
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \fn bool dvbpsi_nit_attach(dvbpsi_t* p_dvbpsi, uint8_t i_table_id, uint1 6_t i_extension, * \fn bool dvbpsi_nit_attach(dvbpsi_t* p_dvbpsi, uint8_t i_table_id, uint1 6_t i_extension,
dvbpsi_nit_callback pf_callback, void* p_cb_d ata) dvbpsi_nit_callback pf_callback, void* p_cb_d ata)
* \brief Creation and initialization of a NIT decoder. It is attached to p _dvbpsi. * \brief Creation and initialization of a NIT decoder. It is attached to p _dvbpsi.
* \param p_dvbpsi dvbpsi handle to Subtable demultiplexor to which the dec oder is attached. * \param p_dvbpsi dvbpsi handle to Subtable demultiplexor to which the dec oder is attached.
* \param i_table_id Table ID, 0x4E, 0x4F, or 0x50-0x6F. * \param i_table_id Table ID, 0x40 (actual) or 0x41 (other).
* \param i_extension Table ID extension, here service ID. * \param i_extension Table ID extension, here network ID.
* \param pf_callback function to call back on new NIT. * \param pf_callback function to call back on new NIT.
* \param p_cb_data private data given in argument to the callback. * \param p_cb_data private data given in argument to the callback.
* \return true on success, false on failure * \return true on success, false on failure
*/ */
bool dvbpsi_nit_attach(dvbpsi_t* p_dvbpsi, uint8_t i_table_id, uint16_t i_e xtension, bool dvbpsi_nit_attach(dvbpsi_t* p_dvbpsi, uint8_t i_table_id, uint16_t i_e xtension,
dvbpsi_nit_callback pf_callback, void* p_cb_data); dvbpsi_nit_callback pf_callback, void* p_cb_data);
/************************************************************************** *** /************************************************************************** ***
* dvbpsi_nit_detach * dvbpsi_nit_detach
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \fn void dvbpsi_nit_detach(dvbpsi_t *p_dvbpsi, uint8_t i_table_id, * \fn void dvbpsi_nit_detach(dvbpsi_t *p_dvbpsi, uint8_t i_table_id,
uint16_t i_extension) uint16_t i_extension)
* \brief Destroy a NIT decoder. * \brief Destroy a NIT decoder.
* \param p_dvbpsi dvbpsi handle to Subtable demultiplexor to which the dec oder is attached. * \param p_dvbpsi dvbpsi handle to Subtable demultiplexor to which the dec oder is attached.
* \param i_table_id Table ID, 0x4E, 0x4F, or 0x50-0x6F. * \param i_table_id Table ID, 0x40 (actual) or 0x41 (other).
* \param i_extension Table ID extension, here service ID. * \param i_extension Table ID extension, here network ID.
* \return nothing. * \return nothing.
*/ */
void dvbpsi_nit_detach(dvbpsi_t* p_dvbpsi, uint8_t i_table_id, void dvbpsi_nit_detach(dvbpsi_t* p_dvbpsi, uint8_t i_table_id,
uint16_t i_extension); uint16_t i_extension);
/************************************************************************** *** /************************************************************************** ***
* dvbpsi_nit_init/dvbpsi_nit_new * dvbpsi_nit_init/dvbpsi_nit_new
************************************************************************** ***/ ************************************************************************** ***/
/*! /*!
* \fn void dvbpsi_nit_init(dvbpsi_nit_t* p_nit, uint8_t i_table_id, uint16 _t i_extension, * \fn void dvbpsi_nit_init(dvbpsi_nit_t* p_nit, uint8_t i_table_id, uint16 _t i_extension,
uint16_t i_network_id, uint8_t i_version, bool b_current_next) uint16_t i_network_id, uint8_t i_version, bool b_current_next)
* \brief Initialize a user-allocated dvbpsi_nit_t structure. * \brief Initialize a user-allocated dvbpsi_nit_t structure.
* \param i_table_id Table ID, 0x4E, 0x4F, or 0x50-0x6F. * \param i_table_id Table ID, 0x40 (actual) or 0x41 (other).
* \param i_extension Table ID extension, here service ID. * \param i_extension Table ID extension, here network ID.
* \param p_nit pointer to the NIT structure * \param p_nit pointer to the NIT structure
* \param i_network_id network id * \param i_network_id network id
* \param i_version NIT version * \param i_version NIT version
* \param b_current_next current next indicator * \param b_current_next current next indicator
* \return nothing. * \return nothing.
*/ */
void dvbpsi_nit_init(dvbpsi_nit_t* p_nit, uint8_t i_table_id, uint16_t i_ex tension, void dvbpsi_nit_init(dvbpsi_nit_t* p_nit, uint8_t i_table_id, uint16_t i_ex tension,
uint16_t i_network_id, uint8_t i_version, bool b_curre nt_next); uint16_t i_network_id, uint8_t i_version, bool b_curre nt_next);
/*! /*!
* \fn dvbpsi_nit_t *dvbpsi_nit_new(uint8_t i_table_id, uint16_t i_extensio n, * \fn dvbpsi_nit_t *dvbpsi_nit_new(uint8_t i_table_id, uint16_t i_extensio n,
* uint16_t i_network_id, uint8_t i_versio n, * uint16_t i_network_id, uint8_t i_versio n,
* bool b_current_next); * bool b_current_next);
* \brief Allocate and initialize a new dvbpsi_nit_t structure. * \brief Allocate and initialize a new dvbpsi_nit_t structure.
* \param i_table_id Table ID, 0x4E, 0x4F, or 0x50-0x6F. * \param i_table_id Table ID, 0x40 (actual) or 0x41 (other)
* \param i_extension Table ID extension, here service ID. * \param i_extension Table ID extension, here network ID.
* \param i_network_id network id * \param i_network_id network id
* \param i_version NIT version * \param i_version NIT version
* \param b_current_next current next indicator * \param b_current_next current next indicator
* \return p_nit pointer to the NIT structure * \return p_nit pointer to the NIT structure
*/ */
dvbpsi_nit_t *dvbpsi_nit_new(uint8_t i_table_id, uint16_t i_extension, dvbpsi_nit_t *dvbpsi_nit_new(uint8_t i_table_id, uint16_t i_extension,
uint16_t i_network_id, uint8_t i_version, uint16_t i_network_id, uint8_t i_version,
bool b_current_next); bool b_current_next);
/************************************************************************** *** /************************************************************************** ***
 End of changes. 4 change blocks. 
8 lines changed or deleted 8 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/