summaryrefslogtreecommitdiff
path: root/vp9/encoder/vp9_encodeframe.c
AgeCommit message (Collapse)Author
2014-02-12Merge "Remove unnecessary vp9_setup_buffer_inter use"Jingning Han
2014-02-12Merge "Remove inactive control parameters"Jingning Han
2014-02-12Merge "Remove unused using_small_partition_info functions"Jingning Han
2014-02-12Merge "Remove unused function in vp9_encodeframe"Jingning Han
2014-02-12Remove unnecessary vp9_setup_buffer_inter useJingning Han
This function initializes the predictor buffer pointers and calculates reference motion vectors. It is only needed in the settings of inter frame coding. Hence removing it from the key frame coding branch in rtc_use_partition. Change-Id: Ic4e16c7467a5f32be4e0bf619ef9d57afb4a7075
2014-02-12Remove inactive control parametersJingning Han
Change-Id: Ic5692af975fe6bd2d8ec82bbae103c6f7c2fc13e
2014-02-12Remove unused using_small_partition_info functionsJingning Han
This function is deprecated after the re-design of partition search that runs big block size, then four-way split, followed by rectangular block sizes. This commit removes the related functions. Change-Id: I417549c8e0fa3cf35bd29816b805dd4e7c3660c6
2014-02-12Remove unused function in vp9_encodeframeJingning Han
The function rd_pick_reference_frame can be deprecated. Its use was subsumed by the adaptive motion search control. Change-Id: Icb0c2fa335f0f06fa7b79a71f972d9fa54d750db
2014-02-12Merge "Removing vp9_foreach_transformed_block_uv() function."Dmitry Kovalev
2014-02-12Merge "Fixed a bug where no valid partition is allowed"Yaowu Xu
2014-02-12Fixed a bug where no valid partition is allowedYaowu Xu
Change-Id: I4d2729dc5c46db2847700256941a66b0957c105d
2014-02-11Removing vp9_foreach_transformed_block_uv() function.Dmitry Kovalev
Change-Id: I35ec77b71e6fd686865cead9281e4dd9e9bc9e86
2014-02-11Enable encode_breakout in real time encodingYunqing Wang
In real time encoding, we enable encode_breakout to make encoding fast. A speed feature "use_encode_breakout" is defined to set encode_breakout thresholds for different speeds. However, currently, static_thresh is an encoder option. The encode_ breakout can be turned off if user sets static_thresh=0 specifically. The rtc set borg test result: (need to set --static_thresh=1) speed -5, psnr loss -3.543%; speed -4, psnr loss -2.358%; speed -3, psnr loss -0.771%. Encoding speed test: speed -5, 11% - 60% speedup; speed -4, 5.5% - 28% speedup; speed -3, 0.8% - 7% speedup. Change-Id: Icde592ffbe77eac7446f872a2e9eb2051733677b
2014-02-11Merge "Cleaning up compute_fast_motion_search_level()."Dmitry Kovalev
2014-02-11Merge "Use more meaningful names for speed features"Jingning Han
2014-02-10Merge "Cleaning up update_stats() function."Dmitry Kovalev
2014-02-10Merge "Making vp9_activity_masking() static."Dmitry Kovalev
2014-02-10Use more meaningful names for speed featuresJingning Han
Use frame_parameter_update to precisely describe the functionality. Change-Id: Ia9a55ba8efef7b987e30d949dd00ac716189bdb9
2014-02-10Merged two similar functions to reduce duplicationYaowu Xu
Function encode_rtc_frame_internal() and encode_frame_internal() only differed by a couple of speed features, this commit relocation those difference into the setup of speed features and merged two functions into one to remove duplication. It also fixed a subtle bug super_fast_rtc was used before it was initialized. Change-Id: I234a5a1d11a4450930e5b4943dbab434208d5030
2014-02-08Making vp9_activity_masking() static.Dmitry Kovalev
Change-Id: Ic6a733f1fe92458da89c8459c5686ba1e08b92bf
2014-02-07Cleaning up compute_fast_motion_search_level().Dmitry Kovalev
Change-Id: I151bd3de689bceb72969120095257c37656db92f
2014-02-07Cleaning up update_stats() function.Dmitry Kovalev
Change-Id: I9139210fc6b9878de7844d74dd97784a6d289230
2014-02-05Removing redundant is_inter_mode() call.Dmitry Kovalev
Block type was already detected by is_inter_block() call. Change-Id: I7923ce11b6a0071ce9df8c744a78c816651a15dc
2014-02-04Removing DBG_PRNT_SEGMAP.Dmitry Kovalev
Change-Id: I71d85e3455545960938e525ae8aa0a667e1db94c
2014-02-03Merge "Removing ENC_DEBUG."Dmitry Kovalev
2014-02-03Build fix with config internal statsYongzhe Wang
Fixes a build issue when internal stats is enabled Change-Id: I822cc60274e34b5f29ccbaa1f986fb9da6a8de4b
2014-01-31static function convert to inline or global vp9_blockd.hJim Bankoski
Change-Id: Ifdd951f24932839f06d1c700371662511dde6ebe
2014-01-31Merge "bsize problem 360p"Jim Bankoski
2014-01-31Merge "Renaming "mbskip" to "skip"."Dmitry Kovalev
2014-01-31bsize problem 360pJim Bankoski
Fixes an assert that crashed for 360p.. Change-Id: I2faf15c93cbdb0e62a27a3b663f0d09ba62774a8
2014-01-31Only allow interp_filter change in SWITCHABLE modeYaowu Xu
This commit added a logic to prevent the inter_filter type from being changed if the default interp_filter mode is not switchable. Also, it sets the default interp_filter to BILINEAR at very and super fast rtc encoding modes Change-Id: Ic41e6d31de29795a4ce536ec79afb01cab6daad3
2014-01-31Properly merge two different real time modesYaowu Xu
--rt --cpu-used=-5 uses the progressive rtc mode --rt --cpu-used=-6 uses the new super fast rtc mode Change-Id: Id6469ca996100cdf794a0e42d76430161f22f976
2014-01-31remove confusing compressor_speedJim Bankoski
use mode instead Change-Id: I419d7a2dc4b0714ca6ff723c5e824521c150c460
2014-01-30Replace inline with INLINEYaowu Xu
So x86_64-win64-vs11 can build successfully. Change-Id: If354c2ea3921fac8c9b413ed39223e70bc20c535
2014-01-30Fix a build issue for --enable-intern-statsYaowu Xu
Change-Id: Iea7c9fa0726dbf9792eea79e6a05eb8a3c718d45
2014-01-29Merge "create super fast rtc mode"Yaowu Xu
2014-01-29Merge "Add a strict mode for auto_min_max_partition_size feature"Yaowu Xu
2014-01-29Add a strict mode for auto_min_max_partition_size featureYaowu Xu
In this new mode, the size range is strictly determined by the min and max partition size in neighborhood blocks. Niklas720 encoding time at cpu-used -5 goes from 56250ms to 50676ms, a 10% reduction. Change-Id: I316b0e2ac967ff3fad57b28d69c0ec80b7d8b34e
2014-01-29Renaming "mbskip" to "skip".Dmitry Kovalev
Change-Id: I27a30b43eae026a77f92958e2238d02d9cdf7832
2014-01-29Removing ENC_DEBUG.Dmitry Kovalev
Change-Id: I101017621003314f000a454725ea13fc9db43177
2014-01-29Finally removing vp9_setup_interp_filters() function.Dmitry Kovalev
Change-Id: If446225afbb49f6033c2a4516a37c377de6f70f7
2014-01-29create super fast rtc modeJim Bankoski
This patch only works if the video is a width and height that are both a multiple of 32.. It sets every partition to 16x16, and does INTRADC only on the first frame and ZEROMV on every other frame. It always does does the largest possible transform, and loop filter level is set to 4. Was ~20% faster than speed -5 of vp8 Now 20% slower but adds motion search ( every block ), nearest, near and zeromv The SVC test was changed because - while this realtime mode produces bad quality albeit quickly, it isn't obeying all the rules it should about which frames are available. Change-Id: I235c0b22573957986d41497dfb84568ec1dec8c7
2014-01-29Trap divide by 0.Paul Wilkins
Trap divide by 0 that could occur with a 0 rate target in aq mode COMPLEXITY_AQ. Change-Id: I034514f512b2a0db470ae8d37ea395278bf473cf
2014-01-27Decoupling set_ref_ptrs() and vp9_setup_interp_filters().Dmitry Kovalev
Change-Id: I8d17867a4772554cbba2bd113cc5b4c99d50146d
2014-01-24Renaming INTERPOLATION_TYPE to INTERP_FILTER.Dmitry Kovalev
Corresponding renames: subpel_kernel => interp_kernel vp9_get_filter_kernel() => vp9_get_interp_kernel() pred_filter_type => pred_interp_filter adaptive_pred_filter_type => adaptive_pred_interp_filter mcomp_filter_type => interp_filter read_interp_filter_type() => read_interp_filter() write_interp_filter_type() => write_interp_filter() fix_mcomp_filter_type() => fix_interp_filter() Change-Id: I1fa61fa1dc81ebbf043457c3ee2d8d4515bee6d3
2014-01-22Prevent invaid memory accessYaowu Xu
Reading second motion vector only when it has a second ref_frame Change-Id: Ica72c1cd955832e15ceccda5e5a17b0bfcd83044
2014-01-17Deprecate best_mv from encoderJingning Han
This commit deprecates the use of best_mv from encoding and bit-stream writing stages. It hence removes the definition from MACROBLOCKD. Change-Id: I8e5302775a2aa4a18900726df407bff881f2dfb1
2014-01-16Rename pick_sb_modes to rd_pick_sb_modesJingning Han
Keep naming consistency for RD and non-RD mode decision functions, respectively. Change-Id: I904282b675fc511a46c13cb1f8287aa5d1c8ac94
2014-01-16Inter-frame non-RD mode decisionJingning Han
This commit setups a test framework for real-time coding. It enables a light motion search for non-RD mode decision purpose. Change-Id: I8bec656331539e963c2b685a70e43e0ae32a6e9d
2014-01-14As you go mbmi->skip_coeffJim Bankoski
Calculate the skip_coeff as part of the encode process, rather than checking the eobs after the fact with another pass. Change-Id: Ib41b139e96a97dee30e4b993b4cc53d86337128d