void on_ait_section(GF_M2TS_Demuxer *ts, u32 evt_type, void *par) { GF_M2TS_SL_PCK *pck = (GF_M2TS_SL_PCK *)par; char *data; u32 u32_data_size; u32 u32_table_id; if (evt_type == GF_M2TS_EVT_AIT_FOUND) { GF_M2TS_AIT* ait; GF_M2TS_AIT_CARRY* ait_carry = (GF_M2TS_AIT_CARRY*)pck->stream; data = pck->data; if(!check_ait_already_received(ts->ChannelAppList,ait_carry->pid,data)){ GF_SAFEALLOC(ait, GF_M2TS_AIT); u32_data_size = pck->data_len; u32_table_id = data[0]; ait->pid = ait_carry->pid; ait->service_id = ait_carry->service_id; gf_m2ts_decode_ait(ait, data, u32_data_size, u32_table_id); gf_m2ts_process_ait(ts,ait); gf_ait_destroy(ait); if (ts->on_event) ts->on_event(ts, GF_M2TS_EVT_AIT_FOUND, pck->stream); } } }
void on_ait_section(GF_M2TS_Demuxer *ts, u32 evt_type, void *par) { GF_M2TS_SL_PCK *pck = (GF_M2TS_SL_PCK *)par; char *data; u32 u32_data_size; u32 u32_table_id; if (evt_type == GF_M2TS_EVT_AIT_FOUND) { data = pck->data; u32_data_size = pck->data_len; u32_table_id = data[0]; gf_m2ts_process_ait((GF_M2TS_AIT*)pck->stream, data, u32_data_size, u32_table_id); } }