/* table ids */
#define PAT_TID 0x00
#define PMT_TID 0x02
+#define M4OD_TID 0x05
#define SDT_TID 0x42
#define STREAM_TYPE_VIDEO_MPEG1 0x01
#define STREAM_TYPE_AUDIO_AAC_LATM 0x11
#define STREAM_TYPE_VIDEO_MPEG4 0x10
#define STREAM_TYPE_VIDEO_H264 0x1b
+#define STREAM_TYPE_VIDEO_CAVS 0x42
#define STREAM_TYPE_VIDEO_VC1 0xea
#define STREAM_TYPE_VIDEO_DIRAC 0xd1
const uint8_t *buf, int len);
void ff_mpegts_parse_close(MpegTSContext *ts);
-typedef struct {
+typedef struct SLConfigDescr {
+ int use_au_start;
+ int use_au_end;
+ int use_rand_acc_pt;
+ int use_padding;
+ int use_timestamps;
+ int use_idle;
+ int timestamp_res;
+ int timestamp_len;
+ int ocr_len;
+ int au_len;
+ int inst_bitrate_len;
+ int degr_prior_len;
+ int au_seq_num_len;
+ int packet_seq_num_len;
+} SLConfigDescr;
+
+typedef struct Mp4Descr {
int es_id;
int dec_config_descr_len;
uint8_t *dec_config_descr;
+ SLConfigDescr sl;
} Mp4Descr;
/**
* @param stream_type STREAM_TYPE_xxx
* @param pp Descriptor buffer pointer
* @param desc_list_end End of buffer
- * @param mp4_dec_config_descr_len Length of 'mp4_dec_config_descr', or zero if not present
- * @param mp4_es_id
- * @param pid
- * @param mp4_dec_config_descr
* @return <0 to stop processing
*/
int ff_parse_mpeg2_descriptor(AVFormatContext *fc, AVStream *st, int stream_type,
const uint8_t **pp, const uint8_t *desc_list_end,
- Mp4Descr *mp4_descr, int mp4_descr_count, int pid);
+ Mp4Descr *mp4_descr, int mp4_descr_count, int pid,
+ MpegTSContext *ts);
#endif /* AVFORMAT_MPEGTS_H */