1. 20 Mar, 2017 1 commit
    • Alex Converse's avatar
      ext_partition_types: Bring into alignment with ec_multisymbol and ec_adapt · 57795a4c
      Alex Converse authored
      ec_multisymbol+ext_partition_types:
      base_ext_types@2017-03-15T18:24:38.012Z -> 8565_3_ext_types@2017-03-17T18:29:48.794Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0346 | -0.0343 | -0.0341 |  -0.0345 | -0.0345 | -0.0344 |    -0.0345
      
      ec_multisymbol+ec_adapt+ext_partition_types:
      base_adapt_ext_types@2017-03-15T18:27:31.704Z -> 8565_3_adapt_ext_types@2017-03-17T18:30:01.108Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0422 | -0.0420 |     N/A |  -0.0425 | -0.0423 | -0.0423 |    -0.0420
      
      Change-Id: Ia40f118f0faf546be13e02ec9ed584dd38529a59
      57795a4c
  2. 17 Mar, 2017 4 commits
    • Sarah Parker's avatar
      Macro to disable warped/obmc_causal with global motion · 19234cc2
      Sarah Parker authored
      Enabling SEPARATE_GLOBAL_MOTION will remove the ability for
      a block that uses zeromv with global motion to pick warped_causal
      or obmc_causal as the motion mode. When this is enabled there is:
      
      0.05% drop on lowres for global + warped enabled
      0.15% drop on midres for global + warped enabled
      
      0.12% drop on lowres with global + motion var enabled
      0.07% drop on midres with global + motion var enabled
      No performance change for global, warped, or motion var individually.
      
      Change-Id: Idbfb8dd7a93da14902438504b06a08e5212e48cb
      19234cc2
    • Debargha Mukherjee's avatar
      Fix config flags among var-tx/ext-tx/rect-tx · 428bbb2b
      Debargha Mukherjee authored
      BUG=aomedia:396
      
      Change-Id: I1b7f6dddb06eac9e341518a95a0d71465e613e9e
      428bbb2b
    • Steinar Midtskogen's avatar
      Merge dering/clpf rdo and filtering · a9d41e88
      Steinar Midtskogen authored
      * Dering and clpf were merged into a single pass.
      * 32x32 and 128x128 filter block sizes for clpf were removed.
      * RDO for dering and clpf merged and improved:
        - "0" no longer required to be in the strength selection
        - Dering strength can now be 0, 1 or 2 bits per block
      
                    LL    HL
      PSNR:       -0.04 -0.01
      PSNR HVS:   -0.27 -0.18
      SSIM:       -0.15 +0.01
      CIEDE 2000: -0.11 -0.03
      APSNR:      -0.03 -0.00
      MS SSIM:    -0.18 -0.11
      
      Change-Id: I9f002a16ad218eab6007f90f1f176232443495f0
      a9d41e88
    • Angie Chiang's avatar
      Add av1_write_coeffs_mb · c8af6112
      Angie Chiang authored
      This function go through each transform block in the
      prediction block and call av1_write_coeffs_txb to
      pack coefficients into the bitstream
      
      Change-Id: I6dedebef6cf8957f9173241a7de60e9936bc0be8
      c8af6112
  3. 16 Mar, 2017 2 commits
  4. 15 Mar, 2017 4 commits
    • Alex Converse's avatar
      ext_partition_types: Make update tree shape match · 4e18d403
      Alex Converse authored
      Update the first PARTITION_PLOFFSET (4) contexts with the four classic
      partitions. The extended partitions are only codable above 8x8, but
      there are PARTITION_PLOFFSET (4) contexts for dropping below 8x8.
      
      Change-Id: Ib3291dded6dc24103222e8f470504c20e29adb88
      4e18d403
    • Thomas Davies's avatar
      NEW_TOKENSET: Make zero block value uncodeable for AC coeffs. · 1c05c635
      Thomas Davies authored
      Change-Id: Icd7528d1ec8e117205e5e35ad9a11cfa83b08253
      1c05c635
    • Thomas Davies's avatar
      NEW_TOKENSET: do not code impossible values. · 04bdd523
      Thomas Davies authored
      In the last position, No-EOB values and zero are all not
      possible.
      
      AWCY, objective-1-fast: -0.08% all metrics
      AWCY, screen content:
      
      PSNR YCbCr:    -0.42%    -0.42%    -0.43%
      PSNRHVS:       -0.40%
      SSIM:          -0.41%
      MSSSIM:        -0.41%
      CIEDE2000:     -0.42%
      
      Change-Id: Iad012abfd2a48a2c9ff27512f92b27235a5a8a4a
      04bdd523
    • 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
  5. 13 Mar, 2017 2 commits
  6. 10 Mar, 2017 1 commit
    • Luc Trudeau's avatar
      Uniform way of accessing mbmi in write_tokens_b · 3e32f1ab
      Luc Trudeau authored
      Cosmetic change that moves the declaration of mbmi at the beginning of
      the function. This simplifies access and removes the need for
      (void)mbmi.
      
      Change-Id: Id0f7e1113696200ae6fb98bcc639d1cbdba05a9e
      3e32f1ab
  7. 09 Mar, 2017 4 commits
  8. 08 Mar, 2017 3 commits
  9. 07 Mar, 2017 4 commits
  10. 06 Mar, 2017 2 commits
  11. 03 Mar, 2017 2 commits
    • Luc Trudeau's avatar
      Merging robust and nodesync in PVQ · 9e6a9607
      Luc Trudeau authored
      The variables robust and nodesync appear to represent the same concept.
      In order to simplify, they are merged into nodesync. This change does
      not alter the bitstream as this value is hard coded to 1.
      
      Change-Id: If9b2eb52f628e3f615b6270e26569815d5e79ae0
      9e6a9607
    • Thomas Davies's avatar
      TILE_GROUPS: omit tile length from last tile in the frame. · a0de6d59
      Thomas Davies authored
      This change improves efficiency and means that tile groups
      cause negligible loss (+0.03% BDR) in the current default
      encoding configurations (1 tile group no matter how many tiles)
      with frame-based wrapping.
      
      In future, when wrapper formats support tile groups, lengths
      can be omitted from the last tile in every tile group.
      
      Change-Id: Ia701e6720208fbfa727f9aef0b692a6aafbcc93f
      a0de6d59
  12. 01 Mar, 2017 2 commits
  13. 28 Feb, 2017 1 commit
    • Jingning Han's avatar
      Disable compound mode in sub8x8 coding blocks · c41a549a
      Jingning Han authored
      Disable the support of compound prediction modes for sub8x8 codking
      blocks. Make the rate-distortion optimizations process account for
      such constraints.
      
      With the use 2x2 chroma prediction block, this makes the wrost case
      number of inter predictors same as vp9. It affects the coding
      gains by 0.35% for lowres, 0.17% for midres, and 0.08% for hdres.
      
      The encoding speed is up by 10%.
      
      Change-Id: Ieb2a83030676911baa403e586f1f800cbf485d81
      c41a549a
  14. 27 Feb, 2017 1 commit
  15. 24 Feb, 2017 2 commits
    • Thomas Davies's avatar
      Use default CDF tables when initialising coef probs. · 87aeeb85
      Thomas Davies authored
      When creating the CDF head, do not use 8-bit probabilities
      to make the CDF tables, but load them directly.
      
      CDF tail values are created from the ONE_TOKEN relative
      probability as before.
      
      No change to BDR.
      
      Change-Id: I7386b8952f6f69cc9b77aa1b2bee71cf8e3cc9ff
      87aeeb85
    • Fangwen Fu's avatar
      improving palette throughput · 33bcd117
      Fangwen Fu authored
      * code the palette color index using 45 wavefront
      * interleave the coeff and palette color index in
        transform block level
      * the above change does not change code efficiency
      
      Details: 
      The 45 wavefront scan allows to compute the ctx of
      the diagonal samples' indices  at the same time. 
      Interleaving palette indices and palette residual
      on a transform block basis means that the entropy
       decoding and further processing of the palette 
      residual is not delayed by the entropy decoding 
      of all the color indices of the palette encoded 
      block.
      Change-Id: Ie9f576002a9a68394b99c23b01e9730df06df070
      33bcd117
  16. 23 Feb, 2017 2 commits
    • David Barker's avatar
      Change gm_get_motion_vector · 45390c18
      David Barker authored
      Since gm_get_motion_vector is trying to give a motion vector for
      "the frame as a whole", it makes more sense for it to calculate
      the motion of the *center* of the block rather than the top-left
      corner of the frame.
      
      In theory, this change should also help the encoder make better
      decisions on when to use global motion. It avoids an issue
      where, early in the frame, NEARESTMV looks like a good way to use
      the global motion vector *without* paying the rate cost applied
      to the first few global motion blocks in each frame. This seems
      to lead to a better overall result.
      
      Change-Id: Ia5c6259ceb8b4ff3d00a5d553e1d18bdb802da59
      45390c18
    • Yushin Cho's avatar
      Another fix for building pvq and palette together · cc715089
      Yushin Cho authored
      Fixes that pack_palette_tokens() was disabled when pvq is enabled and
      av1_decode_palette_tokens() was not complied.
      
      Change-Id: I468bdc4d77ae7ddbca7fb5ed8e1da5506486a58c
      cc715089
  17. 22 Feb, 2017 3 commits