Hi, The H264VideoStreamParser::Parse() method appears to insert additional 0x00000001 start codes when the buffered data is greater than the BANK_SIZE and the fBank[] banks are switched.
Steps to reproduce: 1. Convert a H.264 video such as the Live555 sample slamtv10.264 file to MPEG-TS using testProgs/testH264VideoToTransportStream. 2. Demux the H.264 data from the MPEG-TS file. (I used a modified version of testProgs/MPEG2TransportStreamIndexer). 3. Compare the demuxed H.264 data with the input H.264 file. In the output file at every BANK_SIZE (approx) offset there is an addition 0x00000001 start code compared to the source data. This doesn't (generally occur) at the start of a NAL unit. The first difference occurs after the byte sequence 0x94caf7ce in the TS or H.264 files (using slamtv10.264 as an input). It is followed by an extra 0x00000001: ... 94ca f7ce 0000 0001 83f3 539b ... The demuxed H.264 data causes the JM H.264 reference decoder to complain: http://iphome.hhi.de/suehring/tml/ Error: Found NALU with forbidden_bit set, bit error? It is probably caused by StreamParser::ensureValidBytes1() throwing an (intended) exception after the BANK_SIZE buffer is full which causes a re-entry to H264VideoStreamParser::parse() which in turn does save4Bytes(0x00000001) when fOutputStartCodeSize is non-zero. However, it may not be valid to add the start code in this case. This was tested with Live555 version "2012.04.18". Do you think this is an issue or is it valid output? Regards, John. -- -------------------------------------------------------------- Intel Shannon Limited Registered in Ireland Registered Office: Collinstown Industrial Park, Leixlip, County Kildare Registered Number: 308263 Business address: Dromore House, East Park, Shannon, Co. Clare This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
_______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel