- 31 Aug, 2015 1 commit
-
-
Johann authored
Change-Id: I2e387a06484a06301f3cd6600c4ba2f4335b61ee
-
- 28 Aug, 2015 1 commit
-
-
Yunqing Wang authored
Spatial/temporal svc code was removed. Verified using Borg test, and the results before and after the change are matching. Change-Id: I4c2ee5cd560428e3e50be02e57e5871ef4246390
-
- 27 Aug, 2015 1 commit
-
-
James Zern authored
prevents redeclaration warnings; vp8 has its own define which will be resolved in a future commit Change-Id: Ic941fef3dd4262fcdce48b73075fe6b375f11c9c
-
- 26 Aug, 2015 1 commit
-
-
Yunqing Wang authored
Code cleanup. Change-Id: I668bd5a4e5fbe96969d51d9ee777fc5f1d8abfe6
-
- 17 Aug, 2015 1 commit
-
-
hui su authored
Change-Id: Id691d8a9d4aa137e8de73fe680016fd4fd070e6e
-
- 13 Aug, 2015 2 commits
- 12 Aug, 2015 3 commits
-
-
Jingning Han authored
Change-Id: Ic5004f8bdc1c2b025b598e80374ee1f286ea95ee
-
Jingning Han authored
Remove the vp9_ prefix from vp10 file names. Change-Id: I513a211b286a57d6126fc1b0fbfd6405120014f1
-
Jingning Han authored
This commit folks the VP9 and VP10 codebase and makes libvpx support VP8, VP9, and VP10. Change-Id: I81782e0b809acb3c9844bee8c8ec8f4d5e8fa356
-
- 10 Aug, 2015 1 commit
-
-
Alex Converse authored
Use system_state.h in vpx_dsp and remove unneeded includes of vp9_systemdependent.h. Change-Id: I92557ec6dd5aa790160b4f31fe7967db0d7ec3c4
-
- 06 Aug, 2015 2 commits
-
-
Jingning Han authored
Change-Id: I83ed3422f1f4009675ad2f5c4b7236bc7b83b30e
-
Marco authored
-For ambient qp in active_worst setting: increase the initial averaging time (from very first frame) to account for avg_qp of key_frame. -In postencode on key frame: update the last_q/avg_q[key_frame] for all temporal layers. Change-Id: I5313153d350b1045b4835ce948dfffb7d2039b52
-
- 05 Aug, 2015 1 commit
-
-
Marco authored
Condition usage of rc.frames_since_golden to non-svc mode. rc.frames_since_golden, which is used in non-svc mode to add second reference, was causing, under certain condiiton, the turning off of golden reference for svc case. Change-Id: Icec644d235d0471e56d8ff73d6c37278bd6ecd3b
-
- 29 Jul, 2015 1 commit
-
-
Alex Converse authored
Change-Id: I264ca534cd7d4755906e20aea47e7a2523bca611
-
- 17 Jul, 2015 1 commit
-
-
Marco authored
Remove the use of drop_frames_water_mark, as this is used for frame dropping control. Use fixed threshold for now on buffer underflow. Change-Id: If0ddda9f7f6fa96067cdcb0eccb42e17bda37c32
-
- 15 Jul, 2015 1 commit
-
-
Marco authored
Use drop_frames_water_mark for threshold on buffer underflow, and change threshold for resize down. Change-Id: I2de19adce50abe9bcdc0b107528cec8cc1857fcc
-
- 14 Jul, 2015 2 commits
-
-
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
-
Debargha Mukherjee authored
From Change Ibf0c30b72074b3f71918ab278ccccc02a95a70a0 There is still an issue relating to one animated test clip with repeat patterns where this change effectively increase the default maximum arf interval by +1. This can be examined seperately. Change-Id: Idd01d5480fc45202d8a059a0c3afc0997cc5bdd1
-
- 06 Jul, 2015 1 commit
-
-
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
-
- 25 Jun, 2015 1 commit
-
-
Marco authored
Only do the check for resizing if the feature is selected (i.e., resize_mode = RESIZE_DYNAMIC). And modify condition for checking to be resize_count >= window, (since framerate can change). Change-Id: Idceb4e50956bb965a1492b4993b0dcb393c9be4d
-
- 19 Jun, 2015 2 commits
-
-
Yaowu Xu authored
Change-Id: Ida8a04370895ed14bd118324ec2577da926e4648
-
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
-
- 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
-
- 20 May, 2015 2 commits
-
-
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: Idaf68d83d2cb03847f3ee002c4d00c2ac79da604
-
- 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
-
- 11 May, 2015 1 commit
-
-
Marco authored
When aq-mode=3 is enabled, only for base layer frames should the qp of the frame incorporate the segment delta-qp. This was causing more rate mismatch for the enhancement layer frames when running temporal layers with aq-mode=3 on. Change-Id: I1c5e69d1ef8a51188af8696753c17fd8f67699b3
-
- 01 May, 2015 1 commit
-
-
paulwilkins authored
Previously limit on max interval set to 0.5 seconds. Though this helped some low frame rate material it appears to be a bit too aggressive for some 24 and 25 fps content. This patch relaxes the limit to 0.75 seconds. The patch also adds a new minimum interval variable to replace the current hard wired value. This allows us to impose a limit on the maximum number of primary arfs per second for high frame rate (e.g. 50 & 60fps) content. This is to address concerns regarding playback performance on some platforms if there is a high base frame rate and very frequent arfs. Change-Id: I373e8b6b2a8ef522eced6c6d2cceb234ff763fcf
-
- 16 Apr, 2015 1 commit
-
-
paulwilkins authored
This patch limits the maximum arf interval length to approximately half a second. In some low fps animations in particular the existing code was selecting an overly long interval which was hurting visual quality. For a sample problem test clip (360P animation , 15fps, ~200Kbit/s) this change also improved metrics by >0.5 db. There may be some clips where this hurts metrics a little, but the worst case impact visually is likely to be less than having an interval that is much too long. On more normal material at 24 fps or higher, the impact is likely to be nil/minimal. Change-Id: Id8b57413931a670c861213ea91d7cc596375a297
-
- 11 Mar, 2015 2 commits
-
-
Adrian Grange authored
Added clamp on the rate correction factor after it has been scaled. Change-Id: I5d4b46a101987b43c5bcfd7e0bd1b7b4d53640a4
-
Deb Mukherjee authored
Some rate control adjustments to control overshoot in the constrained quality mode. Change-Id: I8907b9a883642d779009d0a138adfa6ba67e7f41
-
- 10 Mar, 2015 2 commits
-
-
Marco authored
For non-SVC 1 pass CBR: make the GF update interval a multiple of the cyclic refresh period, and use encoding stats to prevent GF update at certain times. Change-Id: I4c44cacc2f70f1d27391a47644837e1eaa065017
-
Adrian Grange authored
The return value from vp9_compute_qdelta_by_rate, which is a delta value for the quantizer, could never be 0 if (qindex == rc->worst_quality). This occurs because target_index was setup unconditionally in the loop and yet the loop counter stopped at (rc->worst_quality - 1). Change-Id: I6b59cd9b5811ff33357e71cd7d814c5e53d291f2
-
- 09 Mar, 2015 1 commit
-
-
paulwilkins authored
Adjustment previously only enabled in VBR mode. This patch allows adjustment of min and max q for CBR and adjustment of max q only for CQ mode. Change-Id: Id5e583f3d50453cd544fc57249acacd946457482
-
- 13 Feb, 2015 1 commit
-
-
Yaowu Xu authored
This commit prevent the encoder to update last_frame_type when a frame is dropped in the encoder. Prior to this fix, if there is a dropped frame immediatedly after a key frame, decoder would have the value of last_frame_type as key frame, different from encoder as the dropped frame in encoder would have updated the value to an inter frame. This leads to different probability update in encoder and decoder, thereby encoder/decoder mismatch. This fixes issue #941 Change-Id: I27115224b138bec43ae3916c016574f5740822b0
-
- 11 Feb, 2015 1 commit
-
-
Adrian Grange authored
Change-Id: I7f63c2940256a5dadf9a29a853809290dd9e98ed
-
- 10 Feb, 2015 1 commit
-
-
Adrian Grange authored
Note: This feature is still in development. Add an option for the encoder to decide the resolution at which to encode each frame. Each KF/GF/ARF goup is tested to see if it would be better encoded at a lower resolution. At present, each KF/GF/ARF is coded first at full-size and if the coded size exceeds a threshold (twice target data rate) at the maximum active Q then the entire group is encoded at lower resolution. This feature is enabled in vpxenc by setting: --resize-allowed=1 In addition, if the vpxenc command line also specifies valid frame dimensions using: --resize-width=XXXX & --resize_height=YYYY then *all* frames will be encoded at this resolution. Change-Id: I13f341e0a82512f9e84e144e0f3b5aed8a65402b
-
- 28 Jan, 2015 1 commit
-
-
Paul Wilkins authored
Remove damping parameter and use the damping formula introduced by Yaowu Xu in all cases. Change-Id: I18db7e0d0f262d5140102f259ab07821d374d285
-