1. 26 Jan, 2018 1 commit
  2. 23 Jan, 2018 2 commits
  3. 19 Jan, 2018 1 commit
    • Thomas Daede's avatar
      Allow CDF precision to be configured with CDF_PROB_BITS. · 837262bf
      Thomas Daede authored
      This does not change the precision used for od_ec_enc_bool_q15
      (used by aom_write and aom_write_bit), which means these two
      paths will use different CDF precision for now.
      
      The test that verifies that q15's code identically to CDFs
      is disabled.
      
      Change-Id: I4cd40a60d472eb58f37ac4fda1056b5dfe8b39a5
      837262bf
  4. 11 Jan, 2018 1 commit
  5. 09 Jan, 2018 1 commit
  6. 08 Jan, 2018 1 commit
  7. 06 Jan, 2018 1 commit
  8. 31 Dec, 2017 1 commit
    • Dake He's avatar
      [lv_map_multi] adjust speed of prob adaptation · 5641635f
      Dake He authored
      Use a lookup table to deterimine speed of adaptation in update_cdf.
      Tests on 5 keyframes show improvement in BD-rate: consistently more
      than -0.2% for google test sets (lowres, midres, hdres).
      
      Change-Id: I6f8927fc6e876e22ebcf2f9340ed62e54cc79d28
      5641635f
  9. 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
  10. 21 Dec, 2017 1 commit
  11. 05 Dec, 2017 1 commit
  12. 04 Dec, 2017 1 commit
    • Dake He's avatar
      [lv_map_multi] simplify update_cdf · b79f1b67
      Dake He authored
      remove tmp0 in update_cdf due to the use of EC_MIN_PROB introduced by
      Thomas Davies.
      
      further changes to update_cdf include:
      1. Start the rate at 3+get_msb(nsymbs) and increase the rate by one at
      counts 16 and 32.
      2. Check if tmp is less than cdf[i] to avoid shifting a negative number.
      
      Change-Id: I5088ebd450d6e57ec6c3e92bb2f47a078489b947
      b79f1b67
  13. 23 Nov, 2017 1 commit
  14. 08 Nov, 2017 1 commit
    • Thomas Daede's avatar
      Use AOM_CDF* macros instead of bare AOM_ICDF macros. · e82e5774
      Thomas Daede authored
      This will facilitate later experiments reducing the precision
      of probabilities.
      
      after_cdf_table_rewrite-3 -> before_cdf_table_rewrite-3
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0000 |  0.0000 |  0.0000 |   0.0000 | 0.0000 |  0.0000 |     0.0000
      
      Change-Id: Ief01b4d7fdca075c41e9add079f7ac836dafcfbe
      e82e5774
  15. 04 Oct, 2017 1 commit
  16. 29 Sep, 2017 1 commit
    • Angie Chiang's avatar
      Generate scan order one frame earlier · fabbd7eb
      Angie Chiang authored
      This should relief the concern of latency incurred by generating
      scan order
      
      The performance on lowres and midres remains neutral
      
      Change-Id: If155f055540126ee834f5be1ab4b23013090ee89
      fabbd7eb
  17. 20 Sep, 2017 1 commit
    • Jingning Han's avatar
      Customize prob model control for lv-map · b3c189b9
      Jingning Han authored
      Make the probability model update system better customized for the
      level map coding scheme. This improves the level map coding
      performance by 0.2% for lowres and 0.1% for midres.
      
      Change-Id: Ib6d3abb36d50ff7485c4ceb411fe94e8fb060416
      b3c189b9
  18. 10 Sep, 2017 1 commit
    • Jingning Han's avatar
      Rework base range entropy coding in level map system · 87b01b5a
      Jingning Han authored
      Replace the truncated geometric distribution model with the grouped
      leaves structure for more efficient probability modeling.
      Each group has its own Geometric distribution
      
      This give us 0.2% gain on lowres
      
      Change-Id: If5c73dd429bd5183a8aa81042f8f56937b1d8a6a
      87b01b5a
  19. 05 Sep, 2017 1 commit
    • Timothy B. Terriberry's avatar
      Remove the EC_SMALLMUL experimental flag. · f9ef4f6b
      Timothy B. Terriberry authored
      This experiment has been fully adopted and is now an integral part
      of the draft AV1 bitstream definition.
      
      objdump -d libaom.a gives identical output before and after this
      patch.
      
      Change-Id: I6f936f4b10de23a9471e0ccadf9cf178fb62be69
      f9ef4f6b
  20. 22 Aug, 2017 1 commit
  21. 11 Jul, 2017 1 commit
    • Nathan E. Egge's avatar
      Remove the EC_ADAPT experimental flags. · 6bdc40f1
      Nathan E. Egge authored
      Removing these flags make the EC_ADAPT experiment an integral part of
       the draft AV1 bitstream definition
      This commit has no effect on metrics.
      
      Change-Id: Ice78520935e8bfa9d25cf4b8384a1b872069d09c
      6bdc40f1
  22. 25 May, 2017 1 commit
  23. 20 May, 2017 1 commit
  24. 18 Apr, 2017 1 commit
    • 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
  25. 25 Mar, 2017 1 commit
    • Jingning Han's avatar
      Fix tree to cdf index mapping · 8e67c05f
      Jingning Han authored
      This fixes the mis-aligned cdf model derived from tree based
      model. It resolves the compression performance regression in
      dual filter, intra mode, inter mode, and transform block type
      coding, when ec-multisymbol is enabled by default.
      
      With dual filter enabled, the performance regression was 3.6%
      loss for lowres. This fix brings the performance gains back to 1%
      gains.
      
      Change-Id: I80f5485386045908c152c9c11eeacbc650f1e324
      8e67c05f
  26. 20 Mar, 2017 1 commit
  27. 15 Mar, 2017 1 commit
    • Thomas Davies's avatar
      EC_ADAPT: Perform backwards updates directly on CDFs. · 028b57f5
      Thomas Davies authored
      The initial CDF for each frame is stored in
      the frame context. CDFs for actual coding are
      stored in the tile structures, and these are
      what get adapted. The initial CDF is replaced
      by an average CDF derived from these tile CDFs.
      This is carried forward to future frames when
      backward adaptation is on.
      
      CDFs are no longer set from the 8 bit probabilities
      in backwards adaptation.
      
      For now, 8 bit probabilities are maintained for
      use in the encoder and for symbols which do not
      have a CDF.
      
      Change-Id: I106b30510bfad1fa57d077f7702acc1864378a09
      028b57f5
  28. 01 Mar, 2017 1 commit
    • James Zern's avatar
      get_prob(): rationalize int types · 5f8361a7
      James Zern authored
      promote the unsigned int calculation to uint64_t rather than int64_t for
      type consistency
      
      cherry-picked from libvpx:
      47d6f16a0 get_prob(): rationalize int types
      
      Change-Id: Ic34dee1dc707d9faf6a3ae250bfe39b60bef3438
      5f8361a7
  29. 24 Feb, 2017 4 commits
  30. 16 Feb, 2017 1 commit
  31. 02 Feb, 2017 2 commits
  32. 13 Jan, 2017 1 commit
  33. 01 Nov, 2016 1 commit
  34. 30 Oct, 2016 2 commits
    • Thomas Davies's avatar
      EC_ADAPT: improved symbol adaptation. · f6c04aca
      Thomas Davies authored
      Place a floor under symbol probabilities and
      modify adaptation rate.
      
      Change-Id: Ic9cf6d9fadfc3bf1f3027bc3d2bb198526441591
      f6c04aca
    • Alex Converse's avatar
      Add ec_multisymbol for common daala_ec and rans code · aca9feba
      Alex Converse authored
      The new ec_multisymbol experiment supersedes the rans experiment and is
      used for multisymbol features that can be backed by either daala_ec or
      rans.
      
      This experiment is automatically enabled by ec_adapt and will try to
      enable daala_ec or ans (in that order).
      
      Change-Id: Ie75b4002b7a9d7f5f7b4d130c1aacb3dbe97e54f
      aca9feba