1. 07 Nov, 2017 1 commit
    • Monty Montgomery's avatar
      Fix build for CONFIG_DAALA_TX and CONFIG_TX64X64 · 683f70e7
      Monty Montgomery authored
      The recent 64x32 and 32x64 patches break the build when
      CONFIG_DAALA_TX and CONFIG_TX64X64 are enabled simultaneously.  This
      is a minor correction that fixes the build problem.
      
      Change-Id: I53cd8df9160fc35b67f2ac16bddcfab08425cf8e
      683f70e7
  2. 05 Nov, 2017 1 commit
  3. 02 Nov, 2017 1 commit
    • Sebastien Alaiwan's avatar
      Remove experimental flag of EXT_TX · 3bac9928
      Sebastien Alaiwan authored
      This experiment has been adopted, we can simplify the code
      by dropping the associated preprocessor conditionals.
      
      Change-Id: I02ed47186bbc32400ee9bfadda17659d859c0ef7
      3bac9928
  4. 24 Oct, 2017 1 commit
  5. 20 Oct, 2017 3 commits
  6. 19 Oct, 2017 1 commit
  7. 10 Oct, 2017 1 commit
    • Lester Lu's avatar
      lgt-from-pred: transforms based on prediction · 432012f6
      Lester Lu authored
      In this experiment, sharp image discontinuity in the predicted
      block is detected. Based on this discontinuity, we choose
      particular LGTs as row and column transforms.
      
      Bitstream syntax, entropy coding, and RD search for LGT are added.
      One binary symbol is used to signal whether LGT is used. This
      experiment can work independently with the lgt experiment.
      
      lowres: -0.414% for key frames, -0.151% overall
      midres: -0.413% for key frames, -0.161% overall
      
      Change-Id: Iaa2f2c2839c34ca4134fa55e77870dc3f1fa879f
      432012f6
  8. 05 Oct, 2017 1 commit
  9. 01 Oct, 2017 1 commit
  10. 28 Sep, 2017 1 commit
    • Monty Montgomery's avatar
      Remove dead av1_dct8x8_quant_xxxx functions · 7f7dd08a
      Monty Montgomery authored
      They're unused, disabled in the prototype setup, but still built and
      complicating the already convoluted ifdef mess in TX experiment
      configuration.
      
      Don't leave dead code in the sourcebase.  That's what SCM is for.
      
      Change-Id: Idb2adf597ac064c7b5027df8af1cf65054984aa4
      7f7dd08a
  11. 19 Sep, 2017 7 commits
  12. 18 Sep, 2017 8 commits
  13. 11 Sep, 2017 1 commit
    • Sarah Parker's avatar
      Tokenize and write mrc mask · 99e7daa2
      Sarah Parker authored
      This allows a mask for mrc-tx to be sent in the bitstream for
      inter or intra 32x32 transform blocks. The option to send the mask
      vs build it from the prediction signal is currently controlled with
      a macro. In the future, it is likely the macro will be removed and it
      will be possible for a block to select either method. The mask building
      functions are still placeholders and will be filled in in a followup.
      
      Change-Id: Ie27643ff172cc2b1a9b389fd503fe6bf7c9e21e3
      99e7daa2
  14. 25 Aug, 2017 1 commit
  15. 22 Aug, 2017 1 commit
    • Lester Lu's avatar
      Refactor lgt · 918fe698
      Lester Lu authored
      Change get_lgt in order to integrate a later experiment
      lgt_from_pred with lgt. There are two main changes.
      
      The main purpose for this change is to unify get_fwd_lgt and
      get_inv_lgt functions into a get_lgt function so the lgt basis
      functions can always be selected through the same function in
      both forward and inverse transform paths. The structure of those
      functions will also be consistent with the get_lgt_from_pred
      functions that will be added in the lgt-from-pred experiment.
      
      These changes have no impact on the bitstream.
      
      Change-Id: Ifd3dfc1a9e1a250495830ddbf42c201e80aa913e
      918fe698
  16. 18 Aug, 2017 1 commit
    • Hui Su's avatar
      Remove dpcm-intra experiment · 400bf651
      Hui Su authored
      Coding gain becomes tiny on top of other experiments.
      
      Change-Id: Ia89b1c2a2653f3833dff8ac8bb612eaa3ba18446
      400bf651
  17. 15 Aug, 2017 3 commits
    • Monty Montgomery's avatar
      Add 4-point DST to DAALA_DCT4 experiment · 573cf25f
      Monty Montgomery authored
      CONFIG_DAALA_DCT4 currently force-enables CONFIG_DCT_ONLY due to a
      missing 4-point DST.  The DST had not been included because it was a
      significant coding performance loss; this turned out to be a bug that
      has since been corrected.
      
      This patch adds a 4-point type IV DST to the DAALA_DCT4 experiment.
      There is a small coding performance loss in using the type IV over
      AV1's current type VII.
      
      subset-1:
         monty-newdst4test-baseline-s1-F@2017-07-29T04:58:43.976Z ->
            monty-newdst4test-daala-s1-F@2017-07-29T04:59:56.094Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0336 |  0.1393 |  0.0491 |   0.4118 | -0.0439 |  0.2084 |     0.0476
      
      objective-1-fast:
         monty-newdst4test-baseline-o1f-F@2017-07-29T04:58:10.439Z ->
            monty-newdst4test-daala-o1f-F@2017-07-29T04:59:04.678Z
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      0.0064 |  0.1071 | -0.0108 |   0.1133 | -0.0035 |  0.0765 |     0.0502
      
      Change-Id: Ie29835edbe0e41bc86f4b09457e88d924cc9bf7e
      573cf25f
    • Monty Montgomery's avatar
      Add CONFIG_DAALA_DCT64 experiment. · a4e245a9
      Monty Montgomery authored
      This experiment replaces the 64-point Type-II DCT and related
      scaling vp9 transforms with the 64-point orthonormal
      Daala transforms.
      
      subset-1:
      
          monty-square-baseline-s1-F2@2017-07-28T03:35:45.962Z ->
            monty-square-dct64-s1-F2@2017-07-29T04:50:58.412Z
      
             PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
          -0.1930 | -0.2037 | -0.0643 |  -0.1917 | -0.2331 | -0.3510 |    -0.1810
      
      objective-1-fast:
      
          monty-square-baseline-o1f-F2@2017-07-28T03:35:35.533Z ->
            monty-square-dct64-o1f-F2@2017-07-29T04:50:28.542Z
      
             PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
          -0.2557 | -0.1743 | -0.4900 |  -0.3028 | -0.4147 | -0.5764 |    -0.2864
      
      Change-Id: I1f944df29e44d2e350c42555af274f2d75a62a92
      a4e245a9
    • Monty Montgomery's avatar
      Add CONFIG_DAALA_DCT32 experiment. · 2cb52baf
      Monty Montgomery authored
      This experiment replaces the 32-point Type-II DCT and 32-point
      Type-IV DST scaling vp9 transforms with the 32-point orthonormal
      Daala transforms.
      
      subset-1:
      
          monty-square-baseline-s1-F3@2017-08-02T11:50:51.375Z ->
            monty-square-dct32-s1-F3@2017-08-02T11:50:18.859Z
      
            PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
          0.0000 |  0.0115 | -0.1044 |  -0.0185 | -0.0069 | -0.0603 |     0.0555
      
      objective-1-fast (4 frames):
      
          monty-square-baseline-o1f-F3-l4-fine@2017-08-12T02:18:05.560Z ->
            monty-square-dct32-o1f-F3-l4-fine@2017-08-12T02:19:44.461Z
      
            PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
         -0.0269 | -0.0715 |     N/A |  -0.0547 | -0.0268 | -0.0590 |        N/A
      
      Change-Id: Ib1bad991d82eb67956e94a6216298a84e908b169
      2cb52baf
  18. 08 Aug, 2017 2 commits
    • Sarah Parker's avatar
      Allow the creation of different masks for inter and intra · 3824f8ad
      Sarah Parker authored
      This allows inter and intra modes to use different mask functions.
      The mask functions checked in are still place holders to allow for
      easy experimentation.
      
      Change-Id: Ic20d88200676df81dffee8c43555d0ff0c7bfc28
      3824f8ad
    • Thomas Davies's avatar
      Refactor quantization C code. · f3b5ee14
      Thomas Davies authored
      This commit de-duplicates C reference quantization code
      and unifies quantization matrix (QM) and non-QM code
      paths when there is no SIMD.
      
      The reorganisation also will facilitate re-using SIMD quant
      functions for QM when the matrix is flat, as is the
      default when AOM_QM is enabled.
      
      Change-Id: Idbfdac9eb9a31adcffe734aac1877d58b86fab77
      f3b5ee14
  19. 04 Aug, 2017 1 commit
    • Sarah Parker's avatar
      Avoid using MRC_DCT when the mask produced is invalid · c5ccd4ca
      Sarah Parker authored
      If the mask is invalid, do not allow the encoder to select MRC_DCT.
      Currently the mask is invalid if it is all 1 or all 0, but these
      criteria will likely expand in a future patch.
      
      Change-Id: I77230ea8357bfdb2bf1e6338903d44bbf1db22d1
      c5ccd4ca
  20. 29 Jul, 2017 1 commit
    • Monty Montgomery's avatar
      Add CONFIG_DAALA_DCT16 experiment. · cb9c1c52
      Monty Montgomery authored
      This experiment replaces the 16-point Type-II DCT and 16-point Type-IV
      DST scaling vp9 transforms with the 16-point orthonormal Daala
      transforms.  These have reduced complexity and are perfect
      reconstruction.  There is currently no net coding performance impact.
      
      subset-1:
      
        monty-square-baseline-s1-F@2017-07-23T03:43:45.042Z ->
           monty-square-dct16-s1-F@2017-07-23T03:42:29.805Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0152 | -0.0028 | -0.0929 |  -0.0432 | -0.0457 | -0.0425 |    -0.0237
      
        objective-1-fast:
      
        monty-square-baseline-o1f-F@2017-07-23T03:44:19.973Z ->
           monty-square-dct16-o1f-F@2017-07-23T03:43:22.549Z
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0305 |  0.0926 | -0.1600 |   0.0471 | 0.0219 | -0.0075 |     0.0135
      
      Change-Id: I54fed26d65fd8450693334bb400b1fafd7e0dacb
      cb9c1c52
  21. 26 Jul, 2017 2 commits
    • Sarah Parker's avatar
      Add txfm functions corresponding to MRC_DCT · 5b8e6d2d
      Sarah Parker authored
      MRC_DCT uses a mask based on the prediction signal to modify the
      residual before applying DCT_DCT. This adds all necessary functions
      to perform this transform and makes the prediction signal available
      to the 32x32 txfm functions so the mask can be created. I am still
      experimenting with different types of mask generation functions and
      so this patch contains a placeholder. This patch has no impact on
      performance.
      
      Change-Id: Ie3772f528e82103187a85c91cf00bb291dba328a
      5b8e6d2d
    • Monty Montgomery's avatar
      Add CONFIG_DAALA_DCT8 experiment. · cf18fe4e
      Monty Montgomery authored
      This experiment replaces the 8-point Type-II DCT and 8-point Type-IV DST
       scaling vp9 transforms with the 8-point orthonormal Daala transforms.
      These have reduced complexity and are perfect reconstruction at the cost
       of a slightly worse coding performance.
      This is because the Daala transforms expect the input to be shifted by 4
       bits but the output scale of the vp9 transforms is only 3 bits.
      
      subset-1:
      
      monty-square-baseline-subset1 ->
        monty-square-dct8-subset1@2017-07-17T21:37:44.281Z
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0019 | -0.0011 | -0.0585 |  -0.0111 | 0.0305 |  0.0317 |     0.0187
      
      objective-1-fast:
      
      monty-square-baseline-o1f ->
        monty-square-dct8-o1f@2017-07-17T21:37:15.735Z
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0285 |  0.0129 | -0.5080 |   0.0529 | 0.0345 |  0.0441 |     0.0054
      
      Change-Id: I2b775495398fb717204a295397c3c5e3ca938183
      cf18fe4e