- 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
-
- 31 Aug, 2012 - 4 commits
-
-
Yunqing Wang authored
-
Yunqing Wang authored
The denoiser function was modified to reduce the computational complexity. 1. The denoiser c function modification: The original implementation calculated pixel's filter_coefficient based on the pixel value difference between current raw frame and last denoised raw frame, and stored them in lookup tables. For each pixel c, find its coefficient using filter_coefficient[c] = LUT[abs_diff[c]]; and then apply filtering operation for the pixel. The denoising filter costed about 12% of encoding time when it was turned on, and half of the time was spent on finding coefficients in lookup tables. In order to simplify the process, a short cut was taken. The pixel adjustments vs. pixel diff value were calculated ahead of time. adjustment = filtered_value - current_raw = (filter_coefficient * diff + 128) >> 8 The adjustment vs. diff curve becomes flat very quick when diff increases. This allowed us to use only several levels to get a close approximation of the curve. Following the denoiser algorithm, the adjustments are further modified according to how big the motion magnitude is. 2. The sse2 function was rewritten. This change made denoiser filter function 3x faster, and improved the encoder performance by 7% ~ 10% with the denoiser on. Change-Id: I93a4308963b8e80c7307f96ffa8b8c667425bf50
-
John Koleszar authored
-
James Zern authored
Replace DECLARE_ALIGNED_ with vpx_memalign() DECLARE_ALIGNED (__declspec(align())) does not work as intended when used on class data members: Data in classes or structures is aligned within the class or structure at the minimum of its natural alignment and the current packing setting (from #pragma pack or the /Zp compiler option) Change-Id: I304aaa6c3716fbfae24675ecf192f4b40787e83e
-
- 28 Aug, 2012 - 2 commits
- 23 Aug, 2012 - 2 commits
-
-
Scott LaVarnway authored
-
Scott LaVarnway authored
-
- 21 Aug, 2012 - 15 commits
-
-
Jim Bankoski authored
-
Scott LaVarnway authored
-
Scott LaVarnway authored
-
Yunqing Wang authored
For videos with big static background(such as video conferencing clips), the mode decision was biased to ZEROMV in order to obtain a stable background. The percentage of ZEROMV on last frame was used to predict if there is static area in current frame, and checking already-encoded neighboring macroblocks' motion vectors to make sure the local area has low motion. Change-Id: I05b3241d3a56a0bda88b6681e5646c1c8baf2e57
-
James Zern authored
-
James Zern authored
-
James Zern authored
Change-Id: Id1d0deb6a2c556a0213d916c2638ef6285c2eb00
-
James Zern authored
-
Scott LaVarnway authored
Required for frame-based multithreading Change-Id: I361ec468b5bda7836116c5f0bf3a83f60c214a73
-
John Koleszar authored
Users of libvpx should not use libm transitively, so mark it as private. Change-Id: Ic940aefe737a6f9a780ea742ea5c6be40c30a73e
-
Yunqing Wang authored
-
James Zern authored
pass a variable to make_tuple() rather than a function, fixes type errors Change-Id: Ic0cbd25d0ca35ad08c672040b4141b3b81695752
-
James Zern authored
pass a variable to make_tuple() rather than a function, fixes type errors Change-Id: I5e04b61b5ab58cc0090ef21119486ca04853af61
-
Jim Bankoski authored
-
Yunqing Wang authored
The current way of counting inter_zz_count doesn't work correctly in multi-threaded encoding. Calculating it after the frame is encoded fixed the problem. Change-Id: Ifcb1972cde950b8cc194f75c6d7b6af09e8b0e65
-
- 20 Aug, 2012 - 5 commits
-
-
Yaowu Xu authored
-
Yaowu Xu authored
-
Jim Bankoski authored
Loop filter producing wierd artifacts when repeatedly applied in noisy video. This mitigates the effect. Change-Id: If4b1a8543912d186a486f84e11d8b01f7436fa5f
-
Jim Bankoski authored
This code allows us to skip encoding if the sse is less than the error we could possibly encode. Change-Id: Iefb590dc0ee30b660495218398c7969f7d5fd19f
-
Yaowu Xu authored
Change-Id: Iaa947e640f27e6f6eaf7d845f243536bca2df513
-
- 15 Aug, 2012 - 2 commits
-
-
James Zern authored
visual studio targets do not depend on executables, only the projects produced. tested with --target=x86-win32-vs9 fixes: ... make[1]: *** No rule to make target `test_libvpx', needed by `.bins'. Stop. Makefile:17: recipe for target `.DEFAULT' failed Change-Id: I606ab32d5e26fee352f25c822e0f496eff165382
-
Mike Frysinger authored
The current parsing logic of the dumpmachine tuple lacks any arm cases which means tgt_isa never gets set, so for all arm targets, we get detected as generic-gnu. Add some basic arm checks here so the automatic detection logic works. Change-Id: Ie5e98142876025c6708604236bc519c0bdb09319
-
- 14 Aug, 2012 - 2 commits
-
-
Scott LaVarnway authored
Added checks for pthread_create() errors. Change-Id: Ie198ef5c14314fe252d2e02f7fe5bfacc7e16377
-
Mike Frysinger authored
If you build with --enabled-shared on a Linux arch not explicitly listed, the configure script will abort because it didn't detect "linux" in the fallback generic-gnu tuple. Since this is the fallback tuple and people are passing --enable-shared, assume the user knows what they're in for. Change-Id: Ia35b657e7247c8855e3a94fca424c9884d4241e3
-
- 09 Aug, 2012 - 3 commits
-
-
John Koleszar authored
-
Andoni Morales Alastruey authored
Change-Id: I737361fa9911c11017af971a80c2ffad20b01d03
-
Andoni Morales Alastruey authored
Change-Id: Ic4be3145e8a90d66aa4499416094bd08a9e09af4
-
- 08 Aug, 2012 - 4 commits
-
-
James Zern authored
using large values for the timebase, e.g., {33333, 1000000} could rollover the timestamp calculation in vp8e_encode as it was not using 64-bit math. originally reported on ffmpeg's trac: https://ffmpeg.org/trac/ffmpeg/ticket/1014 BUG=468 Change-Id: Iedb4e11de086a3dda75097bfaf08f2488e2088d8
-
James Zern authored
Change-Id: I813fa94c83df6282f382b24bbaccb1fe2fa94276
-
John Koleszar authored
-
John Koleszar authored
-