*****************************************************************************/
#define ES_DESCRIPTOR_COUNT 255
+typedef enum
+{
+ USE_ACCESS_UNIT_START_FLAG = 1 << 7,
+ USE_ACCESS_UNIT_END_FLAG = 1 << 6,
+ USE_RANDOM_ACCESS_POINT_FLAG = 1 << 5,
+ HAS_RANDOM_ACCESS_UNITS_ONLY_FLAG = 1 << 4,
+ USE_PADDING_FLAG = 1 << 3,
+ USE_TIMESTAMPS_FLAG = 1 << 2,
+ USE_IDLE_FLAG = 1 << 1,
+ USE_DURATION_FLAG = 1
+} sl_config_flags;
+
+typedef struct
+{
+ uint32_t i_timestamp_resolution;
+ uint32_t i_OCR_resolution;
+ uint8_t i_flags;
+ uint8_t i_timestamp_length;
+ uint8_t i_OCR_length;
+ uint8_t i_AU_length;
+ uint8_t i_instant_bitrate_length;
+ uint8_t i_degradation_priority_length;
+ uint8_t i_AU_seqnum_length;
+ uint8_t i_packet_seqnum_length;
+
+ uint32_t i_timescale;
+ uint16_t i_accessunit_duration;
+ uint16_t i_compositionunit_duration;
+
+ uint64_t i_startdecoding_timestamp;
+ uint64_t i_startcomposition_timestamp;
+} sl_config_descriptor_t;
typedef struct
{
char *psz_url;
decoder_config_descriptor_t dec_descr;
+ sl_config_descriptor_t sl_descr;
} es_mpeg4_descriptor_t;