• Ronald S. Bultje's avatar
    Rewrite reference frame costing in the RD loop. · 0b8a95a0
    Ronald S. Bultje authored
    I now see I didn't write a very long description, so let's do it
    here then. We took a pretty big quality hit (0.1-0.2%) from my
    recent fix of the inversion of arguments to vp8_cost_bit() in the
    RD reference frame costing. I looked into it and basically the
    costing prevented us from switching reference frames. This is of
    course silly, since each frame codes its own prob_intra_coded, so
    using last frame cost indications as a limiting factor can never
    be right.
    Here, I've rewritten that code to estimate costings based partially
    on statistics from progress on current frame encoding. Overall,
    this gives us a ~0.2%-0.3% improvement over what we had previously
    before my argument-inversion-fix, and thus about ~0.4% over current
    git (on derf-set), and a little more (0.5-1.0%) on HD/STD-HD/YT.
    Change-Id: I79ebd4ccec4d6edbf0e152d9590d103ba2747775