1. 11 Oct, 2016 2 commits
    • Steinar Midtskogen's avatar
      Bugfix in the CLPF RDO. · 2e40cc4c
      Steinar Midtskogen authored
      When CLPF was extended to chroma, the chroma RDO accidentally
      discarded the optimal block size found in the luma RDO.
      PSNR YCbCr:     -0.25%      0.05%      0.06%
         PSNRHVS:     -0.19%
            SSIM:     -0.36%
          MSSSIM:     -0.23%
      Change-Id: Ie49cd30f9276a311ada88cb2f13d14757617f030
    • Zoe Liu's avatar
      Add a small code clean for show_existing_frame · 5fca7249
      Zoe Liu authored
      Change-Id: I42dc9f0fdecd3cf3398ab82d6e01dde06bdf7b24
  2. 10 Oct, 2016 5 commits
  3. 06 Oct, 2016 1 commit
  4. 30 Sep, 2016 1 commit
  5. 22 Sep, 2016 1 commit
  6. 19 Sep, 2016 1 commit
    • Alex Converse's avatar
      Move ANS to aom_dsp. · 1ac1ae73
      Alex Converse authored
      That's where it lives in aom/master.
      Change-Id: I38f405827d9c2d0b06ef5f3bfd7cadc35d5991ef
  7. 09 Sep, 2016 2 commits
    • Jingning Han's avatar
      Sort header files · 1aab8184
      Jingning Han authored
      cherry-picked #ecd07473 from aom/master
      Change-Id: Id8f45d9c11406fc301b39801c5228ccd6aa2d5d6
    • James Zern's avatar
      s/INTERP_FILTER/InterpFilter/ · 7b9407a8
      James Zern authored
      this matches style guidelines and stabilizes successive runs of
      clang-format across the tree. remaining types should be address in
      successive commits.
      Change-Id: I6ad3f69cf0a22cb9a9b895b272195f891f71170f
  8. 03 Sep, 2016 1 commit
    • Sarah Parker's avatar
      Fix formatting in internal stats for vp10 · f97b7860
      Sarah Parker authored
      This corrects a formatting error introduced in:
      where spaces were used as delimiters instead of tabs.
      The corresponding fixes for vp9 and vp8 are in
      Change-Id: Ica3d625d6672b3c47e0e208b45eede29b9004030
  9. 01 Sep, 2016 3 commits
  10. 30 Aug, 2016 1 commit
  11. 29 Aug, 2016 2 commits
  12. 26 Aug, 2016 1 commit
    • Geza Lore's avatar
      Use rectangular transforms for >= 8x8 blocks · d21982c8
      Geza Lore authored
      For rectangular blocks between 8x8 and 32x32, we can now code the
      transform size as one bigger than the largest square that fits in
      the block (eg, for 16x8, we can code a transform size of 16x16
      rather than the previous maximum of 8x8), when this oversized
      transform is coded in the bitstream, the codec will use the full
      size rectangular transform for that block (eg 16x8 transform in
      the above example).
      Also fixes a scaling bug in 16x8/8x16 transforms.
      Change-Id: I62ce75f1b01c46fe2fbc727ce4abef695f4fcd43
  13. 25 Aug, 2016 1 commit
    • Wei-ting Lin's avatar
      Separate EXT_ARFs' frame context index · 4c7e1cd9
      Wei-ting Lin authored
      This commit separate the frame index of EXT_ARFs' from other frame
      types in the ext-refs setting.
      It improves the average RD performance by
      0.206% in the lowres, and
      0.173% in the midres.
      The overall gains for the ext-refs compared to the baseline are
      5.665% in the lowres, and
      4.883% in the midres.
      Change-Id: I6591ad29120880c1aef0bd0b7cf15238c3f3b8f3
  14. 23 Aug, 2016 1 commit
    • Wei-ting Lin's avatar
      Allow LF_UPDATE type of frames to use BWDREF · 4e8acca9
      Wei-ting Lin authored
      Originally, only bi-pred type of frames can use BWDREF. When
      extra alt-refs are inserted in a gf group, the closest alt-ref
      serves as ALTREF for the frames within the corresponding
      subgroup. Therefore, the original alt-ref can be used as BWDREF
      for the LF_UPDATE type of frames.
      This patch further swaps the virtual indices of BWDREF and ALTREF
      for those frames whose BWDREF is farther than ALTREF. As a result,
      the BWDREF is always the closet backward reference frame, and the
      ALTREF is the farther one.
      It improves the average RD performance by
      0.132% in lowres, and
      0.030% in midres.
      The overall gains for the ext-refs compared to the baseline are
      5.486% in lowres, and
      4.666% in midres.
      Change-Id: I22e4e5f378f19c4c89196a0a5e9214adb46c3428
  15. 22 Aug, 2016 1 commit
  16. 19 Aug, 2016 1 commit
    • Wei-ting Lin's avatar
      Insert extra ARFs' in a gf group · 41d5d52d
      Wei-ting Lin authored
      Insert multiple arfs in a gf group to emulate multi-layer backward
      reference frames structure. At maximum, two extra ARF's are inserted
      in a gf group.
      It improves the RD performance by 0.317% in Avg in lowres dataset.
      Change-Id: I62c32e1b0f25b978484dd113b319bebcd959bf60
  17. 18 Aug, 2016 1 commit
  18. 16 Aug, 2016 2 commits
    • Yaowu Xu's avatar
      Port dering experiment from aom · 253c001f
      Yaowu Xu authored
      Mannually cherry-picked:
      15791332 Use OD_DIVU for small divisions in temporal_filter.
      03122298 Replace divides by small values with multiplies.
      9c48eec7 Removing divisions from od_dir_find8()
      0950ed82 Merge "Port active map / cyclic refresh fixes to vp10."
      efefdad7 Port active map / cyclic refresh fixes to vp10.
      1eaf748c Port switch to 9-bit rate cost to aom.
      0b1606e7 Only build deringing code when --enable-dering.
      e2511e15 Deringing cleanup: don't hardcode the number of levels
      8fe5c5d6 Rename dering_in to od_dering_in to sync with Daala
      4eb1380d Makes second filters for 45-degree directions horizontal
      7f4c3f58 Removes the superblock variance contribution to the threshold
      3dc56f93 Simplifying arithmetic by using multiply+shift
      cf2aaba9 Return 0 explicitly for OD_ILOG(0).
      49ca22aa Use the Daala implementation of OD_ILOG().
      85187243 Fix compiler warning in od_dering.c.
      485d6a69 Prevent multiple inclusion of odintrin.h.
      51b7a998 Adds the Daala deringing filter as experimental
      Note that a few of the changes were already in libvpx codebse.
      Change-Id: I1c32ee7694e5ad22c98b06ff97737cd792cd88ae
    • Yaowu Xu's avatar
      Port commits related to clpf and qm experiments · 0818a7c8
      Yaowu Xu authored
      Manually cherry-picked following commits from AOMedia git repository:
      bb2727c2 Sort includess for "clpf.h"
      c297fd00 Add quantisation matrix range parameters.
      0527894f Add encoder option and signaling for quant matrix control.
      4106232b Turn off trellis coding for quantization matrices.
      4017fca3 Modify tests to allow quantization matrices.
      1c122c24 Add quant and dequant functions for new quant matrices.
      95a89994 Enable CLPF
      f72782bb Fix a build issue
      73bae509 Add quantisation matrices and selection functions
      33208d20 Added support for constrained low pass filter (CLPF)
      Change-Id: I60fc1ee1ac40e6b9d1d00affd97547ee5d5dd6be
  19. 12 Aug, 2016 1 commit
  20. 11 Aug, 2016 1 commit
    • Angie Chiang's avatar
      Bitstream debug tool · 4de81ee1
      Angie Chiang authored
      This is a debug tool used to detect bitstream error. On encoder side, it pushes
      each bit and probability into a queue before the bit is written into the
      Arithmetic coder. On decoder side, whenever a bit is read out from the
      Arithmetic coder, it pops up the reference bit and probability from the queue as
      well. If the two results do not match, this debug tool will report an error.
      This tool can be used to pin down the bitstream error precisely. By combining
      gdb's backtrace method, we can detect which module causes the bitstream error.
      Change-Id: I133a4371fafdd48c488f2ca47f9e395676c401f2
  21. 10 Aug, 2016 1 commit
    • James Zern's avatar
      remove SVC · cc73e1fc
      James Zern authored
      spatial/temporal scalability are not supported in VP10 currently.
      + remove the unused vp10/encoder/skin_detection.[hc]
      this also enables DatarateTestLarge for VP10 which passes with no
      experiments enabled. these were removed previously when only the SVC
      tests should have been:
      134710af Disable tests not applicable to VP10
      Change-Id: I9ee7a0dd5ad3d8cc1e8fd5f0a90260fa43da387c
  22. 08 Aug, 2016 1 commit
    • Sarah Parker's avatar
      Add reconstruction using gm parameters · b659281e
      Sarah Parker authored
      This patch only includes inter frame reconstruction using gm
      parameters when GLOBAL_MOTION and/or VP9_HIGHBITDEPTH are enabled.
      GM is not currently used when EXT_INTER or DUAL_FILTER is enabled.
      This will be added in a followup patch. For now, these experiments
      will take precedence over GLOBAL_MOTION when they are all enabled.
      Change-Id: I930ddda529c44d7245dbb56db3c9c5524cf45473
  23. 05 Aug, 2016 1 commit
    • Wei-ting Lin's avatar
      Fix a bug for multi_arf_allowed · c0e55de0
      Wei-ting Lin authored
      The ARF Index was wrong when updating the upsampled reference
      frame buffer.
      Compared to the baseline in which multi_arf_allowed is disabled, the
      RD performance drops 2.250% in Avg using Overall PSNR in the derf
      dataset. The performance decrease is especially in the following
      video sequences:
      foreman_cif: drops 7.489%
      husky_cif: drops 6.421%
      soccer_cif: drops 4.850%
      However, it has a significant gain in the following video sequences:
      container_cif: increases 8.043%
      harbour_cif: increases 1.332%
      Change-Id: I02472909eb34bd070d7544f57383e72559fa42b3
  24. 04 Aug, 2016 2 commits
    • Yaowu Xu's avatar
      Replace variants of 'vp8' and 'vp9' with 'vpx' · fe291b64
      Yaowu Xu authored
      Change-Id: Id6cb96b0b15efdda63348d8bfe59fc0533c85ba1
    • Zoe Liu's avatar
      Code refactoring on Macros related to ref frame numbers · 1af28f02
      Zoe Liu authored
      We have renamed following Macros to avoid name confusion:
      INTER_REFS_PER_FRAME specifies the maximum number of reference frames
      that each Inter frame may use.
      TOTAL_REFS_PER_FRAME is equal to INTER_REFS_PER_FRAME + 1, which
      counts the INTRA_FRAME.
      Further, at the encoder side, since REF_FRAMES specifies the maximum
      number of the reference frames that the encoder may store, REF_FRAMES
      is usually larger than INTER_REFS_PER_FRAME. For example, in the
      ext-refs experiment, REF_FRAMES == 8, which allows the encoder to
      store maximum 8 reference frames in the buffer, but
      INTER_REFS_PER_FRAME equals to 6, which allows each Inter frame may
      use up to 6 frames out of the 8 buffered frames as its references.
      Hence, in order to explore the possibility to store more reference
      frames in future patches, we modified a couple of array sizes to
      accomodate the case that the number of buffered reference frames is
      not always equal to the number of the references that are being used
      by each Inter frame.
      Change-Id: I19e42ef608946cc76ebfd3e965a05f4b9b93a0b3
  25. 02 Aug, 2016 2 commits
  26. 29 Jul, 2016 1 commit
  27. 27 Jul, 2016 1 commit
    • Jingning Han's avatar
      Separate frame context index for different frame types · 8915eb8e
      Jingning Han authored
      This commit makes the encoder to use different frame context index
      for different frame types. In the baseline setting, it sets the
      frame context index of the overlay frame to be different from other
      regular inter frames. In the ext-refs setting, it further allows
      the backward reference frame to use a different index.
      It improves the compression performance for both settings.
      lowres  0.12%
      lowres  0.50%
      midres  0.56%
      Change-Id: I7c63ddec9fc296c56a86353cf2c661a740b97a97
  28. 19 Jul, 2016 1 commit
    • Wei-ting Lin's avatar
      Allow OVERLAY frames to use the show_exsiting_frame flag · ccc9e7cf
      Wei-ting Lin authored
      ARF with zero strength temporal filter can be reused by setting the
      show_existing_frame = 1, and in this case, there is no need to
      refresh the reference frame buffer. However, we used the flag
      "refresh_golden_frame" as the identifier for the starting point of a gf
      A new flags "is_arf_filter_off" is used to record if the filter with
      strengrh zero is used.
      Change-Id: I25971a760f6e1638d5147fe30488c48125512b1a