• Attila Nagy's avatar
    Fix loopfilter race condition in multithreaded encoder · 3939e85b
    Attila Nagy authored
    Race was introduced by https://gerrit.chromium.org/gerrit/15563.
    
    If loopfilter related config params were changed between frames, or
    after a KEY frame, there could be a mismatch between encoder's and
    decoder's recontructed image. In worst case, when frame buffers are
    reallocated because of a size change, the loopfilter could
    do an invalid data access (segmentation fault).
    
    Fixes:
    Sync with the loopfilter before applying any encoder changes in
    vp8_change_config().
    Moved the loopfilter synching to the top of
    encode_frame_to_data_rate() so that it's done before any alteration of
    the encoder.
    
    Change-Id: Ide5245d2a2aeed78752de750c0110bc4b46f5b7b
    3939e85b
onyx_if.c 173 KB