Bug 1525393 - Update libvpx to 1.8.2; r=bryce
authorDan Minor <dminor@mozilla.com>
Thu, 27 Feb 2020 18:57:02 +0000
changeset 582573 4068c946ff548962163be053214dbf1cec8c678c
parent 582572 6d2821c6e36e659b2d007f1782d1e3346b7c3af6
child 582574 903ac3286eedbf870f8e38e279af061c7cafecb0
push id2292
push userffxbld-merge
push dateMon, 30 Mar 2020 09:22:45 +0000
treeherdermozilla-release@1c5bf69f8873 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersbryce
bugs1525393
milestone75.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1525393 - Update libvpx to 1.8.2; r=bryce Differential Revision: https://phabricator.services.mozilla.com/D63922
media/libvpx/README_MOZILLA
media/libvpx/libvpx/.clang-format
media/libvpx/libvpx/.mailmap
media/libvpx/libvpx/AUTHORS
media/libvpx/libvpx/CHANGELOG
media/libvpx/libvpx/README
media/libvpx/libvpx/args.h
media/libvpx/libvpx/build/make/Android.mk
media/libvpx/libvpx/build/make/Makefile
media/libvpx/libvpx/build/make/ads2gas.pl
media/libvpx/libvpx/build/make/ads2gas_apple.pl
media/libvpx/libvpx/build/make/configure.sh
media/libvpx/libvpx/build/make/gen_msvs_sln.sh
media/libvpx/libvpx/build/make/gen_msvs_vcxproj.sh
media/libvpx/libvpx/build/make/iosbuild.sh
media/libvpx/libvpx/build/make/msvs_common.sh
media/libvpx/libvpx/build/make/rtcd.pl
media/libvpx/libvpx/build/make/thumb.pm
media/libvpx/libvpx/build_debug/non_greedy_mv_test_files/cur_frame_16x16.txt
media/libvpx/libvpx/build_debug/non_greedy_mv_test_files/estimation_16x16.txt
media/libvpx/libvpx/build_debug/non_greedy_mv_test_files/exhaust_16x16.txt
media/libvpx/libvpx/build_debug/non_greedy_mv_test_files/ground_truth_16x16.txt
media/libvpx/libvpx/build_debug/non_greedy_mv_test_files/localVar_16x16.txt
media/libvpx/libvpx/build_debug/non_greedy_mv_test_files/raw_1.png
media/libvpx/libvpx/build_debug/non_greedy_mv_test_files/raw_1_12_12.png
media/libvpx/libvpx/build_debug/non_greedy_mv_test_files/ref_frame_16x16.txt
media/libvpx/libvpx/codereview.settings
media/libvpx/libvpx/configure
media/libvpx/libvpx/examples.mk
media/libvpx/libvpx/examples/svc_context.h
media/libvpx/libvpx/examples/svc_encodeframe.c
media/libvpx/libvpx/examples/vp8_multi_resolution_encoder.c
media/libvpx/libvpx/examples/vp9_spatial_svc_encoder.c
media/libvpx/libvpx/examples/vp9cx_set_ref.c
media/libvpx/libvpx/examples/vpx_dec_fuzzer.cc
media/libvpx/libvpx/examples/vpx_temporal_svc_encoder.c
media/libvpx/libvpx/ivfdec.c
media/libvpx/libvpx/ivfdec.h
media/libvpx/libvpx/ivfenc.h
media/libvpx/libvpx/libs.doxy_template
media/libvpx/libvpx/libs.mk
media/libvpx/libvpx/mainpage.dox
media/libvpx/libvpx/md5_utils.c
media/libvpx/libvpx/md5_utils.h
media/libvpx/libvpx/rate_hist.h
media/libvpx/libvpx/test/acm_random.h
media/libvpx/libvpx/test/active_map_refresh_test.cc
media/libvpx/libvpx/test/active_map_test.cc
media/libvpx/libvpx/test/add_noise_test.cc
media/libvpx/libvpx/test/alt_ref_aq_segment_test.cc
media/libvpx/libvpx/test/altref_test.cc
media/libvpx/libvpx/test/android/README
media/libvpx/libvpx/test/aq_segment_test.cc
media/libvpx/libvpx/test/avg_test.cc
media/libvpx/libvpx/test/bench.cc
media/libvpx/libvpx/test/bench.h
media/libvpx/libvpx/test/blockiness_test.cc
media/libvpx/libvpx/test/borders_test.cc
media/libvpx/libvpx/test/buffer.h
media/libvpx/libvpx/test/byte_alignment_test.cc
media/libvpx/libvpx/test/clear_system_state.h
media/libvpx/libvpx/test/codec_factory.h
media/libvpx/libvpx/test/comp_avg_pred_test.cc
media/libvpx/libvpx/test/consistency_test.cc
media/libvpx/libvpx/test/convolve_test.cc
media/libvpx/libvpx/test/cpu_speed_test.cc
media/libvpx/libvpx/test/cq_test.cc
media/libvpx/libvpx/test/datarate_test.cc
media/libvpx/libvpx/test/dct16x16_test.cc
media/libvpx/libvpx/test/dct32x32_test.cc
media/libvpx/libvpx/test/dct_partial_test.cc
media/libvpx/libvpx/test/dct_test.cc
media/libvpx/libvpx/test/decode_api_test.cc
media/libvpx/libvpx/test/decode_corrupted.cc
media/libvpx/libvpx/test/decode_perf_test.cc
media/libvpx/libvpx/test/decode_svc_test.cc
media/libvpx/libvpx/test/decode_test_driver.cc
media/libvpx/libvpx/test/decode_test_driver.h
media/libvpx/libvpx/test/encode_perf_test.cc
media/libvpx/libvpx/test/encode_test_driver.cc
media/libvpx/libvpx/test/encode_test_driver.h
media/libvpx/libvpx/test/external_frame_buffer_test.cc
media/libvpx/libvpx/test/fdct8x8_test.cc
media/libvpx/libvpx/test/frame_size_tests.cc
media/libvpx/libvpx/test/hadamard_test.cc
media/libvpx/libvpx/test/i420_video_source.h
media/libvpx/libvpx/test/idct_test.cc
media/libvpx/libvpx/test/invalid_file_test.cc
media/libvpx/libvpx/test/ivf_video_source.h
media/libvpx/libvpx/test/keyframe_test.cc
media/libvpx/libvpx/test/lpf_test.cc
media/libvpx/libvpx/test/md5_helper.h
media/libvpx/libvpx/test/non_greedy_mv_test.cc
media/libvpx/libvpx/test/partial_idct_test.cc
media/libvpx/libvpx/test/pp_filter_test.cc
media/libvpx/libvpx/test/predict_test.cc
media/libvpx/libvpx/test/quantize_test.cc
media/libvpx/libvpx/test/register_state_check.h
media/libvpx/libvpx/test/resize_test.cc
media/libvpx/libvpx/test/sad_test.cc
media/libvpx/libvpx/test/simple_encode_test.cc
media/libvpx/libvpx/test/stress.sh
media/libvpx/libvpx/test/sum_squares_test.cc
media/libvpx/libvpx/test/superframe_test.cc
media/libvpx/libvpx/test/svc_datarate_test.cc
media/libvpx/libvpx/test/svc_end_to_end_test.cc
media/libvpx/libvpx/test/svc_test.cc
media/libvpx/libvpx/test/svc_test.h
media/libvpx/libvpx/test/temporal_filter_test.cc
media/libvpx/libvpx/test/test-data.mk
media/libvpx/libvpx/test/test-data.sha1
media/libvpx/libvpx/test/test.mk
media/libvpx/libvpx/test/test_intra_pred_speed.cc
media/libvpx/libvpx/test/test_libvpx.cc
media/libvpx/libvpx/test/test_vector_test.cc
media/libvpx/libvpx/test/test_vectors.h
media/libvpx/libvpx/test/tile_independence_test.cc
media/libvpx/libvpx/test/timestamp_test.cc
media/libvpx/libvpx/test/tools_common.sh
media/libvpx/libvpx/test/user_priv_test.cc
media/libvpx/libvpx/test/util.h
media/libvpx/libvpx/test/variance_test.cc
media/libvpx/libvpx/test/video_source.h
media/libvpx/libvpx/test/vp8_boolcoder_test.cc
media/libvpx/libvpx/test/vp8_datarate_test.cc
media/libvpx/libvpx/test/vp8_multi_resolution_encoder.sh
media/libvpx/libvpx/test/vp9_arf_freq_test.cc
media/libvpx/libvpx/test/vp9_block_error_test.cc
media/libvpx/libvpx/test/vp9_boolcoder_test.cc
media/libvpx/libvpx/test/vp9_datarate_test.cc
media/libvpx/libvpx/test/vp9_denoiser_test.cc
media/libvpx/libvpx/test/vp9_encoder_parms_get_to_decoder.cc
media/libvpx/libvpx/test/vp9_end_to_end_test.cc
media/libvpx/libvpx/test/vp9_ethread_test.cc
media/libvpx/libvpx/test/vp9_intrapred_test.cc
media/libvpx/libvpx/test/vp9_lossless_test.cc
media/libvpx/libvpx/test/vp9_motion_vector_test.cc
media/libvpx/libvpx/test/vp9_quantize_test.cc
media/libvpx/libvpx/test/vp9_scale_test.cc
media/libvpx/libvpx/test/vp9_spatial_svc_encoder.sh
media/libvpx/libvpx/test/vp9_subtract_test.cc
media/libvpx/libvpx/test/vp9_thread_test.cc
media/libvpx/libvpx/test/vpx_scale_test.cc
media/libvpx/libvpx/test/vpx_scale_test.h
media/libvpx/libvpx/test/vpx_temporal_svc_encoder.sh
media/libvpx/libvpx/test/vpxdec.sh
media/libvpx/libvpx/test/vpxenc.sh
media/libvpx/libvpx/test/webm_video_source.h
media/libvpx/libvpx/test/y4m_test.cc
media/libvpx/libvpx/test/y4m_video_source.h
media/libvpx/libvpx/test/yuv_temporal_filter_test.cc
media/libvpx/libvpx/test/yuv_video_source.h
media/libvpx/libvpx/third_party/googletest/README.libvpx
media/libvpx/libvpx/third_party/googletest/src/README.md
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest-death-test.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest-message.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest-param-test.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest-param-test.h.pump
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest-printers.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest-spi.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest-test-part.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest-typed-test.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest_pred_impl.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/gtest_prod.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/custom/README.md
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/custom/gtest-port.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/custom/gtest-printers.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/custom/gtest.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-death-test-internal.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-filepath.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-internal.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-linked_ptr.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-param-util-generated.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-param-util-generated.h.pump
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-param-util.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-port-arch.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-port.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-string.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-tuple.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-tuple.h.pump
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-type-util.h
media/libvpx/libvpx/third_party/googletest/src/include/gtest/internal/gtest-type-util.h.pump
media/libvpx/libvpx/third_party/googletest/src/src/gtest-all.cc
media/libvpx/libvpx/third_party/googletest/src/src/gtest-death-test.cc
media/libvpx/libvpx/third_party/googletest/src/src/gtest-filepath.cc
media/libvpx/libvpx/third_party/googletest/src/src/gtest-internal-inl.h
media/libvpx/libvpx/third_party/googletest/src/src/gtest-port.cc
media/libvpx/libvpx/third_party/googletest/src/src/gtest-printers.cc
media/libvpx/libvpx/third_party/googletest/src/src/gtest-test-part.cc
media/libvpx/libvpx/third_party/googletest/src/src/gtest-typed-test.cc
media/libvpx/libvpx/third_party/googletest/src/src/gtest.cc
media/libvpx/libvpx/third_party/googletest/src/src/gtest_main.cc
media/libvpx/libvpx/third_party/libwebm/AUTHORS.TXT
media/libvpx/libvpx/third_party/libwebm/Android.mk
media/libvpx/libvpx/third_party/libwebm/LICENSE.TXT
media/libvpx/libvpx/third_party/libwebm/PATENTS.TXT
media/libvpx/libvpx/third_party/libwebm/README.libvpx
media/libvpx/libvpx/third_party/libwebm/common/file_util.cc
media/libvpx/libvpx/third_party/libwebm/common/file_util.h
media/libvpx/libvpx/third_party/libwebm/common/hdr_util.cc
media/libvpx/libvpx/third_party/libwebm/common/hdr_util.h
media/libvpx/libvpx/third_party/libwebm/common/webmids.h
media/libvpx/libvpx/third_party/libwebm/mkvmuxer/mkvmuxer.cc
media/libvpx/libvpx/third_party/libwebm/mkvmuxer/mkvmuxer.h
media/libvpx/libvpx/third_party/libwebm/mkvmuxer/mkvmuxertypes.h
media/libvpx/libvpx/third_party/libwebm/mkvmuxer/mkvmuxerutil.cc
media/libvpx/libvpx/third_party/libwebm/mkvmuxer/mkvmuxerutil.h
media/libvpx/libvpx/third_party/libwebm/mkvmuxer/mkvwriter.cc
media/libvpx/libvpx/third_party/libwebm/mkvmuxer/mkvwriter.h
media/libvpx/libvpx/third_party/libwebm/mkvparser/mkvparser.cc
media/libvpx/libvpx/third_party/libwebm/mkvparser/mkvparser.h
media/libvpx/libvpx/third_party/libwebm/mkvparser/mkvreader.cc
media/libvpx/libvpx/third_party/libwebm/mkvparser/mkvreader.h
media/libvpx/libvpx/third_party/libyuv/LICENSE
media/libvpx/libvpx/third_party/libyuv/README.libvpx
media/libvpx/libvpx/third_party/libyuv/include/libyuv/basic_types.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/compare.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/convert.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/convert_argb.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/convert_from.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/convert_from_argb.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/cpu_id.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/macros_msa.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/mjpeg_decoder.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/planar_functions.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/rotate.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/rotate_argb.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/rotate_row.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/row.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/scale.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/scale_argb.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/scale_row.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/version.h
media/libvpx/libvpx/third_party/libyuv/include/libyuv/video_common.h
media/libvpx/libvpx/third_party/libyuv/source/compare.cc
media/libvpx/libvpx/third_party/libyuv/source/compare_common.cc
media/libvpx/libvpx/third_party/libyuv/source/compare_gcc.cc
media/libvpx/libvpx/third_party/libyuv/source/compare_msa.cc
media/libvpx/libvpx/third_party/libyuv/source/compare_neon.cc
media/libvpx/libvpx/third_party/libyuv/source/compare_neon64.cc
media/libvpx/libvpx/third_party/libyuv/source/compare_win.cc
media/libvpx/libvpx/third_party/libyuv/source/convert.cc
media/libvpx/libvpx/third_party/libyuv/source/convert_argb.cc
media/libvpx/libvpx/third_party/libyuv/source/convert_from.cc
media/libvpx/libvpx/third_party/libyuv/source/convert_from_argb.cc
media/libvpx/libvpx/third_party/libyuv/source/convert_jpeg.cc
media/libvpx/libvpx/third_party/libyuv/source/convert_to_argb.cc
media/libvpx/libvpx/third_party/libyuv/source/convert_to_i420.cc
media/libvpx/libvpx/third_party/libyuv/source/cpu_id.cc
media/libvpx/libvpx/third_party/libyuv/source/mjpeg_decoder.cc
media/libvpx/libvpx/third_party/libyuv/source/mjpeg_validate.cc
media/libvpx/libvpx/third_party/libyuv/source/planar_functions.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_any.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_argb.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_common.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_gcc.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_mips.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_msa.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_neon.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_neon64.cc
media/libvpx/libvpx/third_party/libyuv/source/rotate_win.cc
media/libvpx/libvpx/third_party/libyuv/source/row_any.cc
media/libvpx/libvpx/third_party/libyuv/source/row_common.cc
media/libvpx/libvpx/third_party/libyuv/source/row_gcc.cc
media/libvpx/libvpx/third_party/libyuv/source/row_mips.cc
media/libvpx/libvpx/third_party/libyuv/source/row_msa.cc
media/libvpx/libvpx/third_party/libyuv/source/row_neon.cc
media/libvpx/libvpx/third_party/libyuv/source/row_neon64.cc
media/libvpx/libvpx/third_party/libyuv/source/row_win.cc
media/libvpx/libvpx/third_party/libyuv/source/scale.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_any.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_argb.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_common.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_gcc.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_mips.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_msa.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_neon.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_neon64.cc
media/libvpx/libvpx/third_party/libyuv/source/scale_win.cc
media/libvpx/libvpx/third_party/libyuv/source/video_common.cc
media/libvpx/libvpx/third_party/x86inc/README.libvpx
media/libvpx/libvpx/third_party/x86inc/x86inc.asm
media/libvpx/libvpx/tools/cpplint.py
media/libvpx/libvpx/tools/diff.py
media/libvpx/libvpx/tools/gen_authors.sh
media/libvpx/libvpx/tools/intersect-diffs.py
media/libvpx/libvpx/tools/lint-hunks.py
media/libvpx/libvpx/tools/tiny_ssim.c
media/libvpx/libvpx/tools/wrap-commit-msg.py
media/libvpx/libvpx/tools_common.c
media/libvpx/libvpx/tools_common.h
media/libvpx/libvpx/usage_cx.dox
media/libvpx/libvpx/usage_dx.dox
media/libvpx/libvpx/video_common.h
media/libvpx/libvpx/video_reader.c
media/libvpx/libvpx/video_reader.h
media/libvpx/libvpx/video_writer.c
media/libvpx/libvpx/video_writer.h
media/libvpx/libvpx/vp8/common/alloccommon.h
media/libvpx/libvpx/vp8/common/arm/loopfilter_arm.c
media/libvpx/libvpx/vp8/common/arm/loopfilter_arm.h
media/libvpx/libvpx/vp8/common/arm/neon/bilinearpredict_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/copymem_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/dequantizeb_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/idct_blk_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/idct_dequant_0_2x_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/idct_dequant_full_2x_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/iwalsh_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/loopfiltersimplehorizontaledge_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/loopfiltersimpleverticaledge_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/mbloopfilter_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/sixtappredict_neon.c
media/libvpx/libvpx/vp8/common/arm/neon/vp8_loopfilter_neon.c
media/libvpx/libvpx/vp8/common/blockd.c
media/libvpx/libvpx/vp8/common/blockd.h
media/libvpx/libvpx/vp8/common/coefupdateprobs.h
media/libvpx/libvpx/vp8/common/common.h
media/libvpx/libvpx/vp8/common/copy_c.c
media/libvpx/libvpx/vp8/common/default_coef_probs.h
media/libvpx/libvpx/vp8/common/entropy.c
media/libvpx/libvpx/vp8/common/entropy.h
media/libvpx/libvpx/vp8/common/entropymode.c
media/libvpx/libvpx/vp8/common/entropymode.h
media/libvpx/libvpx/vp8/common/entropymv.h
media/libvpx/libvpx/vp8/common/extend.c
media/libvpx/libvpx/vp8/common/extend.h
media/libvpx/libvpx/vp8/common/filter.h
media/libvpx/libvpx/vp8/common/findnearmv.c
media/libvpx/libvpx/vp8/common/findnearmv.h
media/libvpx/libvpx/vp8/common/generic/systemdependent.c
media/libvpx/libvpx/vp8/common/header.h
media/libvpx/libvpx/vp8/common/idct_blk.c
media/libvpx/libvpx/vp8/common/invtrans.h
media/libvpx/libvpx/vp8/common/loopfilter.h
media/libvpx/libvpx/vp8/common/loopfilter_filters.c
media/libvpx/libvpx/vp8/common/mfqe.c
media/libvpx/libvpx/vp8/common/mips/dspr2/idct_blk_dspr2.c
media/libvpx/libvpx/vp8/common/mips/dspr2/vp8_loopfilter_filters_dspr2.c
media/libvpx/libvpx/vp8/common/mips/mmi/idct_blk_mmi.c
media/libvpx/libvpx/vp8/common/mips/msa/idct_msa.c
media/libvpx/libvpx/vp8/common/mips/msa/vp8_macros_msa.h
media/libvpx/libvpx/vp8/common/modecont.c
media/libvpx/libvpx/vp8/common/modecont.h
media/libvpx/libvpx/vp8/common/mv.h
media/libvpx/libvpx/vp8/common/onyx.h
media/libvpx/libvpx/vp8/common/onyxc_int.h
media/libvpx/libvpx/vp8/common/onyxd.h
media/libvpx/libvpx/vp8/common/postproc.c
media/libvpx/libvpx/vp8/common/postproc.h
media/libvpx/libvpx/vp8/common/ppflags.h
media/libvpx/libvpx/vp8/common/quant_common.h
media/libvpx/libvpx/vp8/common/reconinter.c
media/libvpx/libvpx/vp8/common/reconinter.h
media/libvpx/libvpx/vp8/common/reconintra.h
media/libvpx/libvpx/vp8/common/reconintra4x4.h
media/libvpx/libvpx/vp8/common/rtcd_defs.pl
media/libvpx/libvpx/vp8/common/setupintrarecon.h
media/libvpx/libvpx/vp8/common/swapyv12buffer.h
media/libvpx/libvpx/vp8/common/systemdependent.h
media/libvpx/libvpx/vp8/common/threading.h
media/libvpx/libvpx/vp8/common/treecoder.c
media/libvpx/libvpx/vp8/common/treecoder.h
media/libvpx/libvpx/vp8/common/vp8_entropymodedata.h
media/libvpx/libvpx/vp8/common/vp8_loopfilter.c
media/libvpx/libvpx/vp8/common/vp8_skin_detection.h
media/libvpx/libvpx/vp8/common/x86/bilinear_filter_sse2.c
media/libvpx/libvpx/vp8/common/x86/copy_sse2.asm
media/libvpx/libvpx/vp8/common/x86/copy_sse3.asm
media/libvpx/libvpx/vp8/common/x86/filter_x86.c
media/libvpx/libvpx/vp8/common/x86/filter_x86.h
media/libvpx/libvpx/vp8/common/x86/idct_blk_sse2.c
media/libvpx/libvpx/vp8/common/x86/iwalsh_sse2.asm
media/libvpx/libvpx/vp8/common/x86/loopfilter_x86.c
media/libvpx/libvpx/vp8/common/x86/subpixel_mmx.asm
media/libvpx/libvpx/vp8/common/x86/subpixel_sse2.asm
media/libvpx/libvpx/vp8/common/x86/vp8_asm_stubs.c
media/libvpx/libvpx/vp8/decoder/dboolhuff.h
media/libvpx/libvpx/vp8/decoder/decodeframe.c
media/libvpx/libvpx/vp8/decoder/decodemv.c
media/libvpx/libvpx/vp8/decoder/decodemv.h
media/libvpx/libvpx/vp8/decoder/decoderthreading.h
media/libvpx/libvpx/vp8/decoder/detokenize.h
media/libvpx/libvpx/vp8/decoder/ec_types.h
media/libvpx/libvpx/vp8/decoder/error_concealment.c
media/libvpx/libvpx/vp8/decoder/error_concealment.h
media/libvpx/libvpx/vp8/decoder/onyxd_if.c
media/libvpx/libvpx/vp8/decoder/onyxd_int.h
media/libvpx/libvpx/vp8/decoder/threading.c
media/libvpx/libvpx/vp8/decoder/treereader.h
media/libvpx/libvpx/vp8/encoder/arm/neon/fastquantizeb_neon.c
media/libvpx/libvpx/vp8/encoder/arm/neon/shortfdct_neon.c
media/libvpx/libvpx/vp8/encoder/arm/neon/vp8_shortwalsh4x4_neon.c
media/libvpx/libvpx/vp8/encoder/bitstream.c
media/libvpx/libvpx/vp8/encoder/bitstream.h
media/libvpx/libvpx/vp8/encoder/block.h
media/libvpx/libvpx/vp8/encoder/boolhuff.c
media/libvpx/libvpx/vp8/encoder/boolhuff.h
media/libvpx/libvpx/vp8/encoder/copy_c.c
media/libvpx/libvpx/vp8/encoder/dct_value_cost.h
media/libvpx/libvpx/vp8/encoder/dct_value_tokens.h
media/libvpx/libvpx/vp8/encoder/defaultcoefcounts.h
media/libvpx/libvpx/vp8/encoder/denoising.c
media/libvpx/libvpx/vp8/encoder/denoising.h
media/libvpx/libvpx/vp8/encoder/encodeframe.c
media/libvpx/libvpx/vp8/encoder/encodeframe.h
media/libvpx/libvpx/vp8/encoder/encodeintra.h
media/libvpx/libvpx/vp8/encoder/encodemb.h
media/libvpx/libvpx/vp8/encoder/encodemv.c
media/libvpx/libvpx/vp8/encoder/encodemv.h
media/libvpx/libvpx/vp8/encoder/ethreading.h
media/libvpx/libvpx/vp8/encoder/firstpass.c
media/libvpx/libvpx/vp8/encoder/firstpass.h
media/libvpx/libvpx/vp8/encoder/lookahead.h
media/libvpx/libvpx/vp8/encoder/mcomp.c
media/libvpx/libvpx/vp8/encoder/mcomp.h
media/libvpx/libvpx/vp8/encoder/modecosts.h
media/libvpx/libvpx/vp8/encoder/mr_dissim.h
media/libvpx/libvpx/vp8/encoder/onyx_if.c
media/libvpx/libvpx/vp8/encoder/onyx_int.h
media/libvpx/libvpx/vp8/encoder/pickinter.c
media/libvpx/libvpx/vp8/encoder/pickinter.h
media/libvpx/libvpx/vp8/encoder/picklpf.c
media/libvpx/libvpx/vp8/encoder/picklpf.h
media/libvpx/libvpx/vp8/encoder/quantize.h
media/libvpx/libvpx/vp8/encoder/ratectrl.c
media/libvpx/libvpx/vp8/encoder/ratectrl.h
media/libvpx/libvpx/vp8/encoder/rdopt.c
media/libvpx/libvpx/vp8/encoder/rdopt.h
media/libvpx/libvpx/vp8/encoder/segmentation.h
media/libvpx/libvpx/vp8/encoder/temporal_filter.c
media/libvpx/libvpx/vp8/encoder/temporal_filter.h
media/libvpx/libvpx/vp8/encoder/tokenize.c
media/libvpx/libvpx/vp8/encoder/tokenize.h
media/libvpx/libvpx/vp8/encoder/treewriter.h
media/libvpx/libvpx/vp8/encoder/vp8_quantize.c
media/libvpx/libvpx/vp8/encoder/x86/block_error_sse2.asm
media/libvpx/libvpx/vp8/encoder/x86/copy_sse2.asm
media/libvpx/libvpx/vp8/encoder/x86/copy_sse3.asm
media/libvpx/libvpx/vp8/encoder/x86/encodeopt.asm
media/libvpx/libvpx/vp8/encoder/x86/quantize_sse4.c
media/libvpx/libvpx/vp8/encoder/x86/vp8_quantize_ssse3.c
media/libvpx/libvpx/vp8/vp8_common.mk
media/libvpx/libvpx/vp8/vp8_cx_iface.c
media/libvpx/libvpx/vp8/vp8_dx_iface.c
media/libvpx/libvpx/vp8/vp8cx.mk
media/libvpx/libvpx/vp9/common/arm/neon/vp9_highbd_iht16x16_add_neon.c
media/libvpx/libvpx/vp9/common/arm/neon/vp9_highbd_iht4x4_add_neon.c
media/libvpx/libvpx/vp9/common/arm/neon/vp9_highbd_iht8x8_add_neon.c
media/libvpx/libvpx/vp9/common/arm/neon/vp9_iht16x16_add_neon.c
media/libvpx/libvpx/vp9/common/arm/neon/vp9_iht4x4_add_neon.c
media/libvpx/libvpx/vp9/common/arm/neon/vp9_iht8x8_add_neon.c
media/libvpx/libvpx/vp9/common/arm/neon/vp9_iht_neon.h
media/libvpx/libvpx/vp9/common/mips/msa/vp9_idct16x16_msa.c
media/libvpx/libvpx/vp9/common/mips/msa/vp9_idct4x4_msa.c
media/libvpx/libvpx/vp9/common/mips/msa/vp9_idct8x8_msa.c
media/libvpx/libvpx/vp9/common/ppc/vp9_idct_vsx.c
media/libvpx/libvpx/vp9/common/vp9_alloccommon.c
media/libvpx/libvpx/vp9/common/vp9_alloccommon.h
media/libvpx/libvpx/vp9/common/vp9_blockd.h
media/libvpx/libvpx/vp9/common/vp9_common.h
media/libvpx/libvpx/vp9/common/vp9_common_data.c
media/libvpx/libvpx/vp9/common/vp9_common_data.h
media/libvpx/libvpx/vp9/common/vp9_entropy.c
media/libvpx/libvpx/vp9/common/vp9_entropy.h
media/libvpx/libvpx/vp9/common/vp9_entropymode.c
media/libvpx/libvpx/vp9/common/vp9_entropymode.h
media/libvpx/libvpx/vp9/common/vp9_entropymv.c
media/libvpx/libvpx/vp9/common/vp9_entropymv.h
media/libvpx/libvpx/vp9/common/vp9_enums.h
media/libvpx/libvpx/vp9/common/vp9_filter.c
media/libvpx/libvpx/vp9/common/vp9_filter.h
media/libvpx/libvpx/vp9/common/vp9_frame_buffers.h
media/libvpx/libvpx/vp9/common/vp9_idct.h
media/libvpx/libvpx/vp9/common/vp9_loopfilter.c
media/libvpx/libvpx/vp9/common/vp9_loopfilter.h
media/libvpx/libvpx/vp9/common/vp9_mfqe.h
media/libvpx/libvpx/vp9/common/vp9_mv.h
media/libvpx/libvpx/vp9/common/vp9_mvref_common.h
media/libvpx/libvpx/vp9/common/vp9_onyxc_int.h
media/libvpx/libvpx/vp9/common/vp9_postproc.c
media/libvpx/libvpx/vp9/common/vp9_postproc.h
media/libvpx/libvpx/vp9/common/vp9_ppflags.h
media/libvpx/libvpx/vp9/common/vp9_pred_common.c
media/libvpx/libvpx/vp9/common/vp9_pred_common.h
media/libvpx/libvpx/vp9/common/vp9_quant_common.h
media/libvpx/libvpx/vp9/common/vp9_reconinter.c
media/libvpx/libvpx/vp9/common/vp9_reconinter.h
media/libvpx/libvpx/vp9/common/vp9_reconintra.h
media/libvpx/libvpx/vp9/common/vp9_rtcd_defs.pl
media/libvpx/libvpx/vp9/common/vp9_scale.h
media/libvpx/libvpx/vp9/common/vp9_scan.h
media/libvpx/libvpx/vp9/common/vp9_seg_common.h
media/libvpx/libvpx/vp9/common/vp9_thread_common.c
media/libvpx/libvpx/vp9/common/vp9_thread_common.h
media/libvpx/libvpx/vp9/common/vp9_tile_common.h
media/libvpx/libvpx/vp9/common/x86/vp9_highbd_iht16x16_add_sse4.c
media/libvpx/libvpx/vp9/common/x86/vp9_highbd_iht4x4_add_sse4.c
media/libvpx/libvpx/vp9/common/x86/vp9_highbd_iht8x8_add_sse4.c
media/libvpx/libvpx/vp9/common/x86/vp9_idct_intrin_sse2.c
media/libvpx/libvpx/vp9/decoder/vp9_decodeframe.c
media/libvpx/libvpx/vp9/decoder/vp9_decodeframe.h
media/libvpx/libvpx/vp9/decoder/vp9_decodemv.c
media/libvpx/libvpx/vp9/decoder/vp9_decodemv.h
media/libvpx/libvpx/vp9/decoder/vp9_decoder.c
media/libvpx/libvpx/vp9/decoder/vp9_decoder.h
media/libvpx/libvpx/vp9/decoder/vp9_detokenize.c
media/libvpx/libvpx/vp9/decoder/vp9_detokenize.h
media/libvpx/libvpx/vp9/decoder/vp9_dsubexp.h
media/libvpx/libvpx/vp9/decoder/vp9_job_queue.c
media/libvpx/libvpx/vp9/decoder/vp9_job_queue.h
media/libvpx/libvpx/vp9/encoder/arm/neon/vp9_dct_neon.c
media/libvpx/libvpx/vp9/encoder/arm/neon/vp9_quantize_neon.c
media/libvpx/libvpx/vp9/encoder/mips/msa/vp9_error_msa.c
media/libvpx/libvpx/vp9/encoder/mips/msa/vp9_fdct16x16_msa.c
media/libvpx/libvpx/vp9/encoder/mips/msa/vp9_fdct4x4_msa.c
media/libvpx/libvpx/vp9/encoder/mips/msa/vp9_fdct8x8_msa.c
media/libvpx/libvpx/vp9/encoder/mips/msa/vp9_fdct_msa.h
media/libvpx/libvpx/vp9/encoder/ppc/vp9_quantize_vsx.c
media/libvpx/libvpx/vp9/encoder/vp9_alt_ref_aq.h
media/libvpx/libvpx/vp9/encoder/vp9_aq_360.h
media/libvpx/libvpx/vp9/encoder/vp9_aq_complexity.h
media/libvpx/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.c
media/libvpx/libvpx/vp9/encoder/vp9_aq_cyclicrefresh.h
media/libvpx/libvpx/vp9/encoder/vp9_aq_variance.c
media/libvpx/libvpx/vp9/encoder/vp9_aq_variance.h
media/libvpx/libvpx/vp9/encoder/vp9_bitstream.c
media/libvpx/libvpx/vp9/encoder/vp9_bitstream.h
media/libvpx/libvpx/vp9/encoder/vp9_block.h
media/libvpx/libvpx/vp9/encoder/vp9_blockiness.c
media/libvpx/libvpx/vp9/encoder/vp9_blockiness.h
media/libvpx/libvpx/vp9/encoder/vp9_context_tree.c
media/libvpx/libvpx/vp9/encoder/vp9_context_tree.h
media/libvpx/libvpx/vp9/encoder/vp9_cost.h
media/libvpx/libvpx/vp9/encoder/vp9_dct.c
media/libvpx/libvpx/vp9/encoder/vp9_denoiser.c
media/libvpx/libvpx/vp9/encoder/vp9_denoiser.h
media/libvpx/libvpx/vp9/encoder/vp9_encodeframe.c
media/libvpx/libvpx/vp9/encoder/vp9_encodeframe.h
media/libvpx/libvpx/vp9/encoder/vp9_encodemb.c
media/libvpx/libvpx/vp9/encoder/vp9_encodemb.h
media/libvpx/libvpx/vp9/encoder/vp9_encodemv.h
media/libvpx/libvpx/vp9/encoder/vp9_encoder.c
media/libvpx/libvpx/vp9/encoder/vp9_encoder.h
media/libvpx/libvpx/vp9/encoder/vp9_ethread.c
media/libvpx/libvpx/vp9/encoder/vp9_ethread.h
media/libvpx/libvpx/vp9/encoder/vp9_extend.h
media/libvpx/libvpx/vp9/encoder/vp9_firstpass.c
media/libvpx/libvpx/vp9/encoder/vp9_firstpass.h
media/libvpx/libvpx/vp9/encoder/vp9_job_queue.h
media/libvpx/libvpx/vp9/encoder/vp9_lookahead.c
media/libvpx/libvpx/vp9/encoder/vp9_lookahead.h
media/libvpx/libvpx/vp9/encoder/vp9_mbgraph.c
media/libvpx/libvpx/vp9/encoder/vp9_mbgraph.h
media/libvpx/libvpx/vp9/encoder/vp9_mcomp.c
media/libvpx/libvpx/vp9/encoder/vp9_mcomp.h
media/libvpx/libvpx/vp9/encoder/vp9_multi_thread.c
media/libvpx/libvpx/vp9/encoder/vp9_multi_thread.h
media/libvpx/libvpx/vp9/encoder/vp9_noise_estimate.c
media/libvpx/libvpx/vp9/encoder/vp9_noise_estimate.h
media/libvpx/libvpx/vp9/encoder/vp9_non_greedy_mv.c
media/libvpx/libvpx/vp9/encoder/vp9_non_greedy_mv.h
media/libvpx/libvpx/vp9/encoder/vp9_partition_models.h
media/libvpx/libvpx/vp9/encoder/vp9_picklpf.c
media/libvpx/libvpx/vp9/encoder/vp9_picklpf.h
media/libvpx/libvpx/vp9/encoder/vp9_pickmode.c
media/libvpx/libvpx/vp9/encoder/vp9_pickmode.h
media/libvpx/libvpx/vp9/encoder/vp9_quantize.c
media/libvpx/libvpx/vp9/encoder/vp9_quantize.h
media/libvpx/libvpx/vp9/encoder/vp9_ratectrl.c
media/libvpx/libvpx/vp9/encoder/vp9_ratectrl.h
media/libvpx/libvpx/vp9/encoder/vp9_rd.c
media/libvpx/libvpx/vp9/encoder/vp9_rd.h
media/libvpx/libvpx/vp9/encoder/vp9_rdopt.c
media/libvpx/libvpx/vp9/encoder/vp9_rdopt.h
media/libvpx/libvpx/vp9/encoder/vp9_resize.c
media/libvpx/libvpx/vp9/encoder/vp9_resize.h
media/libvpx/libvpx/vp9/encoder/vp9_segmentation.c
media/libvpx/libvpx/vp9/encoder/vp9_segmentation.h
media/libvpx/libvpx/vp9/encoder/vp9_skin_detection.h
media/libvpx/libvpx/vp9/encoder/vp9_speed_features.c
media/libvpx/libvpx/vp9/encoder/vp9_speed_features.h
media/libvpx/libvpx/vp9/encoder/vp9_subexp.c
media/libvpx/libvpx/vp9/encoder/vp9_subexp.h
media/libvpx/libvpx/vp9/encoder/vp9_svc_layercontext.c
media/libvpx/libvpx/vp9/encoder/vp9_svc_layercontext.h
media/libvpx/libvpx/vp9/encoder/vp9_temporal_filter.c
media/libvpx/libvpx/vp9/encoder/vp9_temporal_filter.h
media/libvpx/libvpx/vp9/encoder/vp9_tokenize.h
media/libvpx/libvpx/vp9/encoder/vp9_treewriter.h
media/libvpx/libvpx/vp9/encoder/x86/highbd_temporal_filter_sse4.c
media/libvpx/libvpx/vp9/encoder/x86/temporal_filter_constants.h
media/libvpx/libvpx/vp9/encoder/x86/temporal_filter_sse4.c
media/libvpx/libvpx/vp9/encoder/x86/vp9_dct_intrin_sse2.c
media/libvpx/libvpx/vp9/encoder/x86/vp9_dct_ssse3.c
media/libvpx/libvpx/vp9/encoder/x86/vp9_diamond_search_sad_avx.c
media/libvpx/libvpx/vp9/encoder/x86/vp9_error_sse2.asm
media/libvpx/libvpx/vp9/encoder/x86/vp9_highbd_block_error_intrin_sse2.c
media/libvpx/libvpx/vp9/encoder/x86/vp9_quantize_avx2.c
media/libvpx/libvpx/vp9/encoder/x86/vp9_quantize_sse2.c
media/libvpx/libvpx/vp9/simple_encode.cc
media/libvpx/libvpx/vp9/simple_encode.h
media/libvpx/libvpx/vp9/vp9_common.mk
media/libvpx/libvpx/vp9/vp9_cx_iface.c
media/libvpx/libvpx/vp9/vp9_cx_iface.h
media/libvpx/libvpx/vp9/vp9_dx_iface.c
media/libvpx/libvpx/vp9/vp9_dx_iface.h
media/libvpx/libvpx/vp9/vp9_iface_common.c
media/libvpx/libvpx/vp9/vp9_iface_common.h
media/libvpx/libvpx/vp9/vp9cx.mk
media/libvpx/libvpx/vp9/vp9dx.mk
media/libvpx/libvpx/vpx/exports_spatial_svc
media/libvpx/libvpx/vpx/internal/vpx_codec_internal.h
media/libvpx/libvpx/vpx/src/svc_encodeframe.c
media/libvpx/libvpx/vpx/src/vpx_encoder.c
media/libvpx/libvpx/vpx/src/vpx_image.c
media/libvpx/libvpx/vpx/svc_context.h
media/libvpx/libvpx/vpx/vp8.h
media/libvpx/libvpx/vpx/vp8cx.h
media/libvpx/libvpx/vpx/vp8dx.h
media/libvpx/libvpx/vpx/vpx_codec.h
media/libvpx/libvpx/vpx/vpx_codec.mk
media/libvpx/libvpx/vpx/vpx_decoder.h
media/libvpx/libvpx/vpx/vpx_encoder.h
media/libvpx/libvpx/vpx/vpx_frame_buffer.h
media/libvpx/libvpx/vpx/vpx_image.h
media/libvpx/libvpx/vpx/vpx_integer.h
media/libvpx/libvpx/vpx_dsp/add_noise.c
media/libvpx/libvpx/vpx_dsp/arm/avg_pred_neon.c
media/libvpx/libvpx/vpx_dsp/arm/deblock_neon.c
media/libvpx/libvpx/vpx_dsp/arm/fdct_neon.c
media/libvpx/libvpx/vpx_dsp/arm/fwd_txfm_neon.c
media/libvpx/libvpx/vpx_dsp/arm/highbd_idct16x16_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/highbd_idct32x32_1024_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/highbd_idct32x32_135_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/highbd_idct32x32_34_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/highbd_idct4x4_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/highbd_idct8x8_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/highbd_idct_neon.h
media/libvpx/libvpx/vpx_dsp/arm/idct16x16_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/idct32x32_135_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/idct32x32_34_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/idct4x4_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/idct8x8_add_neon.c
media/libvpx/libvpx/vpx_dsp/arm/idct_neon.h
media/libvpx/libvpx/vpx_dsp/arm/intrapred_neon.c
media/libvpx/libvpx/vpx_dsp/arm/loopfilter_8_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/mem_neon.h
media/libvpx/libvpx/vpx_dsp/arm/quantize_neon.c
media/libvpx/libvpx/vpx_dsp/arm/sad4d_neon.c
media/libvpx/libvpx/vpx_dsp/arm/sad_neon.c
media/libvpx/libvpx/vpx_dsp/arm/subpel_variance_neon.c
media/libvpx/libvpx/vpx_dsp/arm/subtract_neon.c
media/libvpx/libvpx/vpx_dsp/arm/sum_neon.h
media/libvpx/libvpx/vpx_dsp/arm/sum_squares_neon.c
media/libvpx/libvpx/vpx_dsp/arm/transpose_neon.h
media/libvpx/libvpx/vpx_dsp/arm/variance_neon.c
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_avg_horiz_filter_type1_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_avg_horiz_filter_type2_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_avg_neon_asm.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_avg_vert_filter_type1_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_avg_vert_filter_type2_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_horiz_filter_type1_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_horiz_filter_type2_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_neon.h
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_neon_asm.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_neon_asm.c
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_neon_asm.h
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_vert_filter_type1_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve8_vert_filter_type2_neon.asm
media/libvpx/libvpx/vpx_dsp/arm/vpx_convolve_neon.c
media/libvpx/libvpx/vpx_dsp/avg.c
media/libvpx/libvpx/vpx_dsp/bitreader.h
media/libvpx/libvpx/vpx_dsp/bitreader_buffer.c
media/libvpx/libvpx/vpx_dsp/bitreader_buffer.h
media/libvpx/libvpx/vpx_dsp/bitwriter.c
media/libvpx/libvpx/vpx_dsp/bitwriter.h
media/libvpx/libvpx/vpx_dsp/bitwriter_buffer.h
media/libvpx/libvpx/vpx_dsp/deblock.c
media/libvpx/libvpx/vpx_dsp/fastssim.c
media/libvpx/libvpx/vpx_dsp/fwd_txfm.c
media/libvpx/libvpx/vpx_dsp/fwd_txfm.h
media/libvpx/libvpx/vpx_dsp/inv_txfm.c
media/libvpx/libvpx/vpx_dsp/inv_txfm.h
media/libvpx/libvpx/vpx_dsp/loopfilter.c
media/libvpx/libvpx/vpx_dsp/mips/add_noise_msa.c
media/libvpx/libvpx/vpx_dsp/mips/avg_msa.c
media/libvpx/libvpx/vpx_dsp/mips/common_dspr2.h
media/libvpx/libvpx/vpx_dsp/mips/convolve8_avg_dspr2.c
media/libvpx/libvpx/vpx_dsp/mips/convolve8_avg_horiz_dspr2.c
media/libvpx/libvpx/vpx_dsp/mips/convolve8_dspr2.c
media/libvpx/libvpx/vpx_dsp/mips/convolve8_horiz_dspr2.c
media/libvpx/libvpx/vpx_dsp/mips/convolve8_vert_dspr2.c
media/libvpx/libvpx/vpx_dsp/mips/convolve_common_dspr2.h
media/libvpx/libvpx/vpx_dsp/mips/deblock_msa.c
media/libvpx/libvpx/vpx_dsp/mips/fwd_dct32x32_msa.c
media/libvpx/libvpx/vpx_dsp/mips/fwd_txfm_msa.h
media/libvpx/libvpx/vpx_dsp/mips/idct16x16_msa.c
media/libvpx/libvpx/vpx_dsp/mips/idct32x32_msa.c
media/libvpx/libvpx/vpx_dsp/mips/idct4x4_msa.c
media/libvpx/libvpx/vpx_dsp/mips/idct8x8_msa.c
media/libvpx/libvpx/vpx_dsp/mips/inv_txfm_dspr2.h
media/libvpx/libvpx/vpx_dsp/mips/inv_txfm_msa.h
media/libvpx/libvpx/vpx_dsp/mips/loopfilter_filters_dspr2.h
media/libvpx/libvpx/vpx_dsp/mips/loopfilter_macros_dspr2.h
media/libvpx/libvpx/vpx_dsp/mips/loopfilter_masks_dspr2.h
media/libvpx/libvpx/vpx_dsp/mips/loopfilter_msa.h
media/libvpx/libvpx/vpx_dsp/mips/macros_msa.h
media/libvpx/libvpx/vpx_dsp/mips/sad_mmi.c
media/libvpx/libvpx/vpx_dsp/mips/sub_pixel_variance_msa.c
media/libvpx/libvpx/vpx_dsp/mips/txfm_macros_msa.h
media/libvpx/libvpx/vpx_dsp/mips/variance_mmi.c
media/libvpx/libvpx/vpx_dsp/mips/variance_msa.c
media/libvpx/libvpx/vpx_dsp/mips/vpx_convolve8_avg_horiz_msa.c
media/libvpx/libvpx/vpx_dsp/mips/vpx_convolve8_avg_msa.c
media/libvpx/libvpx/vpx_dsp/mips/vpx_convolve8_avg_vert_msa.c
media/libvpx/libvpx/vpx_dsp/mips/vpx_convolve8_horiz_msa.c
media/libvpx/libvpx/vpx_dsp/mips/vpx_convolve8_mmi.c
media/libvpx/libvpx/vpx_dsp/mips/vpx_convolve8_msa.c
media/libvpx/libvpx/vpx_dsp/mips/vpx_convolve8_vert_msa.c
media/libvpx/libvpx/vpx_dsp/mips/vpx_convolve_msa.h
media/libvpx/libvpx/vpx_dsp/postproc.h
media/libvpx/libvpx/vpx_dsp/ppc/bitdepth_conversion_vsx.h
media/libvpx/libvpx/vpx_dsp/ppc/deblock_vsx.c
media/libvpx/libvpx/vpx_dsp/ppc/fdct32x32_vsx.c
media/libvpx/libvpx/vpx_dsp/ppc/intrapred_vsx.c
media/libvpx/libvpx/vpx_dsp/ppc/inv_txfm_vsx.c
media/libvpx/libvpx/vpx_dsp/ppc/inv_txfm_vsx.h
media/libvpx/libvpx/vpx_dsp/ppc/quantize_vsx.c
media/libvpx/libvpx/vpx_dsp/ppc/sad_vsx.c
media/libvpx/libvpx/vpx_dsp/ppc/subtract_vsx.c
media/libvpx/libvpx/vpx_dsp/ppc/transpose_vsx.h
media/libvpx/libvpx/vpx_dsp/ppc/txfm_common_vsx.h
media/libvpx/libvpx/vpx_dsp/ppc/types_vsx.h
media/libvpx/libvpx/vpx_dsp/ppc/variance_vsx.c
media/libvpx/libvpx/vpx_dsp/ppc/vpx_convolve_vsx.c
media/libvpx/libvpx/vpx_dsp/prob.h
media/libvpx/libvpx/vpx_dsp/psnr.c
media/libvpx/libvpx/vpx_dsp/psnr.h
media/libvpx/libvpx/vpx_dsp/psnrhvs.c
media/libvpx/libvpx/vpx_dsp/quantize.c
media/libvpx/libvpx/vpx_dsp/quantize.h
media/libvpx/libvpx/vpx_dsp/sad.c
media/libvpx/libvpx/vpx_dsp/skin_detection.h
media/libvpx/libvpx/vpx_dsp/ssim.c
media/libvpx/libvpx/vpx_dsp/ssim.h
media/libvpx/libvpx/vpx_dsp/subtract.c
media/libvpx/libvpx/vpx_dsp/sum_squares.c
media/libvpx/libvpx/vpx_dsp/txfm_common.h
media/libvpx/libvpx/vpx_dsp/variance.c
media/libvpx/libvpx/vpx_dsp/variance.h
media/libvpx/libvpx/vpx_dsp/vpx_convolve.h
media/libvpx/libvpx/vpx_dsp/vpx_dsp.mk
media/libvpx/libvpx/vpx_dsp/vpx_dsp_common.h
media/libvpx/libvpx/vpx_dsp/vpx_dsp_rtcd_defs.pl
media/libvpx/libvpx/vpx_dsp/vpx_filter.h
media/libvpx/libvpx/vpx_dsp/x86/avg_intrin_avx2.c
media/libvpx/libvpx/vpx_dsp/x86/avg_intrin_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/avg_pred_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/avg_ssse3_x86_64.asm
media/libvpx/libvpx/vpx_dsp/x86/bitdepth_conversion_avx2.h
media/libvpx/libvpx/vpx_dsp/x86/bitdepth_conversion_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/convolve.h
media/libvpx/libvpx/vpx_dsp/x86/convolve_avx2.h
media/libvpx/libvpx/vpx_dsp/x86/convolve_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/convolve_ssse3.h
media/libvpx/libvpx/vpx_dsp/x86/deblock_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/fwd_dct32x32_impl_avx2.h
media/libvpx/libvpx/vpx_dsp/x86/fwd_dct32x32_impl_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/fwd_txfm_avx2.c
media/libvpx/libvpx/vpx_dsp/x86/fwd_txfm_impl_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/fwd_txfm_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/fwd_txfm_ssse3_x86_64.asm
media/libvpx/libvpx/vpx_dsp/x86/highbd_convolve_avx2.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_idct16x16_add_sse4.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_idct4x4_add_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_idct4x4_add_sse4.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_idct8x8_add_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_idct8x8_add_sse4.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_intrapred_intrin_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_intrapred_intrin_ssse3.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_intrapred_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/highbd_inv_txfm_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/highbd_inv_txfm_sse4.h
media/libvpx/libvpx/vpx_dsp/x86/highbd_loopfilter_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_quantize_intrin_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/highbd_sad_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/highbd_subpel_variance_impl_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/highbd_variance_impl_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/highbd_variance_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/inv_txfm_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/inv_txfm_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/inv_txfm_ssse3.h
media/libvpx/libvpx/vpx_dsp/x86/loopfilter_avx2.c
media/libvpx/libvpx/vpx_dsp/x86/loopfilter_intrin_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/mem_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/post_proc_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/quantize_avx.c
media/libvpx/libvpx/vpx_dsp/x86/quantize_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/quantize_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/quantize_ssse3.c
media/libvpx/libvpx/vpx_dsp/x86/quantize_ssse3.h
media/libvpx/libvpx/vpx_dsp/x86/quantize_x86.h
media/libvpx/libvpx/vpx_dsp/x86/sad4d_avx2.c
media/libvpx/libvpx/vpx_dsp/x86/sad4d_avx512.c
media/libvpx/libvpx/vpx_dsp/x86/sad_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/subpel_variance_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/sum_squares_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/transpose_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/txfm_common_sse2.h
media/libvpx/libvpx/vpx_dsp/x86/variance_avx2.c
media/libvpx/libvpx/vpx_dsp/x86/variance_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/vpx_asm_stubs.c
media/libvpx/libvpx/vpx_dsp/x86/vpx_high_subpixel_8t_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/vpx_high_subpixel_bilinear_sse2.asm
media/libvpx/libvpx/vpx_dsp/x86/vpx_subpixel_4t_intrin_sse2.c
media/libvpx/libvpx/vpx_dsp/x86/vpx_subpixel_8t_intrin_avx2.c
media/libvpx/libvpx/vpx_dsp/x86/vpx_subpixel_8t_intrin_ssse3.c
media/libvpx/libvpx/vpx_dsp/x86/vpx_subpixel_8t_ssse3.asm
media/libvpx/libvpx/vpx_mem/include/vpx_mem_intrnl.h
media/libvpx/libvpx/vpx_mem/vpx_mem.c
media/libvpx/libvpx/vpx_mem/vpx_mem.h
media/libvpx/libvpx/vpx_ports/arm.h
media/libvpx/libvpx/vpx_ports/asmdefs_mmi.h
media/libvpx/libvpx/vpx_ports/bitops.h
media/libvpx/libvpx/vpx_ports/config.h
media/libvpx/libvpx/vpx_ports/emmintrin_compat.h
media/libvpx/libvpx/vpx_ports/emms.asm
media/libvpx/libvpx/vpx_ports/emms_mmx.asm
media/libvpx/libvpx/vpx_ports/emms_mmx.c
media/libvpx/libvpx/vpx_ports/float_control_word.asm
media/libvpx/libvpx/vpx_ports/mem.h
media/libvpx/libvpx/vpx_ports/mem_ops.h
media/libvpx/libvpx/vpx_ports/mem_ops_aligned.h
media/libvpx/libvpx/vpx_ports/msvc.h
media/libvpx/libvpx/vpx_ports/ppc.h
media/libvpx/libvpx/vpx_ports/system_state.h
media/libvpx/libvpx/vpx_ports/vpx_once.h
media/libvpx/libvpx/vpx_ports/vpx_ports.mk
media/libvpx/libvpx/vpx_ports/vpx_timer.h
media/libvpx/libvpx/vpx_ports/x86.h
media/libvpx/libvpx/vpx_scale/generic/gen_scalers.c
media/libvpx/libvpx/vpx_scale/generic/vpx_scale.c
media/libvpx/libvpx/vpx_scale/generic/yv12config.c
media/libvpx/libvpx/vpx_scale/vpx_scale.h
media/libvpx/libvpx/vpx_scale/yv12config.h
media/libvpx/libvpx/vpx_util/endian_inl.h
media/libvpx/libvpx/vpx_util/vpx_atomics.h
media/libvpx/libvpx/vpx_util/vpx_debug_util.c
media/libvpx/libvpx/vpx_util/vpx_debug_util.h
media/libvpx/libvpx/vpx_util/vpx_thread.h
media/libvpx/libvpx/vpx_util/vpx_timestamp.h
media/libvpx/libvpx/vpx_util/vpx_util.mk
media/libvpx/libvpx/vpx_util/vpx_write_yuv_frame.c
media/libvpx/libvpx/vpx_util/vpx_write_yuv_frame.h
media/libvpx/libvpx/vpxdec.c
media/libvpx/libvpx/vpxenc.c
media/libvpx/libvpx/vpxenc.h
media/libvpx/libvpx/vpxstats.h
media/libvpx/libvpx/warnings.h
media/libvpx/libvpx/webmdec.h
media/libvpx/libvpx/webmenc.h
media/libvpx/libvpx/y4menc.c
media/libvpx/libvpx/y4menc.h
media/libvpx/libvpx/y4minput.c
media/libvpx/libvpx/y4minput.h
--- a/media/libvpx/README_MOZILLA
+++ b/media/libvpx/README_MOZILLA
@@ -3,9 +3,9 @@ git repository using the update.py scrip
 made were those applied by update.py and the addition of
 moz.build and Makefile.in build files for the
 Mozilla build system.
 
 The libvpx git repository is:
 
     https://chromium.googlesource.com/webm/libvpx
 
