1. 05 Oct, 2017 1 commit
    • Hui Su's avatar
      Remove ext-tx tree · 0d9888bd
      Hui Su authored
      Hard code av1_ext_tx_ind[] and av1_ext_tx_inv[].
      
      Change-Id: Ife650d41be3f85d048f5585659ad57e03f54b39b
      0d9888bd
  2. 02 Oct, 2017 1 commit
  3. 29 Sep, 2017 1 commit
  4. 28 Sep, 2017 1 commit
  5. 26 Sep, 2017 1 commit
    • Debargha Mukherjee's avatar
      Add experiment to restrict compressed header · 2eada612
      Debargha Mukherjee authored
      The compressed header is now used only when the refresh
      type is set as forward, i.e. in error resilience and
      frame parallel modes. As long as backward updates are
      used the header is disabled thereby saving bits.
      
      Change-Id: Iee9f66ffbd30ef3552ea41b75e4b51537cd9ff97
      2eada612
  6. 22 Sep, 2017 1 commit
    • Hui Su's avatar
      Refactor the ext-tx experiment · ddbcde28
      Hui Su authored
      Use common structure for inter and intra tx type information when
      possible.
      
      Change-Id: I1fd3bc86033871ffbcc2b496a31dca00b7d64b31
      ddbcde28
  7. 20 Sep, 2017 1 commit
  8. 05 Sep, 2017 1 commit
  9. 12 Aug, 2017 1 commit
  10. 02 Aug, 2017 1 commit
  11. 20 Jul, 2017 1 commit
  12. 11 Jul, 2017 1 commit
    • Nathan E. Egge's avatar
      Remove the EC_ADAPT experimental flags. · 6bdc40f1
      Nathan E. Egge authored
      Removing these flags make the EC_ADAPT experiment an integral part of
       the draft AV1 bitstream definition
      This commit has no effect on metrics.
      
      Change-Id: Ice78520935e8bfa9d25cf4b8384a1b872069d09c
      6bdc40f1
  13. 07 Jul, 2017 1 commit
    • Sebastien Alaiwan's avatar
      Encode superframes in front · e4c6fc18
      Sebastien Alaiwan authored
      This moves the superframe index at the beginning of the frame packet.
      There's no change in the superframe index format, and it's still
      optional.
      
      BUG=aomedia:22
      
      Change-Id: I1488429bd114c220ed110be34baee19191ff730e
      e4c6fc18
  14. 03 Jul, 2017 1 commit
    • Nathan E. Egge's avatar
      Remove the av1_intra_mode_tree const with EC_ADAPT. · 5694aa7b
      Nathan E. Egge authored
      When EC_ADAPT is enabled, this adds const av1_intra_mode_ind and
       av1_intra_mode_inv arrays and removes the av1_intra_mode_tree const.
      This commit has no effect on metrics.
      
      Change-Id: I1de8f4ea91269adacd7fdadbc8426f641ef866f0
      5694aa7b
  15. 26 Jun, 2017 1 commit
  16. 12 Jun, 2017 1 commit
    • Fergus Simpson's avatar
      frame_superres: Post encode/decode upscaling · d2bcbb56
      Fergus Simpson authored
      This patch implements the post-encode and post-decode upscaling for the
      frame superresolution experiment to work.
      
      Upscaling happens after cdef and before loop restoration.
      
      For now, this patch forces on random-superres.
      
      The patch also cleans up some broken rate control hooks from VP9
      days, to be brought back later when the resize and superres tools
      are stable.
      
      Change-Id: If0a8f69224dfaa0f4ae7703bd429ea2af953c7a6
      d2bcbb56
  17. 08 Jun, 2017 1 commit
  18. 25 May, 2017 1 commit
  19. 20 May, 2017 1 commit
  20. 25 Mar, 2017 1 commit
    • Jingning Han's avatar
      Fix tree to cdf index mapping · 8e67c05f
      Jingning Han authored
      This fixes the mis-aligned cdf model derived from tree based
      model. It resolves the compression performance regression in
      dual filter, intra mode, inter mode, and transform block type
      coding, when ec-multisymbol is enabled by default.
      
      With dual filter enabled, the performance regression was 3.6%
      loss for lowres. This fix brings the performance gains back to 1%
      gains.
      
      Change-Id: I80f5485386045908c152c9c11eeacbc650f1e324
      8e67c05f
  21. 21 Mar, 2017 1 commit
    • Thomas Davies's avatar
      Align EXT_TX with EC_MULTISYMBOL and EC_ADAPT. · b1bedf5f
      Thomas Davies authored
      Do multisymbol coding for transform type.
      Load default cdf probabilities directly.
      Use CDF frame update mechanism when EC_ADAPT is
      enabled.
      
      Change-Id: Id23c927e81587b560e9df8b9bc56c0e2e3bb6f03
      b1bedf5f
  22. 13 Feb, 2017 1 commit
  23. 05 Jan, 2017 4 commits
  24. 24 Nov, 2016 1 commit
    • Adrian Grange's avatar
      Superframe index: Parse correct number of frame sizes · a414887a
      Adrian Grange authored
      If there are N frames in a superframe, the superframe
      index will enumerate the sizes of only the first
      (N - 1) frames. The code assumed that all N frame
      sizes are coded.
      
      The size of the final frame in the superframe is
      calculated as follows:
      (data_size - index_size - sum_of_N-1_frame_sizes)
      
      Change-Id: Ia53ae27455a4f024eec311bf7356a00e8e0d449a
      a414887a
  25. 10 Nov, 2016 1 commit
    • 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
  26. 07 Nov, 2016 1 commit
    • 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
  27. 04 Nov, 2016 1 commit
    • 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
  28. 22 Oct, 2016 1 commit
    • Angie Chiang's avatar
      Align frame contexts. · a5d96c4a
      Angie Chiang authored
      This will allow for aligned cdfs and scan orders inside.
      
      Change-Id: I8ebcd64d55e41da20f518a39ae6ef192def70109
      a5d96c4a
  29. 21 Oct, 2016 3 commits
    • Nathan E. Egge's avatar
      Add a runtime flag to enable bit accounting. · eb64fc28
      Nathan E. Egge authored
      By default, when building with --enable-accounting the bit accounting
       code will collect statistics for every frame while decoding.
      Collecting statistics can slow down decode time and we would eventually
       like to enable the CONFIG_ACCOUNTING flag by default.
      This patch adds a runtime flag so that bit accounting statistics are
       only collected when actually needed.
      
      Change-Id: I25d9eaf26ea132d61ace95b952872158c9ac29e7
      eb64fc28
    • Nathan E. Egge's avatar
      Update inter_mode_cdf tables once per frame. · 6ec4d10d
      Nathan E. Egge authored
      Move computing the inter_mode_cdf tables per coded inter mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I7a7b059ee75723cb6f278ed82a20cf34c27915d8
      6ec4d10d
    • Nathan E. Egge's avatar
      Update kf_y_mode_cdf tables once per frame. · 3ef926ed
      Nathan E. Egge authored
      Move computing the kf_y_mode_cdf tables per coded intra mode symbol to
       computing them only when the probabilities are updated.
      
      Change-Id: I5999447050c2f7d5dbccde80bee05ecd1c5440ab
      3ef926ed
  30. 19 Oct, 2016 1 commit
    • Michael Bebenita's avatar
      Bit accounting. · 6048d052
      Michael Bebenita authored
      This patch adds bit account infrastructure to the bit reader API.
      When configured with --enable-accounting, every bit reader API
      function records the number of bits necessary to decoding a symbol.
      Accounting symbol entries are collected in global accounting data
      structure, that can be used to understand exactly where bits are
      spent (http://aomanalyzer.org). The data structure is cleared and
      reused each frame to reduce memory usage. When configured without
      --enable-accounting, bit accounting does not incur any runtime
      overhead.
      
      All aom_read_xxx functions now have an additional string parameter
      that specifies the symbol name. By default, the ACCT_STR macro is
      used (which expands to __func__). For more precise accounting,
      these should be replaced with more descriptive names.
      
      Change-Id: Ia2e1343cb842c9391b12b77272587dfbe307a56d
      6048d052
  31. 17 Oct, 2016 2 commits
    • 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
  32. 10 Oct, 2016 1 commit
    • Nathan E. Egge's avatar
      Add a runtime flag to enable bit accounting. · 9719e2d6
      Nathan E. Egge authored
      By default, when building with --enable-accounting the bit accounting
       code will collect statistics for every frame while decoding.
      Collecting statistics can slow down decode time and we would eventually
       like to enable the CONFIG_ACCOUNTING flag by default.
      This patch adds a runtime flag so that bit accounting statistics are
       only collected when actually needed.
      
      Change-Id: I25d9eaf26ea132d61ace95b952872158c9ac29e7
      9719e2d6
  33. 30 Sep, 2016 1 commit
  34. 21 Sep, 2016 1 commit
    • Alex Converse's avatar
      Align frame contexts. · d822126f
      Alex Converse authored
      This will allow for aligned cdfs and scan orders inside.
      
      Change-Id: I799af6cc0b87d90bad56f32fd822e0690fc51b8b
      d822126f