"README.md" did not exist on "4a1386e3c89c2fb671133c2898701398102edb56"
- May 21, 2012
-
-
Christian Duvivier authored
Faster version of denoiser, cut cost by 1.7x for C path, by 3.3x for SSE2 path. Change-Id: I154786308550763bc0e3497e5fa5bfd1ce651beb
-
- May 11, 2012
-
-
Scott Graham authored
Change-Id: If6e11ba3d681e831d7d98662c0abdd2ac16b3811
-
- May 08, 2012
-
-
John Koleszar authored
Accept the same range of inputs for the VP8E_SET_NOISE_SENSITIVITY control, regardless of whether temporal denoising is enabled or not. This is important for maintaining compatibility with existing applications. Change-Id: I94cd4bb09bf7c803516701a394cf1a63bfec0097
-
Jim Bankoski authored
Adds a unit test to the boolcoder that tests encoding and decoding thousands of different bits, with different probabilities in different patterns. Code borrowed from the webp project - and its committers. Change-Id: Icabbb884d57e666496490c961dd29b246144ab3e
-
- May 04, 2012
-
-
John Koleszar authored
Make functions only referenced from one translation unit static. Other symbols with extern linkage get a vp8/vpx prefix. Change-Id: I928c7e0d0d36e89ac78cb54ff8bb28748727834f
-
John Koleszar authored
Change If4321cc5 fixed a bug caused by forward declarations not being kept in sync across C files, resulting in a function call with the wrong arguments. The commit moves the affected function declarations into a header file, along with the other symbols from encodeframe.c that were being sloppily shared. Change-Id: I76a7b4c66d4fe175f9cbef7e52148655e4bb9ba1
-
Attila Nagy authored
mb_row and mb_col was not passed to vp8cx_encode_inter_macroblock in threaded encoding. Change-Id: If4321cc59bf91e991aa31e772f882ed5f2bbb201
-
John Koleszar authored
Remove a bunch of compatibility code dating back to before the initial libvpx release. Change-Id: Ie50b81e7d665955bec3d692cd6521c9583e85ca3
-
Attila Nagy authored
Removes all runtime initialization of global data. This commit is a squashed version of the following series cherry-picked from master. This is necessary because of a change that was merged to the tester that depends on the scaler being moved to the RTCD framework, which is a worthwhile thing to include in Eider anyway. - a91b42f0 Makes all global data in entropy.c const - b35a0db0 Makes all global data in tokenize.c const - 441cac8e Makes all mode token tables const - 5948a021 Ports vpx_xcaler to new RTCD method - 317d4244 Makes all mode token tables const part 2 Change-Id: Ifeaea24df2b731e7c509fa6c6ef6891a374afc26
-
Attila Nagy authored
mb_row and mb_col was not passed to vp8cx_encode_inter_macroblock in threaded encoding. Change-Id: If4321cc59bf91e991aa31e772f882ed5f2bbb201
-
- May 03, 2012
-
-
John Koleszar authored
Move the notion of 0 bitrate implying skip deeper into the codec, rather than doing it at the multi-encoder API level. This preserves v1.0.0 ABI compatibility, rather than forcing a bump to v2.0.0 over a minor change. Also, this allows the case where the application can selectively enable and disable the larger resolution(s) without having to reinitialize the codec instace (for instance, if no target is receiving the full resolution stream). It's not clear how deep to push this check. It may be valuable to allow the framerate adaptation code to run, for example. Currently put the check as early as possible for simplicity, should reevaluate this as this feature gains real use. Change-Id: I371709b8c6b52185a1c71a166a131ecc244582f0
-
- May 02, 2012
-
-
John Koleszar authored
Preserved the prior names for compatibility, will remove in the future. Change-Id: I8773f959ebce72f60168a2972f7a8ffe6642b9b2
-
Timothy B. Terriberry authored
Besides imposing a performance penalty at startup in most configurations, these relocations break the dynamic linker for native Fennec, since it does not support them at all. Change-Id: Id5dc768609354ebb4379966eb61a7313e6fd18de
-
Timothy B. Terriberry authored
These are warnings in most builds, but show up as compile errors on some platforms when these headers are included from C++ code. Change-Id: I6c523b4dbbc699075fe73830442b51922e5a61d5
-
Timothy B. Terriberry authored
These are warnings in most builds, but show up as compile errors on some platforms when these headers are included from C++ code. Change-Id: I6c523b4dbbc699075fe73830442b51922e5a61d5
-
Attila Nagy authored
Fix code for following warnings: -Wimplicit-function-declaration -Wuninitialized -Wunused-but-set-variable -Wunused-variable Change-Id: I2be434f22fdecb903198e8b0711255b4c1a2947a
-
- Apr 27, 2012
-
-
Adrian Grange authored
The ARNR filter uses MC to find the best match between the ARF and other nearby frames in the filter-set. Since the ARF is a member of the filter-set, MC in that case is unnecesssary. This patch modifies the filter so it does not apply MC in this case. Change-Id: Ic0321199c08db2189a57f28d1700b745bc7ff66d
-
Adrian Grange authored
The ARNR filter uses a motion compensated temporal filter, but the motion estimation implementation accounts for the cost of the mv in its decision making process. The ARNR filter uses a dummy cost table initialized to 0 as a way to ignore the mv costs (which are irrelevant to the filter). This CL modifies the ARNR filter implementation so that the mv costing is ignored without the requirement for dummy tables. Change-Id: I4196aa5c24da63f858ff54fbaa5fc85ae1f1957f
-
- Apr 26, 2012
-
-
Attila Nagy authored
The backup MODE_INFO buffer used in the error concealment was allocated in the codec common parts allocation even though this is a decoder only resource. Moved the allocation to the decoder side. No need to update_mode_info_border as mode_info buffers are zero allocated. This fixes also a potential memory leak as the EC overlaps buffer was not properly released before reallocation after a frame size change. Change-Id: I12803d3e012308d95669069980b1c95973fb775f
-
- Apr 25, 2012
-
-
Attila Nagy authored
Race was introduced by https://gerrit.chromium.org/gerrit/15563. If loopfilter related config params were changed between frames, or after a KEY frame, there could be a mismatch between encoder's and decoder's recontructed image. In worst case, when frame buffers are reallocated because of a size change, the loopfilter could do an invalid data access (segmentation fault). Fixes: Sync with the loopfilter before applying any encoder changes in vp8_change_config(). Moved the loopfilter synching to the top of encode_frame_to_data_rate() so that it's done before any alteration of the encoder. Change-Id: Ide5245d2a2aeed78752de750c0110bc4b46f5b7b
-
- Apr 24, 2012
-
-
Attila Nagy authored
Increment the last_row_mb_col counter by nsync after last MB of row is ready. This way we dont need to check for last MB of row when synching. Set last MB of row ready just after row extension is done, This avoids o potential race condition whit the processing of last MB of next row. Change-Id: I19c44fd6041116ee5483be2143b4f4bfcd149eac
-
- Apr 23, 2012
-
-
Attila Nagy authored
RD costs were local to MACROBLOCK data and had to be copied all the time to each thread's MACROBLOCK data. Tables moved to a common place and only pointers are setup for each encoding thread. vp8_cost_tokens() generates 'int' costs so changed all types to be int (i.e. removed unsigned). NOTE: Could do some more cleaning in vp8cx_init_mbrthread_data(). Change-Id: Ifa4de4c6286dffaca7ed3082041fe5af1345ddc0
-
Scott LaVarnway authored
and replaced with use_bilinear_mc_filter. Change-Id: Ie9e9f0bccca4ab7d3e23ae045aefed33536103ff
-
Attila Nagy authored
The block pointers and offset do not need to be calculated for every frame. Block internal predictors can be update once when decoder is allocated. Destination and previous buffer offsets have to be updated just when frame size is changing. Change-Id: I92ca8df0e6aaac4cc35ab890751d446760bf82e2
-
Attila Nagy authored
Key frame macrobock and block mode probabilities are constant. Remove the allocation of tables for each codec instance and use instead the default const prob tables. Change-Id: I8361798ac491f9b3889e86925a494c58647c753f
-
- Apr 20, 2012
-
-
John Koleszar authored
Move the notion of 0 bitrate implying skip deeper into the codec, rather than doing it at the multi-encoder API level. This preserves v1.0.0 ABI compatibility, rather than forcing a bump to v2.0.0 over a minor change. Also, this allows the case where the application can selectively enable and disable the larger resolution(s) without having to reinitialize the codec instace (for instance, if no target is receiving the full resolution stream). It's not clear how deep to push this check. It may be valuable to allow the framerate adaptation code to run, for example. Currently put the check as early as possible for simplicity, should reevaluate this as this feature gains real use. Change-Id: I371709b8c6b52185a1c71a166a131ecc244582f0
-
John Koleszar authored
Look for changes in the codec's configured w/h instead of its active w/h when forcing keyframes. Otherwise calls to vp8_change_config() will force a keyframe when spatial resampling is active. Change-Id: Ie0d20e70507004e714ad40b640aa5b434251eb32
-
- Apr 19, 2012
-
-
Scott LaVarnway authored
(see Change I9b2ccc88: Makes all mode token tables const) Further remove runtime table initialization and use precalculated const data. Data footprint reduced by 4112 bytes. Change-Id: Ia3ae9fc19f77316b045cabff01f6e5f0876a86ab
-
John Koleszar authored
Ensure that RTCD function pointers are set at most once, to silence some data race warnings. Implementation provided for POSIX threads and Win32, with the prior unsynchronized behavior left in place for other platforms. Change-Id: I65c5856df43ef67043b3d5f26ddafddd8fcb2f7e
-
Attila Nagy authored
We can get rid of all remaining global initializers now: vp8_scale_machine_specific_config() vp8_initialize() vp8dx_initialize() Change-Id: I2825cea5d1c01ad9f6c45df49a0f86d803bfeb69
-
Attila Nagy authored
Mode token tabels precalculated in entropymode.c. Removes vp8_initialize_common()as all common global data is precalculated const now. Change-Id: I9b2ccc883e4f618069e1bc180dad3a823394eb73
-
- Apr 17, 2012
-
-
Attila Nagy authored
Removes all runtime initialization of global data in tokenize.c. DCT token and cost tabels are pre-generated. Second patch in a series to make sure code is reentrant. Change-Id: Iab48b5fe290129823947b669413101f22a1bcac0
-
Attila Nagy authored
Removes all runtime initialization of global data in entropy.c. Precalculated values are used for initializing all entropy related tabels. First patch in a series to make sure code is reentrant. Change-Id: I9aac91a2a26f96d73c6470d772a343df63bfe633
-
- Apr 16, 2012
-
-
John Koleszar authored
When producing an invisible ARF, the time stamp counters aren't updated since the last time stamp is seen by the codec twice. The prior code was trapping this case with refresh_alt_ref, but this isn't correct for other uses of the ARF. Instead, use the show_frame flag. Change-Id: If67fff7c6c66a3606698e34e2fb5731f56b4a223
-
- Apr 12, 2012
-
-
Scott LaVarnway authored
Local variable offsets are now consistent for the functions, removed unused parameters, reworked the assembly to eliminate stalls/instructions. Change-Id: Iaa37668f8a9bb8754df435f6a51c3a08d547f879
-
- Apr 10, 2012
-
-
Deb Mukherjee authored
This patch includes: 1. fixes to disable block based termporal mixing when motion is detected (because this version of mfqe only handles zero motion). 2. The criterion used for determining whether to mix or not are changed to use squared differences rather than absolute differences. 3. Additional checks on color mismatch and excessive block flatness added. If the block as decoded has very low activity it is unlikely to yield benefits for mixing. Change-Id: I07331e5ab5ba64844c56e84b1a4b7de823eac6cb
-
- Apr 03, 2012
-
-
John Koleszar authored
In cases where you have a flat background occluded by a moving object of similar luminosity in the foreground, it was likely that the foreground blocks would persist for a few frames after the background is uncovered. This is particularly noticable when the object has a different color than the background, so add the chroma planes in as an additional check. In addition, for block sizes of 8 and 16, the luma threshold is applied on four subblocks independently, which helps when only part of the background in the block has been uncovered. This fixes issue #392, which includes a test clip to reproduce the issue. BUG=392 Change-Id: I2bd7b2b0e25e912dcac342e5ad6e8914f5afd302
-
- Apr 02, 2012
-
-
Johann Koenig authored
When the functions were moved from encoder/ to common/ the RTCD file was not updated. Change-Id: I1c98715ed51adf1a95aa2492949d8552aec88d1f
-
- Mar 29, 2012
-
-
John Koleszar authored
Change-Id: Ic7782707afed38c3ec7e996a4a11dc2d55226691
-
Scott LaVarnway authored
Reduced the size of the struct by 8 bytes, which would be a memory savings of 64800 bytes for 1080 resolutions. Had an extra byte, so created an is_4x4 for B_PRED or SPLITMV modes. This simplified the mode checks in vp8_reset_mb_tokens_context and vp8_decode_mb_tokens. Change-Id: Ibec27784139abdc34d4d01f73c09f43e9e10e0f5
-