1. 18 Oct, 2016 11 commits
  2. 17 Oct, 2016 12 commits
    • hui su's avatar
      Add filter_intra experiment flag · ffcf4fb7
      hui su authored
      Will break ext-intra into 2 experiments: ext-intra and filter-intra.
      
      Change-Id: Ibf66e9b9d9307fd58a703eada9569b74d171434b
      ffcf4fb7
    • Yue Chen's avatar
      Refactor motion estimation in MOTION_VAR experiment · e9638ccf
      Yue Chen authored
      To get ready for pulling AV1 to nextgenv2. Refactoring is done to
      make the code structures similar, especially for the motion search
      part.
      
      Change-Id: I5d7636394408d97de55394d668540f5627827983
      e9638ccf
    • Nathan E. Egge's avatar
      Fix warning when discarding const qualifier. · 19698a70
      Nathan E. Egge authored
      Cherry-pick Daala 211c2a41: Clean up EC tell() and tell_frac() functions.
      Add a const qualifier to the od_ec_enc and od_ec_dec parameters of
       the od_ec_enc_tell(), od_ec_enc_tell_frac(), od_ec_dec_tell(), and
       od_ec_dec_tell_frac() functions.
      Add an OD_WARN_UNUSED_RESULT to od_ec_enc_tell_frac().
      
      Change-Id: Ia50e2fd75e98d8a03d993449d658b695cf56e6fb
      19698a70
    • Nathan E. Egge's avatar
      Revert code formatting of OD_UNIFORM_CDFS_Q15. · f3035f2b
      Nathan E. Egge authored
      The formatting of OD_UNIFORM_CDFS_Q15[] in entcode.c is helpful for
       for understanding what is contained in the array (e.g., the uniform
       probability distributions of small sizes 2 through 16).
      This patch reverts the change made in f4b2926d and adds linter hints to
       ignore the formatting.
      
      Change-Id: I2ad9fe6673b86e6067cb97b40f0f0e69a119cdf5
      f3035f2b
    • Nathan E. Egge's avatar
      Rename aom_write_tree_cdf() to aom_write_symbol(). · 56eeaa5d
      Nathan E. Egge authored
      Change-Id: I7c088c55f1c461063976d5bd84ff2026c4f3bc69
      56eeaa5d
    • Yushin Cho's avatar
      Bug fix in super_block_uvrd(). · 09de28b4
      Yushin Cho authored
      In super_block_uvrd(),if is_cost_valid == 0, all return parameters,
      i.e. rate, distortion, skippable, and sse, are reset.
      So, should not call txfm_rd_in_plane() if is_cost_valid == 0.
      Also, the bug causes av1_xform_quant() to see invalid diff signal
      since av1_subtract_plane() is not called in super_block_uvrd().
      
      Change-Id: Iaa06061e2e9aa8876b4611a54f4ae6b8d499332b
      09de28b4
    • Nathan E. Egge's avatar
      Display --bit-depth in -h with highbitdepth enabled. · d1b239c0
      Nathan E. Egge authored
      Display the -b --bit-depth command line parameter on of aomenc when
       --config-aom-highbitdepth is enabled.
      
      Change-Id: I76147e38b9985e68b1e642e21be8fd4d8ec4d966
      d1b239c0
    • Nathan E. Egge's avatar
      Update partition_cdf per frame. · fba2be69
      Nathan E. Egge authored
      Move computing the partition_cdf tables per symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I442f9230ba00be7f5d0558d7c38d7324ad009ee8
      fba2be69
    • Nathan E. Egge's avatar
      Update inter_ext_tx_cdf per frame. · 93878c42
      Nathan E. Egge authored
      Move computing the inter_ext_tx_cdf tables per symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I5e1e62f8eae8f6b2edbbd378beeb786649502c10
      93878c42
    • Nathan E. Egge's avatar
      Update intra_ext_tx_cdf per frame. · 7c5b4c16
      Nathan E. Egge authored
      Move computing the intra_ext_tx_cdf tables per symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I26d5e419e103093e98a7d896c196176305b50fc9
      7c5b4c16
    • Nathan E. Egge's avatar
      Update switchable_interp_cdf once per frame. · 4947c296
      Nathan E. Egge authored
      Move from computing the switchable_interp_cdf per symbol to
       computing once per frame when the probabilities are adapted.
      
      Change-Id: I6571126239f0327e22bb09ee8bad94114291683e
      4947c296
    • Yaowu Xu's avatar
      Replace {} with continue · 5cb0a7ab
      Yaowu Xu authored
      Change-Id: I2e939e898cc30c2999b47f2789191e08272b1cc0
      5cb0a7ab
  3. 14 Oct, 2016 17 commits
    • Yaowu Xu's avatar
      Merge changes Ie43c599f,Icd0dbed4,Ic04e180b into nextgenv2 · 2bdb9e63
      Yaowu Xu authored
      * changes:
        Move av1_indices_from_tree() to common code space.
        Add code to compute in-order mappings for tokens.
        Fix bug in av1_tree_to_cdf_2D() macro.
      2bdb9e63
    • Yaowu Xu's avatar
      Merge changes I339d0389,I2fa1e87a,If79fa5ae,Icb1a8cb8,Ic76de4a4, ... into nextgenv2 · 73d702db
      Yaowu Xu authored
      * changes:
        Add missing CONFIG_DAALA_EC declaration.
        Add API for writing trees using a CDF.
        Add macro to build a simple cdf table.
        Use Daala entropy coder to code trees.
        Silence clang-format code review warning.
        Use Daala entropy coder to code bits.
        Clear existing format issue in the codebase
        Add Daala entropy coder.
      73d702db
    • Yi Luo's avatar
    • Urvang Joshi's avatar
    • Nathan E. Egge's avatar
      Move av1_indices_from_tree() to common code space. · 8abf8673
      Nathan E. Egge authored
      Move the av1_indices_from_tree() function from av1/encoder/treewriter.c
       to aom_dsp/prob.c so that it can be used by both the encoder and
       the decoder.
      
      Change-Id: Ie43c599f425c3503b1ff93f0c77b5033a05b1bb4
      8abf8673
    • Nathan E. Egge's avatar
      Add missing CONFIG_DAALA_EC declaration. · a67c0ff4
      Nathan E. Egge authored
      Without first including ./aom_config.h in aom_dsp/prob.c the memmove
       function is implicitly defined and causes a compiler warning.
      
      Change-Id: I339d0389f10324a1085aba7d6492b2159a14da92
      a67c0ff4
    • Nathan E. Egge's avatar
      Add code to compute in-order mappings for tokens. · cfb02ddc
      Nathan E. Egge authored
      Add av1_indices_from_tree() function that computes a forward and inverse
       mapping of the tree leaf-node symbols to their in-order traversal.
      This is necessary because many of the aom_tree binary trees have their
       leaf nodes out of order (e.g., an in-order traversal of a tree with n
       nodes does not start at symbol 0 and go to symbol n - 1), but the CDFs
       created by tree_to_cdf() are indexed in-order.
      
      Change-Id: Icd0dbed4c171a67c9e84a634106c4fdb5b1b3488
      cfb02ddc
    • Nathan E. Egge's avatar
      Add API for writing trees using a CDF. · 44460148
      Nathan E. Egge authored
      Added aom_write_tree_cdf() and aom_read_tree_cdf() function calls to
       bitwriter.h and bitreader.h respectively.
      These calls take a multisymbol CDF and an index and directly encode the
       symbol using the enabled entropy coder.
      Currently only the daala entropy encoder supports this (enabled with
       --enable-daala_ec) and a compile error is thrown otherwise.
      
      Change-Id: I2fa1e87af4352c94384e0cfdbfd170ac99cf3705
      44460148
    • Nathan E. Egge's avatar
      Fix bug in av1_tree_to_cdf_2D() macro. · 439c5025
      Nathan E. Egge authored
      Change-Id: Ic04e180b09745fab2230d05985770c41deea4fad
      439c5025
    • Nathan E. Egge's avatar
      Add macro to build a simple cdf table. · e2ed4118
      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
      e2ed4118
    • Nathan E. Egge's avatar
      Use Daala entropy coder to code trees. · 43acafde
      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
      43acafde
    • Nathan E. Egge's avatar
      Silence clang-format code review warning. · 0435f0ea
      Nathan E. Egge authored
      Change-Id: Ic76de4a4c0c39924bf04c3c2fa9214d33bcee9fb
      0435f0ea
    • Nathan E. Egge's avatar
      Use Daala entropy coder to code bits. · 8043cc40
      Nathan E. Egge authored
      When building with --enable-daala_ec, calls to aom_write() and aom_read()
       use the daala entropy coder to write and read bits.
      When the probability is exactly 0.5 (128), then raw bits are used.
      
      ntt-short-1:
      
                MEDIUM (%) HIGH (%)
          PSNR -0.027556  -0.020114
       PSNRHVS -0.027401  -0.020169
          SSIM -0.027587  -0.020151
      FASTSSIM -0.027592  -0.020102
      
      subset1:
      
               RATE (%)  DSNR (dB)
          PSNR 0.03296  -0.00210
       PSNRHVS 0.03537  -0.00281
          SSIM 0.03299  -0.00161
      FASTSSIM 0.03458  -0.00111
      
      Change-Id: I48ad8eb40fc895d62d6e241ea8abc02820d573f7
      8043cc40
    • Yaowu Xu's avatar
      Clear existing format issue in the codebase · 931bc2a7
      Yaowu Xu authored
      Fix the clang-format warnings on the existing codes.
      
      Change-Id: I8e9e781b6f68f41a7fbd0a2116f6b35290d73dc8
      931bc2a7
    • Nathan E. Egge's avatar
      Add Daala entropy coder. · 1078dee5
      Nathan E. Egge authored
      Change-Id: I2849a50163268d58cc5d80aacfec1fd02299ca43
      1078dee5
    • Alex Converse's avatar
    • Alex Converse's avatar
      Switch rANS to 15 bit precision, and adjust L_BASE. · 62a94a64
      Alex Converse authored
      This causes rANS to operate at the same precision as the Daala EC.
      
      aom/master stats: rans10uabs8lbase12 → rans15uabs8lbase15
      
      objective-1-fast
      PSNR YCbCr:      0.01%      0.01%      0.01%
         PSNRHVS:      0.01%
            SSIM:      0.01%
          MSSSIM:      0.01%
       CIEDE2000:      0.01%
      
      subset1
      PSNR YCbCr:     -0.01%     -0.00%     -0.00%
         PSNRHVS:     -0.01%
            SSIM:     -0.01%
          MSSSIM:     -0.01%
       CIEDE2000:     -0.01%
      
      (cherry picked from aom/master commit ddbc2e2a)
      
      Change-Id: I6ef0a4f6198784b3712a61af9f105d560a22eaea
      62a94a64