Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: video pts differences on dvb-t in the uk



"Robert Schlabbach" <robert_s@gmx.net> writes:

> From: "Måns Rullgård" <mru@mru.ath.cx>
>> "Robert Schlabbach" <robert_s@gmx.net> writes:
>> > FWIW, I have been toying with writing a simple TS-to-PS converter
>> > which simply outputs a pack_header() each time a PCR is received
>> > (with the PCR time stamp as the SCR one) and then simply outputs
>> > PES packets whenever one has been completely received.
>>
>> Remember that TS allows a size of 0 to be specified in the PES header,
>> meaning that the PES packet can be arbitrarily large, the end being
>> indicated by the start of the next PES packet as marked by the
>> unit_start_flag in the TS header.
>
> Maybe I should have mentioned that the files created this way _can_ be
> played back! Yes, I'm aware of the PES header length field. It turned out
> that the field is correctly filled in for the audio streams (you may have
> noticed that there were two audio streams in the sample I've shown, an
> MPEG-2 and an AC-3 one), but has 0 in the length field for the video PES
> packets.

These packets are only allowed for video streams.

> I filled that field in after receiving the packet completely, but
> this occasionally didn't work, because the transmitted packets were
> up to 128KB in size, while the PES length field only allows up to
> 64KB sizes. So obviously, you have to remultiplex the streams
> correctly, best using DVD-compatible 2KB packet sizes.
>
> But the point here was just that audio packets are indeed commonly
> transmitted late (or so it seems).

With sufficient buffering on the client side it will always be
playable.  The question is whether it's valid MPEG.

-- 
Måns Rullgård
mru@mru.ath.cx




Home | Main Index | Thread Index