Age | Commit message (Collapse) | Author |
|
This reverts commit 44e611482e13fdffa0acde780a20dd68ee153498.
Change-Id: Ic900cc01be4de7983fab42178a488277efab77b3
|
|
Change-Id: I371c2346b9e0153c0f8053cab399ce14cd286c56
|
|
|
|
under Visual Studio:
Warning C4244 '=': conversion from 'int64_t' to 'vpx_prob', possible loss of
data
after:
ea042a676 vp9 encoder: fix integer overflows
'newp' has already been range checked earlier in the loop so the cast won't
have any unexpected results
Change-Id: Ic10877db2c0633d53fffdf8852d5095403c23a02
|
|
this is a followup to:
7fbcee49d quiet -Warray-parameter warnings
and conforms to aom in:
06e13e817 quiet -Warray-parameter warnings
the sad functions are more varied in libvpx and will require a separate
pass
Change-Id: I765fd6704df615e836ba0b184ff8266ce926c394
|
|
|
|
test fails with memory error. Reducing testing resolution
bug: webm:1750
Change-Id: I75664088022aa660bdf6e69de2d11121db44716f
|
|
|
|
|
|
fixing integer overflow with 16K content and enabling the test
Bug: webm:1750
Fixed: webm:1750
Change-Id: I76eebd915bcae55bc755613251a98e1716dea4c0
|
|
If a reference frame is not referenced, then set the index for that
reference to the first one used/referenced instead of unused slot.
Unused slot means key frame, as key frame resets all slots with itself.
This CL extracts `get_first_ref_frame()` from `reset_fb_idx_unused()`
with a typo fixing, and sets all unused reference frames to first ref in
vp9 uncompressed header.
Bug: webrtc:13442
Change-Id: I99523bc2ceedf27efe376d1113851ff342982181
|
|
main
|
|
|
|
this removes the burden from callers; the rtcd functions are left with a
mostly redundant (outside of tests) once() as top-level functions should
ensure their constraints are met
Change-Id: I5bdbcfa4671c6a1492cfe9c7d886c361c26caaa9
|
|
w/gcc-11
v_these_mv_w is always initialized in this block with _mm_add_epi16();
converting this to a _mm_storeu_si32(tmp) call also works, but
introduces more stack usage
|| ../vp9/encoder/x86/vp9_diamond_search_sad_avx.c: In function
‘vp9_diamond_search_sad_avx’:
vp9/encoder/x86/vp9_diamond_search_sad_avx.c|285 col 19| warning:
‘v_these_mv_w’ may be used uninitialized [-Wmaybe-uninitialized]
|| 285 | new_bmv = ((const int_mv *)&v_these_mv_w)[local_best_idx];
|| | ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vp9/encoder/x86/vp9_diamond_search_sad_avx.c|149 col 21| note:
‘v_these_mv_w’ declared here
|| 149 | const __m128i v_these_mv_w = _mm_add_epi16(v_bmv_w, v_ss_mv_w);
|| | ^~~~~~~~~~~~
Change-Id: I1cd2fcb41030db16f51c94f3a70eb8eb2a526401
|
|
w/gcc-11
as noted in
the size of interp_filter_selected[][]'s first dimension varies between
VP9_COMP and VP9BitstreamWorkerData as noted in the latter's definition:
// The size of interp_filter_selected in VP9_COMP is actually
// MAX_REFERENCE_FRAMES x SWITCHABLE. But when encoding tiles, all we ever do
// is increment the very first index (index 0) for the first dimension. Hence
// this is sufficient.
int interp_filter_selected[1][SWITCHABLE];
normalize the function signatures of write_modes*(), etc. to take this
into account.
vp9/encoder/vp9_bitstream.c|948 col 3| warning: ‘write_modes’ accessing
64 bytes in a region of size 16 [-Wstringop-overflow=]
|| 948 | write_modes(cpi, xd, &cpi->tile_data[data->tile_idx].tile_info,
|| | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|| 949 | &data->bit_writer, tile_row, data->tile_idx,
|| | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|| 950 | &data->max_mv_magnitude, data->interp_filter_selected);
|| | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vp9/encoder/vp9_bitstream.c|948 col 3| note: referencing argument 8 of
type ‘int (*)[4]’
vp9/encoder/vp9_bitstream.c|488 col 13| note: in a call to function
‘write_modes’
Change-Id: I0898cd7c3431633c382a0c3a1be2f0a0bea8d0f9
|
|
w/gcc-11
this matches the definition of the function with the declaration
Change-Id: I757b731b9560cb0b0ceec4ec258ec5af5a183b3d
|
|
|
|
only 2 x block_size is needed
+ remove a related TODO; C & assembly rely on this extension
Change-Id: Iea430267624251cccbbdaec8045eb81d01ae1db1
|
|
the row-based loop filter is ok (and being used) in this case; since
it's serialized the previous row will always be done
Change-Id: I024a0c78e7488178956cc22a4c4680a00dc6eade
|
|
some additional neon file updates after:
31b954deb clear -Wextra-semi/-Wextra-semi-stmt warnings
Bug: chromium:1257449
Change-Id: I3e2664f2bd8f6f7328ec91bf6595ba5fc09862bd
|
|
Bug: chromium:1257449
Change-Id: Ia9aafccc09b611521d4a7aedfe3723393a840c62
|
|
|
|
previously row-mt would allocate thread data once, so increasing the
number of threads with a config change would cause a heap overflow.
Bug: chromium:1261415
Bug: chromium:1270689
Change-Id: I3c5ec8444ae91964fa34a19dd780bd2cbb0368bf
|
|
|
|
|
|
cap bitrate to 1000Mbps, change bitsaving budget to int64_t
this make test coverage for 2048x2048 - same as for vp8
Bug: webm:1749
Fixed: webm:1749
Change-Id: Ic58d73cb7529b0826d1f501ad09af8e80f706a6e
|
|
|
|
The modified line should now compile into two instructions instead of four.
Change-Id: Ie2eb6b13ff1e29b3107cb9e76f37ff9065504316
|
|
Gives 10% faster VP8 encoding in simple tests.
This patch requires testing on wider datasets and encoder
settings to see if this speedup is achieved on most data.
Change-Id: If8e04819623e78fff126c413db66c964c0b4c11a
|
|
and rename the table to kCodecIfaces[] to be a little more specific and
avoid shadowing kCodecs[] in SetRoi()
Change-Id: I64905f48d8bf76e812bdba8374b82e3f7654686f
|
|
|
|
|
|
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
|
|
Fix UBSan error reported from aosp Cuttlefish device:
/vp9/encoder/vp9_ratectrl.c:238:33: unsigned integer overflow:
2500000 * 1800 cannot be represented in type 'unsigned int'
...by casting the operand and the result of multiplication
to 64bit integer.
Test: vp9 webrtc streaming with Cuttlefish
Change-Id: Id5bb3d4071a96179caffae0829d3cc4e48c7614b
|
|
prevents a crash on the next line accessing img_ members
Bug: aomedia:3191
Change-Id: I430fb4ee662b0001629096eb8b554f8a2b30cce0
|
|
|
|
* changes:
mem_sse2.h: loadu_uint32 -> loadu_int32
mem_sse2.h: storeu_uint32 -> storeu_int32
vp8: fix some implicit signed -> unsigned conv warnings
video_source.h,ReallocImage: quiet implicit conv warning
|
|
cap the bitrate to 1000Mbps to avoid many instances of bitrate * 3 / 2
overflowing.
this adds coverage for 2048x2048 in the default test for VP8 with TODOs
for issues at that resolution for VP9 and at max resolution for both.
Bug: b/189602769
Bug: chromium:1264506
Bug: webm:1748
Bug: webm:1749
Bug: webm:1750
Bug: webm:1751
Change-Id: Iedee4dd8d3609c2504271f94d22433dfcd828429
|
|
this changes the return to int32_t which matches the type with usage
of this call as input to _mm_cvtsi32_si128(), _mm_set_epi32(), etc.
fixes implicit conversion warning with clang-11 -fsanitize=undefined
Change-Id: I1425f12d4f79155dd5d7af0eb00fbdb9f1940544
|
|
this changes the parameter to int32_t which matches the type with usage
of this call using _mm_cvtsi128_si32() as a parameter. quiets an
implicit conversion warning with clang-11 -fsanitize=undefined
Change-Id: I1e9e9ffac5d2996962d29611458311221eca8ea0
|
|
and vice-versa mostly when dealing with bitmasks
w/clang-11 -fsanitize=undefined
Change-Id: I6d8f676bf87679ba1dad9cb7f55eea172103d9d3
|
|
with -fsanitize=undefined
test/video_source.h:194:33: runtime error: implicit conversion from type
'int' of value -32 (32-bit, signed) to type 'unsigned int' changed the
value to 4294967264 (32-bit, unsigned)
Change-Id: I92013086d517fecf01c9e4cdfe6737b8ce733a1f
|
|
this is similar to the fix for calc_iframe_target_size:
5f345a924 Avoid overflow in calc_iframe_target_size
Bug: chromium:1264506
Change-Id: I2f0e161cf9da59ca0724692d581f1594c8098ebb
|
|
the intermediate value in the correction_factor calculation may exceed
integer bounds
Bug: b/189602769
Change-Id: I75726b12f3095663911d78333f3ea26eb6dee21e
|
|
picks up Android.mk license updates from AOSP and fixes as part of the
1.0.0.28 release
changelog:
https://chromium.googlesource.com/webm/libwebm/+log/37d9b86..206d268
Change-Id: I18d5238f7d1aff2678d903018929da952410fa0e
|
|
|
|
https://github.com/google/styleguide.git
100755 blob 4a82bde4f95cef8103520bc2c019483397ec51f4 cpplint/cpplint.py
Bug: aomedia:3178
Change-Id: I9e11d647096fc2082b18d74731026dabb52639bb
|
|
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
|
|
and use it to set the format attribute for the printf like function
vpx_internal_error(). this allows the main library to be built with
-Wformat-nonliteral without producing warnings; the examples will be
handled in a followup.
Bug: webm:1744
Change-Id: Iebc322e24db35d902c5a2b1ed767d2e10e9c91b9
|