- 24 Sep, 2013 - 1 commit
-
-
Yaowu Xu authored
Both first pass and mbgraph search use block size 16x16 for motion estimation. This commit put a limit of motion vector range. The effective range allows the entire 16x16 with required subpel interpolation input to be completely outside image border, but not any further away from image border. Change-Id: Id70a5ed08be49e70959f064859d72adc7d775d08
-
- 23 Sep, 2013 - 1 commit
-
-
Deb Mukherjee authored
Adds modeled functions to decide the qp for altref frames in constant q mode similar to other functions in use in bitrate mode. Also turns on the constrained quality mode (end-usage=2) option which was turned off before. Basic testing shows the mode works in principle, to cap bitrate to the target-bitrate specified, while allowing lower bitrate depending on the cq-level specified. The mode will need to be improved over time. Results for constant quality vs bitrate control mode: derfraw300/fullderfraw: +3.0% at constant quality over bitrate control. fullstdhdraw: +4.341% stdhdraw250: +5.361% Change-Id: If5027c9ec66c8e88d33e47062c6cb84a07b1cda9
-
- 19 Sep, 2013 - 1 commit
-
-
Yaowu Xu authored
Change-Id: I76f440a917832c02d7a727697b225bac66b99f56
-
- 11 Sep, 2013 - 1 commit
-
-
Scott LaVarnway authored
mode_info_context was stored as a grid of MODE_INFO structs. The grid now constists of pointers to MODE_INFO structs. The MODE_INFO structs are now stored as a stream (decoder only), eliminating unnecessary copies and is a little more cache friendly. Change-Id: I031d376284c6eb98a38ad5595b797f048a6cfc0d
-
- 10 Sep, 2013 - 1 commit
-
-
Yunqing Wang authored
Thank Paul for the suggestions. While turning on static-thresh for static-image videos, a big jump on bitrate was seen. In this patch, we detected static frames in the video using first-pass stats. For different cases, disable encode breakout or reduce encode breakout threshold to limit the skipping. More modification need be done to break incorrect partition picking pattern for static frames while skipping happens. Change-Id: Ia25f47041af0f04e229c70a0185e12b0ffa6047f
-
- 09 Sep, 2013 - 1 commit
-
-
James Zern authored
This reverts commit dae17734 Encode crashes, leaks and increases integer overflow errors. Change-Id: I595aa2649bb8d0b6552ff91652837a74c103fda2
-
- 06 Sep, 2013 - 2 commits
-
-
Deb Mukherjee authored
Adds a new end-usage option for constant quality encoding in vpx. This first version implemented for VP9, encodes all regular inter frames using the quality specified in the --cq-level= option, while encoding all key frames and golden/altref frames at a quality better than that. The current performance on derfraw300 is +0.910% up from bitrate control, but achieved without multiple recode loops per frame. The decision for qp for each altref/golden/key frame will be improved in subsequent patches based on better use of stats from the first pass. Further, the qp for regular inter frames may also be varied around the provided cq-level. Change-Id: I6c4a2a68563679d60e0616ebcb11698578615fb3
-
Scott LaVarnway authored
mode_info_context was stored as a grid of MODE_INFO structs. The grid now constists of a pointer to a MODE_INFO struct and a "in the image" flag. The MODE_INFO structs are now stored as a stream, eliminating unnecessary copies and is a little more cache friendly. For the test clips used, the decoder performance improved by ~4.3% (1080p) and ~9.7% (720p). Patch Set 2: Re-encoded clips with latest. Now ~1.7% (1080p) and 5.9% (720p). Change-Id: I846f29e88610fce2523ca697a9a9ef2a182e9256
-
- 28 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I752e374867d459960995b24d197301d65ad535e3
-
- 16 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Redundant dst, pre[2] from build_inter_predictors_args, unused cm from encode_b_args. Change-Id: I2c476cd328c5c0cca4c78ba451ca6ba2a2c37e2d
-
- 15 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I4fad357465022d14bfc7e13b348c6da267587314
-
- 05 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I428c4d42212b757112e3acfe5b81314cfbb5fd6b
-
- 01 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I27471768980fc631916069f24bc7c482a5c9ca17
-
- 25 Jul, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Removing unused constants, macros, and function declarations. Using ROUND_POWER_OF_TWO macro, vp9_zero, vp9_copy where possible. Moving #include from *.h to *.c. Merging for loops for motion vectors. Change-Id: Ic3bf841764a2bb177128bb3a6d7aa8f68229cd13
-
- 18 Jul, 2013 - 1 commit
-
-
Ronald S. Bultje authored
This prevents a duplicate memcpy of a 128-byte struct every time set_scale_factors() is called (which is a lot), thus leading to a decrease from 3.7 MB to 1.85 MB of struct copying per 64x64 block RD/partition loop. Overall, this decreases encoding time of the first 50 frames of bus @ 1500kbps (speed 0) from 1min5.9 to 1min4.9, i.e. about a 1.5% overall speedup. We can likely get more gains by removing the copy of the other struct (and replacing it with an indexing) as well. Change-Id: I3dceb7e79f71e6fe911b11cc994cf89a869dde7a
-
- 16 Jul, 2013 - 1 commit
-
-
James Zern authored
s/frame_rate/framerate/g Change-Id: I6fc3e088e419c5f46e3a9390dd8a2cad2677a2fc
-
- 12 Jul, 2013 - 1 commit
-
-
Deb Mukherjee authored
Implements some of the helper functions more efficiently with lookups rathers than branches. Modeling function is consolidated to reduce some computations. Also merged the two enums BLOCK_SIZE_TYPES and BlockSize into one because there is no need to keep them separate (even though the semantics are a little different). No bitstream or output change. About 0.5% speedup Change-Id: I7d71a66e8031ddb340744dc493f22976052b8f9f
-
- 04 Jul, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Removing set_refs, adding set_ref function. Change-Id: I5635c478b106ae4e57d317f1c83d929644307e63
-
- 02 Jul, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ia547a5dd7650b771fd00edd673ab9f920270731c
-
- 26 Jun, 2013 - 1 commit
-
-
Jingning Han authored
This function is empty, hence is removed. Change-Id: Ia9d01710806bffe0398a6dc9405f8a5a81b27d74
-
- 20 Jun, 2013 - 1 commit
-
-
Jim Bankoski authored
need to rework these Change-Id: I17dc2c88d2faadd2f8fb117c52c25f04ea2e9856
-
- 08 Jun, 2013 - 1 commit
-
-
Ronald S. Bultje authored
Change-Id: Iec41736c2b6140715f90f40de5ae6cf52497a9b8
-
- 07 Jun, 2013 - 2 commits
-
-
Jingning Han authored
WIP: trying to resolve the mismatch issue in extending frame dimension into multiples of 8. Change-Id: I24e7638ab3c50e21e6969c1eeed4f607d6f11f65
-
Ronald S. Bultje authored
Code intra/inter, then comp/single, then the ref frame selection. Use contextualization for all steps. Don't code two past frames in comp pred mode. Change-Id: I4639a78cd5cccb283023265dbcc07898c3e7cf95
-
- 31 May, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Ib557cc6351404b9e178e95a545883eb3666f11f0
-
- 30 May, 2013 - 1 commit
-
-
Ronald S. Bultje authored
It remains as a local define in rdopt.c so we can distinguish between split and non-split modes in the RD loop, but disappears outside that scope in the codec. Change-Id: I98c18fe5ab7e4fbd1d6620ec5695e2ea20513ce9
-
- 16 May, 2013 - 2 commits
-
-
John Koleszar authored
This code is no longer needed for correct intra prediction. Change-Id: I822d1a8b0ad0a00e7c4c6e7b2931790c39d1267d
-
John Koleszar authored
Adds a subsampling aware border extension function. This may be reworked soon to support more than 3 planes. Change-Id: I76b81901ad10bb1e678dd4f0d22740ca6c76c43b
-
- 15 May, 2013 - 1 commit
-
-
Jingning Han authored
Always initialize the mode_info with sb_type of BLOCK_SIZE_MB16X16 for the first-pass encoding test. Change-Id: Ic86393eeef981bdd523a5b44cfac3f0b24c068b7
-
- 10 May, 2013 - 1 commit
-
-
John Koleszar authored
Make framebuffer allocations according to the chroma subsamping factors in use. A bit is placed in the raw part of the frame header for each of the two subsampling factors. This will be moved in a future commit to make them part of the TBD feature set bits, probably only set on keyframes, etc. Change-Id: I59ed38d3a3c0d4af3c7c277617de28d04a001853
-
- 09 May, 2013 - 2 commits
-
-
John Koleszar authored
The chroma planes are not used during the first pass encode, but the vp9_encode_sb() function was operating on them anyway. This was causing the use of uninitialized memory. Change-Id: I5ebafcd3d5e34ed91a8336dad159b573995a939f
-
Dmitry Kovalev authored
Change-Id: Ia2814402e3c2ec97c24c536c05f0f526fe1a431c
-
- 07 May, 2013 - 2 commits
-
-
Dmitry Kovalev authored
Adding static swap_yv12 function to vp9_firstpass.c. Change-Id: I7da9caab9720498db4a74c627901bf37816ed06c
-
Jingning Han authored
Pull sb8x8 out of experimental list. verified via borg run tests. Fixed unit test failures. Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
-
- 06 May, 2013 - 2 commits
-
-
John Koleszar authored
There is only one instance of these structures, no need for them to be allocated separately on the heap. Change-Id: I1333cc92d06bbe21be643c2b2f0e3936f0264cac
-
Scott LaVarnway authored
This setup is now handled by vp9_build_intra_predictors() when left_available and/or up_available is zero. Change-Id: I59cec0ab95f8be69ce885fd20727510e4deef8a0
-
- 02 May, 2013 - 1 commit
-
-
John Koleszar authored
Creates a common encode (subtract, transform, quantize, optimize, inverse transform, reconstruct) function for all sb sizes, including the old 16x16 path. Change-Id: I964dff1ea7a0a5c378046a069ad83495f54df007
-
- 26 Apr, 2013 - 2 commits
-
-
Ronald S. Bultje authored
Change-Id: I087e08e7909a406b71715b8525c104208daa6889
-
John Koleszar authored
All members can be referenced from their per-plane counterparts, and removes assumptions about 24 blocks per macroblock. Change-Id: I7ff2fa72d22c29163eb558981c8193765a8113d9
-
- 25 Apr, 2013 - 1 commit
-
-
John Koleszar authored
Access these members from MACROBLOCKD instead. Change-Id: I2574622e577bb9feede47f6b7ccbb11f3e928ca8
-