Age | Commit message (Collapse) | Author |
|
ybf->buffer_alloc and ybf->buffer_alloc_sz should ideally be kept in
sync. If ybf->buffer_alloc is reset to NULL after being freed, then
ybf->buffer_alloc_sz should be reset to 0.
Change-Id: I7e7566b563ddf145d0e46050c5b6bd141084f8b3
|
|
This CL allows to limit memory consumption of the frame buffer pool. As
the result if compiled with VPX_MAX_ALLOCABLE_MEMORY set codec will fail
if frame resolution requires more memory
This is backported CL aae2183cb58b60d01b8e4e15269ee9f48dd72908 from
aomedia
Tested:
configure --extra-cflags="-DVPX_MAX_ALLOCABLE_MEMORY=536870912"
make
./test_libvpx
BUG=webm:1579
Change-Id: Ic62213b600a7562917d5a339a344ad8db4b6f481
|
|
Change-Id: Id632ddcbfb0bd3a4258aebdfb98f9dc2e4d04438
|
|
vpx_realloc_frame_buffer() should validate the |border| parameter
earlier, before it allocates the buffer and preferrably before it uses
|border|.
This backports libaom commit 2860b3ae8b764bdfa2b8c7a06df2673e907b993f:
https://aomedia-review.googlesource.com/c/aom/+/74324
Change-Id: Ib9d59d74e27430ccb1e83c6ad5424aff9672c989
|
|
Buffers and arrays used for prediction are not initialized after
allocation.
BUG=902691
Change-Id: Ic727e5dab7456e91ec9d6c80694f60a1a3600640
|
|
use the recommended format [1] of:
<PROJECT>_<PATH>_<FILE>_H_
[1] https://google.github.io/styleguide/cppguide.html#The__define_Guard
"All header files should have #define guards to prevent multiple
inclusion. The format of the symbol name should be
<PROJECT>_<PATH>_<FILE>_H_."
Change-Id: I2e8ab0b32fb23c30fa43cff5fec12d043c0d2037
|
|
Avoids a C90 compile error.
BUG=webm:1551
Change-Id: Iee0f208de053c2a399aafa015d370c0496878816
|
|
If CONFIG_SIZE_LIMIT is defined, vpx_realloc_frame_buffer should fail if
width or height is too big.
This carries over commit ebc2714d71a834fc32a19eef0a81f51fbc47db01 of
libaom: https://aomedia-review.googlesource.com/c/aom/+/65521
Change-Id: Id7645c5cefbe1847714695d41f506ff30ea985f6
|
|
At least the changes that don't conflict with 4.0.1
Change-Id: I9b6a7c14dadc0738cd0f628a10ece90fc7ee89fd
|
|
Allows them to pass the license check in chromium.
BUG=chromium:98319
Change-Id: Iefc1706152a549d8c4ae774c917596bf1c9492d8
|
|
Even though frame_size is calculated in uint64_t, it winds up in an int
size value.
This was exposed with the msan test because the memset is called with
(int)frame_size, leading to a segfault.
Change-Id: I7fd930360dca274adb8f3e43e5e6785204808861
|
|
Split vp8/vp9 implementations on yv12_copy_frame_c.
Remove high-bitdepth codes from vp8_yv12_extend_frame_borders_c.
Clean up vp8 codes usage in vp9.
BUG=webm:1435
Change-Id: Ic68e79e9d71e1b20ddfc451fb8dcf2447861236d
|
|
Change-Id: Ia07ba57756f75911d3d06318e1f9b1982e1ca8c5
|
|
development has moved to the nextgenv2 branch and a snapshot from here
was used to seed aomedia
BUG=b/29457125
Change-Id: Iedaca11ec7870fb3a4e50b2c9ea0c2b056a0d3c0
|
|
This reverts commit 6dd7f2b50a65373aa906d678cb5a29fb65531a55.
conversion warnings, crashes in 32-bit builds
Change-Id: I529ead34cd93c862dd07c9a29d8542dda2fc20ea
|
|
|
|
Change-Id: I73e1b9ea6f4c76ae539e2b3292ee4c751d9c7de4
|
|
Change-Id: I58612bd04fad6144722569d3db2899ba0fb947a6
|
|
the rest was removed with:
5926e7c Remove unfinished VP9 alpha channel.
Change-Id: I0c1d92765e5334e1380ad027b069b401e4ae9b8f
|
|
Do memset to fix msan issue due to the access of uninitialized
memory.
BUG=https://code.google.com/p/chromium/issues/detail?id=549155
Change-Id: I02f995ede79e3574e72587cc078df1a0d11af002
|
|
to make meaning of color_range obvious.
Change-Id: I303582e448b82b3203b497e27b22601cc718dfff
|
|
In the decoder, map this to the output variable vpx_image_t.r_w/h.
This is intended as an improved version of VP9D_GET_DISPLAY_SIZE,
which doesn't work with parallel frame decoding. In the encoder,
map this to a codec control func (VP9E_SET_RENDER_SIZE) that takes
a w/h pair argument in a int[2] (identical to VP9D_GET_DISPLAY_SIZE).
Also add render_size to the encoder_param_get_to_decoder unit test.
See issue 1030.
Change-Id: I12124c13602d832bf4c44090db08c1009c94c7e8
|
|
In decoder, export (eventually) into vpx_image_t.range field. In
encoder, use oxcf->color_range to set it (same way as for
color_space).
See issue 1059.
Change-Id: Ieabbb2a785fa58cc4044bd54eee66f328f3906ce
|
|
|
|
Change-Id: Iac85902cbbb3e752801dc85de9a3c778e47304aa
|
|
CONFIG_VP9_HIGHBITDEPTH is currently used by both vp9 and vp10, but in
many place outside vp9/vp10, the macro was used in conjunction of
CONFIG_VP9. This created a dependency on vp9 for vp10 to build. This
commit removes the dependency by use CONFIG_VP9_HIGHBITDEPTH only in
these places.
Change-Id: I8cc007fc9cf132394c6498ce6759e606b64a6ad0
|
|
This commit folks the VP9 and VP10 codebase and makes libvpx
support VP8, VP9, and VP10.
Change-Id: I81782e0b809acb3c9844bee8c8ec8f4d5e8fa356
|
|
silences missing prototype warnings
Change-Id: I33320f66c789b8c5c51d69f9dc0e017f9e06b0d0
|
|
With the sad functions, and hopefully the variance functions soon,
moving to the vpx_dsp location, place the defines used in the
reference C code in a common location.
Change-Id: I4c8ce7778eb38a0a3ee674d2f1c488eda01cfeca
|
|
vestigial. replace instances with memset() which they already were being
defined to.
Change-Id: Ie030cfaaa3e890dd92cf1a995fcb1927ba175201
|
|
vestigial. replace instances with memcpy() which they already were being
defined to.
Change-Id: Icfd1b0bc5d95b70efab91b9ae777ace1e81d2d7c
|
|
Change-Id: Ib1e17d8aae9b713b87f560ab5e49952ee2bfdcc2
|
|
Change-Id: Ibaeede61c128c73809332b9a853cd62b8d6d5325
|
|
Change-Id: Icc7da6027763b5ed7cbfe70ffe271103ead59fe1
|
|
This commit changes the value of highbitdepth flag to avoid conflict
with vp8 refresh_last_frame flag.
Change-Id: Idcff2cf44f0a200bd935b326f785c0cf32d7228a
|
|
The calculation of required extension used in HBD case was wrong due
to rounding for UV when y dimension is odd. This commit replace the
computation with correct version.
This fixes a crash caused by writting beyond buffer boundary.
Change-Id: Ic7c9afeb7388cd1341ec4974a611dacfb74ac6b6
|
|
This commit added a field to vpx_image_t for indicating color space,
the field is also added to YUV_BUFFER_CONFIG. This allows the color
space information pass through the decoder from input stream to the
output buffer.
The commit also updated compare_img() function with added verification
of matching color space to ensure the color space information to be
correctly passed from encode to decoder in compressed vp9 streams.
Change-Id: I412776ec83defd8a09d76759aeb057b8fa690371
|
|
This reverts commit 91471d6aad285ff10e7582e485d8adadd1986fe2.
Fixes the compile issues if post_proc is enabled.
Change-Id: Ib40a15ce2c194f9b5adfa65a17ab01ddf60f5a59
|
|
Fails to compile. Bad calls to vp9_alloc_frame_buffer
and vp9_realloc_frame_buffer in postproc.c
This reverts commit 399823b6f50fb7465f62822d1395e2192e7b07fc.
Change-Id: I29f0e173f8e185d3a303cfdb17813e1eccb51e3a
|
|
Add support for setting byte alignment on the Y, U, and V plane of the
reference buffers. The byte alignment must be a power of 2, from 32 to
1024. A value of 0 sets legacy alignment.
Change-Id: I7c1399622f7aa68e123646369216b32047dda73d
|
|
vpx_scale.c is only used by the vp8 encoder when spatial resampling is
enabled.
Change-Id: If3d3ad81e9ee6e0b59f8c040b9624ef52598fe03
|
|
The obj_int_extract code is no longer worth maintaining. It creates
significant issues when adapting for different build systems and no
longer offers as significant of a performance benefit due to
improvements in intrinsics.
Source files will remain until the various third-party builds are updated.
The neon fast quantizer has been moved to intrinsics. The armv6 version
has been removed because so few remaining targets require it.
Compilers and processors have improved significantly since the
pack_tokens code was written. The assembly is no longer faster than the
C code.
pack_tokens were the only optimizations for the armv5te targets so the targets
will be removed after the test infrastructure has been updated.
BUG=710
Change-Id: Ic785b167cd9f95eeff31c7c76b7b736c07fb30eb
|
|
Change-Id: Ie8a4caae19fb514d5bd22e0ae35ca0edcd3484ae
|
|
Change-Id: I0e262ede7eb4a4ae0c86181922d744e542e93350
|
|
Libvpx was memseting every external frame buffer before decode. This
was to work around a valgrind issue in our C loop filter. Most of
the time this was not needed and we have noticed some significant
performance loss on some platforms. Now we require the application to
zero out the buffers if it is using external frame buffers.
Change-Id: I7330d00a315e65137ed30edd5f813e8929b76242
|
|
Check image format of reference frames.
Change-Id: I7d8d7f097ba547839ff9cec3880bd15a4948ee06
|
|
Adds config parameter vp9_highbitdepth, to support highbitdepth profiles.
Also includes most vpx level high bit-depth functions. However
encode/decode in the highbitdepth profiles will not work until
the rest of the code is in place.
Change-Id: I34c53b253c38873611057a6cbc89a1361b8985a6
|
|
No performance benefit
Change-Id: I7f0cfa98ac2bb5b823d0972827b45f32cd3f6b4c
|
|
Change-Id: I03798e387a656473b6ec004246e2b882c8c6bb84
|
|
The code fails the unit test. Speed comparisons to the C are invalid
because the code frequently didn't correctly extend the right and
bottom portions of the frame.
Reduce maximum frame size on ARM devices to avoid OOM
Change-Id: Ia664c86406f0bb8120fd7ad401f32d0bd44994fb
|