- 07 Aug, 2015 1 commit
-
-
Alex Converse authored
Change-Id: I20c7b42631b579fade6cf7ebf6d4c69b2fcb5e5e
-
- 03 Aug, 2015 1 commit
-
-
Yaowu Xu authored
Ssim_vars is used to accumulate stats based 4x4 pixel blocks, this commit changes the allocations size to be based on mi_rows and mi_cols to avoid out-of-bound memory access for larger size videos. The hard coded 720x480 can only work for image size up to 2880x1920. Change-Id: Id9d07f3f777385b448ac88a6034b7472e4cf3c79
-
- 31 Jul, 2015 1 commit
-
-
Zoe Liu authored
It in essence refactors the code for both the interpolation filtering and the convolution. This change includes the moving of all the files as well as the changing of the code from vp9_ prefix to vpx_ prefix accordingly, for underneath architectures: (1) x86; (2) arm/neon; and (3) mips/msa. The work on mips/drsp2 will be done in a separate change list. Change-Id: Ic3ce7fb7f81210db7628b373c73553db68793c46
-
- 28 Jul, 2015 1 commit
-
-
Jingning Han authored
Clean up the forward 2D-DCT function names in vpx_dsp. Change-Id: I3117978596d198b690036e7eb05fe429caf3bc25
-
- 23 Jul, 2015 1 commit
-
-
Marco authored
Avoid scaling the references if they have already been scaled. Change only affects 1 pass non-svc mode for now. Change-Id: I204f4079c026cba7adce7a7f855d072f6139ccec
-
- 20 Jul, 2015 1 commit
-
-
hui su authored
Change-Id: Ib919a8ec2ec66d460d2f8a26d72aabc09dcbbd72
-
- 15 Jul, 2015 1 commit
-
-
Marco authored
The fast scaling for 1 pass mode was being used only on the first frame after resizing event (because resize_scale_num/den is set to 1 and only changed for first frame following resize event). Change-Id: I723b63e21823eb858f25f5662d2bbe4f1842e61f
-
- 14 Jul, 2015 1 commit
-
-
Marco authored
Proper use/update of resize_state and resize_pending to constrain the total amount of downsizing to be at most one scale down, for now. Change-Id: Id18fc32499f2fbdbec16728dcdc9e4eac09098f0
-
- 10 Jul, 2015 1 commit
-
-
Marco authored
Use faster scaling on source. Change-Id: I968df97239a86834c96126b86832d3d6d0875a53
-
- 08 Jul, 2015 2 commits
-
-
Alex Converse authored
The encoder gets its dqcoeff from the context tree. In the decoder move it to directly after MACROBLOCKD. Change-Id: I46c9b76f26956a360d17de0b26ecb994dae34ecb
-
paulwilkins authored
Even if the recode loop is not enabled for the current frame type trap the case where the projected size of a a frame is above the maximum allowed in recode_loop_test() Change-Id: I453004694b8f8699e3c2a83252e9f83adccdda4e
-
- 07 Jul, 2015 2 commits
-
-
Johann authored
Change-Id: I66bf6720c396c89aa2d1fd26d5d52bf5d5e3dff1
-
Jingning Han authored
Change-Id: I202d4924e627eec94838741df004ed9259d38b88
-
- 06 Jul, 2015 2 commits
-
-
James Zern authored
expose filter_kernels[] and do the table lookup directly Change-Id: I0b10bff0327c3e01a723736141a9ffd377cd3d20
-
Debargha Mukherjee authored
Adds two new vp9 parameters --min-gf-interval and --max-gf-interval to enable testing based on frequency of alt-ref frames. Also adds a unit-test to test enforcement of min-gf-interval. For both these parameters the default value is 0, which indicates they are picked by the encoder, based on resolution and framerate considerations. If they are greater than zero, the specified parameter is honored. (Additional note by paulwilkins) Note that there is a slight oddity in that key frames are also GFs and considered part of GF only group. However they are treated as not being part of an arf group because for arf groups the previous GF is assumed to be the terminal or overlay frame for the previous group. (end note) Change-Id: Ibf0c30b72074b3f71918ab278ccccc02a95a70a0
-
- 02 Jul, 2015 1 commit
-
-
Jingning Han authored
Replace vp9_ prefix with vpx_ for common multi-threading functions. Change-Id: I941a5ead9bfe8213fdad345511d2061b07797b55
-
- 29 Jun, 2015 1 commit
-
-
Scott LaVarnway authored
to MB_MODE_INFO_EXT. This saves 36 bytes per 8x8 area for both the decoder and encoder. (encoder has two MODE_INFO buffers) Change-Id: If006abb2224acaf326df3c2be09e77e967662107
-
- 19 Jun, 2015 1 commit
-
-
Marco authored
Decision to scale down/up is based on buffer state and average QP over previous time window. Limit the total amount of down-scaling to be at most one scale down for now. Reset certain quantities after resize (buffer level, cyclic refresh, rate correction factor). Feature is enable via the setting rc_resize_allowed = 1. Change-Id: I9b1a53024e1e1e953fb8a1e1f75d21d160280dc7
-
- 16 Jun, 2015 1 commit
-
-
Marco authored
set_frame_size() is being called twice, once before entering encode_encode_frame_to_data_rate(), and once again in that function. No need to call it twice for one-pass mode. Change-Id: I5fabaf0a90482d4f42cd89ef7ae1402c31aec600
-
- 13 Jun, 2015 1 commit
-
-
James Zern authored
this function is only needed with CONFIG_INTERNAL_STATS Change-Id: I9c8d16cb9069dd8370f8b30329933c0d97f6d0aa
-
- 09 Jun, 2015 1 commit
-
-
Paul Wilkins authored
For content that is identified as likely to contain some animation or graphics content, increase the availability of split modes for good quality speeds 1-3. On a problem test animation clip this improves metrics results by about 0.25 db and makes a noticeable difference visually. It also causes a small drop in file size (~0.5%) but a rise in encode time of about 5-6% at speed 2. For more normal content it should have no effect. Change-Id: Ic4cd9a8de065af9f9402f4477a17442aebf0e439
-
- 03 Jun, 2015 1 commit
-
-
Johann authored
Some places are using the unoptimized variance function. This was never intended and does not fit into the optimization framework. Change-Id: Id96238407aad03b0ffd4a46cd183555a026daedc
-
- 02 Jun, 2015 1 commit
-
-
Marco authored
-Make Rate control work for SVC 1 pass CBR mode. -Added temporal layering mode. -Fixed bug in non-rd variance partition. -Modified/updated the sample encoders (vp9_spatial_svc_encoder, vpx_temporal_svc_encoder). -Added datarate unittest(s) for 1 pass CBR SVC. Change-Id: Ie94b1b68a56ea1267b5087c625e5df04def2ee48
-
- 27 May, 2015 2 commits
- 26 May, 2015 2 commits
-
-
Minghai Shang authored
Change-Id: Ibab09aa0e8c69cf5efea2f0ec035e5da9cc894b0
-
Johann authored
subpel functions will be moved in another patch. Change-Id: Idb2e049bad0b9b32ac42cc7731cd6903de2826ce
-
- 20 May, 2015 4 commits
-
-
Minghai Shang authored
Change-Id: I8655a6760ab61947c09f337ddd9f4c1baf803a56
-
Minghai Shang authored
Change-Id: I33b0384ee87f83950e03be6c999bc5f193055fd3
-
paulwilkins authored
This patch provides a partial rapid feedback of bits resulting from extreme undershoot. Some improvement on some problem animated material but in its current form only a small impact on the metrics results of our standard test sets. Change-Id: Ie03036ea8123bc2553437cb8c8c9e7a9fc5dac5d
-
paulwilkins authored
This patch addresses two issues that can occur when the encoder chooses to use a mixture of ARF and GF groups. The first issue relates to a failure to reset the "ARF active" flag correctly when transitioning from coding ARF groups to coding GF groups. This caused some golden frames to be encoded with an incorrect bit rate target as if they were ARF overlay frames. The second issue relates to the encoding of a single short GF group just before a key frame. Where the last group before a key frame is an ARF group we expect the final frame before the key frame to be an low data rate overlay frame. However, when the last group is a GF group, the final frame before the key frame should be a normal frame with a normal bit allocation. This issue had the potential to cause a single poorly coded frame just before a key frame. If that key frame were a forced key frame rather than a real scene cut, this might cause pulsing. Change-Id: Idf1eb5eaf63a231495a74de7899236e1ead9fb00
-
- 15 May, 2015 1 commit
-
-
James Zern authored
silences missing prototype warnings Change-Id: I3338fcaa67b5dcdf6bf237e8b374db3befd18753
-
- 14 May, 2015 1 commit
-
-
paulwilkins authored
Testing on another rate control patch reveals that in some situations, where the encoder is flipping in and out of arf mode, we get an encoder decoder mismatch. Whilst it is still not clear why, skipping the last buffer update seems to trigger the problem. Until I can establish why, or if there is another underlying cause, I am reverting this change. This reverts commit e5112b3a. Change-Id: I315c5200414de89458015823344b7367e9dd75ba
-
- 13 May, 2015 1 commit
-
-
Johann authored
With the sad functions, and hopefully the variance functions soon, moving to the vpx_dsp location, place the defines used in the reference C code in a common location. Change-Id: I4c8ce7778eb38a0a3ee674d2f1c488eda01cfeca
-
- 12 May, 2015 1 commit
-
-
Yaowu Xu authored
The computation of new metrics is not supported yet in highbitdepth mode. This commit adds protection to make sure the computation is done only when highbitdepth is not on. This protection shall be revised when support of highbitdpeth computation is added. This resolves the encoder crash when configured with both --enable-internal-stats --enable-vp9-highbitdepth Change-Id: Id9f4bcc4fa26d9ca0e9eabade83f3f88a5b212e6
-
- 11 May, 2015 1 commit
-
-
Adrian Grange authored
When the frame size changes we must recompute details of the tile dimensions. Change-Id: Ie519bd6da47b5cd43933c0bcfc0f2429bcb01986
-
- 08 May, 2015 1 commit
-
-
paulwilkins authored
Where a frame appears to be a repeat of an earlier frame or frame buffer, but the first pass code does not anticipate this (usually because it is matching the GF or ARF buffer not the last frame buffer), do not update the last frame buffer. This helps ensure that the content of the last frame buffer is kept "different" where possible, and not updated to match the GF or ARF. This is particularly helpful in some animated sequences where there are groups of repeating frames. Here it has quite a big impact. However, in most of our standard test clips it has little or no impact. Change-Id: I77332ee1a69f9ffc0c6080bfeb811c43fd8828e6
-
- 06 May, 2015 1 commit
-
-
Johann authored
Create a new component, vpx_dsp, for code that can be shared between codecs. Move the SAD code into the component. This reduces the size of vpxenc/dec by 36k on x86_64 builds. Change-Id: I73f837ddaecac6b350bf757af0cfe19c4ab9327a
-
- 29 Apr, 2015 2 commits
-
-
James Zern authored
vestigial. replace instances with memset() which they already were being defined to. Change-Id: Ie030cfaaa3e890dd92cf1a995fcb1927ba175201
-
James Zern authored
vestigial. replace instances with memcpy() which they already were being defined to. Change-Id: Icfd1b0bc5d95b70efab91b9ae777ace1e81d2d7c
-