1. 06 Jul, 2017 14 commits
    • Thomas Davies's avatar
      EXT_INTER: CDF coding for inter_compound_mode. · 8c08a33a
      Thomas Davies authored
      Replace deprecated tree coding when EC_ADAPT is on.
      AWCY: -0.01% all metrics.
      Change-Id: I021dbc1e5f2a64fec66da1a427a0bf930cfed292
    • Jingning Han's avatar
      Speed up txk search function · 47558170
      Jingning Han authored
      Remove unnecessary quantization and optimization steps.
      Change-Id: I5be64b3a0860b553801c3136750e2050d367ec54
    • Jingning Han's avatar
      Make var-tx context update support lv-map context sets · 2f42d778
      Jingning Han authored
      Properly update the inter transform block context model used by
      the level-map coding in the recursive transform block partition
      Change-Id: Ib647ead8f6778189b6098bf5e6d691144e899c4b
    • Jingning Han's avatar
      Fix tx type cost estimate in txk-sel · 1643a0ac
      Jingning Han authored
      Fix repeated tx type cost count in txk-sel when ext-tx is turned
      Change-Id: Ie7a6306883d9aa95342aecfad75644a0f29237a4
    • Sebastien Alaiwan's avatar
      Inline temporary · 44309756
      Sebastien Alaiwan authored
      Change-Id: I6e2d6baf365b83d758da1a7b7f9507f77c668f2f
    • Sebastien Alaiwan's avatar
      Remove #if guard · 2cbf1a20
      Sebastien Alaiwan authored
      The preprocessor symbol is already tested in check_range implementation.
      Change-Id: I34079c6450fee2c137d78ad5a8c924f8f6aba7be
    • Sebastien Alaiwan's avatar
      Reduce scope of temporary arrays · 7a6e87b6
      Sebastien Alaiwan authored
      Change-Id: Id59effcc6a27974ceaea3aed0d321dc478cda64b
    • Sebastien Alaiwan's avatar
      Avoid dynamic memory allocation · b5138be3
      Sebastien Alaiwan authored
      Change-Id: If15d35788bed9a1fcda6ebf7a8173960c7fe7e0e
    • Sebastien Alaiwan's avatar
      Reduce scope of 'count_' · f7829f43
      Sebastien Alaiwan authored
      Change-Id: I2cff4ccee4afaac054c7debf977b2ae922de779a
    • Wei-Ting Lin's avatar
      ncobmc_adapt_weight: allow the usage of new motion mode · d0f7ba16
      Wei-Ting Lin authored
      The new motion mode "NCOBMC_ADAPT_WEIGHT" cannot be used
      in the motion search loop as it requires all mvs from the
      neighboring blocks. This patch add a wrapper to skip checking
      this mode during mv search.
      Change-Id: I3a39954e91101929f26b5479c8c6ae22abdc7bce
    • Luc Trudeau's avatar
      [CFL] Fixed point implementation for tx average · bfe2827b
      Luc Trudeau authored
      This change does not impact the bitstream as no loss is incured by using
      a fixed point value for the transform size average.
      For low bit depth, the transform size average is stored using Q8.10
      fixed point format. Worst case, smallest fraction is 1/1024.
      Results on Subset1 (Compared to 366b74 with CfL)
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0000 |  0.0000 |  0.0000 |   0.0000 | 0.0000 |  0.0000 |     0.0000
      Change-Id: Ia5b046b92a0e4c40e413b16af3394bdc0a8c8cd9
    • Luc Trudeau's avatar
      [CFL] Compute Average Over TX Block Instead of Pred Block · 03678940
      Luc Trudeau authored
      When computing alpha, multiple averages are computed, one for each
      transform block. The CfL prediction now uses the transform block average
      instead of partition block average.
      This allows the decoder to build the CfL prediction by using only the
      collocated reconstructed luma values for the current transform size and
      not the entire partition.
      Results on Subset 1 (Compared to 0e81b97c with CfL)
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0180 |  0.2627 |  0.2274 |   0.0233 | 0.0301 |  0.0312 |     0.1506
      A small regression is expected, this change was made to simplify
      hardware implementations.
      Change-Id: Ib2ce2a3053b85300c5c62ef0e3270af489568a38
    • Luc Trudeau's avatar
      [CFL] clip CFL prediction to avoid overflow · 5c453db2
      Luc Trudeau authored
      The value predicted using CfL is clipped to avoid going out of the
      scope of the uint8. Both overflow and underflow was detected over
      Results on Subset1 (compared to 7e55571e with CfL enabled)
        PSNR | PSNR Cb | PSNR Cr | PSNR HVS |   SSIM | MS SSIM | CIEDE 2000
      0.0019 |  0.0001 |  0.0009 |   0.0047 | 0.0020 |  0.0023 |     0.0012
      Change-Id: Ie1190e2286aa90542eaa68b814cc5cfa031acb73
    • Michael Bebenita's avatar
      analyzer: escape build config · 4aee17d7
      Michael Bebenita authored
      Change-Id: Ia3c83baa7057a0bbc1c5773e53858d32692c572f
  2. 05 Jul, 2017 8 commits
  3. 04 Jul, 2017 2 commits
  4. 03 Jul, 2017 7 commits
    • Luc Trudeau's avatar
      [CFL] Adjust Pixel Buffer for Chroma Sub8x8 · 780d249d
      Luc Trudeau authored
      Adjust row and col offset for sub8x8 blocks to allow the CfL prediction
      to use all available reconstructed luma pixels.
      Results on Subset 1 (Compared to b03c2f44 with CfL)
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.1355 | -0.8517 | -0.4481 |  -0.0579 | -0.0237 | -0.0203 |    -0.2765
      Change-Id: Ia91f0a078f0ff4f28bb2d272b096f579e0d04dac
    • Zoe Liu's avatar
      Fix a bug in block mismatch debugging · f9333f51
      Zoe Liu authored
      Fix a bug in checking the block mode context.
      Change-Id: Ia585f30e370f80a6e42bf5a2eb7ace0cf2d1f337
    • 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
    • Nathan E. Egge's avatar
      Use CDFs to compute all intra mode related costs. · 693eedd1
      Nathan E. Egge authored
      When EC_ADAPT is enabled, this patch uses the adapted CDF after
       encoding the entire frame to compute the non-adapted costs that are
       used in RDO decision making when coding the following frame.
      Future patches will update these costs periodically while coding the
       frame to keep them in sync with the actual rates used when coding the
       symbols with the adapted CDF.
      master@2017-06-30T01:10:29.197Z -> intra_cdfs@2017-06-30T01:09:41.171Z
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0168 |  0.0031 | -0.0181 |  -0.0018 | -0.0022 | -0.0209 |    -0.0027
      Change-Id: Id9e284b429e4d2a31d418141af6935d7ece1180e
    • Guillaume Martres's avatar
      Remove Unused UPDATE_RD_COST macro · 858e2388
      Guillaume Martres authored
      It stopped being used after 09302f5a
      Change-Id: Ie7d567c787a4120f8b73378b3a82267249a82e3d
    • David Barker's avatar
      Fix typo in error message · 3409c0dd
      David Barker authored
      Change-Id: I0f80836f7d3fdf4c6b74b3972ae4fbf802b1c99e
    • Sebastien Alaiwan's avatar
      Fix warning in test code · f7b67565
      Sebastien Alaiwan authored
      And ensure no other warnings will creep in by using
      an 'if' statement instead of a #if.
      Change-Id: Ic0ccc481d375de3b3cedc7e3e5530f6f9b011c37
  5. 01 Jul, 2017 2 commits
    • James Zern's avatar
      simd_cmp_impl,S64_V256V256: use correct store fn · 910f479b
      James Zern authored
      u64 -> s64
      quiets ubsan warnings:
      call to function (unknown) through pointer to incorrect function type
      'void (*)(void *, long long)'
      Change-Id: I3331e11b0780dea3af435952db639354c7028738
    • James Zern's avatar
      libwebm/README.libaom: correct local changes · 62db3dcc
      James Zern authored
      the addition of V_AV1 was removed in the last roll as it was incomplete
      and the constant unused in this code base. webmdec/enc handle
      specifying this value.
      Change-Id: I30f96e0a5ac7d0e2706b0a1fcab8ac3c8dab5a43
  6. 30 Jun, 2017 7 commits
    • Zoe Liu's avatar
      Add a new coding tool of gf_groups · 5caf2c49
      Zoe Liu authored
      This coding tool is targeted at tuning the encoder decisions on
      altrefs, including the temporal filtering strength applied to the
      altrefs, the structure of the gf (Golden Frame) groups, etc.
      Change-Id: Ifd0ff1c35c23ecb005192b874a8d4e61a8ad6bd3
    • James Zern's avatar
      Add support for Visual Studio 2017 · ff5b2f43
      James Zern authored
      ported from libvpx:
      bcfd9c975 Add support for Visual Studio 2017
      Change-Id: I86c8848ce6626fa218a38bfbd3e39abb60420218
    • James Zern's avatar
      roll libwebm snapshot · 69eab5cd
      James Zern authored
      git log --no-merges --oneline 32d5ac4..a97c484
      9096786 mkvparser: fix float conversion warning
      84e8257 disable -Wdeprecated-declarations in legacy code
      a98f495 AddGenericFrame: fix memory leak on failure
      da131dd AddCuePoint: fix memory leak on failure
      b0cea9c Add(Audio|Video)Track: fix memory leak on failure
      5261a67 webm_info: check vp9 ParseUncompressedHeader return
      85f7e2e webm_info,PrintVP9Info: validate alt ref sizes
      9b97ca1 vp9_header_parser_tests: check parser return
      300d6d8 CuePoint::Find: check Track pointer
      50c44bb webm_info,OutputCues: fix indexing of tracks
      a0d27f0 mkvparser,Block::Parse: remove incorrect assert
      784fc1b vttdemux,CloseFiles: check file pointer before closing
      b4522c1 .gitattributes: force mkv/webm to be treated as binary
      a118f3d Add test for projection parse failures.
      d398479 Add test for primary chromaticity parse failures.
      9bbec4c Fix permissions on test file.
      2cef4d5 mkvparser:Parse: s/FLT_MIN/-FLT_MAX/
      35a3c88 mkvmuxer: Turn off estimate_file_duration_ by default
      5a41830 mkvparser: Avoid double free when Chromaticity parse fails.
      67e3ffa mkvparser: Avoid casts of values too large for float in
      Projection elements.
      Change-Id: I45acb22902ff0a46a5d339dc51181d5d141a8dcc
    • David Barker's avatar
      Fix bug when cb4x4 is disabled · e3afdd89
      David Barker authored
      When cb4x4 is disabled and global-motion is enabled, the function
      av1_append_sub8x8_mvs_for_idx accidentally fetched
      cm->global_motion[ref] instead of cm->global_motion[rf[0]],
      ie. it used the reference *index* instead of the reference *frame*.
      Change-Id: Ieebf60f6b7c0a1cbbc083a70d4451ad799e27fe3
    • Tom Finegan's avatar
      Clean up tools/build_inspector.sh. · 161e3392
      Tom Finegan authored
      Formatting and license block.
      Change-Id: Iac5aa410136feb94901a9f2af5bdcc4188959e41
    • Tom Finegan's avatar
      Small fixes in CMake analyzer build. · 614bf348
      Tom Finegan authored
      - Fix path to analyzer.cc in docs.cmake.
      - Add analyzer to the examples list.
      Change-Id: I81e37718e83f2dfc2ba7725b3f8d89a5aa0cdb4f
    • Sebastien Alaiwan's avatar
      Always use the 16-bit coding path · 3d264da2
      Sebastien Alaiwan authored
      The encoder and decoder will now use the 16-bit (high-bitdepth)
      coding path, regardless of the encoding profile.
      This is a step towards the removal of the 8-bit (low-bitdepth)
      coding path (which remains compile-checked at the moment).
      Change-Id: I6f8e8f1ce7a3bf1d3da7fda8461b1214ef579c64