- 15 Oct, 2013 - 7 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
-
- 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 - 6 commits
-
-
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
-
Dmitry Kovalev authored
Renames: vp9_short_idct32x32_add -> vp9_idct32x32_1024_add vp9_short_idct32x32_1_add -> vp9_idct32x32_1_add vp9_idct_add_32x32 -> vp9_idct32x32_add Change-Id: Id85306f5814bac6c47463a6b5901a93082510666
-
Jingning Han authored
This commit re-designs the per transformed block rate-distortion costs tracking buffers. It removes redundant buffer usage, makes the needed context memory allocation per VP9_COMP instance and reuses the same buffer sets inside the rate-distortion optimization search loop, thereby avoiding repeatedly requiring memory space. It reduces speed 0 runtime: bus at 2000 kbps from 166763ms to 158967ms, football at 600 kbps from 246614ms to 234257ms. Both about 5% speed-up. Local tests suggest about 2% to 5% speed-up for speed 1 and 2 settings. This does not change compression performance. Change-Id: I363514c5276b5cf9a38c7251088ffc6ab7f9a4c3
-
Yaowu Xu authored
Change-Id: Id5e31833a0ef40de9f64c2f5674af7083233bf14
-
Deb Mukherjee authored
Increases these parameters. There is a small efficiency gain. Change-Id: Ie5f0ddb39c907d335e0dafa5eb112365a81f4542 derfraw300: +0.091% stdhdraw250: +0.238%
-
- 09 Oct, 2013 - 3 commits
-
-
Jingning Han authored
The intra mode distortion adjustment for skip_encode feature was broken in the refactoring cc91851. This commit fixes it and tunes the distortion models used therein. Change-Id: I0d676e82f8e855536a90cf9b3e3fdefafcd886c6
-
Deb Mukherjee authored
Some minor cleanups in preparation for experimentation with some encode parameters and thresholds Change-Id: I449d66da97eae0a7acdf4aae374e2f9111342056
-
Jingning Han authored
Use b_mode_info to store the inter prediction mode of sub8x8 block, in replacement of the use of partition_info. Remove redundant buffer update for partition_info. For bus_cif at 2000 kbps, this seem to make speed 0 about 1% faster. Change-Id: Id1b3be45e75a24fb4b42335ac480c23e440978f6
-
- 08 Oct, 2013 - 3 commits
-
-
Dmitry Kovalev authored
We already have itxm_add member in MACROBLOCKD structure. Both inv_txm4x4_1_add and inv_txm4x4_add are just its special cases for different eob values. But eob logic is already implemented in vp9_iwht4x4_add and vp9_idct4x4_add (that's why also removing inverse_transform_b_4x4_add). Change-Id: I80bec9b6f7d40c5e5033c613faca5c819c3e6326
-
Yaowu Xu authored
For CpuUsed 1 & 2, this commit allow to skip retangular partition check when NONE is better than SPLIT. It also changed to allow such logic on alt ref frame coding rather than use square partition all them. The change has gain compressio about .3% on yt and ythd for both 1&2, It helped .6% compression on cif and stdhd for both CpuUsed 1&2. Change-Id: I814b653baf89f59acd20e042629a12938a1bd4e5
-
Jim Bankoski authored
Change-Id: Id093816146de0d100f0c6ae2542aaa427dbab2d8
-
- 07 Oct, 2013 - 9 commits
-
-
Jim Bankoski authored
Change-Id: Ia725748acbc2a3f825f0d208f26522a0412301fa
-
Deb Mukherjee authored
Adjusts the bits per mb parameter about 10% smaller. Results at speed 0: fullderfraw: +0.255% fullstdhdraw: +0.262% stdhdraw250: +0.291% Change-Id: I2b7317ac3f61737bc77eb5470aad870cade83fa5
-
Dmitry Kovalev authored
Renames: vp9_short_idct16x16_add -> vp9_idct16x16_256_add vp9_short_idct16x16_10_add -> vp9_idct16x16_10_add vp9_short_idct16x16_1_add -> vp9_idct16x16_1_add vp9_idct_add_16x16 -> vp9_idct16x16_add Change-Id: Ief8a3904de78deab0f4ede944c4d0339c228cfc3
-
Jingning Han authored
This commit restores the mode skip feature in the sub8x8 rd loop. Change-Id: I5496ee32053f572b8961b549e9ecd4f1360824de
-
Dmitry Kovalev authored
Declaring vp9_pt_energy_class in vp9_entropy.h instead of many external places. Change-Id: I66e8a3fc119a43f88d130d0dae4133c825a047a3
-
Jim Bankoski authored
Slightly bigger change -> broke up encode_frame_to_datarate, lots of line length fixes. Change-Id: I7c53325e954de130f3fe1a6656626efc6705be82
-
Dmitry Kovalev authored
Change-Id: I8de865cd1deca07b5c92c225782f0867367e9a11
-
Jim Bankoski authored
Change-Id: Iae7674b0c946a5ac01617840b3f62965c654d920
-
Paul Wilkins authored
This flag is for stats generation and testing and should not be checked in as enabled by default. Change-Id: I4ea57dbcf49790f14777f598ddd3dc37dcc7a6bb
-
- 06 Oct, 2013 - 2 commits
-
-
Dmitry Kovalev authored
Renames: vp9_short_idct8x8_add -> vp9_idct8x8_64_add vp9_short_idct8x8_1_add -> vp9_idct8x8_1_add vp9_short_idct8x8_10_add -> vp9_idct8x8_10_add vp9_idct_add_8x8 -> vp9_idct8x8_add Change-Id: Ifb8d3a45b4c0397aa805b30463f3d14581bf72c1
-
Jim Bankoski authored
Change-Id: Id5f25b74e2207bf44b6f6c8ffe548fa30fd78b4d
-