summaryrefslogtreecommitdiff
path: root/vp9/encoder
AgeCommit message (Collapse)Author
2014-08-15Remove a unused speed featureYunqing Wang
Removed disable_split_var_thresh, which is not used anymore. Change-Id: I50119b150442e1571157433b5effc6aae0dbe0fd
2014-08-15Merge "Cleaning up vp9_encoder.c."Dmitry Kovalev
2014-08-15Cleaning up vp9_encoder.c.Dmitry Kovalev
Change-Id: Ib06c59d1adefb841a6ff653619dffb7e23f3318d
2014-08-15Removing active_arnr_{strength, frames} from VP9_COMP.Dmitry Kovalev
Change-Id: I60472b71ca75ee0522ed2611f43e1207d44b66d0
2014-08-14Merge "Remove redundant vp9_init_plane_quantizers call"Jingning Han
2014-08-14Merge "32 Align Load bug In the sub_pixel_avg_variance the parameter sec was ↵James Zern
also aligned load and changed to unaligned."
2014-08-14Merge "Moving framerate from VP9EncoderConfig to VP9_COMP."Dmitry Kovalev
2014-08-14Merge "Mask out H_PRED and V_PRED for 32x32 blocks"Yaowu Xu
2014-08-14Merge "Set max_intra_bsize to 32x32"Yaowu Xu
2014-08-14Merge "Fix bug 837: realloc mode info buffers on resize"Adrian Grange
2014-08-14Remove redundant vp9_init_plane_quantizers callJingning Han
When aq mode is on, the quantizer will be reset later in the same function (line 571). Change-Id: I20635db31261d136d04d5deeb881ad3957078bf1
2014-08-1432 Align Load buglevytamar82
In the sub_pixel_avg_variance the parameter sec was also aligned load and changed to unaligned. Change-Id: I4d4966e0291059ea4d705baed1503dc58444fcb7
2014-08-14Mask out H_PRED and V_PRED for 32x32 blocksYaowu Xu
Change-Id: I2847af5062b5fa320629fcabb9fa6b23ba3e5513
2014-08-14Set max_intra_bsize to 32x32Yaowu Xu
At --good and speed 3 or above for resolution less than 720p. This disables the tests for 64x64 intra prediction modes. Encoding time reduction is about 1%. Change-Id: Ib396e3d1417fece416e3f0fee929b128acbb130f
2014-08-14Merge "Replace current_video_frame with better alternatives"Yaowu Xu
2014-08-14Fix bug 837: realloc mode info buffers on resizeAdrian Grange
The test to determine if the mode info buffers need to be resized when the frame size changes was incorrect, as per bug 837. By storing the size of the allocated data structure, a simple test determines whether to allocate more memory when the frame size changes. Change-Id: I1544698f2882cf958fc672485614f2f46e9719bd
2014-08-13Merge "Simplify select_tx_mode()"Adam Xu
2014-08-13Replace current_video_frame with better alternativesYaowu Xu
In the encoder, current_video_frame is used in a couple of places to decide encoding strategy, this commit replaces with more appropriate variables. Change-Id: I3d3d8d8e2ea02c489e4639b9d4c446a63e357d29
2014-08-13Allow full coeff probability model and cost updateJingning Han
This commit moves the simplified coefficient probability model and costing update to speed 4, and turns on chessboard pattern mode search for sub 720p sequences. The overall coding performance of speed 3 is improved: derf 0.889% stdhd 1.744% The speed 3 runtime for test sequences are improved: bus cif at 1000 kbps 9823 ms -> 9642 ms pedestrian 1080p 2000 kbps 189559 ms -> 183284 ms Change-Id: Iecbc7496a68f31fd49fb09f8dfd97c028d675a5d
2014-08-13Skip mode search based on reference frame consistencyJingning Han
This commit enables the encoder to skip NEARMV and ZEROMV if the above and left blocks have identical reference frame, and the current reference is different from that. It reduces the runtime of speed 3 for test sequences: bus cif at 1000 kbps 10064 ms -> 9823 ms pedestrian 1080p at 2000 kbps 193078 ms -> 189559 ms The compression performance is changed by derf -0.085% stdhd -0.103% Change-Id: If304f26d42e6412152a84c3dd7b02635c38444f4
2014-08-13Merge "Enable motion field based mode seach skip"Jingning Han
2014-08-13Enable motion field based mode seach skipJingning Han
This commit allows the encoder to check the above and left neighbor blocks' reference frames and motion vectors. If they are all consistent, skip checking the NEARMV and ZEROMV modes. This is enabled in speed 3. The coding performance is improved: pedestrian area 1080p at 2000 kbps, from 74773 b/f, 41.101 dB, 198064 ms to 74795 b/f, 41.099 dB, 193078 ms park joy 1080p at 15000 kbps, from 290727 b/f, 30.640 dB, 609113 ms to 290558 b/f, 30.630 dB, 592815 ms Overall compression performance of speed 3 is changed derf -0.171% stdhd -0.168% Change-Id: I8d47dd543a5f90d7a1c583f74035b926b6704b95
2014-08-13Simplify select_tx_mode()Yaowu Xu
The function is called only once, right after all stats counters are reset to 0. Therefore all the computations have zero effect on return values. This commmit to removed those effectless code. Change-Id: I50d27c0802547921fa36c60aa4bd92d76247f595
2014-08-13Merge "intra blocks disallowed inadvertently"Jim Bankoski
2014-08-13Merge "Minor Two pass rate control adjustments."Paul Wilkins
2014-08-12Merge "fixes several -Wunused-function warnings"James Zern
2014-08-12fixes several -Wunused-function warningsJim Bankoski
Change-Id: I4dc2cb255f4fe30998b6ee61184895dee9f5da8e
2014-08-12intra blocks disallowed inadvertentlyJim Bankoski
At speed 6 the smallest partitioning was 16x16 and biggest intra block was 8x8, essentially disallowing all intra blocks which produces ugly artifacts when revealing new video. Change-Id: I364042d4c64e09be0666ade64aac94d0a1b586cf
2014-08-12Fix pickmode for intra DC blocksAlex Converse
Change-Id: I4906043ec1e3577ba37622a235c54adacb66125a
2014-08-12Minor Two pass rate control adjustments.Paul Wilkins
Alter way in which we identify static scenes. Remove some redundant code. Change-Id: I883c2ea2e341770648a8663d8881f720ed099b61
2014-08-11Merge "remove unused fields from BOOL_CODER / vp9_writer"James Zern
2014-08-11Merge "vp9_write_bit_buffer: fix function name typo"James Zern
2014-08-11Merge "Enable fast forward txfm and quant for rate-distortion search"Jingning Han
2014-08-11Merge "Removing unised OUTPUT_YUV_SRC define."Dmitry Kovalev
2014-08-11Merge "Integrate fast txfm and quant path into skip_recode system"Jingning Han
2014-08-11Merge "Extend skip_txfm flag into array to cover YUV planes"Jingning Han
2014-08-08Removing unised OUTPUT_YUV_SRC define.Dmitry Kovalev
Change-Id: Ia88eebf10c8620dadaa66722543db291e44fe104
2014-08-08Enable fast forward txfm and quant for rate-distortion searchJingning Han
This commit enables encoder to select fast forward transform and quantization path according to the prediction residual sse/variance, in the rate-distortion optimization scheme. Change-Id: Ief9fc3844fd4107166d401970e800c6e5ce2b5fe
2014-08-08Merge "Moving pass from VP9_COMP to VP9EncoderConfig."Dmitry Kovalev
2014-08-08Merge "Common encode/decode function to get reference frame"Adrian Grange
2014-08-08Moving framerate from VP9EncoderConfig to VP9_COMP.Dmitry Kovalev
Framerate changes over time, VP9EncoderConfig supposed to have static read-only data. Change-Id: I36580a7ee71243c1eabb57691089691731d03e67
2014-08-08Moving pass from VP9_COMP to VP9EncoderConfig.Dmitry Kovalev
We had a very complicated way to initialize cpi->pass from cfg->g_pass: switch (cfg->g_pass) { case VPX_RC_ONE_PASS: oxcf->mode = ONE_PASS_GOOD; break; case VPX_RC_FIRST_PASS: oxcf->mode = TWO_PASS_FIRST; break; case VPX_RC_LAST_PASS: oxcf->mode = TWO_PASS_SECOND_BEST; break; } cpi->pass = get_pass(oxcf->mode). Now pass is moved to VP9EncoderConfig and initialization is simple: switch (cfg->g_pass) { case VPX_RC_ONE_PASS: oxcf->pass = 0; break; case VPX_RC_FIRST_PASS: oxcf->pass = 1; break; case VPX_RC_LAST_PASS: oxcf->pass = 2; break; } Change-Id: I8f582203a4575f5e39b071598484a8ad2b72e0d9
2014-08-08Merge "Cleaning up vp9_encodeframe.c."Dmitry Kovalev
2014-08-08Common encode/decode function to get reference frameAdrian Grange
Replaced encoder and decoder functions to get a pointer to a reference frame with a common function, vp9_get_ref_frame, and simplified it. Change-Id: Icb206fcce8caace3bfd1db3dbfa318dde79043ee
2014-08-08Remove coding_use_prev_mi member from VP9_COMMONAdrian Grange
This was shadowing the use of error_resilient_mode, but with the opposite sense. Change-Id: Ie4d30263a304fe4b3e94f0c7741db6888cc6afd8
2014-08-08Merge "Fix active_map speed 6."Alex Converse
2014-08-08Merge "Cleanup SEG_LVL_SKIP handling in encode_superblock."Alex Converse
2014-08-07Fix bug 807levytamar82
in the sub_pixel_*variance* function the dst is aligned to 16 bytes and not to 32 bytes - now load unaligned data Change-Id: I2e0b9745543697efc56fefa32857ea10117af135
2014-08-07Fix active_map speed 6.Alex Converse
Fix the interaction between active map and reuse_inter_pred_sby. The reuse_inter_pred_sby feature expects inter predictors to already be built, but blocks with active map on skip this step. Change-Id: Ibb2bf0d228f678935d82a0ede9cb0919ab7c8878
2014-08-07Cleanup SEG_LVL_SKIP handling in encode_superblock.Alex Converse
Change-Id: Ib7497ba08696765cbc1b2cc4218d37f4298f278c