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