- 21 Oct, 2013 - 1 commit
-
-
Dmitry Kovalev authored
This value is a global frame-level flag, not a macroblock-level. Change-Id: Ie8c5790a931150741c2167c00c3e3dd2cf26744d
-
- 19 Oct, 2013 - 2 commits
-
-
Paul Wilkins authored
This 2-pass rate control setting allocates bits based on first pass stats to each kf group, gf group and individual frame but does not correct the bits left and allocation after each frame. In other words it recommends a bit allocation for each frame but does not try and correct any over or under spend on a frame over the remainder of the clip. This reduces the accuracy of rate control in terms of hitting an average bitrate but prevents problems that may arise because early frames either use to many or too few bits. This mode is currently more inclined to undershoot than overshoot (particularly at higher data rates). Also minor changes to rate of adaption when recode loop is not enabled. This mode is currently enabled by default for VBR. It gives the following % performance gains. derf +0.467, +1.072 yt 2.962, 2.645 stdhd 1.682, 1.595, yt-hd 2.3, 2.174 Change-Id: I3c84a9bf8884e5b345698ff0e19187f792c2f3a0
-
Paul Wilkins authored
Delta reduced because of concern about popping on some very hard clips. Also allow some frame recode at speed 2 for kf/gf/arf. Change-Id: Ib47dff42da41aa6eec83b7285fcaaca24abb851e
-
- 18 Oct, 2013 - 2 commits
-
-
Dmitry Kovalev authored
Just making fdct consistent with iht/idct/fht functions which all use stride (# of elements) as input argument. Change-Id: I2d95fdcbba96aaa0ed24a80870cb38f53487a97d
-
Dmitry Kovalev authored
That makes decoder and encoder (only bitstream writing part) a little bit simpler and faster. Moving get_sb_index() function to the encoder. Change-Id: Ie91aaeefd69c84b085948267b33556a7666c6278
-
- 17 Oct, 2013 - 5 commits
-
-
Yaowu Xu authored
In deciding the transform size for a given block in a given TX_MODE. Change-Id: I1467da09853e69cd320695a24c04e19a2f3d04fb
-
Guillaume Martres authored
Also avoid using floating-point operations when adaptive quantization is disabled. Change-Id: I54936d7afb661df049cdb3ecd246d04ac2a9d8d3
-
Dmitry Kovalev authored
Making this change in order to move allow_high_precision_mv field from MACROBLOCKD structure to VP9_COMMON (because it is a frame level flag). Change-Id: I1d006ba36d938e0caf4d40fa051e2e38df9c1108
-
Dmitry Kovalev authored
Just making fdct consistent with iht/idct/fht functions which all use stride (# of elements) as input argument. Change-Id: Id623c5113262655fa50f7c9d6cec9a91fcb20bb4
-
Dmitry Kovalev authored
It looks like we don't actually use this value. Change-Id: If21d52b597337e7755f7ea817824fc2b1e477a14
-
- 16 Oct, 2013 - 8 commits
-
-
Guillaume Martres authored
This should make parallel tiles decoding easier to implement. Change-Id: I6226456dd11f275fa991e4a7a930549da6675915
-
Guillaume Martres authored
The only case where they were intentionally pointing to different structures was in mbgraph, and this didn't have the expected behavior because both of these pointers are used interchangeably through the code Change-Id: I979251782f90885fe962305bcc845bc05907f80c
-
Guillaume Martres authored
Change-Id: I766c4b74db526efa4ff6dd2d95ef3e0beb45b6e5
-
Dmitry Kovalev authored
Moving code that gets band_translate array from get_scan_and_band() function to get_band_translate() function. Renaming get_scan_and_band() to get_scan(). Change-Id: I43047c205a1ca2a6e24be44db39dc04b7a385008
-
Dmitry Kovalev authored
Change-Id: I3528ba1c3fee761918509f9d9dc2d842c69f5a44
-
Yaowu Xu authored
instead of vp9_idct32x32_1024_add by making use the eob positions Change-Id: Iafcad20f0c75d8e00536c6a20dda76fe40a973fb
-
Marco Paniconi authored
Change-Id: I58c5436f5c95f6012fb2891cd2a02f76e4870b6a
-
Guillaume Martres authored
This should be similar to what x264 does with --aq-mode 1. It works well with clips like parkjoy and touhou (http://x264.nl/developers/Dark_Shikari/LosslessTouhou.mkv). At low bitrates, the segmentation signaling overhead may negate the benefits of this feature. (PGW) Default changed to feature OFF to allow provisional merge. Change-Id: I938abf9bb487e1d4ad3b0264ea03d9826275c70b
-
- 15 Oct, 2013 - 9 commits
-
-
Alexander Voronov authored
Updated the encoder to handle frames that are coded intra-only. Intra-only frames must be non-showable, that is, the "show frame" flag must be set to 0 in the frame header. Tested by forcing the ARF frames to be coded intra- only. Note: The rate control code will need to be modified to account for intra-only frames better than they are currently handled. Change-Id: I6a9dd5337deddcecc599d3a44a7431909ed21079
-
Jingning Han authored
Remove the semicolon in the definition of vp9_zero macro. Make all the use cases of vp9_zero of consistent format. Change-Id: Ibaf9751e8595872b12766381a93d185a4d90df8f
-
Jingning Han authored
Remove the unused variable vp9_64x64_zeros from vp9_encodeframe_. Change-Id: I34bfdcab9a9105440ad05154c1e0516e70258785
-
Jingning Han authored
Change-Id: Iac55891ac9e6f13718c9f822aa099b5ca491832a
-
Jingning Han authored
Change-Id: I2d96940fae4c7a16661a43c2bf6907d8b1c1a127
-
Dmitry Kovalev authored
Change-Id: Icbcf68b5b685a56f255ebc3859c9692accdadf9e
-
Jingning Han authored
Use the zcoeff_blk buffer of PICK_MODE_CONTEXT to store the indexes of all-zero-coeff block of the current best mode. Remove the temporary buffer best_zcoeff_blk defined in the rate-distortion optimization loop. This improves the speed performance by about 0.5% in all speed settings. Change-Id: Ie3e15988ddfa581eafa2e19a8228d3fe4a46095c
-
Dmitry Kovalev authored
Change-Id: Idd7bdb0c364d94c5a0d24c87bb8574292e4c840c
-
Dmitry Kovalev authored
Change-Id: If14265084e9b4c85c75b43e8d33a6fafad468cbc
-
- 14 Oct, 2013 - 1 commit
-
-
Jingning Han authored
This commit moves token_cache buffer into macroblock struct, instead of defining as a local variable in cost_coeffs. This avoids repeatedly re-allocating memory space in the rate-distortion optimization loop. The runtime at speed 0 reduces: bus 2000kbps, 161692ms to 159951ms football 600kbps, 229505ms to 225821ms Change-Id: If7da6b0b6d8c5138a16271a33c4548fba33d8840
-
- 11 Oct, 2013 - 9 commits
-
-
Dmitry Kovalev authored
Renames: vp9_iht_add -> vp9_iht4x4_add vp9_iht_add_8x8 -> vp9_iht8x8_add vp9_iht_add_16x16 -> vp9_iht16x16_add Change-Id: I8f1a2913e02d90d41f174f27e4ee2fad0dbd4a21
-
Dmitry Kovalev authored
Renames: vp9_short_iht4x4_add -> vp9_iht4x4_16_add vp9_short_iht8x8_add -> vp9_iht8x8_64_add vp9_short_iht16x16_add_c -> vp9_iht16x16_256_add Change-Id: Ibca7a188fd062b196787ac5efc1ea545e7f166c0
-
Dmitry Kovalev authored
Also adding static to iadst16_1d and fadst16 functions. Change-Id: I13c7df3b776f0f8efc6e80099bdb0a2f6d29edaf
-
Dmitry Kovalev authored
Values of MODE_UPDATE_PROB and VP9_COEF_UPDATE_PROB are equal, so replacing them with one constant. Inlining appropriate arguments for functions: vp9_cond_prob_diff_update (encoder) vp9_diff_update_prob (decoder) Change-Id: I1255a1cb477743b799b3bfbbcd8de6b32b067338
-
Deb Mukherjee authored
Converts the constant rddiv parameter to 128 (from 100) and implements RDCOST with bit-shift rather than multiplication. Other parameters are also adjusted to roughly keep the same balance between Rate and Distortion. There is a slight speed-up of about 0.5-1% (at speed 0) as testted on football_cif. There is a slight change in performance due to small change in the parameters. derfraw300: +0.033% stdhdraw250; +0.102% Change-Id: I70ac69f58fa71c83108f68fe41796cd19d1fc760
-
Yaowu Xu authored
The commit changes to mask available intra prediction modes for test based on prediction block size. With this patch, encoding time of CpuUsed 2 reduces from 10% to 20% for HD clips with a compression drop of 0.2% Change-Id: I65f320f1237c0f5ae3a355bf7caf447f55625455
-
Paul Wilkins authored
When the codec in VBR (or cq) mode hits its max q limits and is struggling to hit a target bandwidth, the bit target per frame collapses. In the first instance normal frames cap out at the maximum allowed Q and then the ARF and GFs do the same. This latter behavior is not generally desirable as GFs and ARFs are only effective from a quality and data rate perspective if they have at lease some level of -Q delta compared to the surrounding frames. In this patch I define a separate max Q for GFs and ARFs that is derived from but somewhat lower than that defined for normal frames. In effect there is a minimum Q delta that will always be available for GFs and ARFs regardless of the target rate and MAXQ setting. This may of course mean that the absolute lowest rate obtainable for a given clip is somewhat higher. Change-Id: I268868b28401900d0cd87e51e609cd3b784ab54a
-
Paul Wilkins authored
For VBR coding disable the recode loop for speeds > 0. Results pending. Change-Id: I2cd9a87c3fcbe39c05b954798d0671a4ca62c37f
-
Dmitry Kovalev authored
It is used only two times and it is more clear to use real type instead of typedef. Change-Id: Idc25c16504c3da4d040e0cdb33a2987631bb6a5b
-
- 10 Oct, 2013 - 3 commits
-
-
Guillaume Martres authored
This is needed to fix mbgraph but shouldn't affect anything else Change-Id: I2f515052f62e348cd3794b7ff0c139802225ea95
-
Jingning Han authored
Change-Id: Ifef756a3a91423bb9f5411f06fa092027be21ecf
-
Dmitry Kovalev authored
Renames: fdct4_1d -> fdct4 fadst4_1d -> fadst4 fdct8_1d -> fdct8 fadst8_1d -> fadst8 fdct16_1d -> fdct16 fadst16_1d -> fadst16 "_1d" suffix is redundant, so removing it. The same will happen with idct in the next change sets. Change-Id: Ibf421cd2f569146c6079269df7a31819c098265e
-