1. 21 Feb, 2018 1 commit
    • Sebastien Alaiwan's avatar
      Remove experimental flag of LV_MAP · cad5ebce
      Sebastien Alaiwan authored
      This experiment has been adopted, we can simplify the code
      by dropping the associated preprocessor conditionals.
      
      Change-Id: Ic3438799335c6cd05f170302f49bd47e1f705c24
      cad5ebce
  2. 17 Feb, 2018 2 commits
    • Zoe Liu's avatar
      [NORMATIVE] Unify context design for single ref · 3b353474
      Zoe Liu authored
      The CL makes the context design for single reference frame coding the
      same as that for the compound reference frame coding. There are 3
      contexts designed for each of the binary symbols for the single
      reference frame scenario, and the designed contexts simply rely on the
      counts of the references used in the neighboring two blocks.
      
      Once this CL is merged, the coding of the reference frames, regardless
      of single prediction or compound prediction, will all follow the same
      context design pattern for all the binary symbols. The design logic is
      much simpler and the lines of code for each binary symbol context
      identification are reduced by 80%.
      
      Further, this CL has obtained a small coding gain for 30 frames with
      the default coding tools:
      
      lowres: avg_psnr -0.015%; ovr_psnr -0.021%; ssim -0.002%
      midres: avg_psnr -0.108%; ovr_psnr -0.139%; ssim -0.135%
      
      BUG=aomedia:1402
      BUG=aomedia:973
      
      Change-Id: Ia72a1d18e85ac3a05308675b60b95f80f2219c46
      3b353474
    • Jingning Han's avatar
      Remove unused context models for drl_index · 233c7627
      Jingning Han authored
      Remove deprecated context models for drl index coding.
      
      BUG=aomedia:1208
      
      Change-Id: If255fa93d0c746738f0fc005464388e790c89b63
      233c7627
  3. 15 Feb, 2018 1 commit
    • Yaowu Xu's avatar
      Remove CONFIG_TX64X64 · d3d4159f
      Yaowu Xu authored
      The experiment is fully adopted.
      
      Change-Id: I6cc80a2acf0c93c13b0e36e6f4a2378fe5ce33c3
      d3d4159f
  4. 12 Feb, 2018 1 commit
    • Zoe Liu's avatar
      [NORMATIVE] Unify comp ref context design · 4917295b
      Zoe Liu authored
      This patch uses the neighboring ref counts to design the contexts
      for the coding of the first reference frame of a reference pair for
      the compound prediction. This aligns the context design with that
      for the second reference frame of a reference pair for the
      compound prediction.
      
      The new designed contexts are much simpler than that in the baseline.
      The number of contexts for each binary symbol is reduced from 5 to
      3. Further, the logic for each context only depends on the collected
      neighboring ref counts, which is straightforward to derive.
      
      The default CDFs for the first reference frame coding have been
      updated using aom_entropy_optimizer.
      
      Experimental results demonstrate a small coding gain for Google test
      sets of both lowres and midres, with 30 frames coded for the default
      coding tool setup:
      
      lowres: avg_psnr -0.077%; ovr_psnr -0.076%; ssim -0.106%
      midres: avg_psnr -0.059%; ovr_psnr -0.066%; ssim -0.037%
      
      BUG=aomedia:1356
      
      Change-Id: I781abbe4616dc3f3a7213ec663946ff9844eb830
      4917295b
  5. 07 Feb, 2018 1 commit
    • Jingning Han's avatar
      Re-design inter mode context for compound modes · 7ae50fda
      Jingning Han authored
      Unify the context model referencing for both single and compound
      inter modes. Make the context model for compound inter mode coding
      independent of the single ones search.
      
      Need to train the model in the final run. Currently provides 0.05%
      compression performance improvements.
      
      Change-Id: I9597df4aa293fc7aa2b1becb6dfd68f911d6f278
      7ae50fda
  6. 02 Feb, 2018 1 commit
  7. 30 Jan, 2018 1 commit
  8. 29 Jan, 2018 1 commit
  9. 23 Jan, 2018 1 commit
  10. 22 Jan, 2018 1 commit
  11. 16 Jan, 2018 1 commit
    • David Michael Barr's avatar
      [CFL] separate uv_mode CDFs, split on is_cfl_allowed · cb3a8ef5
      David Michael Barr authored
      This is to exclude coding CFL for block sizes where it is normatively
      not allowed.
      
      Reuse the alternate CDFs from the --disable-cfl path.
      
      This yields some improvement on subset1:
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0113 | -0.2630 | -0.2138 |   0.0021 | -0.0110 | -0.0157 |    -0.0511
      
      BUG=aomedia:1182
      
      Change-Id: I1e5f23ef7f2debcf8edce788bfa63ec95db4a679
      cb3a8ef5
  12. 11 Jan, 2018 1 commit
  13. 08 Jan, 2018 2 commits
  14. 06 Jan, 2018 5 commits
  15. 04 Jan, 2018 2 commits
  16. 03 Jan, 2018 2 commits
  17. 31 Dec, 2017 1 commit
    • Dake He's avatar
      [lv_map_multi] multisymbol coding of eob · 0db7d0eb
      Dake He authored
      1. code the range of eob in a transform block as a single symbol.
      2. initialize cdfs directly.
      3. initial cdfs are trained by using laplace prob estimates as in base
      level coding (CL 38638)
      
      Change-Id: I65c88d6dd0da3381feeec837928ac5bd81be4296
      0db7d0eb
  18. 29 Dec, 2017 1 commit
    • Dake He's avatar
      [lv_map_multi] base level coding · 4d447696
      Dake He authored
      1. Train and init cdfs directly.
      2. Use laplace prob estimates in aom_entropy_optimizer to avoid zero
      probabilities.
      
      Change-Id: I878fc0a306cbffe3eb51c5b86d5872459b6705c5
      4d447696
  19. 24 Dec, 2017 1 commit
  20. 23 Dec, 2017 1 commit
  21. 22 Dec, 2017 1 commit
  22. 21 Dec, 2017 1 commit
    • Hui Su's avatar
      Palette: modify the context slightly · c1f411bc
      Hui Su authored
      Use the number of pixels in a block as context, rather than the bsize
      itself. The rectangular blocks therefore share the same context, e.g.
      BLOCK_8X16 and BLOCK_16X8.
      
      The number of contexts is reduced from 10 to 7.
      Almost no coding performance changes.
      
      Change-Id: Ib3241194580c2b93ad0e953957cdc9188393d055
      c1f411bc
  23. 20 Dec, 2017 1 commit
    • Yue Chen's avatar
      Clean ups and bug-fixes for filter_intra · 994dba25
      Yue Chen authored
      Clean up: clean up unused entropy related arrays
      Bug-fixes: resolve compiling errors when it is enabled with
      entropy_stats and ext_skip
      
      Change-Id: I2893e1b5c09e847fb4677f6e62709464208b76f8
      994dba25
  24. 19 Dec, 2017 2 commits
    • Dake He's avatar
      [lv_map_multi] BR coding · e2d8f183
      Dake He authored
      1. Use separate contexts for transforms of size 32x32 and above.
      2. Initialize cdf directly
      
      Change-Id: I3373143788e81b2547d99e420e591892ef2641a2
      e2d8f183
    • Sebastien Alaiwan's avatar
      Remove ADAPT_SCAN experiment · 23c511e7
      Sebastien Alaiwan authored
      This experiment has been abandonned for AV1.
      
      Change-Id: Ib3bb07d62f2025ce50dc9bc1b3f9fc22488519a7
      23c511e7
  25. 18 Dec, 2017 1 commit
    • Cheng Chen's avatar
      LPF_SB: cleanup unused functions and code path · 76224b0e
      Cheng Chen authored
      Since we've decided to use guess filter levels for lpf_sb, I remove
      unused searching functions and coding paths to make codebase clean
      and easy to manage.
      
      Change-Id: I3497add59fc1eaf36acdd0acb85e3bcb6486d01d
      76224b0e
  26. 15 Dec, 2017 1 commit
  27. 12 Dec, 2017 1 commit
    • Cheng Chen's avatar
      Make lpf_sb work with loopfilter_level · 765e34e3
      Cheng Chen authored
      Make lpf_sb compatible with loopfilter_level, when USE_GUESS_LEVEL = 1.
      
      Filter levels will be selected based on q index and applied for
      filtering on Y, U, V planes separately.
      
      Current model only allows to guess one filter level.
      Now Y_vert = Y_horz = U = V. In the future, we need to retrain the
      model and get filter levels for Y_vert, Y_horz, U and V separately.
      
      When USE_GUESS_LEVEL = 0, lpf_sb can't work with loopfilter_level yet.
      
      Change-Id: Icd774a147c07a4035cf8204a8754b2a99668bbfd
      765e34e3
  28. 11 Dec, 2017 1 commit
  29. 10 Dec, 2017 1 commit
    • Zoe Liu's avatar
      Enable skip mode work with JNT_COMP · 50c810d5
      Zoe Liu authored
      This patch updates also the default cdfs for skip mode. It also remove
      the unneeded checking on whether the best obtained RD mode aligned
      with the skip mode.
      
      For 30 frames, on both AWCY and Google lowres/midres test sets, with
      the following config, the coding gain ranges from ~-0.15% to -0.23%:
      
      --disable-ext-partition --disable-ext-partition-types --disable-txmg
      --enable-jnt-comp --enable-mfmv
      
      Change-Id: I39aeeb9e7b27ca679c1b3f9c0eea67b5e1f694e2
      50c810d5
  30. 09 Dec, 2017 1 commit
    • Rostislav Pehlivanov's avatar
      Change q_segmentation to spatial_segmentation · 938710cb
      Rostislav Pehlivanov authored
      Adds spatial prediction to standard segmentation instead of a separate
      segmentation feature.
      When using temporal prediction skipped blocks are flagged as mispredicted.
      
      Change-Id: I0c32281286d3fbce66d339c9247bcc6516f37a63
      938710cb
  31. 08 Dec, 2017 1 commit
    • David Barker's avatar
      no-frame-context-signaling + q-adapt-probs: Fix interaction · 11eac7bf
      David Barker authored
      Slightly change the way we save and reload frame contexts during
      frame setup. For "normal" frames everything is the same, but for
      error-resilient and/or intra-only frames, we now:
      
      * Reset the frame context using setup_past_independence()
        (+ extra code if q-adapt-probs is enabled), as usual
      * Store this frame context into a special slot in cm->frame_contexts
      * Use that slot to fill in cm->pre_fc
      
      The main difference from before is that (for error-resilient/intra-only
      frames which are not key frames) we used to throw away the frame
      context after setting it up, and would re-use whatever was set up
      at the last keyframe.
      This was fine when q_adapt_probs is disabled, but it caused an
      inconsistency when combined with q_adapt_probs. See the attached
      bug report for more details on that.
      
      BUG=aomedia:1104
      
      Change-Id: I9532b6b0e8ae29efbb4f059a0c67a73d7c7828ce
      11eac7bf