• John Koleszar's avatar
    Speed selection support for disabled reference frames · e55974bf
    John Koleszar authored
    There was an implicit reference frame test order (typically LAST,
    GOLD, ARF) in the mode selection logic, but this doesn't provide the
    expected results when some reference frames are disabled. For
    instance, in real-time mode, the speed selection logic often disables
    the ARF modes. So if the user disables the LAST and GOLD frames, the
    encoder was always choosing INTRA, when in reality searching the ARF
    in this case has the same speed penalty as searching LAST would have
    had.
    
    Instead, introduce the notion of a reference frame search order. This
    patch preserves the former priorities, so if a frame is disabled, the
    other frames bump up a slot to take its place. This patch lays the
    groundwork for doing something smarter in the frame test order, for
    example considering temporal distance or looking at the frames used by
    nearby blocks.
    
    Change-Id: I1199149f8662a408537c653d2c021c7f1d29a700
    e55974bf
ratectrl.c 55.6 KB