- 26 Oct, 2012 1 commit
-
-
Johann authored
Change-Id: I4dd192c3297e31b8eadd108ca8d0934e58f502f7
-
- 11 Oct, 2012 1 commit
-
-
Yunqing Wang authored
If the threshold(limits) <= 0, skipped filtering and copied the frame directly. Also, fixed memory allocation checking. Change-Id: If3d79d5b2bcb71b9777e6eb5cba1384585131e22
-
- 08 Oct, 2012 1 commit
-
-
Yunqing Wang authored
1. Algorithm modification: Instead of having same filter threshold for a whole frame, now we allow the thresholds to be adjusted for each macroblock. In current implementation, to avoid excessive blur on background as reported in issue480(http://code.google.com/p/webm/issues/detail?id=480), we reduce the thresholds for skipped macroblocks. 2. SSE2 optimization: As started in issue479(http://code.google.com/p/webm/issues/detail?id=479), the filter calculation was adjusted for better performance. The c code was also modified accordingly. This made the deblock filter 2x faster, and the decoder was 1.2x faster overall. Next, the demacroblock filter will be modified similarly. Change-Id: I05e54c3f580ccd427487d085096b3174f2ab7e86
-
- 04 Sep, 2012 1 commit
-
-
Deb Mukherjee authored
Adjusts some of the qualification thresholds in mfqe to eliminate artifacts due to wrong decisions. Besides, a new qualification criteria is used to disable mfqe if the quality of the previous frame is itself not too good. Change-Id: I4097c20b7fd4fcc60cc3003c1e33e8faae2ff066
-
- 19 Jun, 2012 1 commit
-
-
Adrian Grange authored
The function vp8_post_proc_down_and_across_c takes the stride of both the src and dst images as parameters, but assumes that they are the same. I modified the code to use the correct strides, as the assembler versions of these functions do. Change-Id: I222715b774cd071b21c15a4b0d2f4aef64a520de
-
- 11 Jun, 2012 1 commit
-
-
John Koleszar authored
Allows building the library with the gcc -pedantic option, for improved portabilty. In particular, this commit removes usage of C99/C++ style single-line comments and dynamic struct initializers. This is a continuation of the work done in commit 97b766a4, which removed most of these warnings for decode only builds. Change-Id: Id453d9c1d9f44cc0381b10c3869fabb0184d5966
-
- 04 Jun, 2012 1 commit
-
-
Johann authored
clang complains about self-assignment Change-Id: Iead70eed0a960e84a4b167f67f05b05e2965b3b6
-
- 04 May, 2012 1 commit
-
-
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
-
- 19 Apr, 2012 1 commit
-
-
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
-
- 23 Mar, 2012 1 commit
-
-
Deb Mukherjee authored
Change-Id: I9a7d40b0eac7200796dbe62e75776b2eb77dfdf6
-
- 22 Mar, 2012 1 commit
-
-
Deb Mukherjee authored
Adds logic to disable mfqe for the first frame after a configuration change such as change in resolution. Also adds some missing if CONFIG_POSTPROC macro checks. Change-Id: If29053dad50b676bd29189ab7f9fe250eb5d30b3
-
- 13 Mar, 2012 1 commit
-
-
Stefan Holmer authored
Some refactoring in rdopt.c and pickinter.c. Change-Id: I4f50020eb3313c37f4d441d708fedcaf219d3038
-
- 06 Mar, 2012 2 commits
-
-
Johann authored
Break MFQE code into it's own file. It is currently only valid for 16x16 and 8x8 Y blocks. It also filters 4x4 U/V blocks. Refactor filtering and add associated assembly. Limited test cases show --mfqe introduces a penalty of ~20% with HD content. The assembly reduces the penalty to ~15% Change-Id: I4b8de6b5cdff5413037de5b6c42f437033ee55bf
-
Johann authored
The MFQE function of the postprocessor depends on these Change-Id: I256a37c6de079fe92ce744b1f11e16526d06b50a
-
- 10 Feb, 2012 1 commit
-
-
Johann authored
As an optimization some architectures use the max_sad argument to break out early from the SAD. Pass in INT_MAX instead of 0 to prevent this. Change-Id: I653c476834b97771578d63f231233d445388629d
-
- 07 Feb, 2012 1 commit
-
-
John Koleszar authored
MFQE postproc crashed with stream dimensions not a multiple of 16. The buffer was memset unconditionally, so if the buffer allocation fails we end up trying to write to NULL. This patch traps an allocation failure with vpx_internal_error(), and aligns the buffer dimensions to what vp8_yv12_alloc_frame_buffer() expects. Change-Id: I3915d597cd66886a24f4ef39752751ebe6425066
-
- 30 Jan, 2012 3 commits
-
-
John Koleszar authored
This commit continues the process of converting to the new RTCD system. Change-Id: Ie5c1aa480637e98dc3918fb562ff45c37a66c538
-
John Koleszar authored
This commit continues the process of converting to the new RTCD system. Change-Id: If54eb5cb5d1b0cac6c4c0633a9e99c93ca860ba2
-
John Koleszar authored
This commit continues the process of converting to the new RTCD system. Change-Id: I9bfcf9bef65c3d4ba0fb9a3e1532bad1463a10d6
-
- 27 Jan, 2012 1 commit
-
-
John Koleszar authored
Commit 892e23a5 introduced support for the VP8D_GET_LAST_REF_USED, but missed the mapping of the control id to the underlying function, so it was unavailable to applications. In addition, the underlying function vp8_references_buffer() is moved from common/postproc.c to decoder/onyxd_if.c as postproc.c is not built in all configurations. Change-Id: I426dd254e7e6c4c061b70d729b69a6c384ebbe44
-
- 20 Jan, 2012 1 commit
-
-
Deb Mukherjee authored
Makes the thresholds for the multiframe quality enhancement module depend on the difference between the base quantizers. Also modifies the mixing function to weigh the current low quality frame less if the difference in quantizer is large. With the above modifications mfqe works well for both scalable patterns as well as low quality key frames. Change-Id: If24e94f63f3c292f939eea94f627e7ebfb27cb75
-
- 18 Jan, 2012 1 commit
-
-
Jim Bankoski authored
Solved by extending the border in the postproc buffer as necessary Change-Id: Ic3f61397fe5bc8e4db6fc78050b0b160bd0aee86
-
- 17 Jan, 2012 1 commit
-
-
Deb Mukherjee authored
filter in a way such that when there is a single bad frame, the post-processing is applied not only to just that frame but a few subsequent frames as well. Change-Id: Iba5d9896eed77244eb76b4a74692a93f8ecff634
-
- 10 Jan, 2012 3 commits
-
-
Deb Mukherjee authored
with deblock or demacroblock filters. When --mfqe is used together with --demacroblock or --deblock, mfqe is applied first and then demacroblock/deblock is applied to the mfqe result. Change-Id: Id83ee01f1b4a33a116f071dcf26d59c7f3497c32
-
James Berry authored
precision used in initialization of roundoff is not a constant updated to use #define MFQE_PRECISION 4 Change-Id: If2fc3d3d633d58a7f4ab34d258c232ec1e5f0a79
-
Jim Bankoski authored
Change-Id: Id683b4d7f46ffa99145fc4b824c7232ab4182f21
-
- 05 Jan, 2012 1 commit
-
-
Deb Mukherjee authored
Adds a multiframe postprocessing module to enhance the quality of certain frames that are coded at lower quality than preceding frames. The module can be invoked from the commandline by use of the --mfqe option, and will be most beneficial for enhancing the quality of frames decoded using scalable patterns. Uses the vp8_variance_var16x16 and vp8_variance_sad16x16 function pointers to compute SAD and Variance of blocks. Change-Id: Id73d2a6e3572d07f9f8e36bbce00a4fc5ffd8961
-
- 22 Sep, 2011 1 commit
-
-
Attila Nagy authored
Just a clean-up. Change-Id: Iea5b6dc925dcfa7db548bc1ab1a13d26ed5a2c9a
-
- 27 Jun, 2011 1 commit
-
-
Fritz Koenig authored
Change Ieb746989: Removed B_MODE_INFO missed this. Change-Id: I32202555581cc2a5d45e729c6650ada4d2df55d3
-
- 02 May, 2011 1 commit
-
-
John Koleszar authored
Typo. Change-Id: I9cc6a4587c3d93c9f0da5e101d376741fc9622a4
-
- 21 Apr, 2011 1 commit
-
-
Scott LaVarnway authored
The dc_diff flag is used to skip loopfiltering. Instead of setting this flag in the decoder/encoder, we now check for this condition in the loopfilter. Change-Id: Ie2b9cdf9e0f4e8b932bbd36e0878c05bffd28931
-
- 18 Mar, 2011 1 commit
-
-
John Koleszar authored
A large number of functions were defined with external linkage, even though they were only used from within one file. This patch changes their linkage to static and removes the vp8_ prefix from their names, which should make it more obvious to the reader that the function is contained within the current translation unit. Functions that were not referenced were removed. These symbols were identified by: $ nm -A libvpx.a | sort -k3 | uniq -c -f2 | grep ' [A-Z] ' \ | sort | grep '^ *1 ' Change-Id: I59609f58ab65312012c047036ae1e0634f795779
-
- 11 Jan, 2011 1 commit
-
-
Henrik Lundin authored
Removing unused local variables causing compiler warnings in Visual Studio. Change-Id: I0e2096303be1fdbc01428a6e57cca9796bb32c8a
-
- 10 Nov, 2010 1 commit
-
-
Fritz Koenig authored
Debugging in postproc needs more flags to allow for specific block types to be turned on or off in the visualizations. Must be enabled with --enable-postproc-visualizer during configuration time. Change-Id: Ia74f357ddc3ad4fb8082afd3a64f62384e4fcb2d
-
- 04 Nov, 2010 1 commit
-
-
Fritz Koenig authored
Change color reference frame to blend the macro block edge. This helps with layering of visualizations. Add block coloring for intra prediction modes. Change-Id: Icefe0e189e26719cd6937cebd6727efac0b4d278
-
- 02 Nov, 2010 1 commit
-
-
Fritz Koenig authored
Split motion vectors were all being treated as 4x4 blocks. Now correctly handle 16x8, 8x16, 8x8, 4x4 blocks. Change-Id: Icf345c5e69b5e374e12456877ed7c41213ad88cc
-
- 01 Nov, 2010 1 commit
-
-
Fritz Koenig authored
Now draw 16 vectors for SPLITMV mode. Fixed constrain line to block divide by zero issues. Blend block was not centering the shaded area correctly. Change-Id: I1edabd8b4e553aac8d980f7b45c80159e9202434
-
- 28 Oct, 2010 3 commits
-
-
Timothy B. Terriberry authored
This eliminates a large set of warnings exposed by the Mozilla build system (Use of C++ comments in ISO C90 source, commas at the end of enum lists, a couple incomplete initializers, and signed/unsigned comparisons). It also eliminates many (but not all) of the warnings expose by newer GCC versions and _FORTIFY_SOURCE (e.g., calling fread and fwrite without checking the return values). There are a few spurious warnings left on my system: ../vp8/encoder/encodemb.c:274:9: warning: 'sz' may be used uninitialized in this function gcc seems to be unable to figure out that the value shortcut doesn't change between the two if blocks that test it here. ../vp8/encoder/onyx_if.c:5314:5: warning: comparison of unsigned expression >= 0 is always true ../vp8/encoder/onyx_if.c:5319:5: warning: comparison of unsigned expression >= 0 is always true This is true, so far as it goes, but it's comparing against an enum, and the C standard does not mandate that enums be unsigned, so the checks can't be removed. Change-Id: Iead6cd561a2afaa3d801fd63f1d8d58953da7426
-
Fritz Koenig authored
Turned down the blending level to make colored blocks obscure the video less. Not blending the entire block to give distinction to macro block edges. Added configuration so that macro block blending function can be optimized. Change to constrain line as to when dx and dy are computed. Now draw two lines to form an arrow. Change-Id: I986784e6abff65ea3e0d1437dfca7d06d44ede71
-
Timothy B. Terriberry authored
This eliminates a large set of warnings exposed by the Mozilla build system (Use of C++ comments in ISO C90 source, commas at the end of enum lists, a couple incomplete initializers, and signed/unsigned comparisons). It also eliminates many (but not all) of the warnings expose by newer GCC versions and _FORTIFY_SOURCE (e.g., calling fread and fwrite without checking the return values). There are a few spurious warnings left on my system: ../vp8/encoder/encodemb.c:274:9: warning: 'sz' may be used uninitialized in this function gcc seems to be unable to figure out that the value shortcut doesn't change between the two if blocks that test it here. ../vp8/encoder/onyx_if.c:5314:5: warning: comparison of unsigned expression >= 0 is always true ../vp8/encoder/onyx_if.c:5319:5: warning: comparison of unsigned expression >= 0 is always true This is true, so far as it goes, but it's comparing against an enum, and the C standard does not mandate that enums be unsigned, so the checks can't be removed. Change-Id: Iaf689ae3e3d0ddc5ade00faa474debe73b8d3395
-