Log in

View Full Version : Reference management in H.264/X264


xkfz007
22nd May 2014, 08:43
I am studying the reference management of H.264. The reference mechanism of H.264 is complicated to me.
For B slices, the List0 and List1 contain all the references, but the orders are different. So I have a problem, is it possible for a B-slice to select the same reference frame from List0 and List1?
I can't understand the re-ordering either. Both for B- and P-slices, the reference frames in the reference list ( List0 and List1) are ordered by the distance(display order) from the current frame. That means the most likely reference is in the front. So why does the reordering is needed?
In X264, the reference management is simple. For B-slice, the List0 contains only the previous frames(display order) and the List1 contains only the later frames. And there are no short-term or long-term references in X264.
In my opinion, during the encoding process of mode selection, in the motion estimation part, X264 traverses all the references in List0 or List1 to find the best. I want to ensure if I am right?Or if the X264 has some better(faster) ways to select the best?Like getting the references from the neighbor MBs as the candidates?