1. 27 Dec, 2017 1 commit
  2. 30 Nov, 2017 1 commit
  3. 25 Nov, 2017 1 commit
  4. 14 Nov, 2017 1 commit
  5. 09 Nov, 2017 1 commit
  6. 13 Jul, 2017 1 commit
  7. 08 Jul, 2017 1 commit
    • Fergus Simpson's avatar
      Fix frame scaling prediction · 505f0068
      Fergus Simpson authored
      Use higher precision offsets for more accurate predictor
      generation when references are at a different scale from
      the coded frame.
      
      Change-Id: I4c2c0ec67fa4824273cb3bd072211f41ac7802e8
      505f0068
  8. 27 May, 2017 1 commit
    • Debargha Mukherjee's avatar
      High precision Wiener filter rework · 11cf46f4
      Debargha Mukherjee authored
      Implements the high precision Wiener filter with an offset
      to reduce the error due to saturation without increasing
      the number of bits needed for intermediate precision.
      
      Also turns the high precision filter on.
      
      Change-Id: I34037a5746a6a89c5fce67753c1b027749085edf
      11cf46f4
  9. 23 May, 2017 1 commit
    • David Barker's avatar
      Vectorize high-precision convolve filter · 5d34e6a7
      David Barker authored
      Add SSE2 lowbd and SSSE3 highbd versions of the filters
      introduced in https://aomedia-review.googlesource.com/c/11962/ .
      
      These filters are equivalent in speed to the SSE2 implementations
      of the regular convolve filter. The average time to filter a
      64x64 block is:
      
      lowbd C: 52us
      lowbd SSE2: 5.6us
      highbd C: 53us
      highbd SSSE3: 5.8us
      
      Also add a correctness test based on the warp filter tests.
      
      Change-Id: Ia0d81100e8a414bbfc2b5f664d751cf24765299e
      5d34e6a7
  10. 15 May, 2017 1 commit
  11. 12 Apr, 2017 1 commit
  12. 03 Jan, 2017 1 commit
    • David Barker's avatar
      Add new convolve variant for loop-restoration · be6cc07d
      David Barker authored
      The convolve filters generated by loop_wiener_filter_tile
      are not compatible with some existing convolve implementations
      (they can have coefficients >128, sums of (certain subsets of)
      coefficients >128, etc.)
      
      So we implement a new variant, which takes a filter with 128
      subtracted from its central element and which adds an extra copy
      of the source just before clipping to a pixel (reinstating the
      128 we subtracted). This should be easy to adapt from the existing
      convolve functions, and this patch includes SSE2 highbd and
      SSSE3 lowbd implementations.
      
      Change-Id: I0abf4c2915f0665c49d88fe450dbc77b783f69e1
      be6cc07d
  13. 02 Sep, 2016 1 commit
  14. 01 Sep, 2016 2 commits
  15. 10 Aug, 2016 1 commit
  16. 30 Mar, 2016 1 commit
    • Geza Lore's avatar
      Extend superblock size fo 128x128 pixels. · 552d5cd7
      Geza Lore authored
      If --enable-ext-partition is used at build time, the superblock size
      (sometimes also referred to as coding unit (CU) size) is extended to
      128x128 pixels.
      
      Change-Id: Ie09cec6b7e8d765b7555ff5d80974aab60803f3a
      552d5cd7
  17. 22 Mar, 2016 1 commit
  18. 07 Mar, 2016 1 commit
  19. 28 Jan, 2016 1 commit
  20. 21 Jan, 2016 1 commit
  21. 03 Aug, 2015 1 commit
  22. 31 Jul, 2015 1 commit
    • Zoe Liu's avatar
      Code refactor on InterpKernel · 7186a2dd
      Zoe Liu authored
      It in essence refactors the code for both the interpolation
      filtering and the convolution. This change includes the moving
      of all the files as well as the changing of the code from vp9_
      prefix to vpx_ prefix accordingly, for underneath architectures:
      (1) x86;
      (2) arm/neon; and
      (3) mips/msa.
      The work on mips/drsp2 will be done in a separate change list.
      
      Change-Id: Ic3ce7fb7f81210db7628b373c73553db68793c46
      7186a2dd
  23. 07 May, 2015 1 commit
    • James Zern's avatar
      replace DECLARE_ALIGNED_ARRAY w/DECLARE_ALIGNED · fd3658b0
      James Zern authored
      this macro was used inconsistently and only differs in behavior from
      DECLARE_ALIGNED when an alignment attribute is unavailable. this macro
      is used with calls to assembly, while generic c-code doesn't rely on it,
      so in a c-only build without an alignment attribute the code will
      function as expected.
      
      Change-Id: Ie9d06d4028c0de17c63b3a27e6c1b0491cc4ea79
      fd3658b0
  24. 29 Apr, 2015 1 commit
    • James Zern's avatar
      vpx_mem: remove vpx_memcpy · f274c219
      James Zern authored
      vestigial. replace instances with memcpy() which they already were being
      defined to.
      
      Change-Id: Icfd1b0bc5d95b70efab91b9ae777ace1e81d2d7c
      f274c219
  25. 09 Oct, 2014 1 commit
  26. 03 Oct, 2014 1 commit
    • Deb Mukherjee's avatar
      Incorporate WRAPLOW macro into non-highbitdepth tx · d50716fa
      Deb Mukherjee authored
      Incorporates the WRAPLOW macro into the non-highbitdepth transforms
      to aid hardware verification between a software C model and an
      intended hardware implementation though the use of the configure
      options: --enable-experimental --enable-emulate-hardware.
      Note that to avoid further discrepancies between the sse/sse2
      implementations of the transforms and the C implementation, when the
      emulate hardware option is invoked, we also disable sse/sse2/etc.
      
      Also incudes some minor cleanups/renaming etc.
      
      Change-Id: Ib864d8493313927d429cce402982f1c8e45b3287
      d50716fa
  27. 02 Oct, 2014 1 commit
  28. 18 Sep, 2014 1 commit
  29. 24 Jun, 2014 1 commit
    • Adrian Grange's avatar
      Fix test on maximum downscaling limits · 8357292a
      Adrian Grange authored
      There is a normative scaling range of (x1/2, x16)
      for VP9. This patch fixes the maximum downscaling
      tests that are applied in the convolve function.
      
      The code used a maximum downscaling limit of x1/5
      for historic reasons related to the scalable
      coding work. Since the downsampling in this
      application is non-normative it will revert to
      using a separate non-normative scaler.
      
      Change-Id: Ide80ed712cee82fe5cb3c55076ac428295a6019f
      8357292a
  30. 13 May, 2014 1 commit
  31. 07 Feb, 2014 1 commit
  32. 04 Feb, 2014 1 commit
    • James Zern's avatar
      vp9_filter.h: rename interp_kernel type · cca4276d
      James Zern authored
      -> InterpKernel
      avoids conflicts in variable names, fixing the build with various
      toolchains.
      
      broken since:
      86915654 Removing subpix_fn_table struct.
      
      Change-Id: Ib5f6fdbcb494a97b62c75b99d4d826ff25d4c981
      cca4276d
  33. 24 Jan, 2014 1 commit
    • Dmitry Kovalev's avatar
      Renaming INTERPOLATION_TYPE to INTERP_FILTER. · 4264c938
      Dmitry Kovalev authored
      Corresponding renames:
        subpel_kernel              => interp_kernel
        vp9_get_filter_kernel()    => vp9_get_interp_kernel()
        pred_filter_type           => pred_interp_filter
        adaptive_pred_filter_type  => adaptive_pred_interp_filter
        mcomp_filter_type          => interp_filter
        read_interp_filter_type()  => read_interp_filter()
        write_interp_filter_type() => write_interp_filter()
        fix_mcomp_filter_type()    => fix_interp_filter()
      
      Change-Id: I1fa61fa1dc81ebbf043457c3ee2d8d4515bee6d3
      4264c938
  34. 12 Dec, 2013 1 commit
    • Dmitry Kovalev's avatar
      vp9_convole.c cleanup. · 629fb85f
      Dmitry Kovalev authored
      Making overall logic more clear, moving "hacked" calculation of base filter
      array pointer to get_filter_base() function.
      
      Change-Id: Ibbd38a9f937e48d35bbbfef3ad933ab36664cccb
      629fb85f
  35. 07 Oct, 2013 1 commit
  36. 24 Sep, 2013 1 commit
  37. 17 Sep, 2013 1 commit
  38. 09 Sep, 2013 1 commit
    • Ivan Maltz's avatar
      API extensions and sample app for spacial scalable encoder · 01b35c3c
      Ivan Maltz authored
      Sample app: vp9_spatial_scalable_encoder
      vpx_codec_control extensions:
        VP9E_SET_SVC
        VP9E_SET_WIDTH, VP9E_SET_HEIGHT, VP9E_SET_LAYER
        VP9E_SET_MIN_Q, VP9E_SET_MAX_Q
      expanded buffer size for vp9_convolve
      
      modified setting of initial width in vp9_onyx_if.c so that layer size
      can be set prior to initial encode
      
      Default number of layers set to 3 (VPX_SS_DEFAULT_LAYERS)
      Number of layers set explicitly in vpx_codec_enc_cfg.ss_number_layers
      
      Change-Id: I2c7a6fe6d665113671337032f7ad032430ac4197
      01b35c3c
  39. 30 Aug, 2013 1 commit
    • Tero Rintaluoma's avatar
      Fix intermediate height in convolve_c · e326cecf
      Tero Rintaluoma authored
      - Intermediate height was not correct i.e. when block size is 4 and
        y_step_q4 is 6. In this case intermediate height was
        (4*6) >> 4 = 1 and vertical interpolation needs two source pixels
        plus 7 extra pixels for taps.
      - Also if the current output block is 16x16 and we are using 4x upscaling
        we need only 12 rows after horizontal filtering instead of 16.
      
        Patch Set 2: Intermediate_height updated after CL 66723
                     "Fix bug in convolution functions (filter selection)"
      
      Change-Id: I5a1a1bc2ac9d5edb3a6e0818de618bf318fdd589
      e326cecf