1. 03 Feb, 2017 11 commits
    • Yushin Cho's avatar
      Enable an activity masking of PVQ · e4c46918
      Yushin Cho authored
      By default, the activity masking is used with PVQ.
      In addition to '--enable-pvq', '--enable-daala-dist' is also
      required by configure to use the activity masking.
      
      Change-Id: I5100a1db992f0e693e61daf5439de8ae8c64a752
      e4c46918
    • Yushin Cho's avatar
      Fix fixed-pt PVQ compand/expand outputs zero gain · 3ebfe2a4
      Yushin Cho authored
      For fixed-point version of PVQ, which is current default,
      added MAXI(1, ) to limit the minimum companded or expanded gain to be one.
      Previously, gain compand/expand function, which is invoked when
      activity masking is enabled, sometimes outputs zero
      then triggered the assert(gain != 0).
      
      Metric change from floating-pt to fixed-pt PVQ is:
      PSNR  PSNR-HVS  SSIM  CIEDE-2000  PSNR Cb PSNR Cr MS-SSIM VMAF
      0.02  0.10      0.08  0.11        0.01    0.02    0.13    -0.30
      
      Change-Id: I64a60d1970d35a26af227841e4a5e50a89ddc44c
      3ebfe2a4
    • Thomas Davies's avatar
      EC_MULTISYMBOL: Include EOB in multisymbol encoding. · fc1598ad
      Thomas Davies authored
      RD search and trellis encoding are still sub-optimal.
      
      Change-Id: I233979909118241a0c78761c1d5c2cd6857915e0
      fc1598ad
    • Yue Chen's avatar
      Remove interp filter for non-translation global mv · 19e7aa82
      Yue Chen authored
      BDRATE results:
      lowres: -0.880% (up from -0.844%)
      
      Change-Id: I017c0beddcc687148fed33c1e9963e05f1eaf6ea
      19e7aa82
    • Ryan Lei's avatar
      set loop_filter_across_tiles_enabled flag to 1 in default case · ad67d795
      Ryan Lei authored
      Change-Id: I907976619a433a92d671c5cce25f3e8806638e80
      ad67d795
    • Jonathan Matthews's avatar
      Bugfix: ensure for pareto coef that there are no zero range encodings · 13754540
      Jonathan Matthews authored
      Introduced by change I98b33fab6b9f52690f6ad618ac55e725a97be056
      
      BUG=aomedia:349
      
      Change-Id: Ib6df52ac2442f60c159bae2271793b7570d53a19
      13754540
    • hui su's avatar
      Fix compilation orders for ext-intra and ec-adapt · 9aa9749d
      hui su authored
      Change-Id: I378b677cf579441ba0a9014a8a77a1cf3f8b5689
      9aa9749d
    • Thomas Davies's avatar
      EC_MULTISYMBOL: always send the EOB_TOKEN after a non-zero value. · 490477ab
      Thomas Davies authored
      This will allow EOB_TOKEN to be merged with that value.
      
      Change-Id: I82ba5e8d38e235d07894e43b5fec53968f84ab6c
      490477ab
    • Thomas Davies's avatar
      EC_MULTISYMBOL: Add block zero (CBP) counts and probs. · ab78067c
      Thomas Davies authored
      Preparation for merging EOB_TOKEN. The block_zero value
      corresponds to the first EOB_TOKEN: other EOB_TOKEN values will
      be merged with non-zero values.
      
      Change-Id: I94036783ee240fa916a79c544ecd716a9c24fa59
      ab78067c
    • David Michael Barr's avatar
      Correlate od_compute_dist_8x8 with sum of squared error · d091b809
      David Michael Barr authored
      Piecewise linear fit without activity masking on subset3 intra
      and objective-1-fast inter, by simple linear regression.
      
      In combination with 79c0f32c "Remove DCT from od_compute_dist_8x8",
      this gives a even trade between perceptual and non-perceptual metrics.
      
      av1_daala_dist_30f@2017-01-23T21:32:27.902Z
       -> daala_dist_scale10_30f@2017-01-31T21:52:07.635Z
      
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      2.1080 |  2.9645 |  3.4697 |  -2.2086 | 0.2541 | -2.5232 |     2.1645
      
      Piecewise linear-quadratic fit with activity masking, by same method.
      
      The total effect of activity masking and daala-dist changes, with PVQ:
      
      av1_pvq_5f@2017-01-31T01:05:24.219Z
       -> av1_float_pvq_dist_scale_AM_5f_Jan31_crfix@2017-02-02T15:14:40.477Z
      
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM |  MS SSIM | CIEDE 2000
      22.5041 | 42.6349 | 40.8516 | -10.3510 | -6.8030 | -16.9057 |    21.2613
      
      Change-Id: I9b513509a03aa058dc5c1479c01d62c8fc363a34
      d091b809
    • Ryan Lei's avatar
      deblocking_across_tiles->loopfilter_across_tiles · 9b02b0e6
      Ryan Lei authored
      This commit renames deblocking_across_tiles to loopfilter_across_tiles, 
      to get ready for dering and clpf integration.
      
      Change-Id: Id25b051da9b1e5cb92f35a9619662597462d9537
      9b02b0e6
  2. 02 Feb, 2017 4 commits
  3. 01 Feb, 2017 4 commits
    • Joe Young's avatar
      palette: fix bug in float_comparer() · e7a9133c
      Joe Young authored
      This function is used by av1_remove_duplicates() to remove
      duplicate palette colors.
      
      Change-Id: Ia9943bffa2032bcae92f4a6da86477a8135613f2
      e7a9133c
    • Debargha Mukherjee's avatar
      Misc global motion changes. · d978cd5e
      Debargha Mukherjee authored
      A few encoder global-motion estimation parameter changes.
      lowres: -0.844% (up by 0.08%)
      
      Change-Id: Ib080125803cf56a91ce7d482d6d1445160105010
      d978cd5e
    • Sebastien Alaiwan's avatar
      Merge dct_const_round_shift functions. · d0e23b40
      Sebastien Alaiwan authored
      Change-Id: I73e3eec0b8fd17c3f9b9f52afc9fac43f3043028
      d0e23b40
    • David Barker's avatar
      Fix encode/decode mismatches for supertx + delta-q · 3aec8d6c
      David Barker authored
      This fixes the following mismatch bugs:
      * At the bitstream level, the decoder would not read the delta_qindex
        information for supertx blocks, but the encoder always sent it,
        leading to the encoder and decoder becoming misaligned.
        The delta_qindex information is still required for supertx blocks,
        so change the decoder to read it.
      * In addition, the quantizer was not properly adjusted for supertx
        blocks at the decoder. We copy the quantizer setup code from
        non-supertx blocks.
      
      Since this does not change the encoder, it should not have any
      quality impact.
      
      Change-Id: I9a0f79c3aa66f2a5a353821e2a6f3b526636e7b4
      3aec8d6c
  4. 31 Jan, 2017 10 commits
    • Alex Converse's avatar
      ans: Remove some out of date ifdefs · 8aca36d3
      Alex Converse authored
      Change-Id: Ibd4bbceca8218eb94ed0af3c980f8e829a1896de
      8aca36d3
    • Urvang Joshi's avatar
      Bugfix: Fix an assert being triggered because of palette. · 451e0f22
      Urvang Joshi authored
      rd_pick_palette_intra_sby() was being passed a dummy 'best_mbmi' in
      one case, and later that dummy value could be assigned to 'mbmi'
      causing invalid values in 'mbmi'.
      
      This bug was introduced by:
      de0c70a2: Refactor rd_pick_intra_sby_mode()
      
      See the referenced bug for a repro case.
      
      BUG=aomedia:337
      
      Change-Id: If6b0aa329f4e4902cd4de8a5e09bc5d9196492a1
      451e0f22
    • Yue Chen's avatar
      Offset probabilities of compound types for cb4x4 · 4415b6cc
      Yue Chen authored
      BUG=aomedia:313
      
      Change-Id: Ic1a9e20e5fd3f645d3be851d7be759cf4caf7c02
      4415b6cc
    • David Barker's avatar
      Fix ext-inter + compound-segment + supertx · 426a997e
      David Barker authored
      Allow the above combination of experiments to work together
      correctly, fixing an encode/decode mismatch bug when they
      were all enabled.
      
      This change causes build_masked_compound(_highbd) to only
      ever be called if CONFIG_SUPERTX is off, so wrap these functions
      in an '#if !CONFIG_SUPERTX' block.
      
      BUG=aomedia:313
      
      Change-Id: Ic3886bc69ba9624b8fcb0a4c2d71fc64d2c0f22c
      426a997e
    • Urvang Joshi's avatar
      Fix segmentation fault when encoding all keyframes (kf-max-dist=0). · d803cb96
      Urvang Joshi authored
      The issue was that:
      - We call av1_setup_pre_planes() when this is not an intra-only frame,
      but,
      - But, we do motion vector search for any frame other than first frame
      Doing both of these only when this is not an intra-only frames makes
      logical sense and fixes the crash too.
      
      This also avoids doing motion search for intra-only frames in the first
      pass.
      
      Verified that there is no change in compression performance for video,
      as well as when forcing all keyframes.
      
      BUG=aomedia:133
      
      Change-Id: I7b18c0568eaa29c6c97f31f226243e5a9dbaecf1
      d803cb96
    • Sarah Parker's avatar
      Make global_motion work with ext_inter · c2d38715
      Sarah Parker authored
      Change-Id: I2a490e144099d7692296992528192c1f11d2c06f
      c2d38715
    • Thomas Davies's avatar
      EC_MULTISYMBOL: Separate out tokenization loop. · c6733fb7
      Thomas Davies authored
      This will make merging EOB_TOKEN easier.
      
      Change-Id: I1789344e9c3bbb329c30287a00aeee3c8a9d60c4
      c6733fb7
    • Thomas Davies's avatar
      EC_MULTISYMBOL: split off token packing. · f6390321
      Thomas Davies authored
      This will make refactoring to support EOB_TOKEN easier.
      
      Change-Id: I8c7e37d090fd142f6b95d997116b84e6e10f3db5
      f6390321
    • Thomas Davies's avatar
      EC_MULTISYMBOL: reconfigure coefficient decoding loop. · 0583c984
      Thomas Davies authored
      Preparation for merging EOB into multi-symbol encoding.
      The more_data flag for the first position is moved
      out of the loop, and for remaining positions is
      moved in with the previous coefficient. This way it
      can always be associated with the previous non-zero
      coefficient.
      
      Change-Id: Idfb38058f4c415127b4d9a9beeb8ea2d3a2ec1a2
      0583c984
    • Thomas Davies's avatar
      EC_MULTISYMBOL: merge ZERO_TOKEN into coding scheme. · 0ccefe21
      Thomas Davies authored
      Zero, one, and two or more coded as one symbol (head).
      Remaining tokens coded as a tail symbol.
      
      The pareto CDF distribution is adjusted to cover tokens from
      two onwards.
      
      Change-Id: I98b33fab6b9f52690f6ad618ac55e725a97be056
      0ccefe21
  5. 30 Jan, 2017 6 commits
  6. 27 Jan, 2017 5 commits