Log in

View Full Version : random access decodable leading (RADL) picture


rudyb
27th August 2014, 03:53
What is random access decodable leading (RADL) picture?
Can anyone please explain what is a "random access" picture?
And what NAL unit types RADL_R or RADL_N ? And how are these two types different?

Thanks,
--Rudy

foxyshadis
27th August 2014, 04:51
You know IDR is a closed-GOP bidirectional prediction boundary, and CRA is an open-GOP forward prediction boundary only. Frames after the CRA (with a PTS before the CRA's PTS) that depend on anything before the CRA are RASL, meaning they get skipped entirely if the CRA is seeked to or becomes a BLA. If a frame would be RASL but doesn't actually depend on anything before the CRA, then it's RADL -- it's decodable, but it's useless since it comes before what's now the first canonical frame, but it can still be used as a forward reference, unlike a RASL.

I'd imagine this is only a big deal if you have lots of B frames, or very long GOPs. This way you can have better random-access or splicing with long GOPs, although the video might stutter for a bit as it displays only the decodable frames.

xooyoozoo
27th August 2014, 05:25
it's RADL -- it's decodable, but it's useless since it comes before what's now the first canonical frame, but it can still be used as a forward reference, unlike a RASL.

I recall that the spec disallows leading pictures of any type to be used as a reference for future non-leading pictures.

If so, I think RADL pictures might still be useful for when your bitstream follows a strict frame hierarchy, but the encoder can at least do scene detection. Or maybe the encoder realizes that it's more RD-efficient to use a slightly later frame in a new scene as the keyframe.

rudyb
27th August 2014, 20:51
Ok thanks. I need time to digest this information. But what is the difference between RADL_R or RADL_N ?

foxyshadis
27th August 2014, 22:51
For all NAL types, _R = referenced, _N = non-referenced.