Skip to content
Snippets Groups Projects
  1. Aug 23, 2016
  2. Aug 16, 2016
    • 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
      0818a7c8
  3. Aug 11, 2016
    • 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
      4de81ee1
  4. Aug 10, 2016
  5. Aug 04, 2016
  6. Aug 03, 2016
  7. Jul 29, 2016
  8. Jul 28, 2016
  9. Jul 26, 2016
    • Ivan Krasin's avatar
      Fix compilation error under Clang 4.0. · eb66904d
      Ivan Krasin authored
      The LLVM trunk has reached 4.0 and now __clang_major__ is not enough
      to distinguish between old XCode Clang and the new 'real' Clang.
      Using __apple_build_version__ allows to make this distinction.
      
      BUG=chromium:631144
      
      Change-Id: I0b6e46fddfe4f409c7b7e558bda34872e60ee2d9
      eb66904d
    • Yury Gitman's avatar
      Add VPX_SWAP macro · a8de3c0c
      Yury Gitman authored
      Change-Id: I60e233eddef238ad918183392794084673f27d2d
      a8de3c0c
  10. Jul 25, 2016
  11. Jul 22, 2016
  12. Jul 18, 2016
    • Johann Koenig's avatar
      Merge changes from libvpx/master by cherry-pick · 2967bf35
      Johann Koenig authored
      This commit bring all up-to-date changes from master that are
      applicable to nextgenv2. Due to the remove VP10 code in master,
      we had to cherry pick the following commits to get those changes:
      
      Add default flags for arm64/armv8 builds
      
      Allows building simple targets with sane default flags.
      
      For example, using the Android arm64 toolchain from the NDK:
      https://developer.android.com/ndk/guides/standalone_toolchain.html
      ./build/tools/make-standalone-toolchain.sh --arch=arm64 \
        --platform=android-24 --install-dir=/tmp/arm64
      CROSS=/tmp/arm64/bin/aarch64-linux-android- \
        ~/libvpx/configure --target=arm64-linux-gcc --disable-multithread
      
      BUG=webm:1143
      
      vpx_lpf_horizontal_4_sse2: Remove dead load.
      
      Change-Id: I51026c52baa1f0881fcd5b68e1fdf08a2dc0916e
      
      Fail early when android target does not include --sdk-path
      
      Change-Id: I07e7e63476a2e32e3aae123abdee8b7bbbdc6a8c
      
      configure: clean up var style and set_all usage
      
      Use quotes whenever possible and {} always for variables.
      
      Replace multiple set_all calls with *able_feature().
      
      Conflicts:
      	build/make/configure.sh
      
      vp9-svc: Remove some unneeded code/comment.
      
      datarate_test,DatarateTestLarge: normalize bits type
      
      quiets a msvc warning:
      conversion from 'const int64_t' to 'size_t', possible loss of data
      
      mips added p6600 cpu support
      
      Removed -funroll-loops
      
      psnr.c: use int64_t for sum of differences
      
      Since the values can be negative.
      
      *.asm: normalize label format
      
      add a trailing ':', though it's optional with the tools we support, it's
      more common to use it to mark a label. this also quiets the
      orphan-labels warning with nasm/yasm.
      
      BUG=b/29583530
      
      Prevent negative variance
      
      Due to rounding, hbd variance may become negative. This commit put in
      check and clamp of negative values to 0.
      
      configure: remove old visual studio support (<2010)
      
      BUG=b/29583530
      
      Conflicts:
      	configure
      
      configure: restore vs_version variable
      
      inadvertently lost in the final patchset of:
      078dff7 configure: remove old visual studio support (<2010)
      
      this prevents an empty CONFIG_VS_VERSION and avoids make failure
      
      Require x86inc.asm
      
      Force enable x86inc.asm when building for x86. Previously there were
      compatibility issues so a flag was added to simplify disabling this
      code.
      
      The known issues have been resolved and x86inc.asm is the preferred
      abstraction layer (over x86_abi_support.asm).
      
      BUG=b:29583530
      
      convolve_test: fix byte offsets in hbd build
      
      CONVERT_TO_BYTEPTR(x) was corrected in:
      003a9d2 Port metric computation changes from nextgenv2
      to use the more common (x) within the expansion. offsets should occur
      after converting the pointer to the desired type.
      
      + factorized some common expressions
      
      Conflicts:
      	test/convolve_test.cc
      
      vpx_dsp: remove x86inc.asm distinction
      
      BUG=b:29583530
      
      Conflicts:
      	vpx_dsp/vpx_dsp.mk
      	vpx_dsp/vpx_dsp_rtcd_defs.pl
      	vpx_dsp/x86/highbd_variance_sse2.c
      	vpx_dsp/x86/variance_sse2.c
      
      test: remove x86inc.asm distinction
      
      BUG=b:29583530
      
      Conflicts:
      	test/vp9_subtract_test.cc
      
      configure: remove x86inc.asm distinction
      
      BUG=b:29583530
      
      Change-Id: I59a1192142e89a6a36b906f65a491a734e603617
      
      Update vpx subpixel 1d filter ssse3 asm
      
      Speed test shows the new vertical filters have degradation on Celeron
      Chromebook. Added "X86_SUBPIX_VFILTER_PREFER_SLOW_CELERON" to control
      the vertical filters activated code. Now just simply active the code
      without degradation on Celeron. Later there should be 2 set of vertical
      filters ssse3 functions, and let jump table to choose based on CPU type.
      
      improve vpx_filter_block1d* based on replace paddsw+psrlw to pmulhrsw
      
      Make set_reference control API work in VP9
      
      Moved the API patch from NextGenv2. An example was included.
      To try it, for example, run the following command:
      $ examples/vpx_cx_set_ref vp9 352 288 in.yuv out.ivf 4 30
      
      Conflicts:
      	examples.mk
      	examples/vpx_cx_set_ref.c
      	test/cx_set_ref.sh
      	vp9/decoder/vp9_decoder.c
      
      deblock filter : moved from vp8 code branch
      
      The deblocking filters used in vp8 have been moved to vpx_dsp for
      use by both vp8 and vp9.
      
      vpx_thread.[hc]: update webp source reference
      
      + drop the blob hash, the updated reference will be updated in the
      commit message
      
      BUG=b/29583578
      
      vpx_thread: use native windows cond var if available
      
      BUG=b/29583578
      
      original webp change:
      
      commit 110ad5835ecd66995d0e7f66dca1b90dea595f5a
      Author: James Zern <jzern@google.com>
      Date:   Mon Nov 23 19:49:58 2015 -0800
      
          thread: use native windows cond var if available
      
          Vista / Server 2008 and up. no speed difference observed.
      
      100644 blob 4fc372b7bc6980a9ed3618c8cce5b67ed7b0f412 src/utils/thread.c
      100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h
      
      vpx_thread: use InitializeCriticalSectionEx if available
      
      BUG=b/29583578
      
      original webp change:
      
      commit 63fadc9ffacc77d4617526a50c696d21d558a70b
      Author: James Zern <jzern@google.com>
      Date:   Mon Nov 23 20:38:46 2015 -0800
      
          thread: use InitializeCriticalSectionEx if available
      
          Windows Vista / Server 2008 and up
      
      100644 blob f84207d89b3a6bb98bfe8f3fa55cad72dfd061ff src/utils/thread.c
      100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h
      
      vpx_thread: use WaitForSingleObjectEx if available
      
      BUG=b/29583578
      
      original webp change:
      
      commit 0fd0e12bfe83f16ce4f1c038b251ccbc13c62ac2
      Author: James Zern <jzern@google.com>
      Date:   Mon Nov 23 20:40:26 2015 -0800
      
          thread: use WaitForSingleObjectEx if available
      
          Windows XP and up
      
      100644 blob d58f74e5523dbc985fc531cf5f0833f1e9157cf0 src/utils/thread.c
      100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h
      
      vpx_thread: use CreateThread for windows phone
      
      BUG=b/29583578
      
      original webp change:
      
      commit d2afe974f9d751de144ef09d31255aea13b442c0
      Author: James Zern <jzern@google.com>
      Date:   Mon Nov 23 20:41:26 2015 -0800
      
          thread: use CreateThread for windows phone
      
          _beginthreadex is unavailable for winrt/uwp
      
          Change-Id: Ie7412a568278ac67f0047f1764e2521193d74d4d
      
      100644 blob 93f7622797f05f6acc1126e8296c481d276e4047 src/utils/thread.c
      100644 blob 840831185502d42a3246e4b7ff870121c8064791 src/utils/thread.h
      
      vp9_postproc.c missing extern.
      
      BUG=webm:1256
      
      deblock: missing const on extern const.
      
      postproc - move filling of noise buffer to vpx_dsp.
      
      Fix encoder crashes for odd size input
      
      clean-up vp9_intrapred_test
      
      remove tuple and overkill VP9IntraPredBase class.
      
      postproc: noise style fixes.
      
      gtest-all.cc: quiet an unused variable warning
      
      under windows / mingw builds
      
      vp9_intrapred_test: follow-up cleanup
      
      address few comments from ce050afaf3e288895c3bee4160336e2d2133b6ea
      
      Change-Id: I3eece7efa9335f4210303993ef6c1857ad5c29c8
      2967bf35
  13. Jul 13, 2016
  14. Jul 12, 2016
  15. Jul 11, 2016
    • James Zern's avatar
      highbd_quantize_intrin_sse2.c: add missing rtcd include · e046f5ef
      James Zern authored
      quiets -Wmissing-prototypes warnings
      
      BUG=b/29584271
      
      Change-Id: Iff5214df0d1781810afbfc20bfaf664f109e2f29
      e046f5ef
    • Geza Lore's avatar
      Improve vpx_blend_* functions. · bfa59b4a
      Geza Lore authored
      - Made source buffers pointers to const.
      - Renamed vpx_blend_mask6b to vpx_blend_a64_mask. This is more
        indicative that the function does alpha blending. The 6, or 6b
        suffix was misleading, as the max mask value (64) does not fit into
        6 bits.
      - Added VPX_BLEND_* macros to use when needing to blend scalars.
      - Use VPX_BLEND_A256 in combine_interintra to be more explicit about
        the operation being done.
      - Added versions of vpx_blend_a64_* which take 1D horizontal/vertical
        masks directly and apply them to all rows/columns
        (vpx_blend_a64_hmask and vpx_blend_a64_vmask). The SSE4.1 optimzied
        horizontal version now falls back on the 2D version. This can be
        improved upon if it show up high enough in a profile.
      - All vpx_blend_a64_* functions now support block sizes down to 1x1
        (ie: a single pixel). This is for usage convenience. The SSE4.1
        optimized versions fall back on the C implementation if
        w <= 2 or h <= 2. This can again be improved if it becomes hot code.
      
      Change-Id: I13ab3835146ffafe3e1d74d8e9cf64a5abe4144d
      bfa59b4a
  16. Jul 08, 2016
  17. Jul 06, 2016
  18. Jul 04, 2016
    • Geza Lore's avatar
      Refactoring in preparation for OBMC optimizations. · 007aa7dd
      Geza Lore authored
      - Use int32_t instead of int in vpx_obmc{variance,sad} functions
      - Remove weigthed_src and obmc mask strides and assume contiguous
        buffers. These inputs can always be packed as contiguous arrays.
      
      Change-Id: I74c09b3fb3337f13d39e13a9cb61e140536f345d
      007aa7dd
  19. Jun 30, 2016
  20. Jun 24, 2016
  21. Jun 22, 2016
    • Yaowu Xu's avatar
      Prevent negative variance · ef665996
      Yaowu Xu authored
      Due to rounding used computation, HDB variance computation may produce
      slightly negative values. This commit adds clamping to make sure
      output variance values for 10 and 12 to be non-negative.
      
      Change-Id: Id679aa55a4c201958c4c7d28cd8733b9246a71c8
      ef665996
  22. Jun 21, 2016
  23. Jun 20, 2016
  24. Jun 18, 2016
  25. Jun 16, 2016
    • Yaowu Xu's avatar
      vpx_dsp/quantize.c: fix ubsan warnings · de3a8f23
      Yaowu Xu authored
      BUG=webm:1219
      
      Change-Id: I0c80271c6b78adf40aa7a4cac9e6b431d56958cb
      de3a8f23
    • Yaowu Xu's avatar
      vpx_dsp/variance.c: change to use correct type · e5e998a6
      Yaowu Xu authored
      This commit change to use int64_t to represent the sum of pixel
      differences, which can be negative.
      
      This fixes a number of ubsan warnings.
      
      BUG=webm:1219
      
      Change-Id: I885f245ae895ab92ca5f3b9848d37024b07aac98
      e5e998a6
    • Geza Lore's avatar
      Use correct size load in vpx_avg_4x4_sse2. · ffa91733
      Geza Lore authored
      The old version used 64 bit loads, and then ignored the top half
      of the result. This can cause asan failures if we read past the end
      of a buffer. Switched to using 32 bit loads instead.
      
      Change-Id: I57da127a26f869fb4b4f700b55408f6dc2fbbc1a
      ffa91733
  26. Jun 14, 2016
    • Johann Koenig's avatar
      neon hadamard 16x16 · c516dd67
      Johann Koenig authored
      Runs about twice as fast as C
      
      BUG=webm:1027
      
      Change-Id: I6760d99f4e22259439ca35d746194b12a81bfa71
      c516dd67
  27. Jun 10, 2016
  28. Jun 09, 2016
  29. Jun 03, 2016
  30. Jun 02, 2016
    • Linfeng Zhang's avatar
      Slow pshufb removal in 3 intra prediction functions. · ad0646cb
      Linfeng Zhang authored
      Replaced vpx_d45_predictor_4x4_ssse3(), vpx_d45_predictor_8x8_ssse3()
      and vpx_d207_predictor_4x4_ssse3() with
      created vpx_d45_predictor_4x4_sse2(), vpx_d45_predictor_8x8_sse2()
      and vpx_d207_predictor_4x4_sse2() respectively.
      It's mostly neutral or slightly worse than ssse3 in good cases and
      better than ssse3 in the bad cases (but still worse than using the mmx
      regs).
      
      Change-Id: Ib0237ceb71d2c57b8a93fd3170330cfed9d56bdd
      ad0646cb
  31. May 31, 2016
Loading