int
psi_build_pmt(streaming_start_t *ss, uint8_t *buf0, int maxlen, int pcrpid)
{
- int c, tlen, dlen, l, i, pid;
+ int c, tlen, dlen, l, i;
uint8_t *buf, *buf1;
buf = buf0;
for(i = 0; i < ss->ss_num_components; i++) {
streaming_start_component_t *ssc = &ss->ss_components[i];
- pid = 200 + i;
-
switch(ssc->ssc_type) {
case SCT_MPEG2VIDEO:
c = 0x02;
buf[0] = c;
- buf[1] = 0xe0 | (pid >> 8);
- buf[2] = pid;
+ buf[1] = 0xe0 | (ssc->ssc_pid >> 8);
+ buf[2] = ssc->ssc_pid;
buf1 = &buf[3];
tlen += 5;
memcpy(ssc->ssc_lang, st->st_lang, 4);
ssc->ssc_composition_id = st->st_composition_id;
ssc->ssc_ancillary_id = st->st_ancillary_id;
+ ssc->ssc_pid = st->st_pid;
ssc->ssc_width = st->st_width;
ssc->ssc_height = st->st_height;
}