--- multiplexer/splicets.c 2001/03/19 20:52:34 1.1 +++ multiplexer/splicets.c 2001/03/29 13:27:43 1.2 @@ -99,13 +99,13 @@ static int findapid (stream_descr *s) { boolean ok = TRUE; do { - if ((nextpid < TS_PID_LOWEST) || (nextpid >= TS_PID_HIGHEST)) { + if ((nextpid < TS_PID_SPLICELO) || (nextpid >= TS_PID_SPLICEHI)) { if (!ok) { warn (LERR,"No PID found",ETSC,2,1,0); return (0); } ok = FALSE; - nextpid = TS_PID_LOWEST; + nextpid = TS_PID_SPLICELO; } else { nextpid += 1; } @@ -128,7 +128,6 @@ prog_descr *splice_openprog (int program p->program_number = programnb; p->pcr_pid = -1; p->pmt_pid = pid; - p->map_sequence = -1; p->pmt_conticnt = 0; p->pmt_version = 0; p->changed = TRUE; @@ -435,7 +434,7 @@ stream_descr *process_something (stream_ k = c->length; } } - d = output_pushdata (TS_PACKET_SIZE,c->time.push + s->u.d.delta); + d = output_pushdata (TS_PACKET_SIZE,c->msecpush + s->u.d.delta); if (d == NULL) { return (s); } @@ -457,13 +456,7 @@ stream_descr *process_something (stream_ if ((psi_size <= 0) && (s->u.d.has_clockref) && ((c->pcr.valid) - || (s->u.d.next_clockref - (c->time.push + s->u.d.delta) <= 0))) { -/* -fprintf (stderr,"n=%10d, p=%10d, (now %10d)\n", -s->u.d.next_clockref, -c->time.push + s->delta, -msec_now ()); -*/ + || (s->u.d.next_clockref - (c->msecpush + s->u.d.delta) <= 0))) { adapt_flags1 |= TS_ADAPT_PCRFLAG; f -= 6; } @@ -539,7 +532,10 @@ msec_now ()); *d++ = adapt_flags1; if (adapt_flags1 & TS_ADAPT_PCRFLAG) { clockref pcr; - msec2clockref (c->time.push + s->u.d.delta,pcr); +/* + msec2clockref (c->msecpush + s->u.d.delta,pcr); +*/ + msec2cref (&s->u.d.conv,c->msecpush + s->u.d.delta,&pcr); *d++ = (pcr.base >> 25) | (pcr.ba33 << 7); *d++ = pcr.base >> 17; *d++ = pcr.base >> 9; @@ -547,7 +543,7 @@ msec_now ()); *d++ = (pcr.base << 7) | (pcr.ext >> 8) | 0x7E; *d++ = pcr.ext; s->u.d.next_clockref = - (c->time.push + s->u.d.delta) + MAX_MSEC_PCRDIST * 8/10; + (c->msecpush + s->u.d.delta) + MAX_MSEC_PCRDIST; c->pcr.valid = FALSE; } if (adapt_flags1 & TS_ADAPT_OPCRFLAG) {