-The git commit ID used was f80be22a1099b2a431c2796f529bb261064ec6b4
+The git commit ID used was 7ec7a33a081aeeb53fed1a8d87e4cbd189152527
--- a/media/libvpx/libvpx/.clang-format
+++ b/media/libvpx/libvpx/.clang-format
@@ -1,17 +1,17 @@
 ---
 Language:        Cpp
 # BasedOnStyle:  Google
-# Generated with clang-format 4.0.1
+# Generated with clang-format 7.0.1
 AccessModifierOffset: -1
 AlignAfterOpenBracket: Align
 AlignConsecutiveAssignments: false
 AlignConsecutiveDeclarations: false
-AlignEscapedNewlinesLeft: true
+AlignEscapedNewlines: Left
 AlignOperands:   true
 AlignTrailingComments: true
 AllowAllParametersOfDeclarationOnNextLine: true
 AllowShortBlocksOnASingleLine: false
 AllowShortCaseLabelsOnASingleLine: true
 AllowShortFunctionsOnASingleLine: All
 AllowShortIfStatementsOnASingleLine: true
 AllowShortLoopsOnASingleLine: true
@@ -25,69 +25,121 @@ BraceWrapping:
   AfterClass:      false
   AfterControlStatement: false
   AfterEnum:       false
   AfterFunction:   false
   AfterNamespace:  false
   AfterObjCDeclaration: false
   AfterStruct:     false
   AfterUnion:      false
