1. 22 Aug, 2016 1 commit
  2. 20 Jul, 2016 1 commit
  3. 18 Jul, 2016 1 commit
  4. 21 Jun, 2016 2 commits
    • Nathan E. Egge's avatar
      Add macro to build a simple cdf table. · e049002c
      Nathan E. Egge authored
      Add the av1_tree_to_cdf() macro which takes a aom_tree_index tree and
       associated aom_prob probabilities and constructs a daala uint16_t cdf.
      The av1_tree_to_cdf_1D() and av1_tree_to_cdf_2D() apply av1_tree_to_cdf()
       across 1D and 2D arrays respectively.
      
      Change-Id: If79fa5ae034263f279d7d0842493570885272fb2
      e049002c
    • Nathan E. Egge's avatar
      Use Daala entropy coder to code trees. · 4ffaaa98
      Nathan E. Egge authored
      When building with --enable-daala_ec, calls to aom_write_tree() and
       aom_read_tree() will convert a aom_tree_index structure with associated
       aom_prob probabilities into a CDF on the fly for use with the
       od_ec_encode_cdf_q15().
      The number of symbols in the CDF is capped at 16, and trees that contain
       more than 16 leaf nodes are handled by splitting the most likely, e.g.,
       highest probability symbols, first and coding multiple symbols if
       necessary.
      
      ntt-short-1:
      
               MEDIUM (%) HIGH (%)
          PSNR 0.000227   0.000213
       PSNRHVS 0.000215   0.000205
          SSIM 0.000229   0.000209
      FASTSSIM 0.000229   0.000214
      
      subset1:
      
                RATE (%)  DSNR (dB)
          PSNR -0.00026   0.00002
       PSNRHVS -0.00026   0.00002
          SSIM -0.00026   0.00001
      FASTSSIM -0.00026   0.00001
      
      Change-Id: Icb1a8cb854fd81fdd88fbe4bc6761c7eb4757dfe
      4ffaaa98
  5. 25 Mar, 2016 2 commits
    • Adrian Grange's avatar
      Change "VPX" to "AOM" · ff00fc0f
      Adrian Grange authored
      Change-Id: I6593a44de3b571193c2a4c8787ddf3b2fc24a268
      ff00fc0f
    • Adrian Grange's avatar
      Convert "vpx" to "aom" · cebe6f0c
      Adrian Grange authored
      Change the name of source files to replace "vpx" with "aom".
      Change occurences of "vpx" in the code to "aom".
      
      Change-Id: I002c0eaa2c350cf1a895bf01bea5788c61328027
      cebe6f0c
  6. 24 Mar, 2016 1 commit
  7. 22 Mar, 2016 1 commit
  8. 29 Jan, 2016 1 commit
  9. 28 Jan, 2016 1 commit
  10. 27 Aug, 2015 1 commit
  11. 21 Jul, 2015 2 commits
    • Yaowu Xu's avatar
      vpx_dsp/prob.h: vp9_ -> vpx_ · 70ad6680
      Yaowu Xu authored
      change prefix vp9_ to vpx_ for non codec specific functions and data
      structures.
      
      Change-Id: I97c7e6422eceea99212b93f4942bc2187763a07c
      70ad6680
    • Yaowu Xu's avatar
      vpx_dsp/bitreader.h: vp9_->vpx_ · bf82514b
      Yaowu Xu authored
      Replace vp9_ in names to vpx_ as they are not codec specific.
      
      Change-Id: I2e583aa63dee769353ada4b42417aa15c4074ebb
      bf82514b
  12. 20 Jul, 2015 1 commit
  13. 17 Jul, 2015 1 commit
  14. 23 Jan, 2015 1 commit
    • Yaowu Xu's avatar
      Replace divide with look-up · eda17976
      Yaowu Xu authored
      This commit replaces an integer divide with a table-lookup. It is
      to improve decoding speed, and at the same time, to reduce possible
      complications with a bug in AMD Family 12h processors:
      
      "665 Integer Divide Instruction May Cause Unpredictable Behavior"
      
      Change-Id: I678b707a538798a923850bac467e66e847e6def7
      eda17976
  15. 01 Oct, 2014 1 commit
  16. 01 Aug, 2014 1 commit
  17. 24 Jul, 2014 1 commit
  18. 10 Feb, 2014 1 commit
  19. 24 Jan, 2014 1 commit
  20. 15 Jan, 2014 1 commit
  21. 20 Dec, 2013 1 commit
  22. 16 Dec, 2013 1 commit
  23. 06 Dec, 2013 1 commit
  24. 05 Dec, 2013 1 commit
  25. 05 Nov, 2013 2 commits
    • Dmitry Kovalev's avatar
      Localizing NEARESTMV special cases in the code. · 81518961
      Dmitry Kovalev authored
      Removing special case handling from vp9_tree_probs_from_distribution(),
      tree_merge_probs(), and vp9_tokens_from_tree_offset() functions. Replacing
      inter_mode_offset() function with macro INTER_OFFSET which is used now for
      vp9_inter_mode_tree definition.
      
      Change-Id: Iff75a1499d460beb949ece543389c8754deaf178
      81518961
    • Dmitry Kovalev's avatar
      Unified approach for backward probability update. · c622e1d1
      Dmitry Kovalev authored
      Replacing update_mode_probs() and adapt_probs() with tree_merge_probs().
      
      Change-Id: I50b2c968d67c9265f5216c700cbeba25fb014654
      c622e1d1
  26. 01 Nov, 2013 1 commit
    • Dmitry Kovalev's avatar
      Removing 'new' probability calculation from convert_distribution(). · df19c6b6
      Dmitry Kovalev authored
      We don't have to calculate 'new' probability in convert_distribution()
      because it is enough to calculate only 'new' counters which could be used
      to calculate probability if necessary. That's why removing a lot of unused
      temporary probability arrays and reducing number of get_binary_prob()
      calls.
      
      Change-Id: I4e14eb7203d1ace61bbddefd6b9b6326be83ba63
      df19c6b6
  27. 11 Oct, 2013 2 commits
    • Dmitry Kovalev's avatar
      Adding TREE_SIZE macro + cleanup. · 860e4676
      Dmitry Kovalev authored
      Using TREE_SIZE for the following trees:
        vp9_intra_mode_tree
        vp9_inter_mode_tree
        vp9_partition_tree
        vp9_switchable_interp_tree
        vp9_mv_joint_tree
        vp9_mv_class_tree
        vp9_mv_class0_tree
        vp9_mv_fp_tree
      
      Change-Id: I0212bb4c1ee6648249f68517e28a67a56591ee1b
      860e4676
    • Dmitry Kovalev's avatar
      Removing vp9_tree_p typedef. · 98400c1b
      Dmitry Kovalev authored
      It is used only two times and it is more clear to use real type instead
      of typedef.
      
      Change-Id: Idc25c16504c3da4d040e0cdb33a2987631bb6a5b
      98400c1b
  28. 25 Jul, 2013 1 commit
  29. 11 Apr, 2013 2 commits
  30. 10 Mar, 2013 1 commit
    • John Koleszar's avatar
      Optimize vp9_tree_probs_from_distribution · bd84685f
      John Koleszar authored
      The previous implementation visited each node in the tree multiple times
      because it used each symbol's encoding to revisit the branches taken and
      increment its count. Instead, we can traverse the tree depth first and
      calculate the probabilities and branch counts as we walk back up. The
      complexity goes from somewhere between O(nlogn) and O(n^2) (depending on
      how balanced the tree is) to O(n).
      
      Only tested one clip (256kbps, CIF), saw 13% decoding perf improvement.
      
      Note that this optimization should port trivially to VP8 as well. In VP8,
      the decoder doesn't use this function, but it does routinely show up
      on the profile for realtime encoding.
      
      Change-Id: I4f2848e4f41dc9a7694f73f3e75034bce08d1b12
      bd84685f
  31. 23 Feb, 2013 1 commit
    • Paul Wilkins's avatar
      Further changes to coefficient contexts. · c17672a3
      Paul Wilkins authored
      This patch alters the balance of context between the
      coefficient bands (reflecting the position of coefficients
      within a transform blocks) and the energy of the previous
      token (or tokens) within a block.
      
      In this case the number of coefficient bands is reduced
      but more previous token energy bands are supported.
      
      Some initial rebalancing of the default tables has been
      by running multiple derf clips at multiple data rates using
      the ENTOPY_STATS macro. Further balancing needs to be
      done using larger image formatsd especially in regard to
      the bigger transform sizes which are not as well represented
      in encodings of smaller image formats.
      
      Change-Id: If9736e95c391e711b04aef6393d26f60f36e1f8a
      c17672a3
  32. 07 Feb, 2013 1 commit
  33. 18 Dec, 2012 1 commit
  34. 12 Dec, 2012 1 commit
    • Ronald S. Bultje's avatar
      Consistently use get_prob(), clip_prob() and newly added clip_pixel(). · 4d0ec7aa
      Ronald S. Bultje authored
      Add a function clip_pixel() to clip a pixel value to the [0,255] range
      of allowed values, and use this where-ever appropriate (e.g. prediction,
      reconstruction). Likewise, consistently use the recently added function
      clip_prob(), which calculates a binary probability in the [1,255] range.
      If possible, try to use get_prob() or its sister get_binary_prob() to
      calculate binary probabilities, for consistency.
      
      Since in some places, this means that binary probability calculations
      are changed (we use {255,256}*count0/(total) in a range of places,
      and all of these are now changed to use 256*count0+(total>>1)/total),
      this changes the encoding result, so this patch warrants some extensive
      testing.
      
      Change-Id: Ibeeff8d886496839b8e0c0ace9ccc552351f7628
      4d0ec7aa