• Timothy B. Terriberry's avatar
    ec_smallmul: Convert CDFs to iCDFs. · f6c807c5
    Timothy B. Terriberry authored
    Hoists the iCDF conversion outside of the daala code.
    We directly store 32768 - cdf[i] in each cdf, to avoid having to
    convert the whole array every time a symbol is coded.
    
    This works with ec_multisymbol, new_tokenset, and ec_adapt.
    
    Compared to Change-Id Idbbd3743e9189146cb519d5b984bdabd69e3f4c0,
    this improves decoder runtimes by 1.15% at QP=55 and 2.64% at
    QP=20.
    
    The overall slowdown of ec_smallmul is now 0.12% at QP=55 and
    0.44% at QP=20.
    
    Encoder output should not change, and all streams should remain
    decodable without decoder changes.
    
    Change-Id: I06b8b75b667bb1bc4ddffc78f895e48a09f4c578
    f6c807c5
generic_encoder.c 5.32 KB