+  AfterExternBlock: false
   BeforeCatch:     false
   BeforeElse:      false
   IndentBraces:    false
+  SplitEmptyFunction: true
+  SplitEmptyRecord: true
+  SplitEmptyNamespace: true
 BreakBeforeBinaryOperators: None
 BreakBeforeBraces: Attach
+BreakBeforeInheritanceComma: false
+BreakInheritanceList: BeforeColon
 BreakBeforeTernaryOperators: true
 BreakConstructorInitializersBeforeComma: false
+BreakConstructorInitializers: BeforeColon
 BreakAfterJavaFieldAnnotations: false
 BreakStringLiterals: true
 ColumnLimit:     80
 CommentPragmas:  '^ IWYU pragma:'
+CompactNamespaces: false
 ConstructorInitializerAllOnOneLineOrOnePerLine: false
 ConstructorInitializerIndentWidth: 4
 ContinuationIndentWidth: 4
 Cpp11BracedListStyle: false
 DerivePointerAlignment: false
 DisableFormat:   false
 ExperimentalAutoDetectBinPacking: false
-ForEachMacros:   [ foreach, Q_FOREACH, BOOST_FOREACH ]
+FixNamespaceComments: true
+ForEachMacros:
+  - foreach
+  - Q_FOREACH
+  - BOOST_FOREACH
+IncludeBlocks:   Preserve
 IncludeCategories:
