summaryrefslogtreecommitdiff
path: root/vp9/encoder
AgeCommit message (Collapse)Author
2014-06-20Merge "Added CFLAG for outputting vp9 denoised signal"Tim Kopp
2014-06-19Merge "Fixes in VP9 alloc, free, and COPY_FRAME case"Tim Kopp
2014-06-19Merge "Separate rate-distortion modeling for DC and AC coefficients"Jingning Han
2014-06-19Merge "Improved vp9 denoiser running avg update."Tim Kopp
2014-06-19Merge "Implemented COPY_BLOCK case for vp9 denoiser"Tim Kopp
2014-06-19Merge "Modify non-rd intra mode checking"Yunqing Wang
2014-06-19Added CFLAG for outputting vp9 denoised signalTim Kopp
Change-Id: Iab9b4e11cad927f3282e486c203564e1a658f377
2014-06-19Fixes in VP9 alloc, free, and COPY_FRAME caseTim Kopp
Change-Id: I1216f17e2206ef521fe219b6d72d8e41d1ba1147
2014-06-19Improved vp9 denoiser running avg update.Tim Kopp
Change-Id: Ie0aa41fb7957755544321897b3bb2dd92f392027
2014-06-19Implemented COPY_BLOCK case for vp9 denoiserTim Kopp
Change-Id: Ie89ad1e3aebbd474e1a0db69c1961b4d1ddcd33e
2014-06-18Changed buf_2ds in vp9 denoiser to YV12 buffersTim Kopp
Changed alloc, free, and running average code as necessary. Change-Id: Ifc4d9ccca462164214019963b3768a457791b9c1
2014-06-18Update running avg for VP9 denoiserTim Kopp
Change-Id: I9577d648542064052795bf5770428fbd5c276b7b
2014-06-18Implemented vp9_denoiser_{alloc,free}()Tim Kopp
Change-Id: I79eba79f7c52eec19ef2356278597e06620d5e27
2014-06-18Modify non-rd intra mode checkingYunqing Wang
Speed 6 uses small tx size, namely 8x8. max_intra_bsize needs to be modified accordingly to ensure valid intra mode checking. Borg test on RTC set showed an overall PSNR gain of 0.335% in speed -6. This also changes speed -5 encoding by allowing DC_PRED checking for block32x32. Borg test on RTC set showed a slight PSNR gain of 0.145%, and no noticeable speed change. Change-Id: I1502978d8fbe265b3bb235db0f9c35ba0703cd45
2014-06-18Separate rate-distortion modeling for DC and AC coefficientsJingning Han
This is the first step to rework the rate-distortion modeling used in rtc coding mode. The overall goal is to make the modeling customized for the statistics encountered in the rtc coding. This commit makes encoder to perform rate-distortion modeling for DC and AC coefficients separately. No speed changes observed. The coding performance for pedestrian_area_1080p is largely improved: speed -5, from 79558 b/f, 37.871 dB -> 79598 b/f, 38.600 dB speed -6, from 79515 b/f, 37.822 dB -> 79544 b/f, 38.130 dB Overall performance for rtc set at speed -6 is improved by 0.67%. Change-Id: I9153444567e5f75ccdcaac043c2365992c005c0c
2014-06-17Merge "Moving RD-opt related code from vp9_encoder.h to vp9_rdopt.h."Dmitry Kovalev
2014-06-17Merge "skip the un-necessary motion search in the first pass"Pengchong Jin
2014-06-16Merge "Fix C versions of DC calculation functions"Jingning Han
2014-06-16skip the un-necessary motion search in the first passPengchong Jin
This patch allows the VP9 encoder to skip the un-necessary motion search in the first pass. It computes the motion error of 0,0 motion using the last source frame as the reference, and skips the further motion search if this error is small. Borg test shows overall the patch gives PSNR gain (derf -0.001%, yt 0.341%, hd 0.282%). Individual clips may have PSNR gain or loss. The best PSNR performance is 7.347% and the worst is -0.662%. The first pass encoding speedup for slideshow clips is over 30%. Change-Id: I4cac4dbd911f277ee858e161f3ca652c771344fe
2014-06-15vp9_pickmode.c: fix vs12 compiler warningsunknown
Change-Id: I5042b76a7050c121bf960ecb20c79d35adcc4cd5
2014-06-13Fix C versions of DC calculation functionsJingning Han
This commit fixes the scaling factors used in the C versions of the DC calculation functions. Change-Id: Iab41108c2bb93c2f2e78667214f3a772a2b707b5
2014-06-13Merge "Revert "skip un-neccessary motion search in the first pass""Yunqing Wang
2014-06-13Moving RD-opt related code from vp9_encoder.h to vp9_rdopt.h.Dmitry Kovalev
Change-Id: I8fab776c8801e19d3f5027ed55a6aa69eee951de
2014-06-13Replacing RC_MODE with vpx_rc_mode.Dmitry Kovalev
Both enums are identical. Change-Id: I06653f9c90a2d3a2dd5c741e75b17ee7d066a56f
2014-06-13Revert "skip un-neccessary motion search in the first pass"Paul Wilkins
This patch appears to have introduced non-determinism and/or mismatch from debug vs release. This reverts commit 5daef90efc4613efd7e7ee80ba4e1ecf9a57a966. Change-Id: I80081e55cfeaaa821b510b58a4e6e6328003c7da
2014-06-13Merge "Added skeleton for VP9 denoiser"Tim Kopp
2014-06-13Merge "Cleaning up accumulate_frame_motion_stats()."Paul Wilkins
2014-06-12Merge "Adding MV_SPEED_FEATURES struct."Dmitry Kovalev
2014-06-12Added skeleton for VP9 denoiserTim Kopp
Change-Id: Iccf6ede4c4f85646b0f8daec47050ce93e267c90
2014-06-12Merge "Removing unused ssim_weighted_pred_err field from FIRSTPASS_STATS."Dmitry Kovalev
2014-06-12Adding MV_SPEED_FEATURES struct.Dmitry Kovalev
Moving all motion vector related speed parameters from SPEED_FEATURES to MV_SPEED_FEATURES. Change-Id: I3e9af0039c7162f8671878c5920bce3cb256a84e
2014-06-12Merge "Moving full_pixel_search() to vp9_mcomp.c."Dmitry Kovalev
2014-06-12Merge "Adding is_altref_enabled() function."Dmitry Kovalev
2014-06-12Merge "Replacing txfm_size with tx_size."Dmitry Kovalev
2014-06-12Moving full_pixel_search() to vp9_mcomp.c.Dmitry Kovalev
Change-Id: I12389f801ebd3bd2ae3bf31e125433bfb429ee65
2014-06-12Adding is_altref_enabled() function.Dmitry Kovalev
Change-Id: I54cdb4ce11590511e6f86bc2fd55771f1c18a20a
2014-06-12Merge "Fast computation path for forward transform and quantization"Jingning Han
2014-06-12Replacing txfm_size with tx_size.Dmitry Kovalev
Change-Id: Ifa6374e9db5919322733b656e0865f5f19ee6f2c
2014-06-12Removing unused ssim_weighted_pred_err field from FIRSTPASS_STATS.Dmitry Kovalev
Change-Id: Ia8c7e3905ac21732cb6b8099eaf8df72c7e36b73
2014-06-12Fast computation path for forward transform and quantizationJingning Han
This commit enables a fast path computational flow for forward transformation. It checks the sse and variance of prediction residuals and decides if the quantized coefficients are all zero, dc only, or more. It then selects the corresponding coding path in the forward transformation and quantization stage. It is currently enabled in rtc coding mode. Will do it for rd coding mode next. In speed -6, the runtime for pedestrian_area 1080p at 1000 kbps goes down from 14234 ms to 13704 ms, i.e., about 4% speed-up. Overall coding performance for rtc set is changed by -0.18%. Change-Id: I0452da1786d59bc8bcbe0a35fdae9f623d1d44e1
2014-06-12Merge "Fix SEG_LVL_SKIP in non-RD inter mode selection."Alex Converse
2014-06-12Merge "Fix SEG_LVL_SKIP in RD inter mode selection."Alex Converse
2014-06-12Merge "skip un-neccessary motion search in the first pass"Yunqing Wang
2014-06-12skip un-neccessary motion search in the first passPengchong Jin
This patch allows the encoder to skip the un-neccessary motion search in the first pass. It calculates the error of the zero motion vector using the last source frame as reference and skips the further motion search in the first pass if the error is small. The encoding speedup of the first pass for slideshow videos is over 30%. Borg test shows the overall PSNR performance remain approximately the same (derf -0.009, hd 0.387, yt 0.021, stdhd 0.065). Individual clips may have either PSNR gain or loss. The worst PSNR perfomance is from yt set, with a PSNR loss of -1.1. Change-Id: I08b2ab110b695e4689573b2567fa531b6457616e
2014-06-11Fix SEG_LVL_SKIP in non-RD inter mode selection.Alex Converse
Add a set_mode_info_seg_skip function that fills the requisite mode info. Change-Id: I460b1b6845d720d9b09ed5b64df0ea0aac443f62
2014-06-11Fix SEG_LVL_SKIP in RD inter mode selection.Alex Converse
* Only use ZEROMV, disalowing the intra modes that were previously tested. * Score rate and distortion as zero. Change-Id: Ifcf99e272095725f11da1dcd26bd0f850683e680
2014-06-10Merge "Cleaning up vp9_variance_mmx.c."Dmitry Kovalev
2014-06-10Removing two unused TX_SIZE_SEARCH_METHOD members.Dmitry Kovalev
Change-Id: I33a38bb9f46e7ef509bbbf0cfd7bc3ea5072d022
2014-06-10Merge "Removing chessboard_index from SPEED_FEATURES."Dmitry Kovalev
2014-06-10Merge "Removing unused motion_vector_context enum from vp9_encodeframe.c"Dmitry Kovalev