1. 16 Nov, 2016 2 commits
  2. 14 Nov, 2016 1 commit
  3. 12 Nov, 2016 4 commits
  4. 11 Nov, 2016 4 commits
  5. 10 Nov, 2016 10 commits
    • Debargha Mukherjee's avatar
      Add guided projection filter to loop restoration · 8f209a87
      Debargha Mukherjee authored
      BDRATE:
      lowres: -1.01% (up from -0.7%)
      midres: -1.90% (up from -1.5%)
      hdres:  -2.11% (up from ~1.7%)
      
      Change-Id: I1fe04ec9ef90ccc4cc990e09cd45eea82c752e0c
      8f209a87
    • Yaowu Xu's avatar
      Revert "fix msvc build warnings and errors" · fdb4216d
      Yaowu Xu authored
      This reverts commit 32dbdff1.
      
      Change-Id: I94ef281223f7abceb156714e8192d5ea5fdc2581
      fdb4216d
    • Yaowu Xu's avatar
      fix msvc build warnings and errors · 32dbdff1
      Yaowu Xu authored
      This commit fix the msvc2013 build for configuration:
      configure --target=x86_64-win64-vs12 --enable-experimental
       --enable-clpf --enable-dering --enable-motion-var --enable-ans
      
      BUG=aomedia:80
      
      Change-Id: I08b61e38e761ea4ed3175529fba4a50c57be44ac
      32dbdff1
    • Debargha Mukherjee's avatar
      Harmonize the global parameter mappings · 8db4c776
      Debargha Mukherjee authored
      lowres: -0.401% BDRATE (tempete -5.4%)
      
      Also includes some fixes and cleanups.
      
      Change-Id: I82922a453fad59fad2f12829d2ef1e56b2d20949
      8db4c776
    • Jingning Han's avatar
      Support rectangular tx_size in recursive txfm partition · 70e5f3f0
      Jingning Han authored
      This commit supports the recursive transform block partition to
      start with both square and rectangular transform block sizes.
      
      Change-Id: Idaf29d50cb1f4876b43e5ba82c2609708c6b1926
      70e5f3f0
    • Thomas Davies's avatar
      Add options setting number of tile groups or MTU. · af6df175
      Thomas Davies authored
      Default MTU size is 0, which implies a fixed number
      of tile groups. MTU matching overrides fixed tile
      group. MTU matching will succeed unless a single
      tile is bigger than the MTU.
      
      --mtu-size is in bytes, and includes headers but
      not transport/wrapper overheads
      
      Change-Id: I2b70bd41b175b54273b02d836f2a84011f617a7c
      af6df175
    • David Barker's avatar
      Fix compile with ext-tx · f541932b
      David Barker authored
      The switch to using daala_ec by default broke the compile
      when used with ext-tx, as some code which should have been
      inside #if !CONFIG_EXT_TX was not inside such a block.
      
      Change-Id: I4cec9755bd4e6134a7d3036c4482f952a815cafc
      f541932b
    • David Barker's avatar
      Fix clpf + ext_partition and dering + ext_partition · 9739f365
      David Barker authored
      In both cases, the data to be signalled (for clpf/dering) is
      stored at the topmost superblock level, but previously this data
      would not be signalled for 128x128 superblocks.
      
      For dering, it was also assumed that all superblocks were of the
      maximum possible size. When ext_partition was enabled and we
      chose to use a 64x64 superblock, this resulted in an out-of-bounds
      access to cm->mi_grid_visible, leading to a segfault.
      
      Change-Id: I81b9c037ed8db8be16d7e4cf6041e1df7525cc97
      9739f365
    • Jingning Han's avatar
      Reset the txfm context to match block size when skip flag is on · 1b1dc936
      Jingning Han authored
      Reset the transform block size context to the actual block size
      if the skip flag is turned on.
      
      Change-Id: I821afac2dcd4c3a17389e9954b7b2575f87d07d7
      1b1dc936
    • Yaowu Xu's avatar
      apply clang-format · 49eea11c
      Yaowu Xu authored
      For these files:
      av1/common/common_data.h
      av1/encoder/encodemb.c
      av1/encoder/quantize.c
      av1/encoder/rdopt.c
      
      Change-Id: I379e861d55c2875d0366df24f986b29796a70087
      49eea11c
  6. 09 Nov, 2016 5 commits
  7. 08 Nov, 2016 4 commits
    • Angie Chiang's avatar
      Replace rate distortion sse skip by RD_STATS in rdopt.c · 7c2b7f25
      Angie Chiang authored
      This CL doesn't change any coding behavior.
      The functions modified in this CL include
      choose_smallest_tx_size()
      choose_largest_tx_size()
      choose_tx_size_type_from_rd()
      txfm_rd_in_plane()
      txfm_yrd()
      
      This change make the code cleaner and will facilitate rd_debug
      implementation
      
      Change-Id: I19b1b2384dce8b46b28d4c9baf80ff92998d05b6
      7c2b7f25
    • Jingning Han's avatar
      Add min_tx_size variable to recursive transform block partition system · e67b38aa
      Jingning Han authored
      Replace max_tx_size with min_tx_size for transform type decision.
      
      Change-Id: I64e39923a67903d52b381bd93eaac33b3400a201
      e67b38aa
    • Yushin Cho's avatar
      Fix the bug that PVQ commit broke dering · 48f84dbd
      Yushin Cho authored
      Since PVQ's max block size equals to the max transform size,
      daala's definition of OD_BSIZE_MAX was changed from 5 down to 4 to
      use AV1's max trasform size 32x32. However, dering also uses
      OD_BSIZE_MAX and assumes its value is 5, which caused dering
      not working.
      
      Change-Id: I9d82bb24adc7d57552a8e0a8a7e798e77d96fd4b
      48f84dbd
    • Yushin Cho's avatar
      Fix the bug that PVQ commit broke dering · 7d208d08
      Yushin Cho authored
      Since PVQ's max block size equals to the max transform size,
      daala's definition of OD_BSIZE_MAX was changed from 5 down to 4 to
      use AV1's max trasform size 32x32. However, dering also uses
      OD_BSIZE_MAX and assumes its value is 5, which caused dering
      not working.
      
      Change-Id: I9d82bb24adc7d57552a8e0a8a7e798e77d96fd4b
      7d208d08
  8. 07 Nov, 2016 3 commits
    • Tristan Matthews's avatar
      pvq: drop unused declaration · cc37e366
      Tristan Matthews authored
      Change-Id: I5d95bb897d335dc17aa0ae5e873ba7dee46c6fda
      cc37e366
    • David Barker's avatar
      Fix bug in bicubic filter in warped_motion.c · f23bdca6
      David Barker authored
      Previously, do_cubic_filter would return results with the
      wrong precision if the sample point was exactly aligned to
      a pixel.
      
      Change-Id: I40139f9a6701a8e72e691f37bb352f7814a7f306
      f23bdca6
    • Yushin Cho's avatar
      New experiment: Perceptual Vector Quantization from Daala · 77bba8d3
      Yushin Cho authored
      PVQ replaces the scalar quantizer and coefficient coding with a new
      design originally developed in Daala. It currently depends on the
      Daala entropy coder although it could be adapted to work with another
      entropy coder if needed:
      ./configure --enable-experimental --enable-daala_ec --enable-pvq
      
      The version of PVQ in this commit is adapted from the following
      revision of Daala:
      https://github.com/xiph/daala/commit/fb51c1ade6a31b668a0157d89de8f0a4493162a8
      
      More information about PVQ:
      - https://people.xiph.org/~jm/daala/pvq_demo/
      - https://jmvalin.ca/papers/spie_pvq.pdf
      
      The following files are copied as-is from Daala with minimal
      adaptations, therefore we disable clang-format on those files
      to make it easier to synchronize the AV1 and Daala codebases in the future:
       av1/common/generic_code.c
       av1/common/generic_code.h
       av1/common/laplace_tables.c
       av1/common/partition.c
       av1/common/partition.h
       av1/common/pvq.c
       av1/common/pvq.h
       av1/common/state.c
       av1/common/state.h
       av1/common/zigzag.h
       av1/common/zigzag16.c
       av1/common/zigzag32.c
       av1/common/zigzag4.c
       av1/common/zigzag64.c
       av1/common/zigzag8.c
       av1/decoder/decint.h
       av1/decoder/generic_decoder.c
       av1/decoder/laplace_decoder.c
       av1/decoder/pvq_decoder.c
       av1/decoder/pvq_decoder.h
       av1/encoder/daala_compat_enc.c
       av1/encoder/encint.h
       av1/encoder/generic_encoder.c
       av1/encoder/laplace_encoder.c
       av1/encoder/pvq_encoder.c
       av1/encoder/pvq_encoder.h
      
      Known issues:
      - Lossless mode is not supported, '--lossless=1' will give the same result as
      '--end-usage=q --cq-level=1'.
      - High bit depth is not supported by PVQ.
      
      Change-Id: I1ae0d6517b87f4c1ccea944b2e12dc906979f25e
      77bba8d3
  9. 06 Nov, 2016 1 commit
    • Angie Chiang's avatar
      Add RD_STATS into MB_MODE_INFO · 9a44f5fb
      Angie Chiang authored
      With RD_STATS in MB_MODE_INFO, we will be able to compare the results
      from rate-distortion loop and the results from bitstream packing.
      
      Change-Id: If1dba7d87126577a6f369ac087d4517f7cebb0c5
      9a44f5fb
  10. 05 Nov, 2016 2 commits
  11. 04 Nov, 2016 4 commits
    • Yushin Cho's avatar
      New experiment: Perceptual Vector Quantization from Daala · 09705fe7
      Yushin Cho authored
      PVQ replaces the scalar quantizer and coefficient coding with a new
      design originally developed in Daala. It currently depends on the
      Daala entropy coder although it could be adapted to work with another
      entropy coder if needed:
      ./configure --enable-experimental --enable-daala_ec --enable-pvq
      
      The version of PVQ in this commit is adapted from the following
      revision of Daala:
      https://github.com/xiph/daala/commit/fb51c1ade6a31b668a0157d89de8f0a4493162a8
      
      More information about PVQ:
      - https://people.xiph.org/~jm/daala/pvq_demo/
      - https://jmvalin.ca/papers/spie_pvq.pdf
      
      The following files are copied as-is from Daala with minimal
      adaptations, therefore we disable clang-format on those files
      to make it easier to synchronize the AV1 and Daala codebases in the future:
       av1/common/generic_code.c
       av1/common/generic_code.h
       av1/common/laplace_tables.c
       av1/common/partition.c
       av1/common/partition.h
       av1/common/pvq.c
       av1/common/pvq.h
       av1/common/state.c
       av1/common/state.h
       av1/common/zigzag.h
       av1/common/zigzag16.c
       av1/common/zigzag32.c
       av1/common/zigzag4.c
       av1/common/zigzag64.c
       av1/common/zigzag8.c
       av1/decoder/decint.h
       av1/decoder/generic_decoder.c
       av1/decoder/laplace_decoder.c
       av1/decoder/pvq_decoder.c
       av1/decoder/pvq_decoder.h
       av1/encoder/daala_compat_enc.c
       av1/encoder/encint.h
       av1/encoder/generic_encoder.c
       av1/encoder/laplace_encoder.c
       av1/encoder/pvq_encoder.c
       av1/encoder/pvq_encoder.h
      
      Known issues:
      - Lossless mode is not supported, '--lossless=1' will give the same result as
      '--end-usage=q --cq-level=1'.
      - High bit depth is not supported by PVQ.
      
      Change-Id: I1ae0d6517b87f4c1ccea944b2e12dc906979f25e
      09705fe7
    • clang-format's avatar
      apply clang-format · 7eb160b1
      clang-format authored
      missed in:
      9abdec64 simp-mv-pred integration with ref-mv
      
      Change-Id: Ib155fb418ec77c1e53ca25b6654a4a47d0d2110e
      7eb160b1
    • Angie Chiang's avatar
      Separate coefficient cost of U/V planes in write_modes_b() · 75f45814
      Angie Chiang authored
      Change-Id: Ie3082db5b0fead8c322b2aeede4eff7cd723ea12
      75f45814
    • Angie Chiang's avatar
      Add token cost comparison in write_modes_b() · d402282f
      Angie Chiang authored
      This is just partial implementation
      Compare token cost of pack_mb_tokens/pack_txb_tokens with token cost
      from rate-distortion loop. If there is any difference, dump out mode
      info.
      
      Change-Id: I46b373ee2522c5047f799f36baf7cec5fbc06f06
      d402282f