Thank you for your answers and suggestions.

Regards,
Miladin

From: live-devel [mailto:[email protected]] On Behalf Of Joshua 
Kordani
Sent: 20 June 2014 15:05
To: [email protected]
Subject: Re: [Live-devel] Decoding H264 non-IDR picture

On 6/20/14 5:42 AM, Miladin Sajic wrote:
Hi,

I am trying to implement decoding of H264 NAL units that are received from the 
camera (using live555 rtsp streaming). Everything works fine if received NAL 
unit is IDR (see part of the code in PS) but it does not work for SLICE NAL 
unit (nal_unit_type == 1). To decode image this NAL unit is not enough on its 
own and reference needs to be made to all the units since last IDR unit (key 
frame with nal_unit_type == 5). I do not know how to implement this.

How to combine last IDR unit with the following SLICE NAL units  to produce 
H264 frame before sending it to the decoder?

[cid:[email protected]]

Can you give me any advice or point me to the right direction? Any help is 
greatly appreciated.




_______________________________________________

live-devel mailing list

[email protected]<mailto:[email protected]>

http://lists.live555.com/mailman/listinfo/live-devel
Sorry Ross for continuing the OT discussion, but just real quick.  The answer 
to your decoding question lies in the question itself, you said that non idr 
slices can reference any prior nal up to the last idr.  So in order to decode, 
you need to pass all prior nals up to the last idr.  How exactly you do this 
depends on the decoder library you're using, ie ffmpeg requires that you 
provide the full bitstream each call to the decoder, hence (sc = startcode)
sps sc pps sc idr       frame 1
sps sc pps sc idr sc slice      frame 2
sps sc pps sc idr sc slice sc slice    frame 3
and so on.

I can imagine a decoding library frontend that keeps track of the unchanging 
parts of the bitstream for you, and I wonder why it doesn't already exist, ie
you pass nals in receive order to the decoder library and then ask the library 
to give you a frame.  Eventually, once it has enough info, you get a frame back 
each call, while only having to briefly store the latest nal on behalf of the 
library.

I know this is OT, but if I'm mistaken someone please speak up.


--

Joshua Kordani

LSA Autonomy
_______________________________________________
live-devel mailing list
[email protected]
http://lists.live555.com/mailman/listinfo/live-devel

Reply via email to