1. 21 Oct, 2016 7 commits
    • Nathan E. Egge's avatar
      Update joint_cdf table once per frame. · 5f7fd7ab
      Nathan E. Egge authored
      Move computing the joint_cdf table per coded mv joint symbol to
       computing it only when the probabilities are updated.
      
      Change-Id: If5d195f70e6fad7b60f69606c8386ad5e69657d2
      5f7fd7ab
    • Nathan E. Egge's avatar
      Update inter_mode_cdf tables once per frame. · 6ec4d10d
      Nathan E. Egge authored
      Move computing the inter_mode_cdf tables per coded inter mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I7a7b059ee75723cb6f278ed82a20cf34c27915d8
      6ec4d10d
    • Nathan E. Egge's avatar
      Update uv_mode_cdf tables once per frame. · 380cb1a9
      Nathan E. Egge authored
      Move computing the uv_mode_cdf tables per coded intra mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I627b59d30726c913f5d7ba7753cb0446a12655bb
      380cb1a9
    • Nathan E. Egge's avatar
      Update y_mode_cdf tables once per frame. · 5710c722
      Nathan E. Egge authored
      Move computing the y_mode_cdf tables per coded intra mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I8c43d09b8ef5febe2a3ec64bd51d28bd78ea73ed
      5710c722
    • Nathan E. Egge's avatar
      Update kf_y_mode_cdf tables once per frame. · 3ef926ed
      Nathan E. Egge authored
      Move computing the kf_y_mode_cdf tables per coded intra mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I5999447050c2f7d5dbccde80bee05ecd1c5440ab
      3ef926ed
    • Nathan E. Egge's avatar
      Use intra_ext_tx_cdf when coding tx_type. · 72762a28
      Nathan E. Egge authored
      When building with --enable-daala_ec, the tx_type for intra blocks can be
       coded using the CDFs that are updated once per frame.
      This patch converts a tx_type symbol to be coded with aom_write_symbol()
       and aom_read_symbol() that was missed in f3e8e267.
      
      Change-Id: I34f8fef7525f88e156bbcb78dfc48994367610ce
      72762a28
    • Yaowu Xu's avatar
      Fix encoder crash when --enable-daala-ec · e1466ad4
      Yaowu Xu authored
      Change-Id: I6855e18d92f693a9789eda7c91a3430566469bdd
      e1466ad4
  2. 20 Oct, 2016 3 commits
    • Nathan E. Egge's avatar
      Compute all token encodings from symbol trees. · 3c056790
      Nathan E. Egge authored
      The av1_token encodings must match the contents of the aom_tree_index
       structures so generate all encodings from the symbol trees.
      
      Change-Id: I37be9f12c86a02693ae3c3c1d24b00f2abb29bfb
      3c056790
    • 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
    • hui su's avatar
      Seperate FILTER_INTRA from EXT_INTRA experiment · 5db9743f
      hui su authored
      Prepare for the av1/nextgenv2 merge.
      
      Coding gain (%):
      
                     lowres     midres
      ext-intra       0.69       0.97
      filter-intra    0.67       0.83
      both            1.05       1.48
      
      Change-Id: Ia24d6fafb3e484c4f92192e0b7eee5e39f4f4ee6
      5db9743f
  3. 19 Oct, 2016 6 commits
  4. 18 Oct, 2016 1 commit
    • Nathan E. Egge's avatar
      Update segment tree_cdf per frame. · f627e58e
      Nathan E. Egge authored
      Move computing the segmentation_probs.tree_cdf table per symbol to
       computing it only when the probabilities are updated.
      
      Change-Id: I3826418094bbaca4ded87de5ff04d4b27c85e35a
      f627e58e
  5. 17 Oct, 2016 5 commits
  6. 14 Oct, 2016 3 commits
  7. 13 Oct, 2016 4 commits
    • Steinar Midtskogen's avatar
      Move CLPF block signals from frame to SB level. · 97535038
      Steinar Midtskogen authored
      These signals were in the uncompressed frame header (as a temporary
      hack), which caused two problems:
      
      * We don't want that header to be duplicated in the slice header
      * It was necessary to signal the number of bits to transmit up front
      
      However, the filter size can be 128x128 which is greater than the SB
      size, and a decoder wouldn't be able to know whether to read a bit or
      not until the final SB of that 128x128 block has been decoded
      (depending on whether the 128x128 is all skip or not).  Therefore the
      signalling was changed for 128x128 blocks so that every top left SB of
      a 128x128 filter block contains a signal regardless of whether the
      block is all skip or not.  Also, all the MB's of 128x128 block are
      filtered even if they are skip MB's.  This gives the signal a purpose
      even when the 128x128 block is all skip, and it also gives a slight
      coding gain as it leaves a way to filter skip blocks, which was
      previously forbidden.
      
      Low latency:
      PSNR YCbCr:     -0.19%     -0.14%     -0.06%
         PSNRHVS:     -0.15%
            SSIM:     -0.13%
          MSSSIM:     -0.15%
       CIEDE2000:     -0.19%
      
      High latency:
      PSNR YCbCr:     -0.03%     -0.01%     -0.09%
         PSNRHVS:      0.04%
            SSIM:      0.00%
          MSSSIM:      0.02%
       CIEDE2000:     -0.02%
      
      Change-Id: I69ba7144d07d388b4f0968f6a53558f480979171
      97535038
    • Yue Chen's avatar
      Renamings for OBMC experiment · cb60b185
      Yue Chen authored
      To get ready for pulling AV1 to nextgenv2
      Replace the experimental flag by MOTION_VAR. Rename major variables.
      
      Change-Id: If6cf4f37b9319c46d8f90df551cc7295d66ca205
      cb60b185
    • Alex Converse's avatar
      Import the aom_read/write_symbol abstractions from aom/master · a1ac9728
      Alex Converse authored
      Change-Id: I0b255c05108c3b97e74df1b59c34111c9e9a5770
      a1ac9728
    • Jean-Marc Valin's avatar
      Deringing cleanup: remove DERING_REFINEMENT (always on now) · e874ce03
      Jean-Marc Valin authored
      Change-Id: Ic3a6855799be010e69aeab924b013679282ab191
      e874ce03
  8. 12 Oct, 2016 4 commits
  9. 11 Oct, 2016 1 commit
    • Nathan E. Egge's avatar
      Move tree writing code into bitwriter.h. · eeedc633
      Nathan E. Egge authored
      Rename av1_write_tree() to aom_write_tree() and move it into bitwriter.h
       to match aom_read_tree() in bitreader.h.
      
      Manually cherry-picked from aom/master:
      33a143fa
      
      Change-Id: I6c686cdd3e0f179d7e95c5bc6984558b62d46d67
      eeedc633
  10. 10 Oct, 2016 2 commits
  11. 06 Oct, 2016 1 commit
  12. 30 Sep, 2016 1 commit
  13. 29 Sep, 2016 2 commits
    • Yaowu Xu's avatar
      more ref_mv changes from aom/master · 4306b6e5
      Yaowu Xu authored
      Change-Id: I9152f898dfacdf3877ed719f193bb1e0dbee0a1a
      4306b6e5
    • Yue Chen's avatar
      Fix unit test failure for RECT_TX + VAR_TX · 49587a77
      Yue Chen authored
      Disable rect_tx because we only support 4x4 Walsh-Hadamard transform
      in lossless mode.
      
      Fixes failure in ./test_libaom --gtest_filter=*Large*ScreencastQ0/1
      Configuration: --enable-experimental --enable-var-tx --enable-rect-tx
       --enable-ref-mv --enable-ext_intra --enable-ext_tx --enable-debug
       --disable-optimizations
      
      Change-Id: Ib6b3494c7dcf7182f1cab9b138388d054851a23d
      49587a77