[Live-devel] H264VideoStreamDiscreteFramer and PPS , SPS

Ross Finlayson finlayson at live555.com
Sun Jul 10 21:08:08 PDT 2011


>I am following the FAQ item in order to use live555 with an encoder 
>that delivers 'full frames'.
>I am basing my new app on "testH264VideoStreamer" and have created a 
>"FramedSource" overrides that delivers full frames, per 
>"DeviceSource.cpp/.h"
>Instead of using an instance of "H264VideoStreamFramer" i am using 
>H264VideoStreamDicreteFramer, since the  "FramedSource" override 
>delivers full frames.

Correct.


>What i see inside "H264VideoStreamDicreteFramer" is that it expects 
>an 8-byte NAL header in order to do its 'aftergetting'.

No it doesn't.  I'm not sure why you would think this.


>   I don't think my raw frame will have this NAL header, so i guess 
>that i can eliminate this code in an override that i will implement.

No, as long as your NAL units are generated properly (by your 
encoder), you should not need to modify the 
"H264VideoStreamDiscreteFramer" code at all.  (Note, in particular, 
that your NAL units - from your encoder - should *not* begin with 
0x00000001 or 0x000001.)


>   But, I guess that i would need to provide SPS and PPS into the RTP 
>stream, is there a simple way to construct these?

They should be generated automatically (and perhaps periodically) by 
your encoder.  Our code automatically notices these special NAL units 
when they appear.  (Note lines 69 and 71 of 
"H264VideoStreamDiscreteFramer.cpp".)
-- 

Ross Finlayson
Live Networks, Inc.
http://www.live555.com/


More information about the live-devel mailing list