• Urvang Joshi's avatar
    Encoder/Decoder mismatch fix: need a separate copy of eob_counts. · 43e6281f
    Urvang Joshi authored
    The bug was introduced here:
    https://chromium-review.googlesource.com/#/c/399975/4/av1/encoder/bitstream.c
    In that patch, I had removed 2nd declaration of a variable of the same
    name. But it turns out that the two variables actually had a different
    type (even though the name was same).
    
    Now, we keep both variables, but rename one of them -- that fixes the
    mismatch. While we are at it, made both variables local as well.
    
    The fix can be verified as follows:
    ../../libvpx/configure --enable-experimental --enable-supertx
    --enable-var-tx --enable-entropy --enable-internal-stats && make clean
    && make -j16
    
    aomenc -o soccer_cif_1000_av1_b8.webm ../soccer_cif.y4m --codec=av1
    --limit=50 --skip=0 -p 2 --pass=1 --fpf=soccer_cif_av1.fpf --good
    --cpu-used=0 --target-bitrate=1000 --lag-in-frames=25 --min-q=0
    --max-q=63 --auto-alt-ref=1 --kf-max-dist=150 --kf-min-dist=0
    --drop-frame=0 --static-thresh=0 --bias-pct=50 --minsection-pct=0
    --maxsection-pct=2000 --arnr-maxframes=7 --arnr-strength=5 --sharpness=0
    --undershoot-pct=100 --overshoot-pct=100 --frame-parallel=0
    --tile-columns=0 --profile=0 --test-decode=warn
    
    aomenc -o soccer_cif_1000_av1_b8.webm ../soccer_cif.y4m --codec=av1
    --limit=50 --skip=0 -p 2 --pass=2 --fpf=soccer_cif_av1.fpf --good
    --cpu-used=0 --target-bitrate=1000 --lag-in-frames=25 --min-q=0
    --max-q=63 --auto-alt-ref=1 --kf-max-dist=150 --kf-min-dist=0
    --drop-frame=0 --static-thresh=0 --bias-pct=50 --minsection-pct=0
    --maxsection-pct=2000 --arnr-maxframes=7 --arnr-strength=5 --sharpness=0
    --undershoot-pct=100 --overshoot-pct=100 --frame-parallel=0
    --tile-columns=0 --profile=0 --test-decode=warn -v --psnr
    
    Change-Id: Ibd72dbe1f620e6de231513220ee4e190606613ae
    43e6281f
bitstream.c 138 KB