- Oct 04, 2010
-
-
Yaowu Xu authored
Raised by Lei Yang, the Y plane stride was used for UV blocks. This is clearly a typo. But as the comments in the code suggested that this port of code has not been used yet, so the typo should not have created any damage yet. Change-Id: Iea895edc17469a51c803a8cc6d0fce65a1a7fc2f
-
Yaowu Xu authored
-
- Oct 02, 2010
-
-
Yaowu Xu authored
Experimented with different value for Y2_RD_MULT ranging f[1, 32], without adapting the value to MB coding mode/frame type/Q value, 4 works out best among all values, providing overall 0.1% coding gain on the test set. Change-Id: I6b2583a8aa5db5e7e5c65c646301909c0c58f876
-
- Oct 01, 2010
-
-
Johann Koenig authored
-
Adrian Grange authored
If temporal filtering is enabled but a filter type is not specified centered filter mode is used by default. Change-Id: I87306f267c1390074c806c506a69b4ba914d92a2
-
Timothy B. Terriberry authored
Like the ARMv6 code, these functions were accessing values below the stack pointer, which can be corrupted by signal delivery at any time.
-
- Sep 30, 2010
-
-
John Koleszar authored
-
John Koleszar authored
-
Adrian Grange authored
Modified the range checking of parameters used in the AltRef temporal filter (arnr-max-frames, arnr-strength, arnr-type) and default values for each of them. Change-Id: Ib261028d501b9523f6e44cb4790cc52167b6e92b
-
- Sep 29, 2010
-
-
John Koleszar authored
This function graduated from being a test func to something that's on by default. Rename it and remove some spurious comments that confuse its status. Change-Id: I689695a3ad29c35e9a72a43ec93766733ac6c20b
-
Fritz Koenig authored
-
John Koleszar authored
Loopfilter deltas are initialized to zero on keyframes in the decoder. The values then persist from the previous frame unless an update bit is set in the bitstream. This data is not included in the entropy data saved by the 'refresh entropy' bit in the bitstream, so it is effectively an additional contextual element beyond the 3 ref-frames and the entropy data. The encoder was treating this delta update bit as update-if-nonzero, meaning that the value would be refreshed even if it hadn't changed, and more significantly, if the correct value for the delta changed to zero, the update wouldn't be sent, and the decoder would preserve the last (presumably non-zero) value. This patch updates the encoder to send an update only if the value has changed from the previously transmitted value. It also forces the value to be transmitted in error resilient mode, to account for lost context in the event of lost frames. Change-Id: I56671d5b42965d0166ac226765dbfce3e5301868
-
Paul Wilkins authored
Allow coefficient optimization for good quality speed 0. Change-Id: Id0cb363df6823c6798671584fbba097916a7df2c
-
Adrian Grange authored
-
Adrian Grange authored
Moved the bounds computation on vertical MV component out of the loop that processes MBs within a MB row.
-
Paul Wilkins authored
Create look up tables for controlling the active quantizer range. Some initial tuning to improve quality circa 0.5% on test set. Clean up of some stats output code Change-Id: Ia698a8525f8b8129a503cadace3ee73fe888f543
-
- Sep 28, 2010
-
-
Fritz Koenig authored
- Scheduling for Atom processors - Combining of macros to allow for better interleaving - Change from multiplies to adds for main filter - Use of movhps/movlps to fill xmm registers without shifting and orring Change-Id: I0b3500a5f58abf7085253ec92d64c8a96723040b
-
Adrian Grange authored
Enabled the first-pass encode to output the map of macroblock coding modes required by the AltRef filter.
-
Adrian Grange authored
-
Adrian Grange authored
Modified AltRef temporal filter to adapt filter length based on macroblock coding modes selected during first-pass encode. Also added sub-pixel motion compensation to the AltRef filter.
-
Johann Koenig authored
-
Johann Koenig authored
this was excluding all .asm files when it should have just been .asm files in the top level directory and .asm.s files lower down. also be more restrictive on some other items, and run the whole thing through sort to keep it organized Change-Id: Ia48525033226b13098a491ce89465d0377b990c2
-
Timothy B. Terriberry authored
The existing code applied a 6-tap filter with 0's on either end. We're already paying the branch penalty to avoid computing the two extra columns needed as input to this filter. We might as well save time computing the filter as well. This reduces the inner loop from 21 instructions to 16, the number of loads per iteration from 4 to 1, and the number of multiplies from 7 to 4. The gain in overall decoding performance, however, is small (less than 1%). This change also means we now valgrind clean on ARMv6, which is its real purpose. The errors reported here were valgrind's fault (it does not detect that 0 times an uninitialized value is initialized), but Julian Seward says it would slow down valgrind considerably to make such checks. Speeding up libvpx rather, even by a small amount, seems a much better idea if only to enable proper valgrind checking of the rest of the codec. Change-Id: Ifb376ea195e086b60f61daf1097d8910c4d8ff16
-
- Sep 27, 2010
-
-
Paul Wilkins authored
This affects control of the active quantizer range. Change-Id: I30511fc81ac9f75ff20d9f1372382423d56739da
-
John Koleszar authored
Missed the .h file in the move. Change-Id: Ib408183fbb4d019fd46394b362f89ca6ea9d10bc
-
John Koleszar authored
-
Johann Koenig authored
-
Johann Koenig authored
-
John Koleszar authored
-
- Sep 24, 2010
-
-
Timothy B. Terriberry authored
This function was accessing values below the stack pointer, which can be corrupted by signal delivery at any time. Change-Id: I92945b30817562eb0340f289e74c108da72aeaca
-
Johann Koenig authored
previous implementation compared each set of values to limit and then &'d them together, requiring a compare and & for each value. this does the accumulation first, requiring only one compare Change-Id: Ia5e3a1a50e47699c88470b8c41964f92a0dc1323
-
John Koleszar authored
-
John Koleszar authored
This patch avoids compiling some debugging code in onyx_if.c. The most significant fix is to avoid generating code for vp8_write_yuv_frame, which is never called. Some other code was removed by the dead code elimination performed by the compiler, and this patch does it with the preprocessor instead. There are advantages both ways. Change-Id: I044fd43179d2e947553f0d6f2cad5b40907ac458
-
John Koleszar authored
Add the missing -isysroot and -mmacosx-version-min flags to ICC builds. Fixes issue #185. Change-Id: I2fb37fcaaafef7122a61ced603569f4aa17f8bbc
-
Yunqing Wang authored
-
John Koleszar authored
reconintra_mt.c is only required for building the decoder right now. It could definitely be used for the encoder in the future, but it currently depends on decoder only data structures. (onyxd_int.h, VP8D_COMP, etc). Move it from common/ to decoder/ until the necessary changes to the common multithread code are complete. This patch is needed to build with --disable-vp8-decoder. Change-Id: I568c52221a2b309234d269675cba97131ce35c86
-
John Koleszar authored
Shared libs generally require PIC, so this saves a little typing at configure time. Change-Id: I357d70cc68434f3283fee78873052d2b7d77c777
-
John Koleszar authored
Build with -O2 rather than -O3, to dissuade the compiler from inlining so much. See issue #1. Change-Id: Iacb8ddb59125d3f01c5fea846b45a1c004c9aee0
-
John Koleszar authored
-
- Sep 23, 2010
-
-
John Koleszar authored
Having these symbols be available as functions rather than data is occasionally more convenient. Implemented this way rather than a get-codec-by-id style to avoid creating a link-time dependency between the encoder and the decoder. Fixes issue #169 Change-Id: I319f281277033a5e7e3ee3b092b9a87cce2f463d
-