- 30 Jul, 2014 - 2 commits
-
-
Jim Bankoski authored
Change-Id: Iefcf0a25aaf5e44e8e791839aa82d876555025e0
-
Scott LaVarnway authored
vp9_variance16x16(), and vp9_get16x16var(). On a Nexus 7, vpxenc (in realtime mode, speed -12) reported a performance improvement of ~16.7%. Change-Id: Ib163aa99f56e680194aabe00dacdd7f0899a4ecb
-
- 29 Jul, 2014 - 4 commits
-
-
Jingning Han authored
This commit replace the repetitive retrieve of max and min allowed partition from speed_feature with local variables max_size and min_size. Change-Id: Ib06f11f16615e4876e4dd5fb6a968c6bf5f7b216
-
Jingning Han authored
The get_chessboard_index() used to call the entire VP9_COMMON struct pointer to retrieve the chessboard pattern index. This cl makes it call the frame index directly. Change-Id: I3cad9d209ea2e77a358085a04fe1ff0ddec5ba03
-
Scott LaVarnway authored
On a Nexus 7, vpxenc (in realtime mode, speed -12) reported a performance improvement of ~3.7%. Change-Id: I428c72c40df82c6d537955e320a8debf99343004
-
Pengchong Jin authored
Remove the redundant index computation when store the first pass block-wise statistics. Currently, a single byte is allocated for a 16x16 blocks, and all the frame statistics saved during the first pass will be kept in memory for use in the second pass. For a 1920x1080 300-frame clip, it will take about 2.3 MB memory. This feature is off in current setting. Change-Id: I135a95b348ec093d54c6a07e1e8237626909e3bd
-
- 28 Jul, 2014 - 3 commits
-
-
levytamar82 authored
Remove all the redundant dct functions (dct4x4, dct8x8) in avx2 except dct32x32 those functions were copied originally from dct_sse2 Change-Id: I742576fbf5175f3ac09f2076976a9247b259323e
-
Pengchong Jin authored
Change-Id: I9956db2ba2f7d28f484daaf5022d8d1ef5db473c
-
Jim Bankoski authored
The issue was introduced by commit g9f37d149 with adding explicit restrictions on reference-frame scale factors. The restriction is checked against aligned-by-8 frame dimensions, not against original ones. So, for example, frame of 35×35 actually can refer to frame of 70×70, but the new check won't allow this. It will compare 35 vs 72 (not 70), so 2x downscale limit will be exceeded. Change-Id: Ic663693034440f64ac8312cbff9e1e773a921060
-
- 25 Jul, 2014 - 1 commit
-
-
Jingning Han authored
The partition search for 4x4 blocks takes unnecessary steps to reconstruct pixels and an extra partition type update. This commit removes such operations. No visible compression/speed difference. Thanks to Yue (yuec@) for finding this issue. Change-Id: I3f83824aa3fd3717d63be0b280fa57258939a70a
-
- 24 Jul, 2014 - 6 commits
-
-
Jingning Han authored
This commit turns on the existing vp9_get_prob function using 64 bit in the intermediate step. It fixes the ioc issue for 4K above frame sizes (issue 828). Change-Id: I9f627f3beca2c522f73b38fd2a3e7eefdff01a7c
-
Jingning Han authored
The assignment of the variable mode_excluded in vp9_rd_pick_inter_mode_sub8x8 takes redundant conditional jump. This commit removes it. Change-Id: Ie195fbe6e54ec2ade7093d562c456a2e93143704
-
Yaowu Xu authored
A previous change, https://gerrit.chromium.org/gerrit/#/c/70632, introduced a size validation for reference frames to insuare the input stream is a valid VP9 stream. However, the logic requiring all reference frames have valid size turned out to be too strict. In this commit, we modify the validation to require one of the reference frame has valid dimension. In addition, the decoder reports error whenever it detects the use of reference frame with invalid scalig ratio. Change-Id: If8efc312244087556cfe00f1fcbdff811268ebad
-
Adrian Grange authored
The patch: https://gerrit.chromium.org/gerrit/#/c/70814/ changed the test that determined whether the context frame buffers needed to be reallocated or not. The code checked for a change in total frame area to signal the need to reallocate context buffers. However, the above_context buffer needs to be resized i:xf only the width of the frame has increased. Change-Id: Ib89d75651af252908144cf662578d84f16cf30e6
-
Tim Kopp authored
This should prevent confusion with the VP8 CONFIG_TEMPORAL_DENOISING and other flags. Change-Id: I1fe4e2977895b7966841d861ab74317ad875b6c8
-
Alex Converse authored
Move txfm_rd_in_plane into choose_tx_size_from_rd and cleanup callers. Change-Id: I1df2d7dc984802bd5e204cbe881ada0d75fbb3f7
-
- 23 Jul, 2014 - 4 commits
-
-
Minghai Shang authored
1. Remove last reference flag for first frame upper layers in one pass mode. 2. Disable refresh golden frame flag for key frames. Change-Id: I44ac1bd2c795169e4fbfdd078ea79a1d33a204d6
-
Jingning Han authored
The value of mode_excluded has been properly set in vp9_rd_pick_inter_mode_sb(). It is redundant to send it in handle_inter_mode() and re-set the value again. Change-Id: I408d4731f2f42e0bcf3ae62e85757717bb410471
-
Jingning Han authored
This commit extends the chessboard pattern prediction filter search. If the above and left blocks have the same prediction filter type, the encoder will skip the prediction filter type search and use the reference one. The overall chessboard pattern prediction filter type search reduces speed 3 runtime for hard clips. Experiments on park joy at 1080p and 15000 kbps show that the runtime goes from 723265 ms to 65832 ms, i.e., about 10% speed-up. Compression performance wise, it affects the coding quality by Change-Id: I880975497c7ad166532e9eea9bf46684d77ff327 derf: -0.326% yt: -0.257% hd: -0.241% stdhd: -0.417%
-
Jingning Han authored
Use is_comp_pred to replace the use case of num_refs. Change-Id: I4d0c1e14d5f728428a2ae3d293cd2b4a8b2f31d8
-
- 22 Jul, 2014 - 6 commits
-
-
Jingning Han authored
This commit enables a chessboard pattern prediction filter type search scheme for rate-distortion optimization speed-up. For the inferred motion vector modes, the encoder can re-use its above/left neighbor blocks' prediction filter type and skip a full test on all possible filter types. Such operation is turned on/off alternatively in a chessboard manner. It is turned on in speed 3. For test clip pedestrian 1080p, the runtime is reduced from 231500 ms -> 221700 ms. The compression performance is changed: derf: -0.147% yt: -0.134% hd: -0.079% stdhd: -0.220% Change-Id: I1912f278e7576c2dc632688e3ad7a257410c605a
-
Tim Kopp authored
When OUTPUT_YUV_DENOISED is enabled the encoder outputs the uncompressed, denoised video to a separate file. Moved the point at which the file is written to in order to avoid an extra blank frame at the beginning of the video. Change-Id: I805f6a912b18b3d9cae59b13c5b8108279439ce3
-
Adrian Grange authored
Fixed the function get_frame_type to return the correct frame type for golden and last frames. Change-Id: I8edddd9aa26cbe7a1de8ff211389410b22b1bd14
-
James Zern authored
fix indent, spelling and drop some vertical whitespace Change-Id: I722671381a374a24763b07a02805ab1d149ab3f4
-
Jingning Han authored
This should be a local variable. Move the definition from vp9_rd_pick_inter_mode_sb to handle_inter_mode. Change-Id: I14f4168bb1c896ed04e8f6d4cd89fbf4c9839944
-
Minghai Shang authored
Change-Id: Ifc94377a0d05d66e3d21b007893a985b66db6082
-
- 21 Jul, 2014 - 4 commits
-
-
Jingning Han authored
For sequences of resolution below 720p, the encoder will check intra prediction modes and inter prediction modes from LAST_FRAME. This commit turns on adaptive prediction filter scheme for sub8x8 blocks, where inter prediction modes are enabled. For the test sequence bus at CIF, the speed 2 runtime goes down from 17879 ms to 16783 ms, i.e., 6% speed up. The compression performance of derf set is down by -0.128%. Change-Id: I01d5321a5ceab4e0666ac5be56c52d896c7a8d45
-
Alex Converse authored
Change-Id: Ic5d3a3a0dac10b49495771886a31e793bb78b5ca
-
Yaowu Xu authored
The commit moved a call to vp9_clear_system_state() to a correct location, i.e. prior function calls using floating point numbers. This was to fix a mismatch mmx code and sse2 version, where a floating point number used in adjust_frame_rate(cpi) gets NAN due to mmx registers being in wrong state. Change-Id: I40e0a6de98812000ccee6a729badb630604fd7e6
-
Yunqing Wang authored
For gcc, when libvpx config option debug is disabled, added the flag -DNDEBUG to disable the assertions in libvpx for some speedup. Change-Id: Ifcb7b9e8ef5cbe5d07a24407b53b9a2923f596ee
-
- 18 Jul, 2014 - 3 commits
-
-
Adrian Grange authored
This patch adds back in code that checks that the frame size lies within defined bounds was inadvertantly removed by a previous patch: https://gerrit.chromium.org/gerrit/#/c/70814/ Change-Id: If526570ba559260c4b7e98098bc75f7700ae7f97
-
Tim Kopp authored
The ALT_REF_FRAME is now updated in the case of a KEY_FRAME in the VP9 denoiser. Change-Id: Idf9a9772706f50e774fb240afcc01db38841043c
-
Deb Mukherjee authored
Separates HBD profile int two profiles (2 and 3) consistent with the highbitdepth branch. This patch is ported from the original highbitdepth branch patch: https://gerrit.chromium.org/gerrit/#/c/70460/ Two of the invalid file tests needed to be updated. Change-Id: I6a4acd2f7a60b1fb4cbcc8e0dad4eab4248431e3
-
- 17 Jul, 2014 - 3 commits
-
-
Pengchong Jin authored
The bug sets the wrong pointer to the first pass mb stats if the encoder does the re-coding in the second pass. Change-Id: I8a11f45dd7dceb38de814adec24cecccae370d00
-
Adrian Grange authored
This patch is the first step toward simplifying the frame buffer handling. The final goal is to have a common frame buffer handling framework for both encoder and decoder that incorporates the existing ability to use externally allocated memory. Change-Id: I2c378a4f54a39908915f46c4260e17a080db7ff1
-
Jim Bankoski authored
This is a practical concern to allow us to fail in a decoder instance if the size of a file is bigger than we can reasonably handle. Change-Id: I0446b5502b1f8a48408107648ff2a8d187dca393
-
- 16 Jul, 2014 - 3 commits
-
-
Yaowu Xu authored
This commit changed the hard-coded DEFAULT_INTERP_FILTER to a speed feature with the same default value: SWITCHABLE. Change-Id: I7f54f40f1bd3f5277841d04b85db7a84e47313f1
-
Scott LaVarnway authored
and vp9_sad16x16_neon() On a Nexus 7, vpxenc (in realtime mode, speed -6) reported a performance improvement of ~17%. Change-Id: I91e070cde2973451083d3f3d63b49b7886de9a85
-
Paul Wilkins authored
2 pass only change to calculation of rd mult based on Q. Make a small adjustment based on frame type and also replace adjustment based on iifactor with an one based on the ambient GF/ARF boost level. Also fix multi arf bug / issue. Overall these change give an slight improvement in ssim but hurt psnr a little. Change-Id: I5e1751e3ff5390a26f543d7855059e6fbcce105e
-
- 15 Jul, 2014 - 1 commit
-
-
Yaowu Xu authored
We target this speed to achieve similar encoding speed and better compression than vp8 rt mode with cpu-used at -12. Change-Id: Ic1bb4371c81a17ea80e83459c1cbf4c09a3498e8
-