Age | Commit message (Collapse) | Author |
|
Test: CROSS=riscv64-unknown-linux-gnu- ../libvpx/configure --target=riscv64-linux-gcc
Check console output:
......
enabling rvv
......
Check mk files' content:
$ less libs-riscv64-linux-gcc.mk | grep RVV
HAVE_RVV=yes
Signed-off-by: Wang Chen <wangchen20@iscas.ac.cn>
Co-authored-by: sun min <sunmin89@outlook.com>
|
|
With this change, we can run configure with
"--target=riscv64-linux-gcc". No other chagnes so it
equals to "--target=generic-gnu" actually.
Signed-off-by: sun min <sunmin89@outlook.com>
|
|
libraries under third_party/ are out of scope for this change.
Bug: webm:1793
Change-Id: I562065a3c0ea9fdfc9615d1a6b1ae47da79b8ce0
|
|
x86 and armv7 are skipped for now as the intrinsics will need different
flags than cl.exe (/arch:... -> -m...).
Bug: webm:1788
Change-Id: I8ca8660a8644cdd84c51cb1f75005e371ba8207d
|
|
This will allow identifying Windows Visual Studio targets as aarch64;
the Microsoft compiler does not define __aarch64__.
An alternative would be to define this in the code, checking for
_M_ARM64 or _M_ARM64EC. For now we'll use the existing VPX_ARCH_*
system. For compatibility VPX_ARCH_ARM will continue to be defined to 1
in this case.
Bug: webm:1788
Bug: b/277255076
Change-Id: I12e25710891e86f0c7339ba96884c18ed90ba16f
|
|
Currently, libvpx does not properly clear and re-initialize the memories
when it re-encodes a frame. As a result, out-of-date values are used in
the encoding process, and re-encoding a frame with the same parameter
will give different outputs.
This commit enables the code under CONFIG_CONSISTENT_RECODE to correct
this behavior. This change has minor effect on the coding performance,
but it ensures valid values are used in the encoding process.
Furthermore, the flag is removed as it is now always turned on.
Performance:
| SPD_SET | TESTSET | AVG_PSNR | OVR_PSNR | SSIM | ENC_T |
|---------|---------|----------|----------|---------|-------|
| 0 | hdres2 | -0.012% | -0.021% | -0.030% | +0.1% |
| 0 | lowres2 | +0.029% | +0.019% | +0.047% | +0.1% |
| 0 | midres2 | -0.004% | +0.009% | +0.026% | +0.1% |
|---------|---------|----------|----------|---------|-------|
| 1 | hdres2 | +0.032% | +0.032% | -0.000% | -0.0% |
| 1 | lowres2 | -0.005% | -0.011% | -0.014% | +0.0% |
| 1 | midres2 | +0.004% | +0.020% | +0.027% | +0.2% |
|---------|---------|----------|----------|---------|-------|
| 2 | hdres2 | +0.048% | +0.056% | +0.057% | +0.1% |
| 2 | lowres2 | +0.007% | +0.002% | -0.016% | -0.0% |
| 2 | midres2 | -0.015% | -0.008% | -0.002% | +0.1% |
|---------|---------|----------|----------|---------|-------|
| 3 | hdres2 | +0.010% | +0.014% | +0.004% | -0.0% |
| 3 | lowres2 | +0.000% | -0.021% | -0.001% | +0.0% |
| 3 | midres2 | +0.007% | -0.038% | +0.012% | -0.2% |
|---------|---------|----------|----------|---------|-------|
| 4 | hdres2 | +0.107% | +0.136% | +0.124% | -0.0% |
| 4 | lowres2 | -0.012% | -0.024% | -0.020% | -0.0% |
| 4 | midres2 | +0.055% | -0.004% | +0.048% | -0.1% |
|---------|---------|----------|----------|---------|-------|
| 5 | hdres2 | +0.026% | +0.027% | +0.020% | -0.0% |
| 5 | lowres2 | +0.009% | -0.008% | +0.028% | +0.1% |
| 5 | midres2 | -0.025% | +0.021% | -0.020% | -0.1% |
STATS_CHANGED
Change-Id: I3967aee8c8e4d0608a492e07f99ab8de9744ba57
|
|
Change-Id: Iaa5b73a9593ecfd74b6426ed47d2b529ec7ae2b5
|
|
configure: Add an armv7-win32-vs16 target
configure: Add an armv7-win32-vs17 target
configure: Add an arm64-win64-vs16 target
configure: Add an arm64-win64-vs17 target
Change-Id: I11d6cd6e51f7703939d6fd3fc6a7469591e3b09d
|
|
Bug: webm:1783
Change-Id: I97d94ab8c8aebe13aedb58e280dc37474814ad5d
|
|
with certain optimization flags or sanitizers enabled some code may fail
to vectorize:
third_party/libyuv/source/row_common.cc:3178:7: warning: loop not
vectorized: the optimizer was unable to perform the requested
transformation; the transformation might be disabled or specified as
part of an unsupported transformation ordering
[-Wpass-failed=transform-warning]
this was observed with integer/undefined sanitizers using clang 11/13
Bug: b/229626362
Change-Id: I01595c641763c4cd4242e02f2cc5cbabfe69d03e
|
|
the snapshot of googletest and the test files themselves are targeting
c++11 currently; these warnings are supported by recent versions of
clang
Change-Id: I5d36b3bd4058ba1610f0c8b27cad27aadee85939
|
|
Change-Id: I8380283d09b0c90183f224399f953dcc527181c5
|
|
LSX and LASX are enabled by default if compiler supports them.
Bug: webm:1754
Change-Id: Ic36b113bc4313c50e9d2bbab91199b3aa46d00dc
|
|
Bug: chromium:1257449
Change-Id: Ia9aafccc09b611521d4a7aedfe3723393a840c62
|
|
Remove -mmacosx-version-min. The library does not use
any calls which are affected by the platform version.
There is also no version 10.16 as it went from 10.15
to 11 and now to 12.
At some point it may be good to clarify that the bare
-darwin- target is for iOS and the -darwinN- targets
are for macOS.
Change-Id: I2fd5f7cae2637905acf3ab77bfddfbe367abbb68
|
|
and use it to set the format attribute for printf like functions. this
allows the examples to be built with -Wformat-nonliteral without
producing warnings.
Bug: webm:1744
Change-Id: I26b4c41c9a42790053b1ae0e4a678af8f2cd1d82
Fixed: webm:1744
|
|
Cygwin and msys2 have stricter compliance requirement over standard c
headers.
Bug: webm:1708
Change-Id: I676b1227b9dd304149e50016468df0f057c6a78f
|
|
this release will have arm64 and x86_64 support. in the future it might
be useful to move to mac/iphone targets to help disambiguate
arm64-darwin-gcc and arm64-darwin20-gcc.
Change-Id: I1f8b145303204af316955822f5e8bab51c47f353
|
|
Add -std=c++11 for darwin build.
Change-Id: I760d4f7096bc33520c02b2cd7000fed9ac6cdd90
|
|
Change-Id: I3912c79d0f0f7a65fc753ae29bb10cdcac76878a
|
|
quiets -Wunreachable-code-loop-increment, present since:
e57f388bc vpx_codec_enc_config_default: disable 'usage'
as g_usage was never supported for vp8/9 this was always a single
iteration. if additional usages are added in the future similar to av1
this can be restored.
Bug: b/150166387
Change-Id: Ic6f0985829e87694de8b5e0340cffa6c451ed1c2
|
|
* changes:
Refactor check_initial_width
Move noise_sensitivity to set_encoder_config
Remove extra function calls in check_initial_width
Move init_ref_frame_bufs to vp9_create_compressor
Remove bits_left update in encoder_encode()
Add vp9_get_encoder_config / vp9_get_frame_info
vp9_get_coding_frame_num()
Make [min/max]_gf_interval static under rate_ctrl
Add rate_ctrl flag
|
|
BDRate Changes (negative means improvement)
lowres: 0.565%
midres: 0.361%
lowres: 0.233%
ugc360: -0.242%
Make gop size independent from coding results
Change-Id: I1f54c48b12dc45ee5162ca2527a877c1610528bd
|
|
Fixed: 1633
Change-Id: I7dd2b4873aeb548c7f9ebf7025baf15a8e65c68f
|
|
Fix autodetection on MacOS 10.14. Without this it defaults
to generic-gnu
Change-Id: I19cd4a9f2fb106dff16ab5e38821a5f374add59c
|
|
with g++ this avoids:
command line option ‘-Wno-missing-prototypes’ is valid for C/ObjC but
not for C++
the flag is necessary with clang.
BUG=webm:1584
Change-Id: I250c76483302d913999e5f9e0d09ee6449b052df
|
|
avoid using it with third_party/libyuv as that still requires some work.
BUG=webm:1584
Change-Id: Ib73136b22c89d927b112364e19d725c51768bbb7
|
|
Change-Id: I045b4cf625d428109688303ced5433d824df2790
|
|
arm builds require too many tweaks to keep up with changes
to the ndk. Recommend ndk-build instead.
Update documentation and drop --sdk-path references. If
--enable-external-build is used instead we do not need the compiler
path.
BUG=webm:1622
Change-Id: Id024345afd7af988321f8f97ebab19c425cb0493
|
|
Change-Id: I339899cff65c7ef563f9411f2d7af9a32a08a705
|
|
clang treats -Wmissing-declarations differently than gcc. This
provides similar coverage for clang.
Fix vpx_clear_system_state() warning on 32bit builds:
note: this declaration is not a prototype; add 'void' to make it a
prototype for a zero-parameter function
Change-Id: I5a424bc38d47c0a3dc751d65c1efea5733907785
|
|
BUG=webm:1031
Change-Id: I28f4e8cdec170393b2d22cd8cb0b73a32204e09c
|
|
Remove it from runtime flag.
Add new struct for rd ml partition.
BUG=webm:1599
Change-Id: I883edbba83c65b7e557b8832419e212cffc85997
|
|
Block "for (int i;;)" style declarations.
Use --std=gnu89 to avoid enforcing c89-style comments.
Change-Id: Ia7d1405eac647d04e92513c047773695e8d7dc6e
|
|
This is useful for catching functions which should be static and
instances where the relevant rtcd file was not included.
BUG=webm:1584
Change-Id: Ied395847a664eedce59e8ed5180bd16d059ab0ac
|
|
googletest builds cleanly with -Wextra
Remove comments about webm:1069. The vp8 issue is tracked in webm:1246.
Change-Id: I8bbb01d34503cc9c342f5c3aa78e9476f72b94c2
|
|
|
|
Change-Id: I86682ef1aac1991e1ef6965e7aa298f6619bee13
|
|
since:
77fa51003 Replace deprecated scoped_ptr with unique_ptr
the unit tests require a c++11 capable compiler; future versions of
googletest (1.9.x) will as well, so this change was inevitable if we
wanted to keep the snapshot up to date.
Change-Id: Id5c646bd10fae09e7b705b7d5fad1344f2216282
|
|
Since the Windows SDK has an ARM32-only arm_neon.h, files including it
during ARM64 Windows builds need to be redirected to arm64_neon.h.
Instead of editing many files to include ARM64-Windows-specific ifdef
logic, this commit introduces an ARM64-Windows-specific version of
arm_neon.h that performs the needed redirection and lands earlier in
the header search path than the ARM32-only arm_neon.h.
Change-Id: Idc63947a238ca1bd0c479d8f4ad68950487947c6
|
|
In order to correctly configure for Windows 10 on ARM, this change adds
a --target value arm64-win64-vs15 to ./configure and adds feature
enable/disable logic for the new platform.
This is merely sufficient for Chromium targeting ARM64 Windows.
Bug: 893460
Change-Id: I46194286f63104bdf6ac57d719fdf1e5d5fa72c8
|
|
Make partition decisions using machine learning models. The goal is to
achieve better coding quality than the variance-based parititioning
without much encoding speed loss.
To enable this experiment, use --enable-ml-var-partition for config.
When eanbled, the variance-based partitioning is replaced by this ML
based partitioing for speed 6 and above in real time mode(except low
resolution or high bit-depth).
Current coding gains(average PSNR):
speed 6 speed 7 speed 8
rtc 2.04% 2.65% 3.90%
ytlivehr 3.11% 4.53% 11.57%
hdres(rtc mode) 5.10%
Further testing and tuning is needed to see if the speed and quality
tradeoff is reasonable.
Change-Id: I0da5a2fbc22c3261832b32920ee36d9b19d417af
|
|
The experiment aims at making non-greedy mv search decision
Change-Id: I3d77048ce106771fe003f250d07b7ddf0112536f
|
|
Linking c++ libraries built with gcc 6 and gcc 7 on arm
generates some warnings because of incompatibilities between those
compilers:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=77728
libvpx does not generate a c++ library. C++ is only used for examples and tests.
Change-Id: I3d5d5ef3fb66743bff26a833d6641898975e9f71
|
|
Change-Id: Ib49e1d79ba4c1c5d5147ab437f744a31429a059c
|
|
+ bump ios minimum to 7.0; 6.0 does not have full c++11 support
Change-Id: If838b036e7327fda514cd2e8156eeda122cf6c73
|
|
This reverts commit d32a55ffc40bba75ed8b770b282836a9d248d6a9.
Use the correct 'check_add_cxxflags' invocation.
Change-Id: I97d8062c9218b81a24268ec5998e847b1a0efeda
|
|
|
|
This reverts commit 595edb9669e27927726523c3f463d0eb6ea73f30.
Incorrect check_add_cxxflags invocation prevented libwebm from
building. Correcting it causes build failures on jenkins and mac.
Original change's description:
> update libwebm
>
> Clears "auto_ptr deprecated" warnings when building with
> clang v6.0.0
>
> Requires C++11 support.
>
> Change-Id: I5ea2744e73deeaa4e7b2599bacf0b6c9cf355a54
TBR=jzern@google.com,johannkoenig@google.com,builds@webmproject.org
Change-Id: I7340d912a121de035997cbd8ad77a150ee38189a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
|
|
This commit replace a hard coded macro with a macro defined by
a configure command.
Change-Id: Ib31354d61865314ed43e2c429c72b4ef2c8fa2a7
|