1. 03 Jul, 2017 2 commits
  2. 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
  3. 30 Jun, 2017 10 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
    • Sebastien Alaiwan's avatar
      Fix unit tests with --disable-lowbitdepth · 8a65f9f1
      Sebastien Alaiwan authored
      This removes a workaround, which is not needed anymore
      now that the choice of coding path is done in aomdec.c
      instead of decode_frame.c.
      Change-Id: I42acdd51036461c23fdaa69324e0415b53ee74fa
    • Nathan E. Egge's avatar
      Remove unused av1_token encodings. · 4a841347
      Nathan E. Egge authored
      These are left over from before the EC_MULTISYMBOL experiment was
      Change-Id: I3dd1e4bfd3ee262c8d2a36c6d264b66a55e477c7
    • Luc Trudeau's avatar
      [CFL] Assert that luma buffer is not bigger than chroma surface · b03c2f44
      Luc Trudeau authored
      Change-Id: Idcc16f6d399c457a5950319483d95f4b38ff6a71
  4. 29 Jun, 2017 4 commits
    • Luc Trudeau's avatar
      [CFL] Compute DC_PRED until end of frame · e7f9e16a
      Luc Trudeau authored
      When computing CFL's prediction block level DC_PRED,
      We can't assume that the neighbor will use the same
      transform size. As such, we don't know what pixels
      are available outside of the frame. A simple
      solution is to stop computing DC_PRED at the block
      Results on Subset 1 ( Compared to 9c6f8547 with CfL enabled)
         PSNR | PSNR Cb | PSNR Cr | PSNR HVS |    SSIM | MS SSIM | CIEDE 2000
      -0.0015 | -0.0026 | -0.0025 |  -0.0034 | -0.0008 | -0.0044 |     0.0019
      Change-Id: I00ed4114e5c5871fdc7222fa2000474eb11d33e0
    • Luc Trudeau's avatar
      [CFL] Better encapsulation · 3dc55e0f
      Luc Trudeau authored
      The function cfl_compute_parameters is added and contains the logic
      related to building the CfL context parameters. As such, many cfl
      functions can now be encapsulated inside of cfl.c and not exposed to the
      rest of AV1.
      This also allows for supplemental asserts that validate that the CfL
      context is properly built.
      Results on Subset1 (compared to 9c6f8547 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: I6d14a426416b3af5491bdc145db7281b5e988cae
    • Frederic Barbier's avatar
      Cleanup dead inv-txfm functions in HBD data path · 24d565b4
      Frederic Barbier authored
      Cleanup related unit-tests.
      Change-Id: Ic756e6bbad80f5b9947ca1cdd55cdef77b985f81
    • Yue Chen's avatar
      AV1 offline probability optimizer · c8b38b0b
      Yue Chen authored
      This tool is a gadget for offline probability training.
      A binary executable aom_entropy_optimizer will be generated in
      tools/. It parses a binary file consisting of counts written in
      the format of FRAME_COUNTS in entropymode.h, and computes the
      optimized probability table, which will be written to a new c file
      optimized_probs.c using the format in entropymode.c.
      Command line:
      ./aom_entropy_optimizer [directory of the count file]
      The input file can be either be generated from a single run by
      turning on entropy_stats experiment(counts are accumulated from
      frame to frame, and finally written to counts.stt), or be collected
      at a larger scale, at which a python script (will be provided soon)
      can be used to aggregate multiple stats output.
      Optimization for initial CDFs will be also supported later.
      Change-Id: I32070721aa8059439feb6b5a3a179f1001c66bb7
  5. 28 Jun, 2017 14 commits
  6. 27 Jun, 2017 8 commits
    • Wei-Ting Lin's avatar
      ncobmc_adapt_weight: Add bitstream syntax · 85a8f70c
      Wei-Ting Lin authored
      Define the syntax and entropy coding templates for
      NCOBMC_ADAPT_WEIGHT. The actual values of the default
      probabilities and the index tree structure need to
      be fine tuned.
      In this experiment all mv's in a superblock are sent
      first as in the ncobmc case.
      Change-Id: I68d50d3d27346c2847ea449a1168c6a99fbb4d3d
    • Todd Nguyen's avatar
      Add experiment bgsprite · 302d0970
      Todd Nguyen authored
      Work in progress to generate ARF with stitched background image.
      Change-Id: I2fea75bbe5ac6f713f53eb5825776dadfc1d98c5
    • Urvang Joshi's avatar
      Enable smooth_hv by default. · bda59df3
      Urvang Joshi authored
      This experiment was provisionally adopted on 2017-06-27.
      Change-Id: Ic7eb232b8187133f59956eed09e5f5de02c0986e
    • Luc Trudeau's avatar
      [CFL] Sum Alpha Distortion Over Transform Block · 8fb4c9e7
      Luc Trudeau authored
      This change does not impact the bitstream, it changes how to distortion
      is summed when evaluating alpha. The sum is still taken over the entire
      partition. However, instead of iterating over the entire surface all at
      once, CfL now iterates over each transform block. This is in light of
      future work to compute alpha over transform blocks and not prediction
      Results on Subset1 (compared to 9c6f8547 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: Ic7b72201d29ad6b2527748e35b212bec515e3bdb
    • Debargha Mukherjee's avatar
      Reduce multiplier precision for warp least squares · f053cba2
      Debargha Mukherjee authored
      Includes reordering and other clamping changes, as well as
      changes to reduce multiplier precision.
      cam_lowres (60 frames): -0.092% BDRATE improvement in
      --disable-cdef --disable-global-motion --disable-ext-tx
      Change-Id: I0660c45b44fcd5a193534d8dadd1aa1ae5c5e27a
    • Yi Luo's avatar
      Fix inv txfm low/high bitdepth selection logic · 51281095
      Yi Luo authored
      We are going to have several commits to setup new low/high
      bitdepth data path selection logic. This patch is for inverse
      transform. Let me summarize the ideas as following.
      - For low/high bitdepth selection, encoder depends on
        input configuration, e.g., video sequence bitdepth,
        profile. Decoder depends on input bitstream. This has
        nothing to do with compiler/build  configuration.
      - Typical encoder usage for sampling format 4:2:0.
        1) 8-bit video sequence:
         a) --profile=0
         Fastest encoding/decoding pipeline on speedup.
         b) --profile=2 --bit-depth=10
         Image pixels are left shifted by 2 bits. It
         employs 16-bit reference frame buffer and has high
         calculation precision. It usually enjoys higher
         compression performance.
        2) 10/12-bit video sequence (HDR):
         --profile=2 --bit-depth=10/12
      - Transform coefficient type:
        Lowbitdepth:  int16_t
        Highbitdepth: int32_t
      - The type, tran_low_t is still used in codebase,
        Which is int32_t, defining the data path capacity.
        Naturally, it is high bitdepth.
      Eventually we shall remove the configuration flags,
      low and high bitdepth data path. Two data paths co-exist
      in the same build environment.
      Change-Id: I35c06d4d4f19ebf80d909168fdddbae57c3cc884
    • Sarah Parker's avatar
      Remove redundant checks in read/write_tx_type · 784596d5
      Sarah Parker authored
      Change-Id: I348dfd1f8b555306a3fb625bf2303f9cd2649e07
    • Rupert Swarbrick's avatar
      supertx: Read and write transforms with CDF in decode_partition · 580943a7
      Rupert Swarbrick authored
      Patch b1bedf5f converted the three writes in bitstream.c that
      specify an extended transform from using av1_write_token (encoded with
      probability trees) to aom_write_symbol (encoded with CDFs).
      That patch fixed up the two reads in decodemv.c but didn't fix up the
      corresponding read in decodeframe.c. This patch does so.
      The patch also fixes up a write of a (non-extended) transform when not
      CONFIG_EXT_TX and the corresponding read.
      Change-Id: Ibf5dcfcf3e7122f08dd0ef8616fb0ecddb95d99a