+  - Regex:           '^<ext/.*\.h>'
+    Priority:        2
   - Regex:           '^<.*\.h>'
     Priority:        1
   - Regex:           '^<.*'
     Priority:        2
   - Regex:           '.*'
     Priority:        3
 IncludeIsMainRegex: '([-_](test|unittest))?$'
 IndentCaseLabels: true
+IndentPPDirectives: None
 IndentWidth:     2
 IndentWrappedFunctionNames: false
 JavaScriptQuotes: Leave
 JavaScriptWrapImports: true
 KeepEmptyLinesAtTheStartOfBlocks: false
 MacroBlockBegin: ''
 MacroBlockEnd:   ''
 MaxEmptyLinesToKeep: 1
 NamespaceIndentation: None
+ObjCBinPackProtocolList: Never
 ObjCBlockIndentWidth: 2
 ObjCSpaceAfterProperty: false
 ObjCSpaceBeforeProtocolList: false
+PenaltyBreakAssignment: 2
 PenaltyBreakBeforeFirstCallParameter: 1
 PenaltyBreakComment: 300
 PenaltyBreakFirstLessLess: 120
+PenaltyBreakTemplateDeclaration: 10
 PenaltyBreakString: 1000
 PenaltyExcessCharacter: 1000000
 PenaltyReturnTypeOnItsOwnLine: 200
 PointerAlignment: Right
+RawStringFormats:
+  - Language:        Cpp
+    Delimiters:
+      - cc
+      - CC
+      - cpp
+      - Cpp
+      - CPP
+      - 'c++'
+      - 'C++'
+    CanonicalDelimiter: ''
+    BasedOnStyle:    google
+  - Language:        TextProto
+    Delimiters:
+      - pb
+      - PB
+      - proto
+      - PROTO
+    EnclosingFunctions:
+      - EqualsProto
+      - EquivToProto
+      - PARSE_PARTIAL_TEXT_PROTO
+      - PARSE_TEST_PROTO
+      - PARSE_TEXT_PROTO
+      - ParseTextOrDie
+      - ParseTextProtoOrDie
+    CanonicalDelimiter: ''
+    BasedOnStyle:    google
 ReflowComments:  true
 SortIncludes:    false
+SortUsingDeclarations: true
 SpaceAfterCStyleCast: false
 SpaceAfterTemplateKeyword: true
 SpaceBeforeAssignmentOperators: true
+SpaceBeforeCpp11BracedList: false
+SpaceBeforeCtorInitializerColon: true
+SpaceBeforeInheritanceColon: true
 SpaceBeforeParens: ControlStatements
+SpaceBeforeRangeBasedForLoopColon: true
 SpaceInEmptyParentheses: false
 SpacesBeforeTrailingComments: 2
 SpacesInAngles:  false
 SpacesInContainerLiterals: true
 SpacesInCStyleCastParentheses: false
 SpacesInParentheses: false
 SpacesInSquareBrackets: false
 Standard:        Auto
--- a/media/libvpx/libvpx/.mailmap
+++ b/media/libvpx/libvpx/.mailmap
@@ -1,42 +1,53 @@
 Adrian Grange <agrange@google.com>
-Aℓex Converse <aconverse@google.com>
-Aℓex Converse <aconverse@google.com> <alex.converse@gmail.com>
+Aℓex Converse <alexconv@twitch.tv>
+Aℓex Converse <alexconv@twitch.tv> <aconverse@google.com>
+Aℓex Converse <alexconv@twitch.tv> <alex.converse@gmail.com>
 Alexis Ballier <aballier@gentoo.org> <alexis.ballier@gmail.com>
 Alpha Lam <hclam@google.com> <hclam@chromium.org>
+Angie Chiang <angiebird@google.com>
 Chris Cunningham <chcunningham@chromium.org>
+Chi Yo Tsai <chiyotsai@google.com>
 Daniele Castagna <dcastagna@chromium.org> <dcastagna@google.com>
 Deb Mukherjee <debargha@google.com>
+Elliott Karpilovsky <elliottk@google.com>
 Erik Niemeyer <erik.a.niemeyer@intel.com> <erik.a.niemeyer@gmail.com>
+Fyodor Kyslov <kyslov@google.com>
 Guillaume Martres <gmartres@google.com> <smarter3@gmail.com>
 Hangyu Kuang <hkuang@google.com>
 Hui Su <huisu@google.com>
 Jacky Chen <jackychen@google.com>
 Jim Bankoski <jimbankoski@google.com>
 Johann Koenig <johannkoenig@google.com>
 Johann Koenig <johannkoenig@google.com> <johann.koenig@duck.com>
 Johann Koenig <johannkoenig@google.com> <johann.koenig@gmail.com>
 Johann Koenig <johannkoenig@google.com> <johannkoenig@chromium.org>
 John Koleszar <jkoleszar@google.com>
 Joshua Litt <joshualitt@google.com> <joshualitt@chromium.org>
 Marco Paniconi <marpan@google.com>
 Marco Paniconi <marpan@google.com> <marpan@chromium.org>
+Martin Storsjö <martin@martin.st>
+Michael Horowitz <mhoro@webrtc.org> <mhoro@google.com>
 Pascal Massimino <pascal.massimino@gmail.com>
 Paul Wilkins <paulwilkins@google.com>
 Peter Boström <pbos@chromium.org> <pbos@google.com>
 Peter de Rivaz <peter.derivaz@gmail.com>
 Peter de Rivaz <peter.derivaz@gmail.com> <peter.derivaz@argondesign.com>
 Ralph Giles <giles@xiph.org> <giles@entropywave.com>
 Ralph Giles <giles@xiph.org> <giles@mozilla.com>
 Ronald S. Bultje <rsbultje@gmail.com> <rbultje@google.com>
+Sai Deng <sdeng@google.com>
 Sami Pietilä <samipietila@google.com>
 Shiyou Yin <yinshiyou-hf@loongson.cn>
 Tamar Levy <tamar.levy@intel.com>
 Tamar Levy <tamar.levy@intel.com> <levytamar82@gmail.com>
 Tero Rintaluoma <teror@google.com> <tero.rintaluoma@on2.com>
 Timothy B. Terriberry <tterribe@xiph.org> <tterriberry@mozilla.com>
 Tom Finegan <tomfinegan@google.com>
 Tom Finegan <tomfinegan@google.com> <tomfinegan@chromium.org>
 Urvang Joshi <urvang@google.com> <urvang@chromium.org>
 Yaowu Xu <yaowu@google.com> <adam@xuyaowu.com>
 Yaowu Xu <yaowu@google.com> <yaowu@xuyaowu.com>
 Yaowu Xu <yaowu@google.com> <Yaowu Xu>
+Venkatarama NG. Avadhani <venkatarama.avadhani@ittiam.com>
+Vitaly Buka <vitalybuka@chromium.org> <vitlaybuka@chromium.org>
+xiwei gu <guxiwei-hf@loongson.cn>
--- a/media/libvpx/libvpx/AUTHORS
+++ b/media/libvpx/libvpx/AUTHORS
@@ -1,66 +1,75 @@
 # This file is automatically generated from the git commit history
 # by tools/gen_authors.sh.
 
 Aaron Watry <awatry@gmail.com>
 Abo Talib Mahfoodh <ab.mahfoodh@gmail.com>
 Adrian Grange <agrange@google.com>
-Aℓex Converse <aconverse@google.com>
 Ahmad Sharif <asharif@google.com>
+Aidan Welch <aidansw@yahoo.com>
 Aleksey Vasenev <margtu-fivt@ya.ru>
 Alexander Potapenko <glider@google.com>
 Alexander Voronov <avoronov@graphics.cs.msu.ru>
 Alexandra Hájková <alexandra.khirnova@gmail.com>
+Aℓex Converse <alexconv@twitch.tv>
 Alexis Ballier <aballier@gentoo.org>
 Alok Ahuja <waveletcoeff@gmail.com>
 Alpha Lam <hclam@google.com>
 A.Mahfoodh <ab.mahfoodh@gmail.com>
 Ami Fischman <fischman@chromium.org>
 Andoni Morales Alastruey <ylatuya@gmail.com>
 Andres Mejia <mcitadel@gmail.com>
 Andrew Lewis <andrewlewis@google.com>
 Andrew Russell <anrussell@google.com>
+Angie Chen <yunqi@google.com>
 Angie Chiang <angiebird@google.com>
 Aron Rosenberg <arosenberg@logitech.com>
 Attila Nagy <attilanagy@google.com>
+Birk Magnussen <birk.magnussen@googlemail.com>
 Brion Vibber <bvibber@wikimedia.org>
 changjun.yang <changjun.yang@intel.com>
 Charles 'Buck' Krasic <ckrasic@google.com>
 Cheng Chen <chengchen@google.com>
+Chi Yo Tsai <chiyotsai@google.com>
 chm <chm@rock-chips.com>
 Chris Cunningham <chcunningham@chromium.org>
 Christian Duvivier <cduvivier@google.com>
 Daniele Castagna <dcastagna@chromium.org>
 Daniel Kang <ddkang@google.com>
+Dan Zhu <zxdan@google.com>
 Deb Mukherjee <debargha@google.com>
 Deepa K G <deepa.kg@ittiam.com>
 Dim Temp <dimtemp0@gmail.com>
 Dmitry Kovalev <dkovalev@google.com>
 Dragan Mrdjan <dmrdjan@mips.com>
 Ed Baker <edward.baker@intel.com>
 Ehsan Akhgari <ehsan.akhgari@gmail.com>
+Elliott Karpilovsky <elliottk@google.com>
 Erik Niemeyer <erik.a.niemeyer@intel.com>
 Fabio Pedretti <fabio.ped@libero.it>
 Frank Galligan <fgalligan@google.com>
 Fredrik Söderquist <fs@opera.com>
 Fritz Koenig <frkoenig@google.com>
+Fyodor Kyslov <kyslov@google.com>
 Gabriel Marin <gmx@chromium.org>
 Gaute Strokkenes <gaute.strokkenes@broadcom.com>
 Geza Lore <gezalore@gmail.com>
 Ghislain MARY <ghislainmary2@gmail.com>
 Giuseppe Scrivano <gscrivano@gnu.org>
 Gordana Cmiljanovic <gordana.cmiljanovic@imgtec.com>
 Gregor Jasny <gjasny@gmail.com>
 Guillaume Martres <gmartres@google.com>
 Guillermo Ballester Valor <gbvalor@gmail.com>
 Hangyu Kuang <hkuang@google.com>
 Hanno Böck <hanno@hboeck.de>
 Han Shen <shenhan@google.com>
+Harish Mahendrakar <harish.mahendrakar@ittiam.com>
 Henrik Lundin <hlundin@google.com>
+Hien Ho <hienho@google.com>
 Hui Su <huisu@google.com>
 Ivan Krasin <krasin@chromium.org>
 Ivan Maltz <ivanmaltz@google.com>
 Jacek Caban <cjacek@gmail.com>
 Jacky Chen <jackychen@google.com>
 James Berry <jamesberry@google.com>
 James Yu <james.yu@linaro.org>
 James Zern <jzern@google.com>
@@ -76,46 +85,53 @@ Jia Jia <jia.jia@linaro.org>
 Jian Zhou <zhoujian@google.com>
 Jim Bankoski <jimbankoski@google.com>
 Jingning Han <jingning@google.com>
 Joey Parrish <joeyparrish@google.com>
 Johann Koenig <johannkoenig@google.com>
 John Koleszar <jkoleszar@google.com>
 Johnny Klonaris <google@jawknee.com>
 John Stark <jhnstrk@gmail.com>
+Jon Kunkee <jkunkee@microsoft.com>
 Joshua Bleecher Snyder <josh@treelinelabs.com>
 Joshua Litt <joshualitt@google.com>
 Julia Robson <juliamrobson@gmail.com>
 Justin Clift <justin@salasaga.org>
 Justin Lebar <justin.lebar@gmail.com>
 Kaustubh Raste <kaustubh.raste@imgtec.com>
 KO Myung-Hun <komh@chollian.net>
 Kyle Siefring <kylesiefring@gmail.com>
 Lawrence Velázquez <larryv@macports.org>
 Linfeng Zhang <linfengz@google.com>
+Liu Peng <pengliu.mail@gmail.com>
 Lou Quillio <louquillio@google.com>
 Luca Barbato <lu_zero@gentoo.org>
+Luc Trudeau <luc@trud.ca>
 Makoto Kato <makoto.kt@gmail.com>
 Mans Rullgard <mans@mansr.com>
 Marco Paniconi <marpan@google.com>
 Mark Mentovai <mark@chromium.org>
 Martin Ettl <ettl.martin78@googlemail.com>
-Martin Storsjo <martin@martin.st>
+Martin Storsjö <martin@martin.st>
 Matthew Heaney <matthewjheaney@chromium.org>
+Matthias Räncker <theonetruecamper@gmx.de>
+Michael Horowitz <mhoro@webrtc.org>
 Michael Kohler <michaelkohler@live.com>
 Mike Frysinger <vapier@chromium.org>
 Mike Hommey <mhommey@mozilla.com>
 Mikhal Shemer <mikhal@google.com>
 Min Chen <chenm003@gmail.com>
 Minghai Shang <minghai@google.com>
 Min Ye <yeemmi@google.com>
+Mirko Bonadei <mbonadei@google.com>
 Moriyoshi Koizumi <mozo@mozo.jp>
 Morton Jonuschat <yabawock@gmail.com>
 Nathan E. Egge <negge@mozilla.com>
 Nico Weber <thakis@chromium.org>
+Niveditha Rau <niveditha.rau@gmail.com>
 Parag Salasakar <img.mips1@gmail.com>
 Pascal Massimino <pascal.massimino@gmail.com>
 Patrik Westin <patrik.westin@gmail.com>
 Paul Wilkins <paulwilkins@google.com>
 Pavol Rusnak <stick@gk2.sk>
 Paweł Hajdan <phajdan@google.com>
 Pengchong Jin <pengchong@google.com>
 Peter Boström <pbos@chromium.org>
@@ -124,47 +140,60 @@ Peter de Rivaz <peter.derivaz@gmail.com>
 Philip Jägenstedt <philipj@opera.com>
 Priit Laes <plaes@plaes.org>
 Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
 Rafaël Carré <funman@videolan.org>
 Rafael de Lucena Valle <rafaeldelucena@gmail.com>
 Rahul Chaudhry <rahulchaudhry@google.com>
 Ralph Giles <giles@xiph.org>
 Ranjit Kumar Tulabandu <ranjit.tulabandu@ittiam.com>
+Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
+Ravi Chaudhary <ravi.chaudhary@ittiam.com>
+Ritu Baldwa <ritu.baldwa@ittiam.com>
 Rob Bradford <rob@linux.intel.com>
 Ronald S. Bultje <rsbultje@gmail.com>
 Rui Ueyama <ruiu@google.com>
+Sai Deng <sdeng@google.com>
 Sami Pietilä <samipietila@google.com>
 Sarah Parker <sarahparker@google.com>
 Sasi Inguva <isasi@google.com>
 Scott Graham <scottmg@chromium.org>
 Scott LaVarnway <slavarnway@google.com>
 Sean McGovern <gseanmcg@gmail.com>
 Sergey Kolomenkin <kolomenkin@gmail.com>
+Sergey Silkin <ssilkin@google.com>
 Sergey Ulanov <sergeyu@chromium.org>
 Shimon Doodkin <helpmepro1@gmail.com>
 Shiyou Yin <yinshiyou-hf@loongson.cn>
+Shubham Tandle <shubham.tandle@ittiam.com>
 Shunyao Li <shunyaoli@google.com>
 Stefan Holmer <holmer@google.com>
 Suman Sunkara <sunkaras@google.com>
+Supradeep T R <supradeep.tr@ittiam.com>
 Sylvestre Ledru <sylvestre@mozilla.com>
 Taekhyun Kim <takim@nvidia.com>
 Takanori MATSUURA <t.matsuu@gmail.com>
 Tamar Levy <tamar.levy@intel.com>
 Tao Bai <michaelbai@chromium.org>
 Tero Rintaluoma <teror@google.com>
 Thijs Vermeir <thijsvermeir@gmail.com>
 Tim Kopp <tkopp@google.com>
 Timothy B. Terriberry <tterribe@xiph.org>
 Tom Finegan <tomfinegan@google.com>
 Tristan Matthews <le.businessman@gmail.com>
 Urvang Joshi <urvang@google.com>
+Venkatarama NG. Avadhani <venkatarama.avadhani@ittiam.com>
 Vignesh Venkatasubramanian <vigneshv@google.com>
+Vitaly Buka <vitalybuka@chromium.org>
 Vlad Tsyrklevich <vtsyrklevich@chromium.org>
+Wan-Teh Chang <wtc@google.com>
+xiwei gu <guxiwei-hf@loongson.cn>
 Yaowu Xu <yaowu@google.com>
 Yi Luo <luoyi@google.com>
 Yongzhe Wang <yongzhe@google.com>
+Yue Chen <yuec@google.com>
+Yun Liu <yliuyliu@google.com>
 Yunqing Wang <yunqingwang@google.com>
 Yury Gitman <yuryg@google.com>
 Zoe Liu <zoeliu@google.com>
 Google Inc.
 The Mozilla Foundation
 The Xiph.Org Foundation
--- a/media/libvpx/libvpx/CHANGELOG
+++ b/media/libvpx/libvpx/CHANGELOG
@@ -1,9 +1,74 @@
-2017-01-04 v1.7.0 "Mandarin Duck"
+2019-12-09 v1.8.2 "Pekin Duck"
+  This release collects incremental improvements to many aspects of the library.
+
+  - Upgrading:
+    ARCH_* defines have been removed in favor of VPX_ARCH_*.
+
+2019-07-15 v1.8.1 "Orpington Duck"
+  This release collects incremental improvements to many aspects of the library.
+
+  - Upgrading:
+    VP8E_SET_CPUUSED now accepts values up to 9 for vp9.
+    VPX_CTRL_VP9E_SET_MAX_INTER_BITRATE_PCT had a spelling fix (was VP8E).
+    The --sdk-path option has been removed. If you were using it to build for
+      Android please read build/make/Android.mk for alternatives.
+    All PPC optimizations have been disabled:
+      https://bugs.chromium.org/p/webm/issues/detail?id=1522.
+
+  - Enhancements:
+    Various changes to improve encoder rate control, quality and speed
+      for practically every use case.
+
+  - Bug fixes:
+    vp9-rtc: Fix color artifacts for speed >= 8.
+
+2019-01-31 v1.8.0 "Northern Shoveler Duck"
+  This release focused on encoding performance for realtime and VOD use cases.
+
+  - Upgrading:
+    This adds and improves several vp9 controls. Most are related to SVC:
+      VP9E_SET_SVC_FRAME_DROP_LAYER:
+        - Frame dropping in SVC.
+      VP9E_SET_SVC_INTER_LAYER_PRED:
+        - Inter-layer prediction in SVC.
+      VP9E_SET_SVC_GF_TEMPORAL_REF:
+        - Enable long term temporal reference in SVC.
+      VP9E_SET_SVC_REF_FRAME_CONFIG/VP9E_GET_SVC_REF_FRAME_CONFIG:
+        - Extend and improve this control for better flexibility in setting SVC
+          pattern dynamically.
+      VP9E_SET_POSTENCODE_DROP:
+        - Allow for post-encode frame dropping (applies to non-SVC too).
+      VP9E_SET_SVC_SPATIAL_LAYER_SYNC:
+        - Enable spatial layer sync frames.
+      VP9E_SET_SVC_LAYER_ID:
+        - Extend api to specify temporal id for each spatial layers.
+      VP9E_SET_ROI_MAP:
+        - Extend Region of Interest functionality to VP9.
+
+  - Enhancements:
+    2 pass vp9 encoding has improved substantially. When using --auto-alt-ref=6,
+    we see approximately 8% for VBR and 10% for CQ. When using --auto-alt-ref=1,
+    the gains are approximately 4% for VBR and 5% for CQ.
+
+    For real-time encoding, speed 7 has improved by ~5-10%. Encodes targeted at
+    screen sharing have improved when the content changes significantly (slide
+    sharing) or scrolls. There is a new speed 9 setting for mobile devices which
+    is about 10-20% faster than speed 8.
+
+  - Bug fixes:
+    VP9 denoiser issue.
+    VP9 partition issue for 1080p.
+    VP9 rate control improvments.
+    Postprocessing Multi Frame Quality Enhancement (MFQE) issue.
+    VP8 multithread decoder issues.
+    A variety of fuzzing issues.
+
+2018-01-04 v1.7.0 "Mandarin Duck"
   This release focused on high bit depth performance (10/12 bit) and vp9
   encoding improvements.
 
   - Upgrading:
     This release is ABI incompatible due to new vp9 encoder features.
 
     Frame parallel decoding for vp9 has been removed.
 
--- a/media/libvpx/libvpx/README
+++ b/media/libvpx/libvpx/README
@@ -1,134 +1,146 @@
-README - 24 January 2018
+README - 9 December 2019
 
 Welcome to the WebM VP8/VP9 Codec SDK!
 
 COMPILING THE APPLICATIONS/LIBRARIES:
   The build system used is similar to autotools. Building generally consists of
   "configuring" with your desired build options, then using GNU make to build
   the application.
 
   1. Prerequisites
 
-    * All x86 targets require the Yasm[1] assembler be installed.
-    * All Windows builds require that Cygwin[2] be installed.
-    * Building the documentation requires Doxygen[3]. If you do not
+    * All x86 targets require the Yasm[1] assembler be installed[2].
+    * All Windows builds require that Cygwin[3] be installed.
+    * Building the documentation requires Doxygen[4]. If you do not
       have this package, the install-docs option will be disabled.
-    * Downloading the data for the unit tests requires curl[4] and sha1sum.
+    * Downloading the data for the unit tests requires curl[5] and sha1sum.
       sha1sum is provided via the GNU coreutils, installed by default on
       many *nix platforms, as well as MinGW and Cygwin. If coreutils is not
       available, a compatible version of sha1sum can be built from
-      source[5]. These requirements are optional if not running the unit
+      source[6]. These requirements are optional if not running the unit
       tests.
 
     [1]: http://www.tortall.net/projects/yasm
-    [2]: http://www.cygwin.com
-    [3]: http://www.doxygen.org
-    [4]: http://curl.haxx.se
-    [5]: http://www.microbrew.org/tools/md5sha1sum/
+    [2]: For Visual Studio the base yasm binary (not vsyasm) should be in the
+         PATH for Visual Studio. For VS2017 it is sufficient to rename
+         yasm-<version>-<arch>.exe to yasm.exe and place it in:
+         Program Files (x86)/Microsoft Visual Studio/2017/<level>/Common7/Tools/
+    [3]: http://www.cygwin.com
+    [4]: http://www.doxygen.org
+    [5]: http://curl.haxx.se
+    [6]: http://www.microbrew.org/tools/md5sha1sum/
 
   2. Out-of-tree builds
   Out of tree builds are a supported method of building the application. For
   an out of tree build, the source tree is kept separate from the object
   files produced during compilation. For instance:
 
     $ mkdir build
     $ cd build
     $ ../libvpx/configure <options>
     $ make
 
   3. Configuration options
   The 'configure' script supports a number of options. The --help option can be
   used to get a list of supported options:
     $ ../libvpx/configure --help
 
-  4. Cross development
+  4. Compiler analyzers
+  Compilers have added sanitizers which instrument binaries with information
+  about address calculation, memory usage, threading, undefined behavior, and
+  other common errors. To simplify building libvpx with some of these features
+  use tools/set_analyzer_env.sh before running configure. It will set the
+  compiler and necessary flags for building as well as environment variables
+  read by the analyzer when testing the binaries.
+    $ source ../libvpx/tools/set_analyzer_env.sh address
+
+  5. Cross development
   For cross development, the most notable option is the --target option. The
   most up-to-date list of supported targets can be found at the bottom of the
   --help output of the configure script. As of this writing, the list of
   available targets is:
 
     arm64-android-gcc
     arm64-darwin-gcc
     arm64-linux-gcc
+    arm64-win64-gcc
+    arm64-win64-vs15
     armv7-android-gcc
     armv7-darwin-gcc
     armv7-linux-rvct
     armv7-linux-gcc
     armv7-none-rvct
-    armv7-win32-vs11
-    armv7-win32-vs12
+    armv7-win32-gcc
     armv7-win32-vs14
     armv7-win32-vs15
     armv7s-darwin-gcc
     armv8-linux-gcc
     mips32-linux-gcc
     mips64-linux-gcc
-    ppc64-linux-gcc
     ppc64le-linux-gcc
     sparc-solaris-gcc
     x86-android-gcc
     x86-darwin8-gcc
     x86-darwin8-icc
     x86-darwin9-gcc
     x86-darwin9-icc
     x86-darwin10-gcc
     x86-darwin11-gcc
     x86-darwin12-gcc
     x86-darwin13-gcc
     x86-darwin14-gcc
     x86-darwin15-gcc
     x86-darwin16-gcc
+    x86-darwin17-gcc
     x86-iphonesimulator-gcc
     x86-linux-gcc
     x86-linux-icc
     x86-os2-gcc
     x86-solaris-gcc
     x86-win32-gcc
-    x86-win32-vs10
-    x86-win32-vs11
-    x86-win32-vs12
     x86-win32-vs14
     x86-win32-vs15
+    x86-win32-vs16
     x86_64-android-gcc
     x86_64-darwin9-gcc
     x86_64-darwin10-gcc
     x86_64-darwin11-gcc
     x86_64-darwin12-gcc
     x86_64-darwin13-gcc
     x86_64-darwin14-gcc
     x86_64-darwin15-gcc
     x86_64-darwin16-gcc
+    x86_64-darwin17-gcc
+    x86_64-darwin18-gcc
     x86_64-iphonesimulator-gcc
     x86_64-linux-gcc
     x86_64-linux-icc
     x86_64-solaris-gcc
     x86_64-win64-gcc
-    x86_64-win64-vs10
-    x86_64-win64-vs11
-    x86_64-win64-vs12
     x86_64-win64-vs14
     x86_64-win64-vs15
+    x86_64-win64-vs16
     generic-gnu
 
   The generic-gnu target, in conjunction with the CROSS environment variable,
   can be used to cross compile architectures that aren't explicitly listed, if
   the toolchain is a cross GNU (gcc/binutils) toolchain. Other POSIX toolchains
   will likely work as well. For instance, to build using the mipsel-linux-uclibc
   toolchain, the following command could be used (note, POSIX SH syntax, adapt
   to your shell as necessary):
 
     $ CROSS=mipsel-linux-uclibc- ../libvpx/configure
 
   In addition, the executables to be invoked can be overridden by specifying the
   environment variables: CC, AR, LD, AS, STRIP, NM. Additional flags can be
   passed to these executables with CFLAGS, LDFLAGS, and ASFLAGS.
 
-  5. Configuration errors
+  6. Configuration errors
   If the configuration step fails, the first step is to look in the error log.
   This defaults to config.log. This should give a good indication of what went
   wrong. If not, contact us for support.
 
 VP8/VP9 TEST VECTORS:
   The test vectors can be downloaded and verified using the build system after
   running configure. To specify an alternate directory the
   LIBVPX_TEST_DATA_PATH environment variable can be used.
--- a/media/libvpx/libvpx/args.h
+++ b/media/libvpx/libvpx/args.h
@@ -3,18 +3,18 @@
  *
  *  Use of this source code is governed by a BSD-style license
  *  that can be found in the LICENSE file in the root of the source
  *  tree. An additional intellectual property rights grant can be found
  *  in the file PATENTS.  All contributing project authors may
  *  be found in the AUTHORS file in the root of the source tree.
  */
 
-#ifndef ARGS_H_
-#define ARGS_H_
+#ifndef VPX_ARGS_H_
+#define VPX_ARGS_H_
 #include <stdio.h>
 
 #ifdef __cplusplus
 extern "C" {
 #endif
 
 struct arg {
   char **argv;
@@ -55,9 +55,9 @@ unsigned int arg_parse_uint(const struct
 int arg_parse_int(const struct arg *arg);
 struct vpx_rational arg_parse_rational(const struct arg *arg);
 int arg_parse_enum(const struct arg *arg);
 int arg_parse_enum_or_int(const struct arg *arg);
 #ifdef __cplusplus
 }  // extern "C"
 #endif
 
-#endif  // ARGS_H_
+#endif  // VPX_ARGS_H_
--- a/media/libvpx/libvpx/build/make/Android.mk
+++ b/media/libvpx/libvpx/build/make/Android.mk
@@ -9,62 +9,45 @@
 ##
 
 #
 # This file is to be used for compiling libvpx for Android using the NDK.
 # In an Android project place a libvpx checkout in the jni directory.
 # Run the configure script from the jni directory.  Base libvpx
 # encoder/decoder configuration will look similar to:
 # ./libvpx/configure --target=armv7-android-gcc --disable-examples \
-#                    --sdk-path=/opt/android-ndk-r6b/
+#                    --enable-external-build
 #
 # When targeting Android, realtime-only is enabled by default.  This can
 # be overridden by adding the command line flag:
 #  --disable-realtime-only
 #
 # This will create .mk files that contain variables that contain the
 # source files to compile.
 #
 # Place an Android.mk file in the jni directory that references the
 # Android.mk file in the libvpx directory:
 # LOCAL_PATH := $(call my-dir)
 # include $(CLEAR_VARS)
 # include jni/libvpx/build/make/Android.mk
 #
-# By default libvpx will detect at runtime the existance of NEON extension.
-# For this we import the 'cpufeatures' module from the NDK sources.
-# libvpx can also be configured without this runtime detection method.
-# Configuring with --disable-runtime-cpu-detect will assume presence of NEON.
-# Configuring with --disable-runtime-cpu-detect --disable-neon \
-#     --disable-neon-asm
-# will remove any NEON dependency.
+# By default libvpx will use the 'cpufeatures' module from the NDK. This allows
+# the library to be built with all available optimizations (SSE2->AVX512 for
+# x86, NEON for arm, DSPr2 for mips). This can be disabled with
+#   --disable-runtime-cpu-detect
+# but the resulting library *must* be run on devices supporting all of the
+# enabled extensions. They can be disabled individually with
+#   --disable-{sse2, sse3, ssse3, sse4_1, avx, avx2, avx512}
+#   --disable-neon[-asm]
+#   --disable-{dspr2, msa}
 
 #
 # Running ndk-build will build libvpx and include it in your project.
 #
 
-# Alternatively, building the examples and unit tests can be accomplished in the
-# following way:
-#
-# Create a standalone toolchain from the NDK:
-# https://developer.android.com/ndk/guides/standalone_toolchain.html
-#
-# For example - to test on arm64 devices with clang:
-# $NDK/build/tools/make_standalone_toolchain.py \
-#   --arch arm64 --install-dir=/tmp/my-android-toolchain
-# export PATH=/tmp/my-android-toolchain/bin:$PATH
-# CROSS=aarch64-linux-android- CC=clang CXX=clang++ /path/to/libvpx/configure \
-#   --target=arm64-android-gcc
-#
-# Push the resulting binaries to a device and run them:
-# adb push test_libvpx /data/tmp/test_libvpx
-# adb shell /data/tmp/test_libvpx --gtest_filter=\*Sixtap\*
-#
-# Make sure to push the test data as well and set LIBVPX_TEST_DATA
-
 CONFIG_DIR := $(LOCAL_PATH)/
 LIBVPX_PATH := $(LOCAL_PATH)/libvpx
 ASM_CNV_PATH_LOCAL := $(TARGET_ARCH_ABI)/ads2gas
 ASM_CNV_PATH := $(LOCAL_PATH)/$(ASM_CNV_PATH_LOCAL)
 ifneq ($(V),1)
   qexec := @
 endif
 
--- a/media/libvpx/libvpx/build/make/Makefile
+++ b/media/libvpx/libvpx/build/make/Makefile
@@ -94,16 +94,17 @@ clean::
 	rm -f $(CLEAN-OBJS)
 
 .PHONY: clean
 distclean: clean
 	if [ -z "$(target)" ]; then \
       rm -f Makefile; \
       rm -f config.log config.mk; \
       rm -f vpx_config.[hc] vpx_config.asm; \
+      rm -f arm_neon.h; \
     else \
       rm -f $(target)-$(TOOLCHAIN).mk; \
     fi
 
 .PHONY: dist
 dist:
 .PHONY: exampletest
 exampletest:
@@ -424,20 +425,20 @@ ifneq ($(call enabled,DIST-SRCS),)
     DIST-SRCS-yes            += build/make/configure.sh
     DIST-SRCS-yes            += build/make/gen_asm_deps.sh
     DIST-SRCS-yes            += build/make/Makefile
     DIST-SRCS-$(CONFIG_MSVS)  += build/make/gen_msvs_def.sh
     DIST-SRCS-$(CONFIG_MSVS)  += build/make/gen_msvs_sln.sh
     DIST-SRCS-$(CONFIG_MSVS)  += build/make/gen_msvs_vcxproj.sh
     DIST-SRCS-$(CONFIG_MSVS)  += build/make/msvs_common.sh
     DIST-SRCS-$(CONFIG_RVCT) += build/make/armlink_adapter.sh
-    DIST-SRCS-$(ARCH_ARM)    += build/make/ads2gas.pl
-    DIST-SRCS-$(ARCH_ARM)    += build/make/ads2gas_apple.pl
-    DIST-SRCS-$(ARCH_ARM)    += build/make/ads2armasm_ms.pl
-    DIST-SRCS-$(ARCH_ARM)    += build/make/thumb.pm
+    DIST-SRCS-$(VPX_ARCH_ARM) += build/make/ads2gas.pl
+    DIST-SRCS-$(VPX_ARCH_ARM) += build/make/ads2gas_apple.pl
+    DIST-SRCS-$(VPX_ARCH_ARM) += build/make/ads2armasm_ms.pl
+    DIST-SRCS-$(VPX_ARCH_ARM) += build/make/thumb.pm
     DIST-SRCS-yes            += $(target:-$(TOOLCHAIN)=).mk
 endif
 INSTALL-SRCS := $(call cond_enabled,CONFIG_INSTALL_SRCS,INSTALL-SRCS)
 ifeq ($(MAKECMDGOALS),dist)
 INSTALL-SRCS += $(call cond_enabled,CONFIG_INSTALL_SRCS,DIST-SRCS)
 endif
 .install-srcs: $(addprefix $(DIST_DIR)/src/,$(INSTALL-SRCS))
 	@touch $@
--- a/media/libvpx/libvpx/build/make/ads2gas.pl
+++ b/media/libvpx/libvpx/build/make/ads2gas.pl
@@ -18,26 +18,27 @@
 # Usage: cat inputfile | perl ads2gas.pl > outputfile
 #
 
 use FindBin;
 use lib $FindBin::Bin;
 use thumb;
 
 my $thumb = 0;
+my $elf = 1;
 
 foreach my $arg (@ARGV) {
     $thumb = 1 if ($arg eq "-thumb");
+    $elf = 0 if ($arg eq "-noelf");
 }
 
 print "@ This file was created from a .asm file\n";
 print "@  using the ads2gas.pl script.\n";
-print "\t.equ DO1STROUNDING, 0\n";
+print "\t.syntax unified\n";
 if ($thumb) {
-    print "\t.syntax unified\n";
     print "\t.thumb\n";
 }
 
 # Stack of procedure names.
 @proc_stack = ();
 
 while (<STDIN>)
 {
@@ -135,17 +136,21 @@ while (<STDIN>)
     s/DCW(.*)/.short $1/;
 
     # Constants defined in scope
     s/DCD(.*)/.long $1/;
     s/DCB(.*)/.byte $1/;
 
     # Make function visible to linker, and make additional symbol with
     # prepended underscore
-    s/EXPORT\s+\|([\$\w]*)\|/.global $1 \n\t.type $1, function/;
+    if ($elf) {
+        s/EXPORT\s+\|([\$\w]*)\|/.global $1 \n\t.type $1, function/;
+    } else {
+        s/EXPORT\s+\|([\$\w]*)\|/.global $1/;
+    }
     s/IMPORT\s+\|([\$\w]*)\|/.global $1/;
 
     s/EXPORT\s+([\$\w]*)/.global $1/;
     s/export\s+([\$\w]*)/.global $1/;
 
     # No vertical bars required; make additional symbol with prepended
     # underscore
     s/^\|(\$?\w+)\|/_$1\n\t$1:/g;
@@ -176,38 +181,43 @@ while (<STDIN>)
 
     if ($thumb) {
         thumb::FixThumbInstructions($_, 0);
     }
 
     # eabi_attributes numerical equivalents can be found in the
     # "ARM IHI 0045C" document.
 
-    # REQUIRE8 Stack is required to be 8-byte aligned
-    s/\sREQUIRE8/.eabi_attribute 24, 1 \@Tag_ABI_align_needed/g;
+    if ($elf) {
+        # REQUIRE8 Stack is required to be 8-byte aligned
+        s/\sREQUIRE8/.eabi_attribute 24, 1 \@Tag_ABI_align_needed/g;
 
-    # PRESERVE8 Stack 8-byte align is preserved
-    s/\sPRESERVE8/.eabi_attribute 25, 1 \@Tag_ABI_align_preserved/g;
+        # PRESERVE8 Stack 8-byte align is preserved
+        s/\sPRESERVE8/.eabi_attribute 25, 1 \@Tag_ABI_align_preserved/g;
+    } else {
+        s/\sREQUIRE8//;
+        s/\sPRESERVE8//;
+    }
 
     # Use PROC and ENDP to give the symbols a .size directive.
     # This makes them show up properly in debugging tools like gdb and valgrind.
     if (/\bPROC\b/)
     {
         my $proc;
         /^_([\.0-9A-Z_a-z]\w+)\b/;
         $proc = $1;
         push(@proc_stack, $proc) if ($proc);
         s/\bPROC\b/@ $&/;
     }
     if (/\bENDP\b/)
     {
         my $proc;
         s/\bENDP\b/@ $&/;
         $proc = pop(@proc_stack);
-        $_ = "\t.size $proc, .-$proc".$_ if ($proc);
+        $_ = "\t.size $proc, .-$proc".$_ if ($proc and $elf);
     }
 
     # EQU directive
     s/(\S+\s+)EQU(\s+\S+)/.equ $1, $2/;
 
     # Begin macro definition
     if (/\bMACRO\b/) {
         $_ = <STDIN>;
@@ -220,9 +230,9 @@ while (<STDIN>)
     s/\$/\\/g;                  # End macro definition
     s/\bMEND\b/.endm/;              # No need to tell it where to stop assembling
     next if /^\s*END\s*$/;
     print;
     print "$comment_sub$comment\n" if defined $comment;
 }
 
 # Mark that this object doesn't need an executable stack.
-printf ("\t.section\t.note.GNU-stack,\"\",\%\%progbits\n");
+printf ("\t.section\t.note.GNU-stack,\"\",\%\%progbits\n") if $elf;
--- a/media/libvpx/libvpx/build/make/ads2gas_apple.pl
+++ b/media/libvpx/libvpx/build/make/ads2gas_apple.pl
@@ -15,19 +15,17 @@
 #
 # Convert ARM Developer Suite 1.0.1 syntax assembly source to GNU as format
 #
 # Usage: cat inputfile | perl ads2gas_apple.pl > outputfile
 #
 
 print "@ This file was created from a .asm file\n";
 print "@  using the ads2gas_apple.pl script.\n\n";
-print "\t.set WIDE_REFERENCE, 0\n";
-print "\t.set ARCHITECTURE, 5\n";
-print "\t.set DO1STROUNDING, 0\n";
+print "\t.syntax unified\n";
 
 my %register_aliases;
 my %macro_aliases;
 
 my @mapping_list = ("\$0", "\$1", "\$2", "\$3", "\$4", "\$5", "\$6", "\$7", "\$8", "\$9");
 
 my @incoming_array;
 
--- a/media/libvpx/libvpx/build/make/configure.sh
+++ b/media/libvpx/libvpx/build/make/configure.sh
@@ -314,16 +314,22 @@ check_cpp() {
 }
 
 check_ld() {
   log check_ld "$@"
   check_cc $@ \
     && check_cmd ${LD} ${LDFLAGS} "$@" -o ${TMP_X} ${TMP_O} ${extralibs}
 }
 
+check_lib() {
+  log check_lib "$@"
+  check_cc $@ \
+    && check_cmd ${LD} ${LDFLAGS} -o ${TMP_X} ${TMP_O} "$@" ${extralibs}
+}
+
 check_header(){
   log check_header "$@"
   header=$1
   shift
   var=`echo $header | sed 's/[^A-Za-z0-9_]/_/g'`
   disable_feature $var
   check_cpp "$@" <<EOF && enable_feature $var
 #include "$header"
@@ -415,16 +421,36 @@ check_gcc_machine_options() {
 
   if enabled gcc && ! disabled "$feature" && ! check_cflags $flags; then
     RTCD_OPTIONS="${RTCD_OPTIONS}--disable-$feature "
   else
     soft_enable "$feature"
   fi
 }
 
+check_gcc_avx512_compiles() {
+  if disabled gcc; then
+    return
+  fi
+
+  check_cc -mavx512f <<EOF
+#include <immintrin.h>
+void f(void) {
+  __m512i x = _mm512_set1_epi16(0);
+  (void)x;
+}
+EOF
+  compile_result=$?
+  if [ ${compile_result} -ne 0 ]; then
+    log_echo "    disabling avx512: not supported by compiler"
+    disable_feature avx512
+    RTCD_OPTIONS="${RTCD_OPTIONS}--disable-avx512 "
+  fi
+}
+
 write_common_config_banner() {
   print_webm_license config.mk "##" ""
   echo '# This file automatically generated by configure. Do not edit!' >> config.mk
   echo "TOOLCHAIN := ${toolchain}" >> config.mk
 
   case ${toolchain} in
     *-linux-rvct)
       echo "ALT_LIBC := ${alt_libc}" >> config.mk
@@ -476,55 +502,74 @@ CXXFLAGS  = ${CXXFLAGS}
 ARFLAGS = -crs\$(if \$(quiet),,v)
 LDFLAGS = ${LDFLAGS}
 ASFLAGS = ${ASFLAGS}
 extralibs = ${extralibs}
 AS_SFX    = ${AS_SFX:-.asm}
 EXE_SFX   = ${EXE_SFX}
 VCPROJ_SFX = ${VCPROJ_SFX}
 RTCD_OPTIONS = ${RTCD_OPTIONS}
+LIBYUV_CXXFLAGS = ${LIBYUV_CXXFLAGS}
 EOF
 
   if enabled rvct; then cat >> $1 << EOF
 fmt_deps = sed -e 's;^__image.axf;\${@:.d=.o} \$@;' #hide
 EOF
   else cat >> $1 << EOF
 fmt_deps = sed -e 's;^\([a-zA-Z0-9_]*\)\.o;\${@:.d=.o} \$@;'
 EOF
   fi
 
-  print_config_mk ARCH   "${1}" ${ARCH_LIST}
-  print_config_mk HAVE   "${1}" ${HAVE_LIST}
-  print_config_mk CONFIG "${1}" ${CONFIG_LIST}
-  print_config_mk HAVE   "${1}" gnu_strip
+  print_config_mk VPX_ARCH "${1}" ${ARCH_LIST}
+  print_config_mk HAVE     "${1}" ${HAVE_LIST}
+  print_config_mk CONFIG   "${1}" ${CONFIG_LIST}
+  print_config_mk HAVE     "${1}" gnu_strip
 
   enabled msvs && echo "CONFIG_VS_VERSION=${vs_version}" >> "${1}"
 
   CC="${saved_CC}"
   CXX="${saved_CXX}"
 }
 
 write_common_target_config_h() {
   print_webm_license ${TMP_H} "/*" " */"
   cat >> ${TMP_H} << EOF
 /* This file automatically generated by configure. Do not edit! */
 #ifndef VPX_CONFIG_H
 #define VPX_CONFIG_H
 #define RESTRICT    ${RESTRICT}
 #define INLINE      ${INLINE}
 EOF
-  print_config_h ARCH   "${TMP_H}" ${ARCH_LIST}
-  print_config_h HAVE   "${TMP_H}" ${HAVE_LIST}
-  print_config_h CONFIG "${TMP_H}" ${CONFIG_LIST}
-  print_config_vars_h   "${TMP_H}" ${VAR_LIST}
+  print_config_h VPX_ARCH "${TMP_H}" ${ARCH_LIST}
+  print_config_h HAVE     "${TMP_H}" ${HAVE_LIST}
+  print_config_h CONFIG   "${TMP_H}" ${CONFIG_LIST}
+  print_config_vars_h     "${TMP_H}" ${VAR_LIST}
   echo "#endif /* VPX_CONFIG_H */" >> ${TMP_H}
   mkdir -p `dirname "$1"`
   cmp "$1" ${TMP_H} >/dev/null 2>&1 || mv ${TMP_H} "$1"
 }
 
+write_win_arm64_neon_h_workaround() {
+  print_webm_license ${TMP_H} "/*" " */"
+  cat >> ${TMP_H} << EOF
+/* This file automatically generated by configure. Do not edit! */
+#ifndef VPX_WIN_ARM_NEON_H_WORKAROUND
+#define VPX_WIN_ARM_NEON_H_WORKAROUND
+/* The Windows SDK has arm_neon.h, but unlike on other platforms it is
+ * ARM32-only. ARM64 NEON support is provided by arm64_neon.h, a proper
+ * superset of arm_neon.h. Work around this by providing a more local
+ * arm_neon.h that simply #includes arm64_neon.h.
+ */
+#include <arm64_neon.h>
+#endif /* VPX_WIN_ARM_NEON_H_WORKAROUND */
+EOF
+  mkdir -p `dirname "$1"`
+  cmp "$1" ${TMP_H} >/dev/null 2>&1 || mv ${TMP_H} "$1"
+}
+
 process_common_cmdline() {
   for opt in "$@"; do
     optval="${opt#*=}"
     case "$opt" in
       --child)
         enable_feature child
         ;;
       --log*)
@@ -597,21 +642,17 @@ process_common_cmdline() {
         enable_feature size_limit
         ;;
       --prefix=*)
         prefix="${optval}"
         ;;
       --libdir=*)
         libdir="${optval}"
         ;;
-      --sdk-path=*)
-        [ -d "${optval}" ] || die "Not a directory: ${optval}"
-        sdk_path="${optval}"
-        ;;
-      --libc|--as|--prefix|--libdir|--sdk-path)
+      --libc|--as|--prefix|--libdir)
         die "Option ${opt} requires argument"
         ;;
       --help|-h)
         show_help
         ;;
       *)
         die_unknown $opt
         ;;
@@ -708,59 +749,32 @@ process_common_toolchain() {
         tgt_isa=x86_64
         ;;
       *i[3456]86*)
         tgt_isa=x86
         ;;
       *sparc*)
         tgt_isa=sparc
         ;;
-      power*64*-*)
-        tgt_isa=ppc64
-        ;;
-      power*)
-        tgt_isa=ppc
+      power*64le*-*)
+        tgt_isa=ppc64le
         ;;
       *mips64el*)
         tgt_isa=mips64
         ;;
       *mips32el*)
         tgt_isa=mips32
         ;;
     esac
 
     # detect tgt_os
     case "$gcctarget" in
-      *darwin10*)
-        tgt_isa=x86_64
-        tgt_os=darwin10
-        ;;
-      *darwin11*)
-        tgt_isa=x86_64
-        tgt_os=darwin11
-        ;;
-      *darwin12*)
-        tgt_isa=x86_64
-        tgt_os=darwin12
-        ;;
-      *darwin13*)
+      *darwin1[0-8]*)
         tgt_isa=x86_64
-        tgt_os=darwin13
-        ;;
-      *darwin14*)
-        tgt_isa=x86_64
-        tgt_os=darwin14
-        ;;
-      *darwin15*)
-        tgt_isa=x86_64
-        tgt_os=darwin15
-        ;;
-      *darwin16*)
-        tgt_isa=x86_64
-        tgt_os=darwin16
+        tgt_os=`echo $gcctarget | sed 's/.*\(darwin1[0-8]\).*/\1/'`
         ;;
       x86_64*mingw32*)
         tgt_os=win64
         ;;
       x86_64*cygwin*)
         tgt_os=win64
         ;;
       *mingw32*|*cygwin*)
@@ -820,17 +834,17 @@ process_common_toolchain() {
 
   # Minimum iOS version for all target platforms (darwin and iphonesimulator).
   # Shared library framework builds are only possible on iOS 8 and later.
   if enabled shared; then
     IOS_VERSION_OPTIONS="--enable-shared"
     IOS_VERSION_MIN="8.0"
   else
     IOS_VERSION_OPTIONS=""
-    IOS_VERSION_MIN="6.0"
+    IOS_VERSION_MIN="7.0"
   fi
 
   # Handle darwin variants. Newer SDKs allow targeting older
   # platforms, so use the newest one available.
   case ${toolchain} in
     arm*-darwin*)
       add_cflags "-miphoneos-version-min=${IOS_VERSION_MIN}"
       iphoneos_sdk_dir="$(show_darwin_sdk_path iphoneos)"
@@ -880,16 +894,24 @@ process_common_toolchain() {
     *-darwin15-*)
       add_cflags  "-mmacosx-version-min=10.11"
       add_ldflags "-mmacosx-version-min=10.11"
       ;;
     *-darwin16-*)
       add_cflags  "-mmacosx-version-min=10.12"
       add_ldflags "-mmacosx-version-min=10.12"
       ;;
+    *-darwin17-*)
+      add_cflags  "-mmacosx-version-min=10.13"
+      add_ldflags "-mmacosx-version-min=10.13"
+      ;;
+    *-darwin18-*)
+      add_cflags  "-mmacosx-version-min=10.14"
+      add_ldflags "-mmacosx-version-min=10.14"
+      ;;
     *-iphonesimulator-*)
       add_cflags  "-miphoneos-version-min=${IOS_VERSION_MIN}"
       add_ldflags "-miphoneos-version-min=${IOS_VERSION_MIN}"
       iossim_sdk_dir="$(show_darwin_sdk_path iphonesimulator)"
       if [ -d "${iossim_sdk_dir}" ]; then
         add_cflags  "-isysroot ${iossim_sdk_dir}"
         add_ldflags "-isysroot ${iossim_sdk_dir}"
       fi
@@ -928,17 +950,16 @@ process_common_toolchain() {
       asm_conversion_cmd="cat"
 
       case ${tgt_cc} in
         gcc)
           link_with_cc=gcc
           setup_gnu_toolchain
           arch_int=${tgt_isa##armv}
           arch_int=${arch_int%%te}
-          check_add_asflags --defsym ARCHITECTURE=${arch_int}
           tune_cflags="-mtune="
           if [ ${tgt_isa} = "armv7" ] || [ ${tgt_isa} = "armv7s" ]; then
             if [ -z "${float_abi}" ]; then
               check_cpp <<EOF && float_abi=hard || float_abi=softfp
 #ifndef __ARM_PCS_VFP
 #error "not hardfp"
 #endif
 EOF
@@ -955,35 +976,68 @@ EOF
             check_add_asflags -march=armv8-a
           else
             check_add_cflags -march=${tgt_isa}
             check_add_asflags -march=${tgt_isa}
           fi
 
           enabled debug && add_asflags -g
           asm_conversion_cmd="${source_path}/build/make/ads2gas.pl"
+
+          case ${tgt_os} in
+            win*)
+              asm_conversion_cmd="$asm_conversion_cmd -noelf"
+              AS="$CC -c"
+              EXE_SFX=.exe
+              enable_feature thumb
+              ;;
+          esac
+
           if enabled thumb; then
             asm_conversion_cmd="$asm_conversion_cmd -thumb"
             check_add_cflags -mthumb
             check_add_asflags -mthumb -mimplicit-it=always
           fi
           ;;
         vs*)
-          asm_conversion_cmd="${source_path}/build/make/ads2armasm_ms.pl"
-          AS_SFX=.S
-          msvs_arch_dir=arm-msvs
-          disable_feature multithread
-          disable_feature unit_tests
-          vs_version=${tgt_cc##vs}
-          if [ $vs_version -ge 12 ]; then
-            # MSVC 2013 doesn't allow doing plain .exe projects for ARM,
-            # only "AppContainerApplication" which requires an AppxManifest.
-            # Therefore disable the examples, just build the library.
-            disable_feature examples
-            disable_feature tools
+          # A number of ARM-based Windows platforms are constrained by their
+          # respective SDKs' limitations. Fortunately, these are all 32-bit ABIs
+          # and so can be selected as 'win32'.
+          if [ ${tgt_os} = "win32" ]; then
+            asm_conversion_cmd="${source_path}/build/make/ads2armasm_ms.pl"
+            AS_SFX=.S
+            msvs_arch_dir=arm-msvs
+            disable_feature multithread
+            disable_feature unit_tests
+            if [ ${tgt_cc##vs} -ge 12 ]; then
+              # MSVC 2013 doesn't allow doing plain .exe projects for ARM32,
+              # only "AppContainerApplication" which requires an AppxManifest.
+              # Therefore disable the examples, just build the library.
+              disable_feature examples
+              disable_feature tools
+            fi
+          else
+            # Windows 10 on ARM, on the other hand, has full Windows SDK support
+            # for building Win32 ARM64 applications in addition to ARM64
+            # Windows Store apps. It is the only 64-bit ARM ABI that
+            # Windows supports, so it is the default definition of 'win64'.
+            # ARM64 build support officially shipped in Visual Studio 15.9.0.
+
+            # Because the ARM64 Windows SDK's arm_neon.h is ARM32-specific
+            # while LLVM's is not, probe its validity.
+            if enabled neon; then
+              if [ -n "${CC}" ]; then
+                check_header arm_neon.h || check_header arm64_neon.h && \
+                    enable_feature win_arm64_neon_h_workaround
+              else
+                # If a probe is not possible, assume this is the pure Windows
+                # SDK and so the workaround is necessary.
+                enable_feature win_arm64_neon_h_workaround
+              fi
+            fi
           fi
           ;;
         rvct)
           CC=armcc
           AR=armar
           AS=armasm
           LD="${source_path}/build/make/armlink_adapter.sh"
           STRIP=arm-none-linux-gnueabi-strip
@@ -1001,134 +1055,94 @@ EOF
               check_add_asflags --cpu=Cortex-A8
             else
               check_add_cflags --cpu=${tgt_isa##armv}
               check_add_asflags --cpu=${tgt_isa##armv}
             fi
           fi
           arch_int=${tgt_isa##armv}
           arch_int=${arch_int%%te}
-          check_add_asflags --pd "\"ARCHITECTURE SETA ${arch_int}\""
           enabled debug && add_asflags -g
           add_cflags --gnu
           add_cflags --enum_is_int
           add_cflags --wchar32
           ;;
       esac
 
       case ${tgt_os} in
         none*)
           disable_feature multithread
           disable_feature os_support
           ;;
 
         android*)
-          if [ -n "${sdk_path}" ]; then
-            SDK_PATH=${sdk_path}
-            COMPILER_LOCATION=`find "${SDK_PATH}" \
-              -name "arm-linux-androideabi-gcc*" -print -quit`
-            TOOLCHAIN_PATH=${COMPILER_LOCATION%/*}/arm-linux-androideabi-
-            CC=${TOOLCHAIN_PATH}gcc
-            CXX=${TOOLCHAIN_PATH}g++
-            AR=${TOOLCHAIN_PATH}ar
-            LD=${TOOLCHAIN_PATH}gcc
-            AS=${TOOLCHAIN_PATH}as
-            STRIP=${TOOLCHAIN_PATH}strip
-            NM=${TOOLCHAIN_PATH}nm
-
-            if [ -z "${alt_libc}" ]; then
-              alt_libc=`find "${SDK_PATH}" -name arch-arm -print | \
-                awk '{n = split($0,a,"/"); \
-                split(a[n-1],b,"-"); \
-                print $0 " " b[2]}' | \
-                sort -g -k 2 | \
-                awk '{ print $1 }' | tail -1`
-            fi
-
-            if [ -d "${alt_libc}" ]; then
-              add_cflags "--sysroot=${alt_libc}"
-              add_ldflags "--sysroot=${alt_libc}"
-            fi
-
-            # linker flag that routes around a CPU bug in some
-            # Cortex-A8 implementations (NDK Dev Guide)
-            add_ldflags "-Wl,--fix-cortex-a8"
-
-            enable_feature pic
-            soft_enable realtime_only
-            if [ ${tgt_isa} = "armv7" ]; then
-              soft_enable runtime_cpu_detect
-            fi
-            if enabled runtime_cpu_detect; then
-              add_cflags "-I${SDK_PATH}/sources/android/cpufeatures"
-            fi
-          else
-            echo "Assuming standalone build with NDK toolchain."
-            echo "See build/make/Android.mk for details."
-            check_add_ldflags -static
-            soft_enable unit_tests
-          fi
+          echo "Assuming standalone build with NDK toolchain."
+          echo "See build/make/Android.mk for details."
+          check_add_ldflags -static
+          soft_enable unit_tests
           ;;
 
         darwin*)
-          XCRUN_FIND="xcrun --sdk iphoneos --find"
-          CXX="$(${XCRUN_FIND} clang++)"
-          CC="$(${XCRUN_FIND} clang)"
-          AR="$(${XCRUN_FIND} ar)"
-          AS="$(${XCRUN_FIND} as)"
-          STRIP="$(${XCRUN_FIND} strip)"
-          NM="$(${XCRUN_FIND} nm)"
-          RANLIB="$(${XCRUN_FIND} ranlib)"
-          AS_SFX=.S
-          LD="${CXX:-$(${XCRUN_FIND} ld)}"
+          if ! enabled external_build; then
+            XCRUN_FIND="xcrun --sdk iphoneos --find"
+            CXX="$(${XCRUN_FIND} clang++)"
+            CC="$(${XCRUN_FIND} clang)"
+            AR="$(${XCRUN_FIND} ar)"
+            AS="$(${XCRUN_FIND} as)"
+            STRIP="$(${XCRUN_FIND} strip)"
+            NM="$(${XCRUN_FIND} nm)"
+            RANLIB="$(${XCRUN_FIND} ranlib)"
+            AS_SFX=.S
+            LD="${CXX:-$(${XCRUN_FIND} ld)}"
+
+            # ASFLAGS is written here instead of using check_add_asflags
+            # because we need to overwrite all of ASFLAGS and purge the
+            # options that were put in above
+            ASFLAGS="-arch ${tgt_isa} -g"
+
+            add_cflags -arch ${tgt_isa}
+            add_ldflags -arch ${tgt_isa}
+
+            alt_libc="$(show_darwin_sdk_path iphoneos)"
+            if [ -d "${alt_libc}" ]; then
+              add_cflags -isysroot ${alt_libc}
+            fi
 
-          # ASFLAGS is written here instead of using check_add_asflags
-          # because we need to overwrite all of ASFLAGS and purge the
-          # options that were put in above
-          ASFLAGS="-arch ${tgt_isa} -g"
+            if [ "${LD}" = "${CXX}" ]; then
+              add_ldflags -miphoneos-version-min="${IOS_VERSION_MIN}"
+            else
+              add_ldflags -ios_version_min "${IOS_VERSION_MIN}"
+            fi
+
+            for d in lib usr/lib usr/lib/system; do
+              try_dir="${alt_libc}/${d}"
+              [ -d "${try_dir}" ] && add_ldflags -L"${try_dir}"
+            done
 
-          add_cflags -arch ${tgt_isa}
-          add_ldflags -arch ${tgt_isa}
+            case ${tgt_isa} in
+              armv7|armv7s|armv8|arm64)
+                if enabled neon && ! check_xcode_minimum_version; then
+                  soft_disable neon
+                  log_echo "  neon disabled: upgrade Xcode (need v6.3+)."
+                  if enabled neon_asm; then
+                    soft_disable neon_asm
+                    log_echo "  neon_asm disabled: upgrade Xcode (need v6.3+)."
+                  fi
+                fi
+                ;;
+            esac
 
-          alt_libc="$(show_darwin_sdk_path iphoneos)"
-          if [ -d "${alt_libc}" ]; then
-            add_cflags -isysroot ${alt_libc}
+            if [ "$(show_darwin_sdk_major_version iphoneos)" -gt 8 ]; then
+              check_add_cflags -fembed-bitcode
+              check_add_asflags -fembed-bitcode
+              check_add_ldflags -fembed-bitcode
+            fi
           fi
 
-          if [ "${LD}" = "${CXX}" ]; then
-            add_ldflags -miphoneos-version-min="${IOS_VERSION_MIN}"
-          else
-            add_ldflags -ios_version_min "${IOS_VERSION_MIN}"
-          fi
-
-          for d in lib usr/lib usr/lib/system; do
-            try_dir="${alt_libc}/${d}"
-            [ -d "${try_dir}" ] && add_ldflags -L"${try_dir}"
-          done
-
-          case ${tgt_isa} in
-            armv7|armv7s|armv8|arm64)
-              if enabled neon && ! check_xcode_minimum_version; then
-                soft_disable neon
-                log_echo "  neon disabled: upgrade Xcode (need v6.3+)."
-                if enabled neon_asm; then
-                  soft_disable neon_asm
-                  log_echo "  neon_asm disabled: upgrade Xcode (need v6.3+)."
-                fi
-              fi
-              ;;
-          esac
-
           asm_conversion_cmd="${source_path}/build/make/ads2gas_apple.pl"
-
-          if [ "$(show_darwin_sdk_major_version iphoneos)" -gt 8 ]; then
-            check_add_cflags -fembed-bitcode
-            check_add_asflags -fembed-bitcode
-            check_add_ldflags -fembed-bitcode
-          fi
           ;;
 
         linux*)
           enable_feature linux
           if enabled rvct; then
             # Check if we have CodeSourcery GCC in PATH. Needed for
             # libraries
             which arm-none-linux-gnueabi-gcc 2>&- || \
@@ -1175,38 +1189,55 @@ EOF
             check_add_cflags -mips64r6 -mabi=64 -msched-weight
             check_add_cflags  -mload-store-pairs -mhard-float -mfp64
             check_add_asflags -mips64r6 -mabi=64 -mhard-float -mfp64
             check_add_ldflags -mips64r6 -mabi=64 -mfp64
             ;;
         esac
 
         if enabled msa; then
+          # TODO(libyuv:793)
+          # The new mips functions in libyuv do not build
+          # with the toolchains we currently use for testing.
+          soft_disable libyuv
+
           add_cflags -mmsa
           add_asflags -mmsa
           add_ldflags -mmsa
         fi
       fi
 
       if enabled mmi; then
         tgt_isa=loongson3a
         check_add_ldflags -march=loongson3a
       fi
 
       check_add_cflags -march=${tgt_isa}
       check_add_asflags -march=${tgt_isa}
       check_add_asflags -KPIC
       ;;
-    ppc*)
+    ppc64le*)
       link_with_cc=gcc
       setup_gnu_toolchain
-      check_gcc_machine_option "vsx"
+      # Do not enable vsx by default.
+      # https://bugs.chromium.org/p/webm/issues/detail?id=1522
+      enabled vsx || RTCD_OPTIONS="${RTCD_OPTIONS}--disable-vsx "
+      if [ -n "${tune_cpu}" ]; then
+        case ${tune_cpu} in
+          power?)
+            tune_cflags="-mcpu="
+            ;;
+        esac
+      fi
       ;;
     x86*)
       case  ${tgt_os} in
+        android)
+          soft_enable realtime_only
+          ;;
         win*)
           enabled gcc && add_cflags -fno-common
           ;;
         solaris*)
           CC=${CC:-${CROSS}gcc}
           CXX=${CXX:-${CROSS}g++}
           LD=${LD:-${CROSS}gcc}
           CROSS=${CROSS-g}
@@ -1248,38 +1279,23 @@ EOF
           enabled optimizations && disabled gprof && check_add_cflags -fomit-frame-pointer
           ;;
         vs*)
           # When building with Microsoft Visual Studio the assembler is
           # invoked directly. Checking at configure time is unnecessary.
           # Skip the check by setting AS arbitrarily
           AS=msvs
           msvs_arch_dir=x86-msvs
-          vc_version=${tgt_cc##vs}
-          case $vc_version in
-            7|8|9|10|11|12|13|14)
+          case ${tgt_cc##vs} in
+            14)
               echo "${tgt_cc} does not support avx512, disabling....."
               RTCD_OPTIONS="${RTCD_OPTIONS}--disable-avx512 "
               soft_disable avx512
               ;;
           esac
-          case $vc_version in
-            7|8|9|10)
-              echo "${tgt_cc} does not support avx/avx2, disabling....."
-              RTCD_OPTIONS="${RTCD_OPTIONS}--disable-avx --disable-avx2 "
-              soft_disable avx
-              soft_disable avx2
-              ;;
-          esac
-          case $vc_version in
-            7|8|9)
-              echo "${tgt_cc} omits stdint.h, disabling webm-io..."
-              soft_disable webm_io
-              ;;
-          esac
           ;;
       esac
 
       bits=32
       enabled x86_64 && bits=64
       check_cpp <<EOF && bits=x32
 #if !defined(__ILP32__) || !defined(__x86_64__)
 #error "not x32"
@@ -1302,26 +1318,22 @@ EOF
             RTCD_OPTIONS="${RTCD_OPTIONS}--disable-${ext} "
             disable_feature $ext
           fi
         elif disabled $ext; then
           disable_exts="yes"
         else
           if [ "$ext" = "avx512" ]; then
             check_gcc_machine_options $ext avx512f avx512cd avx512bw avx512dq avx512vl
+            check_gcc_avx512_compiles
           else
             # use the shortened version for the flag: sse4_1 -> sse4
             check_gcc_machine_option ${ext%_*} $ext
           fi
         fi
-
-        # https://bugs.chromium.org/p/webm/issues/detail?id=1464
-        # The assembly optimizations for vpx_sub_pixel_variance do not link with
-        # gcc 6.
-        enabled sse2 && soft_enable pic
       done
 
       if enabled external_build; then
         log_echo "  skipping assembler detection"
       else
         case "${AS}" in
           auto|"")
             which nasm >/dev/null 2>&1 && AS=nasm
@@ -1371,17 +1383,18 @@ EOF
           enabled icc && ! enabled pic && add_cflags -fno-pic
           ;;
         iphonesimulator)
           add_asflags -f macho${bits}
           enabled x86 && sim_arch="-arch i386" || sim_arch="-arch x86_64"
           add_cflags  ${sim_arch}
           add_ldflags ${sim_arch}
 
-          if [ "$(show_darwin_sdk_major_version iphonesimulator)" -gt 8 ]; then
+          if [ "$(disabled external_build)" ] &&
+              [ "$(show_darwin_sdk_major_version iphonesimulator)" -gt 8 ]; then
             # yasm v1.3.0 doesn't know what -fembed-bitcode means, so turning it
             # on is pointless (unless building a C-only lib). Warn the user, but
             # do nothing here.
             log "Warning: Bitcode embed disabled for simulator targets."
           fi
           ;;
         os2)
           add_asflags -f aout
@@ -1461,17 +1474,21 @@ EOF
   if enabled multithread; then
     case ${toolchain} in
       *-win*-vs*)
         ;;
       *-android-gcc)
         # bionic includes basic pthread functionality, obviating -lpthread.
         ;;
       *)
-        check_header pthread.h && add_extralibs -lpthread
+        check_header pthread.h && check_lib -lpthread <<EOF && add_extralibs -lpthread || disable_feature pthread_h
+#include <pthread.h>
+#include <stddef.h>
+int main(void) { return pthread_create(NULL, NULL, NULL, NULL); }
+EOF
         ;;
     esac
   fi
 
   # only for MIPS platforms
   case ${toolchain} in
     mips*)
       if enabled big_endian; then
--- a/media/libvpx/libvpx/build/make/gen_msvs_sln.sh
+++ b/media/libvpx/libvpx/build/make/gen_msvs_sln.sh
@@ -20,17 +20,17 @@ show_help() {
 Usage: ${self_basename} [options] file1 [file2 ...]
 
 This script generates a Visual Studio solution file from a list of project
 files.
 
 Options:
     --help                      Print this message
     --out=outfile               Redirect output to a file
-    --ver=version               Version (7,8,9,10,11,12,14,15) of visual studio to generate for
+    --ver=version               Version (14-16) of visual studio to generate for
     --target=isa-os-cc          Target specifier
 EOF
     exit 1
 }
 
 die() {
     echo "${self_basename}: $@" >&2
     [ -f "${outfile}" ] && rm -f ${outfile}{,.mk}
@@ -208,48 +208,39 @@ for opt in "$@"; do
     optval="${opt#*=}"
     case "$opt" in
     --help|-h) show_help
     ;;
     --out=*) outfile="${optval}"; mkoutfile="${optval}".mk
     ;;
     --dep=*) eval "${optval%%:*}_deps=\"\${${optval%%:*}_deps} ${optval##*:}\""
     ;;
-    --ver=*) vs_ver="$optval"
-             case $optval in
-             10|11|12|14|15)
-             ;;
-             *) die Unrecognized Visual Studio Version in $opt
-             ;;
-             esac
+    --ver=*)
+      vs_ver="$optval"
+      case $optval in
+        14) vs_year=2015 ;;
+        15) vs_year=2017 ;;
+        16) vs_year=2019 ;;
+        *) die Unrecognized Visual Studio Version in $opt ;;
+      esac
     ;;
     --target=*) target="${optval}"
     ;;
     -*) die_unknown $opt
     ;;
     *) file_list[${#file_list[@]}]="$opt"
     esac
 done
 outfile=${outfile:-/dev/stdout}
 mkoutfile=${mkoutfile:-/dev/stdout}
-case "${vs_ver:-10}" in
-    10) sln_vers="11.00"
-       sln_vers_str="Visual Studio 2010"
-    ;;
-    11) sln_vers="12.00"
-       sln_vers_str="Visual Studio 2012"
-    ;;
-    12) sln_vers="12.00"
-       sln_vers_str="Visual Studio 2013"
-    ;;
-    14) sln_vers="12.00"
-       sln_vers_str="Visual Studio 2015"
-    ;;
-    15) sln_vers="12.00"
-       sln_vers_str="Visual Studio 2017"
+case "${vs_ver}" in
+    1[4-6])
+      # VS has used Format Version 12.00 continuously since vs11.
+      sln_vers="12.00"
+      sln_vers_str="Visual Studio ${vs_year}"
     ;;
 esac
 sfx=vcxproj
 
 for f in "${file_list[@]}"; do
     parse_project $f
 done
 cat  >${outfile} <<EOF
--- a/media/libvpx/libvpx/build/make/gen_msvs_vcxproj.sh
+++ b/media/libvpx/libvpx/build/make/gen_msvs_vcxproj.sh
@@ -29,17 +29,17 @@ Options:
     --dll                       Generate a project for creating a dll
     --static-crt                Use the static C runtime (/MT)
     --enable-werror             Treat warnings as errors (/WX)
     --target=isa-os-cc          Target specifier (required)
     --out=filename              Write output to a file [stdout]
     --name=project_name         Name of the project (required)
     --proj-guid=GUID            GUID to use for the project
     --module-def=filename       File containing export definitions (for DLLs)
-    --ver=version               Version (10,11,12,14,15) of visual studio to generate for
+    --ver=version               Version (14-16) of visual studio to generate for
     --src-path-bare=dir         Path to root of source tree
     -Ipath/to/include           Additional include directories
     -DFLAG[=value]              Preprocessor macros to define
     -Lpath/to/lib               Additional library search paths
     -llibname                   Library to link against
 EOF
     exit 1
 }
@@ -77,17 +77,17 @@ generate_filter() {
         for pat in ${pats//;/$IFS}; do
             if [ "${f##*.}" == "$pat" ]; then
                 unset file_list[i]
 
                 objf=$(echo ${f%.*}.obj \
                        | sed -e "s,$src_path_bare,," \
                              -e 's/^[\./]\+//g' -e 's,[:/ ],_,g')
 
-                if ([ "$pat" == "asm" ] || [ "$pat" == "s" ] || [ "$pat" == "S" ]) && $asm_use_custom_step; then
+                if ([ "$pat" == "asm" ] || [ "$pat" == "s" ] || [ "$pat" == "S" ]) && $uses_asm; then
                     # Avoid object file name collisions, i.e. vpx_config.c and
                     # vpx_config.asm produce the same object file without
                     # this additional suffix.
                     objf=${objf%.obj}_asm.obj
                     open_tag CustomBuild \
                         Include="$f"
                     for plat in "${platforms[@]}"; do
                         for cfg in Debug Release; do
@@ -163,17 +163,17 @@ for opt in "$@"; do
         ;;
         --static-crt) use_static_runtime=true
         ;;
         --enable-werror) werror=true
         ;;
         --ver=*)
             vs_ver="$optval"
             case "$optval" in
-                10|11|12|14|15)
+                1[4-6])
                 ;;
                 *) die Unrecognized Visual Studio Version in $opt
                 ;;
             esac
         ;;
         -I*)
             opt=${opt##-I}
             opt=$(fix_path "$opt")
@@ -210,23 +210,17 @@ for opt in "$@"; do
     esac
 done
 
 # Make one call to fix_path for file_list to improve performance.
 fix_file_list file_list
 
 outfile=${outfile:-/dev/stdout}
 guid=${guid:-`generate_uuid`}
-asm_use_custom_step=false
 uses_asm=${uses_asm:-false}
-case "${vs_ver:-11}" in
-    10|11|12|14|15)
-       asm_use_custom_step=$uses_asm
-    ;;
-esac
 
 [ -n "$name" ] || die "Project name (--name) must be specified!"
 [ -n "$target" ] || die "Target (--target) must be specified!"
 
 if ${use_static_runtime:-false}; then
     release_runtime=MultiThreaded
     debug_runtime=MultiThreadedDebug
     lib_sfx=mt
@@ -256,16 +250,21 @@ case "$target" in
         asm_Debug_cmdline="yasm -Xvc -g cv8 -f win64 ${yasmincs} &quot;%(FullPath)&quot;"
         asm_Release_cmdline="yasm -Xvc -f win64 ${yasmincs} &quot;%(FullPath)&quot;"
     ;;
     x86*)
         platforms[0]="Win32"
         asm_Debug_cmdline="yasm -Xvc -g cv8 -f win32 ${yasmincs} &quot;%(FullPath)&quot;"
         asm_Release_cmdline="yasm -Xvc -f win32 ${yasmincs} &quot;%(FullPath)&quot;"
     ;;
+    arm64*)
+        platforms[0]="ARM64"
+        asm_Debug_cmdline="armasm64 -nologo -oldit &quot;%(FullPath)&quot;"
+        asm_Release_cmdline="armasm64 -nologo -oldit &quot;%(FullPath)&quot;"
+    ;;
     arm*)
         platforms[0]="ARM"
         asm_Debug_cmdline="armasm -nologo -oldit &quot;%(FullPath)&quot;"
         asm_Release_cmdline="armasm -nologo -oldit &quot;%(FullPath)&quot;"
     ;;
     *) die "Unsupported target $target!"
     ;;
 esac
@@ -302,16 +301,26 @@ generate_vcxproj() {
             # actual value doesn't matter from the libvpx point of view,
             # since a static library built for one works on the others.
             # The PlatformToolset field needs to be set in sync with this;
             # for Windows Store and Windows Phone Silverlight it should be
             # v120 while it should be v120_wp81 if the type is Windows Phone.
             tag_content ApplicationType "Windows Store"
             tag_content ApplicationTypeRevision 8.1
         fi
+        if [ "${platforms[0]}" = "ARM64" ]; then
+            # Require the first Visual Studio version to have ARM64 support.
+            tag_content MinimumVisualStudioVersion 15.9
+        fi
+        if [ $vs_ver -eq 15 ] && [ "${platforms[0]}" = "ARM64" ]; then
+            # Since VS 15 does not have a 'use latest SDK version' facility,
+            # specifically require the contemporaneous SDK with official ARM64
+            # support.
+            tag_content WindowsTargetPla