Since the upgrade I had also come up with another issue: the stream from the encoder shows "Warning: Invalid 'nal_unit_type': 0. Does the NAL unit begin with a MPEG 'start code' by mistake?" from H264VideoStreamDiscreteFramer::afterGettingFrame1().

I don't understand how you could have been using the code before, without having upgraded to at least the "2010.12.05" version, because the "H264VideoStreamDiscreteFramer" class did not even exist prior to that version of the code! By (apparently) using a bastardized, partially out-of-date version of the code, you wasted lots of time (mostly your own).

But anyway, now that you're using a fully up-to-date version of the code...

Does the data from your H.264 encoder start with a 0x00000001 (a 'start code') - for each NAL unit? If so, your H.264 data is a *byte stream*, not a sequence of discrete NAL units. In this case: 1/ If your H.264 input stream comes from a file (either a named file, or an open file), then you can use a "ByteStreamFileSource" to encapsulate it; you do not need to write your own 'device source' class. 2/ Because your input data is apparently a byte stream, you should definitely *not* be using a "H264VideoStreamDiscreteFramer". But now that I think about this some more: Because you are feeding your H.264 data into a Transport Stream - via a "MPEG2TransportStreamFromESSource" - I don't think you even need a H.264 'framer' class at all (because you will not be packing NAL units directly into outgoing RTP packets).

So, right now, I think you can probably just feed your input device object directly into a "MPEG2TransportStreamFromESSource", without any intervening 'framer' object. Furthermore, you might be able to use a "ByteStreamFileSource" to encapsulate your input device.

(But anyway, I've now spent far too much time dealing with your project. Don't expect much more help in the future...)
--

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/
_______________________________________________
live-devel mailing list
live-devel@lists.live555.com
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to