Mailing List archive

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

[vdr] Re: remux.c: splitting PES packets into 2048 byte blocks



On Wed, May 12, 2004 at 10:06:34PM +0200, Reinhard Nissl wrote:
> Hi,
> 
> Dr. Werner Fink wrote:
> 
> >On Mon, May 10, 2004 at 12:04:56AM +0200, Reinhard Nissl wrote:
> >
> >>what's the reason for splitting PES packets into smaller ones with 2048 
> >>(= IPACKS) bytes?
> >>
> >>I have a problem with that, when I want to replay dolby audio (AC3) with 
> >>xine. xine's demuxer currently expects the AC3 data to be supplied in one 
> >>big block (the original PES packet, as it was transmitted in the TS).
> >
> >The remuxer does NOT refill any of the AC3 data from the original
> >TS stream into some other PES packet format.
> >The format of the PES packet within the TS stream depends on the station
> >(ZDF, Pro7, Sat.1) ... this what I've found out for the bitstreamout
> >plugin.
> 
> I cannot confirm this. In my investigations, I've written the filtered TS 
> (just before assembling the PES packets) to a file. Looking at the file 
> showed me, that the broadcasted PES packets have a length field of e. g. 
> 0x2308 for ZDF.
> 
> With IPACKS == 2048, this results in 4 Packets of total size 2048 + a 
> shorter one. IPACKS == (0xffff + 6) fives me just a single packet.
> 
> Anyway, I don't want to blame VDR. It should be possible for xine to 
> determine the real size of AC3 data by looking at the AC3 header. That way, 
> it should be possible to handle those "continueation" packets.

OK, your're right. Just need a brown paperback ;^)
I've remembered that for just a year I've seen that e.g. ZDF put 4 upto
5 AC-3 frames into one payload of about 8kB+ of PS1 mpeg2 frames.

Btw: the remux part of VDR hase one disadvantage:  It splits
AC-3 frames and also normal Mpeg2 audio frames (normaly layer 2 with
576 bytes with the audio duration of 24ms) to fit the 2048
PES container aka frame length.

Now if you cut such a PES stream even on the GOP boundaries, not
only the PTS offset of the audio to the video makes trouble but
also the broken subframes of audio Mpeg2 and AC-3 within the payloads
are the cause of noise at the cut mark (OK the bitstreamout plugin
ignores broken AC-3 frames but the Mpeg2 audio decoder on the DVB
card does not).

          Werner

-- 
AC3 loop through sound card http://bitstreamout.sourceforge.net/
Howto http://www.vdr-portal.de/board/thread.php?threadid=1958
------------------------------------------------------------------
 "Having a smoking section in a restaurant is like having
         a  peeing section in a swimming pool." -- Edward Burr


-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe vdr" as subject.



Home | Main Index | Thread Index