Commit dfc818d3 authored by Francois Cartegnie's avatar Francois Cartegnie Committed by Jean-Paul Saman

differenciate NVOD EIT

parent b036dc2c
...@@ -222,6 +222,8 @@ dvbpsi_eit_event_t* dvbpsi_eit_event_add(dvbpsi_eit_t* p_eit, ...@@ -222,6 +222,8 @@ dvbpsi_eit_event_t* dvbpsi_eit_event_add(dvbpsi_eit_t* p_eit,
p_event->i_duration = i_duration; p_event->i_duration = i_duration;
p_event->i_running_status = i_running_status; p_event->i_running_status = i_running_status;
p_event->b_free_ca = b_free_ca; p_event->b_free_ca = b_free_ca;
p_event->b_nvod = ( (i_start_time & 0xFFFFF000) == 0xFFFFF000
&& i_running_status == 0x0 );
p_event->p_next = NULL; p_event->p_next = NULL;
p_event->i_descriptors_length = i_event_descriptor_length; p_event->i_descriptors_length = i_event_descriptor_length;
p_event->p_first_descriptor = NULL; p_event->p_first_descriptor = NULL;
...@@ -238,6 +240,19 @@ dvbpsi_eit_event_t* dvbpsi_eit_event_add(dvbpsi_eit_t* p_eit, ...@@ -238,6 +240,19 @@ dvbpsi_eit_event_t* dvbpsi_eit_event_add(dvbpsi_eit_t* p_eit,
return p_event; return p_event;
} }
/*****************************************************************************
* dvbpsi_eit_nvod_event_add
*****************************************************************************
* Add an NVOD event description at the end of the EIT.
*****************************************************************************/
dvbpsi_eit_event_t* dvbpsi_eit_nvod_event_add(dvbpsi_eit_t* p_eit,
uint16_t i_event_id, uint32_t i_duration, bool b_free_ca,
uint16_t i_event_descriptor_length)
{
return dvbpsi_eit_event_add(p_eit, i_event_id, 0xFFFFF000, i_duration,
0x0, b_free_ca, i_event_descriptor_length);
}
/***************************************************************************** /*****************************************************************************
* dvbpsi_eit_event_descriptor_add * dvbpsi_eit_event_descriptor_add
***************************************************************************** *****************************************************************************
......
...@@ -59,6 +59,7 @@ typedef struct dvbpsi_eit_event_s ...@@ -59,6 +59,7 @@ typedef struct dvbpsi_eit_event_s
uint32_t i_duration; /*!< duration */ uint32_t i_duration; /*!< duration */
uint8_t i_running_status; /*!< Running status */ uint8_t i_running_status; /*!< Running status */
bool b_free_ca; /*!< Free CA mode flag */ bool b_free_ca; /*!< Free CA mode flag */
bool b_nvod; /*!< Unscheduled NVOD Event */
uint16_t i_descriptors_length; /*!< Descriptors loop uint16_t i_descriptors_length; /*!< Descriptors loop
length */ length */
dvbpsi_descriptor_t * p_first_descriptor; /*!< First of the following dvbpsi_descriptor_t * p_first_descriptor; /*!< First of the following
...@@ -236,6 +237,28 @@ dvbpsi_eit_event_t* dvbpsi_eit_event_add(dvbpsi_eit_t* p_eit, ...@@ -236,6 +237,28 @@ dvbpsi_eit_event_t* dvbpsi_eit_event_add(dvbpsi_eit_t* p_eit,
uint8_t i_running_status, bool b_free_ca, uint8_t i_running_status, bool b_free_ca,
uint16_t i_event_descriptor_length); uint16_t i_event_descriptor_length);
/*****************************************************************************
* dvbpsi_eit_nvod_event_add
*****************************************************************************/
/*!
* \fn dvbpsi_eit_event_t* dvbpsi_eit_nvod_event_add(dvbpsi_eit_t* p_eit,
uint16_t i_event_id,
uint32_t i_duration,
bool b_free_ca,
uint16_t i_event_descriptor_length)
* \brief Add a NVOD service description at the end of the EIT.
* \param p_eit pointer to the EIT structure
* \param i_event_id Event ID
* \param i_duration Duration
* \param b_free_ca Free CA flag
* \param i_event_descriptor_length The descriptors loop length in bytes of
all descriptors for this event.
* \return a pointer to the added service description.
*/
dvbpsi_eit_event_t* dvbpsi_eit_nvod_event_add(dvbpsi_eit_t* p_eit,
uint16_t i_event_id, uint32_t i_duration, bool b_free_ca,
uint16_t i_event_descriptor_length);
/***************************************************************************** /*****************************************************************************
* dvbpsi_eit_event_descriptor_add * dvbpsi_eit_event_descriptor_add
*****************************************************************************/ *****************************************************************************/
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment