Skip to content

Commit

Permalink
Update libvpx from Chromium 96.0.4664.219
Browse files Browse the repository at this point in the history
  • Loading branch information
dahlstrom-g authored Nov 3, 2023
2 parents 1653946 + 4ab80f7 commit cb8bd95
Show file tree
Hide file tree
Showing 1,157 changed files with 6,710 additions and 2,179 deletions.
4 changes: 2 additions & 2 deletions starboard/shared/libvpx/vpx_video_decoder.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@
#include "starboard/shared/starboard/player/job_queue.h"
#include "starboard/shared/starboard/player/job_thread.h"
#include "starboard/thread.h"
#include "third_party/libvpx/vpx/vp8dx.h"
#include "third_party/libvpx/vpx/vpx_decoder.h"
#include "third_party/libvpx/source/libvpx/vpx/vp8dx.h"
#include "third_party/libvpx/source/libvpx/vpx/vpx_decoder.h"

namespace starboard {
namespace shared {
Expand Down
2 changes: 1 addition & 1 deletion third_party/libvpx/platforms/linux-x64/libvpx-linux-x64.sh
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
set -ex

readonly LIB_DIR="$(cd "$(dirname "$0")" && pwd)"
readonly SRC_DIR="$(cd "$(dirname "$0")/../.." && pwd)"
readonly SRC_DIR="$(cd "$(dirname "$0")/../../source/libvpx" && pwd)"

(cd "${SRC_DIR}" && ./configure \
--target=x86_64-linux-gcc \
Expand Down
Binary file modified third_party/libvpx/platforms/linux-x64/libvpx.a
Binary file not shown.
Binary file modified third_party/libvpx/platforms/linux-x64/libvpx.so.6
Binary file not shown.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
*.S
*.a
!/platforms/*/libvpx.a
*.asm.s
*.d
*.gcda
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ Deb Mukherjee <[email protected]>
Elliott Karpilovsky <[email protected]>
Erik Niemeyer <[email protected]> <[email protected]>
Fyodor Kyslov <[email protected]>
Gregor Jasny <[email protected]>
Gregor Jasny <[email protected]> <[email protected]>
Guillaume Martres <[email protected]> <[email protected]>
Hangyu Kuang <[email protected]>
Hui Su <[email protected]>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ Christian Duvivier <[email protected]>
Clement Courbet <[email protected]>
Daniele Castagna <[email protected]>
Daniel Kang <[email protected]>
Daniel Sommermann <[email protected]>
Dan Zhu <[email protected]>
Deb Mukherjee <[email protected]>
Deepa K G <[email protected]>
Expand Down Expand Up @@ -73,6 +74,7 @@ Ivan Maltz <[email protected]>
Jacek Caban <[email protected]>
Jacky Chen <[email protected]>
James Berry <[email protected]>
James Touton <[email protected]>
James Yu <[email protected]>
James Zern <[email protected]>
Jan Gerber <[email protected]>
Expand All @@ -82,11 +84,14 @@ Jean-Yves Avenard <[email protected]>
Jeff Faust <[email protected]>
Jeff Muizelaar <[email protected]>
Jeff Petkau <[email protected]>
Jeremy Leconte <[email protected]>
Jerome Jiang <[email protected]>
Jia Jia <[email protected]>
Jian Zhou <[email protected]>
Jim Bankoski <[email protected]>
jinbo <[email protected]>
Jingning Han <[email protected]>
Joel Fernandes <[email protected]>
Joey Parrish <[email protected]>
Johann Koenig <[email protected]>
John Koleszar <[email protected]>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
2021-03-09 v1.10.0 "Ruddy Duck"
This maintenance release adds support for darwin20 and new codec controls, as
well as numerous bug fixes.

- Upgrading:
New codec control is added to disable loopfilter for VP9.

New encoder control is added to disable feature to increase Q on overshoot
detection for CBR.

Configure support for darwin20 is added.

New codec control is added for VP9 rate control. The control ID of this
interface is VP9E_SET_EXTERNAL_RATE_CONTROL. To make VP9 use a customized
external rate control model, users will have to implement each callback
function in vpx_rc_funcs_t and register them using libvpx API
vpx_codec_control_() with the control ID.

- Enhancement:
Use -std=gnu++11 instead of -std=c++11 for c++ files.

- Bug fixes:
Override assembler with --as option of configure for MSVS.
Fix several compilation issues with gcc 4.8.5.
Fix to resetting rate control for temporal layers.
Fix to the rate control stats of SVC example encoder when number of spatial
layers is 1.
Fix to reusing motion vectors from the base spatial layer in SVC.
2 pass related flags removed from SVC example encoder.

2020-07-29 v1.9.0 "Quacking Duck"
This release adds support for NV12, a separate library for rate control, as
well as incremental improvements.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,9 @@ again.

All submissions, including submissions by project members, require review. We
use a [Gerrit](https://www.gerritcodereview.com) instance hosted at
https://chromium-review.googlesource.com for this purpose.

See https://www.webmproject.org/code/contribute/submitting-patches for an
example of a typical gerrit workflow.
https://chromium-review.googlesource.com for this purpose. See the
[WebM Project page](https://www.webmproject.org/code/contribute/submitting-patches/)
for additional details.

## Community Guidelines

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ third_party {
type: GIT
value: "https://chromium.googlesource.com/webm/libvpx"
}
version: "53747dfe65eaf670a7192f55117f3bf1e0280743"
# from https://chromium.googlesource.com/chromium/src/+/86.0.4240.199/DEPS#1152
version: "7aabd6968278130da885f6c35ee12b19a1e7be72"
# from https://chromium.googlesource.com/chromium/src/+/96.0.4664.219/DEPS#1305
last_upgrade_date {
year: 2020
month: 7
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
README - 20 July 2020
README - 08 March 2021

Welcome to the WebM VP8/VP9 Codec SDK!

Expand All @@ -10,14 +10,14 @@ COMPILING THE APPLICATIONS/LIBRARIES:
1. Prerequisites

* 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
* All Windows builds require that Cygwin[3] or MSYS2[4] be installed.
* Building the documentation requires Doxygen[5]. If you do not
have this package, the install-docs option will be disabled.
* Downloading the data for the unit tests requires curl[5] and sha1sum.
* Downloading the data for the unit tests requires curl[6] 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[6]. These requirements are optional if not running the unit
source[7]. These requirements are optional if not running the unit
tests.

[1]: http://www.tortall.net/projects/yasm
Expand All @@ -26,9 +26,10 @@ COMPILING THE APPLICATIONS/LIBRARIES:
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/
[4]: http://www.msys2.org/
[5]: http://www.doxygen.org
[6]: http://curl.haxx.se
[7]: http://www.microbrew.org/tools/md5sha1sum/

2. Out-of-tree builds
Out of tree builds are a supported method of building the application. For
Expand Down Expand Up @@ -62,6 +63,7 @@ COMPILING THE APPLICATIONS/LIBRARIES:

arm64-android-gcc
arm64-darwin-gcc
arm64-darwin20-gcc
arm64-linux-gcc
arm64-win64-gcc
arm64-win64-vs15
Expand Down Expand Up @@ -113,6 +115,7 @@ COMPILING THE APPLICATIONS/LIBRARIES:
x86_64-darwin17-gcc
x86_64-darwin18-gcc
x86_64-darwin19-gcc
x86_64-darwin20-gcc
x86_64-iphonesimulator-gcc
x86_64-linux-gcc
x86_64-linux-icc
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,10 @@
#include "vpx/vpx_integer.h"
#include "vpx_ports/msvc.h"

#if defined(__GNUC__) && __GNUC__
extern void die(const char *fmt, ...) __attribute__((noreturn));
#if defined(__GNUC__)
__attribute__((noreturn)) extern void die(const char *fmt, ...);
#elif defined(_MSC_VER)
__declspec(noreturn) extern void die(const char *fmt, ...);
#else
extern void die(const char *fmt, ...);
#endif
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,10 @@ $(BUILD_PFX)%_avx512.c.o: CFLAGS += -mavx512f -mavx512cd -mavx512bw -mavx512dq -
$(BUILD_PFX)%_vsx.c.d: CFLAGS += -maltivec -mvsx
$(BUILD_PFX)%_vsx.c.o: CFLAGS += -maltivec -mvsx

# MIPS
$(BUILD_PFX)%_msa.c.d: CFLAGS += -mmsa
$(BUILD_PFX)%_msa.c.o: CFLAGS += -mmsa

$(BUILD_PFX)%.c.d: %.c
$(if $(quiet),@echo " [DEP] $@")
$(qexec)mkdir -p $(dir $@)
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -262,6 +262,9 @@ if [ -z "$source_path" ] || [ "$source_path" = "." ]; then
source_path="`pwd`"
disable_feature source_path_used
fi
# Makefiles greedily process the '#' character as a comment, even if it is
# inside quotes. So, this character must be escaped in all paths in Makefiles.
source_path_mk=$(echo $source_path | sed -e 's;\#;\\\#;g')

if test ! -z "$TMPDIR" ; then
TMPDIRx="${TMPDIR}"
Expand Down Expand Up @@ -481,11 +484,11 @@ write_common_target_config_mk() {

cat >> $1 << EOF
# This file automatically generated by configure. Do not edit!
SRC_PATH="$source_path"
SRC_PATH_BARE=$source_path
SRC_PATH="$source_path_mk"
SRC_PATH_BARE=$source_path_mk
BUILD_PFX=${BUILD_PFX}
TOOLCHAIN=${toolchain}
ASM_CONVERSION=${asm_conversion_cmd:-${source_path}/build/make/ads2gas.pl}
ASM_CONVERSION=${asm_conversion_cmd:-${source_path_mk}/build/make/ads2gas.pl}
GEN_VCPROJ=${gen_vcproj_cmd}
MSVS_ARCH_DIR=${msvs_arch_dir}
Expand Down Expand Up @@ -771,6 +774,10 @@ process_common_toolchain() {
tgt_isa=x86_64
tgt_os=`echo $gcctarget | sed 's/.*\(darwin1[0-9]\).*/\1/'`
;;
*darwin20*)
tgt_isa=`uname -m`
tgt_os=`echo $gcctarget | sed 's/.*\(darwin2[0-9]\).*/\1/'`
;;
x86_64*mingw32*)
tgt_os=win64
;;
Expand Down Expand Up @@ -845,15 +852,15 @@ process_common_toolchain() {
# Handle darwin variants. Newer SDKs allow targeting older
# platforms, so use the newest one available.
case ${toolchain} in
arm*-darwin*)
arm*-darwin-*)
add_cflags "-miphoneos-version-min=${IOS_VERSION_MIN}"
iphoneos_sdk_dir="$(show_darwin_sdk_path iphoneos)"
if [ -d "${iphoneos_sdk_dir}" ]; then
add_cflags "-isysroot ${iphoneos_sdk_dir}"
add_ldflags "-isysroot ${iphoneos_sdk_dir}"
fi
;;
x86*-darwin*)
*-darwin*)
osx_sdk_dir="$(show_darwin_sdk_path macosx)"
if [ -d "${osx_sdk_dir}" ]; then
add_cflags "-isysroot ${osx_sdk_dir}"
Expand Down Expand Up @@ -911,6 +918,10 @@ process_common_toolchain() {
add_cflags "-mmacosx-version-min=10.15"
add_ldflags "-mmacosx-version-min=10.15"
;;
*-darwin20-*)
add_cflags "-mmacosx-version-min=10.16 -arch ${toolchain%%-*}"
add_ldflags "-mmacosx-version-min=10.16 -arch ${toolchain%%-*}"
;;
*-iphonesimulator-*)
add_cflags "-miphoneos-version-min=${IOS_VERSION_MIN}"
add_ldflags "-miphoneos-version-min=${IOS_VERSION_MIN}"
Expand Down Expand Up @@ -984,7 +995,7 @@ EOF
fi

enabled debug && add_asflags -g
asm_conversion_cmd="${source_path}/build/make/ads2gas.pl"
asm_conversion_cmd="${source_path_mk}/build/make/ads2gas.pl"

case ${tgt_os} in
win*)
Expand All @@ -1006,7 +1017,7 @@ EOF
# 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"
asm_conversion_cmd="${source_path_mk}/build/make/ads2armasm_ms.pl"
AS_SFX=.S
msvs_arch_dir=arm-msvs
disable_feature multithread
Expand Down Expand Up @@ -1084,7 +1095,7 @@ EOF
soft_enable unit_tests
;;

darwin*)
darwin)
if ! enabled external_build; then
XCRUN_FIND="xcrun --sdk iphoneos --find"
CXX="$(${XCRUN_FIND} clang++)"
Expand Down Expand Up @@ -1141,7 +1152,7 @@ EOF
fi
fi

asm_conversion_cmd="${source_path}/build/make/ads2gas_apple.pl"
asm_conversion_cmd="${source_path_mk}/build/make/ads2gas_apple.pl"
;;

linux*)
Expand Down Expand Up @@ -1195,25 +1206,27 @@ EOF
check_add_asflags -mips64r6 -mabi=64 -mhard-float -mfp64
check_add_ldflags -mips64r6 -mabi=64 -mfp64
;;
loongson3*)
check_cflags -march=loongson3a && soft_enable mmi \
|| disable_feature mmi
check_cflags -mmsa && soft_enable msa \
|| disable_feature msa
tgt_isa=loongson3a
;;
esac

if enabled mmi || enabled msa; then
soft_enable runtime_cpu_detect
fi

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
Expand Down Expand Up @@ -1283,10 +1296,6 @@ 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
case ${tgt_cc##vs} in
14)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -157,6 +157,8 @@ for opt in "$@"; do
;;
--lib) proj_kind="lib"
;;
--as=*) as="${optval}"
;;
--src-path-bare=*)
src_path_bare=$(fix_path "$optval")
src_path_bare=${src_path_bare%/}
Expand Down Expand Up @@ -247,13 +249,13 @@ libs=${libs// /;}
case "$target" in
x86_64*)
platforms[0]="x64"
asm_Debug_cmdline="yasm -Xvc -g cv8 -f win64 ${yasmincs} &quot;%(FullPath)&quot;"
asm_Release_cmdline="yasm -Xvc -f win64 ${yasmincs} &quot;%(FullPath)&quot;"
asm_Debug_cmdline="${as} -Xvc -gcv8 -f win64 ${yasmincs} &quot;%(FullPath)&quot;"
asm_Release_cmdline="${as} -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;"
asm_Debug_cmdline="${as} -Xvc -gcv8 -f win32 ${yasmincs} &quot;%(FullPath)&quot;"
asm_Release_cmdline="${as} -Xvc -f win32 ${yasmincs} &quot;%(FullPath)&quot;"
;;
arm64*)
platforms[0]="ARM64"
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@
## be found in the AUTHORS file in the root of the source tree.
##

if [ "$(uname -o 2>/dev/null)" = "Cygwin" ] \
shell_name="$(uname -o 2>/dev/null)"
if [[ "$shell_name" = "Cygwin" || "$shell_name" = "Msys" ]] \
&& cygpath --help >/dev/null 2>&1; then
FIXPATH='cygpath -m'
else
Expand Down
Loading

0 comments on commit cb8bd95

Please sign in to comment.