I am writing a demultiplexer for MPEG Transport Stream which should extract Audio and Video access points. Assume i have an Audio PID and that i know it is AC-3 audio. Also assume that i collected all the PID's TS packets and assembles their PESes.
1.How can i extract the AC-3 access points? by what i read so far the AC-3 header should start with 0x0B 0xFF, however by looking at the PES's payload it is not there... 2.The AC-3's PES streamID is PRIVATE_STREAM_1. does it has the "Optional PES header"?
Thanks!
PES header is defined under MPEG2 systems - which was created before AAC.
PES packetization is general purpose and hence there is no notion of private/special headers depending on any codec.
All payload of PES (i.e. data other than PES header) -concatenated forms the ES stream for any codec.