1. 20 Oct, 2016 1 commit
  2. 19 Oct, 2016 7 commits
    • Arild Fuldseth's avatar
      Support for delta-q at superblock level · 07441165
      Arild Fuldseth authored
      Change-Id: I4128af44776d1f361bddc1fdffb75ed2224dbfa5
      07441165
    • Arild Fuldseth's avatar
      Always send frame size explicitly · 842e9b03
      Arild Fuldseth authored
      This commit changes to send frame size explicitly when
      error_resilient_mode=1. Purpose is to allow parsing of bitstream
      after a packet loss.
      
      Change-Id: I7d1c010a465aa18914762cc1a3e61db377304c08
      842e9b03
    • Alex Converse's avatar
      Partition the ans experiment into 'ans' and 'rans' · ec6fb649
      Alex Converse authored
      The (new) ans experiment replaces the bool coder with uABS bools. The
      'rans' experiment adds multisymbol coding.
      
      This matches the setup in aom/master.
      
      Change-Id: Ida8372ccabf1e1e9afc45fe66362cda35a491222
      ec6fb649
    • Yue Chen's avatar
      Remove OBMC from the experimental configure list · 48877de8
      Yue Chen authored
      It was replaced by MOTION_VAR in commit cb60b185
      
      Change-Id: I7ab625eef4dbae2e5585d9fa3b6873aa78b2c254
      48877de8
    • Urvang Joshi's avatar
      Fix warnings reported by -Wshadow: Part4: main directory · 4145bf05
      Urvang Joshi authored
      Now that all warnings are taken care of, add warning flag -Wshadow to
      configure.
      
      Note: Enabling this flag for C++ generates some useless warnings about
      some function parameters shadowing class member function names. So, only
      enabling this warning for C code.
      
      Cherry-picked from aomedia/master: b96cbc44
      
      Change-Id: I3922dea2e6976b16519c4aa4d1bd395c198134f1
      4145bf05
    • Michael Bebenita's avatar
      Bit accounting. · 6048d052
      Michael Bebenita authored
      This patch adds bit account infrastructure to the bit reader API.
      When configured with --enable-accounting, every bit reader API
      function records the number of bits necessary to decoding a symbol.
      Accounting symbol entries are collected in global accounting data
      structure, that can be used to understand exactly where bits are
      spent (http://aomanalyzer.org). The data structure is cleared and
      reused each frame to reduce memory usage. When configured without
      --enable-accounting, bit accounting does not incur any runtime
      overhead.
      
      All aom_read_xxx functions now have an additional string parameter
      that specifies the symbol name. By default, the ACCT_STR macro is
      used (which expands to __func__). For more precise accounting,
      these should be replaced with more descriptive names.
      
      Change-Id: Ia2e1343cb842c9391b12b77272587dfbe307a56d
      6048d052
    • Urvang Joshi's avatar
      Code cleanup: mainly rd_pick_partition and methods called from there. · 52648448
      Urvang Joshi authored
      - Const correctness
      - Refactoring
      - Make variables local when possible etc
      - Remove -Wcast-qual to allow explicitly casting away const.
      
      Cherry-picked from aomedia/master: c27fcccc
      And then a number of more const correctness changes to make sure other
      experiments build OK.
      
      Change-Id: I77c18d99d21218fbdc9b186d7ed3792dc401a0a0
      52648448
  3. 18 Oct, 2016 3 commits
  4. 17 Oct, 2016 1 commit
    • hui su's avatar
      Add filter_intra experiment flag · ffcf4fb7
      hui su authored
      Will break ext-intra into 2 experiments: ext-intra and filter-intra.
      
      Change-Id: Ibf66e9b9d9307fd58a703eada9569b74d171434b
      ffcf4fb7
  5. 14 Oct, 2016 2 commits
  6. 13 Oct, 2016 1 commit
    • Yue Chen's avatar
      Renamings for OBMC experiment · cb60b185
      Yue Chen authored
      To get ready for pulling AV1 to nextgenv2
      Replace the experimental flag by MOTION_VAR. Rename major variables.
      
      Change-Id: If6cf4f37b9319c46d8f90df551cc7295d66ca205
      cb60b185
  7. 12 Oct, 2016 1 commit
    • Urvang Joshi's avatar
      Add compiler flag -Wsign-compare · d3a7576f
      Urvang Joshi authored
      Also, fix the warnings generated by this flag.
      
      Conflicts:
      	examples/aom_cx_set_ref.c
      
      Change-Id: I0451e119c52000aa7c1c55027d53f1da5a02a11f
      d3a7576f
  8. 06 Oct, 2016 1 commit
    • Johann's avatar
      Remove -fno-strict-aliasing flag · 9ed9ceda
      Johann authored
      The referenced bug was fixed by saving neon registers. That this had any
      effect was coincidental.
      
      Both chromium and Android build with clang and neither uses this flag.
      
      Change-Id: I470247d6fd9226fc207b42a187105581a94badc3
      (cherry picked from commit fad70a358b9ab832f5f2ece1609936b80b649c71)
      9ed9ceda
  9. 01 Sep, 2016 3 commits
    • Urvang Joshi's avatar
      Add ALT_INTRA experiment. · 340593e5
      Urvang Joshi authored
      When the experiment is ON, we use Paeth predictor instead of TM
      predictor.
      
      For derf set, this gives about 0.09% improvement overall, and 0.55%
      improvement if all frames are forced to be intra-only.
      
      Also, if the EXT_INTRA experiment is also on, the improvement overall
      is 0.056%, and improvement if all frames are forced to be intra-only is
      0.465%.
      
      Change-Id: Id74e107ede70a8d2107fa14fcb3f44b23a437274
      340593e5
    • Yaowu Xu's avatar
      Port renaming changes from AOMedia · f883b42c
      Yaowu Xu authored
      Cherry-Picked the following commits:
      0defd8f2 Changed "WebM" to "AOMedia" & "webm" to "aomedia"
      54e66767 Replace "VPx" by "AVx"
      5082a369 Change "Vpx" to "Avx"
      7df44f17 Replace "Vp9" w/ "Av1"
      967f722f Remove kVp9CodecId
      828f30ce Change "Vp8" to "AOM"
      030b5ffc AUTHORS regenerated
      2524caee Add ref-mv experimental flag
      016762be Change copyright notice to AOMedia form
      81e55269 Replace vp9 w/ av1
      9b94565b Add missing files
      fa8ca9f2 Change "vp9" to "av1"
      ec838b76  Convert "vp8" to "aom"
      80edfa01 Change "VP9" to "AV1"
      d1a11fb9 Change "vp8" to "aom"
      7b582513 Point to WebM test data
      dd1a5c8d Replace "VP8" with "AOM"
      ff00fc0f Change "VPX" to "AOM"
      01dee0bb Change "vp10" to "av1" in source code
      cebe6f0c Convert "vpx" to "aom"
      17b05679 rename vp10*.mk to av1_*.mk
      fe5f8a8a rename files vp10_* to av1_*
      
      Change-Id: I6fc3d18eb11fc171e46140c836ad5339cf6c9419
      f883b42c
    • Yaowu Xu's avatar
      Port folder renaming changes from AOM · c27fc14b
      Yaowu Xu authored
      Manually cherry-picked commits:
      ceef0583 libvpx->libaom part2
      3d26d916 libvpx -> libaom
      cfea7dd7 vp10/ -> av1/
      3a8eff73 Fix a build issue for a test
      bf4202ed Rename vpx to aom
      
      Change-Id: I1b0eb5a40796e3aaf41c58984b4229a439a597dc
      c27fc14b
  10. 18 Aug, 2016 1 commit
  11. 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
      253c001f
    • 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
  12. 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
      4de81ee1
  13. 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
      cc73e1fc
  14. 06 Aug, 2016 1 commit
    • James Zern's avatar
      configure: test for -Wfloat-conversion · a9d98483
      James Zern authored
      supported by clang, gcc-4.9+
      
      Change-Id: I893766de7307fef9a8b68c0cfae137c9d3b0dbe8
      (cherry picked from commit 889ed5b158fc280927f2de9172d48245c3b735a7)
      a9d98483
  15. 03 Aug, 2016 1 commit
  16. 28 Jul, 2016 1 commit
  17. 21 Jul, 2016 1 commit
    • Debargha Mukherjee's avatar
      Rectangular transforms 4x8 & 8x4 · e5848dea
      Debargha Mukherjee authored
      Added a new expt rect-tx to be used in conjunction with ext-tx.
      [rect-tx is a temporary config flag and will eventually be
      merged into ext-tx once it works correctly with all other
      experiments].
      
      Added 4x8 and 8x4 tranforms for use initially with rectangular
      sub8x8 y blocks as part of this experiment.
      
      There is about a -0.2% BDRATE improvement on lowres, others pending.
      
      When var-tx is on rectangular transforms are currently not used.
      That will be enabled in a subsequent patch.
      
      Change-Id: Iaf3f88ede2740ffe6a0ffb1ef5fc01a16cd0283a
      e5848dea
  18. 18 Jul, 2016 1 commit
    • Johann's avatar
      Merge changes from libvpx/master by cherry-pick · 2967bf35
      Johann 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
  19. 30 Jun, 2016 1 commit
    • James Zern's avatar
      configure: remove old visual studio support (<2010) · f8876a22
      James Zern authored
      BUG=b/29583530
      
      Change-Id: If08ce6ca352f377ac4db6b9b1909b507bba6d872
      (cherry picked from commit 078dff72ca7bff079cb3c56d98c588c6ea6d2814)
      (cherry picked from commit 046226376533b610ddc700f14409f195aa6abd51)
      f8876a22
  20. 17 Jun, 2016 2 commits
    • Johann's avatar
      Configuration: Use 'is_in' instead of echo | grep · 1de5ba75
      Johann authored
      Change-Id: I38f7684969f12a624980f4e06698379a49e61bdf
      1de5ba75
    • Johann's avatar
      Parse codec options in order of occurrence. · 0146fa95
      Johann authored
      Each time a codec is enabled or disabled with the umbrella
      --enable-vpN flag, set the encoder and decoder configurations as well.
      This was done as a post-processing step but doing that lost the order of
      the arguments.
      
      BUG=webm:1205
      
      Change-Id: Ic629bfdd06acc04bc5a7227309f36bba54dad8b1
      0146fa95
  21. 09 Jun, 2016 1 commit
  22. 12 May, 2016 1 commit
    • Brion Vibber (WMF)'s avatar
      Add --enable-shared option to iosbuild.sh to build dynamic framework · 992e4b70
      Brion Vibber (WMF) authored
      Also allows use of --enable-shared when configuring for Mac OS X,
      producing a bare .dylib.
      
      Enabling the shared framework bumps the iOS deployment target to 8.0,
      the minimum required to support dynamic framework deployment in apps.
      
      When not using --enable-shared, a static library for iOS 6.0+ will still
      be built.
      
      Minimum version settings have been moved into ios-version.sh so they
      can be updated in a single place.
      
      As with the static build, unless header search paths are manually
      tweaked, users must add a VPX prefix on includes, such as:
      
        #include <VPX/vpx/vpx_decoder.h>
      
      A module map for headers is not yet included as inttypes.h is not
      modular; this means that VPX cannot be used directly in Swift code,
      but can still be pulled in through an Objective-C wrapper.
      
      BUG=https://bugs.chromium.org/p/webm/issues/detail?id=1092
      Change-Id: I28fb06ce65e48ed167a88c14a7bfb2861989317e
      992e4b70
  23. 05 May, 2016 3 commits
  24. 03 May, 2016 1 commit
  25. 02 May, 2016 1 commit
    • Tom Finegan's avatar
      configure.sh: Remove armv6-darwin target. · b05158d6
      Tom Finegan authored
      - iOS SDKs no longer ship with armv6 support.
      - Our minimum iOS version means all target devices have neon.
      - Remove armv6 darwin LD workaround.
        - This removes a TODO.
      
      Change-Id: I2fcb5b82c96213364275475be021c7dd8459d5c0
      b05158d6