summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-04-16Enable more precise background detection for partition decisionJingning Han
This commit compares the current original frame to the previous original frame at 64x64 block level and decides if the entire block belongs to background area. If it is in the background area, skip non-RD partition search and copy the partition types of the collocated block in the previous frame. For vidyo1 in the rtc set, this makes the speed -5 coding speed about 8% faster. The overall compression performance is down by 1.37% for rtc set. Change-Id: Iccf920562fcc88f21d377fb6a44c547c8689b7ea
2014-04-10Merge "Fix encoder uninitialized read errors reported by drmemory"Yunqing Wang
2014-04-10Merge "Fix coding format in vp9_rc_regulate_q"Jingning Han
2014-04-10Merge "Prevent the usage of invalid best_mode_index"Yaowu Xu
2014-04-10Merge "Remove duplicate code"Yaowu Xu
2014-04-10Merge "Minor code cleanup"Yunqing Wang
2014-04-09Merge "Revert "Converting set_prev_mi() to get_prev_mi().""Dmitry Kovalev
2014-04-09Merge "Moving q_trans[] table to vp9_quantize.{c, h}."Dmitry Kovalev
2014-04-09Merge "Removing unused code from vp9_onyx_if.c."Dmitry Kovalev
2014-04-09Prevent the usage of invalid best_mode_indexYaowu Xu
This commit changed the initialization of best_mode_index to -1 to make sure it is not mistakenly used for mode masking. Change-Id: I75b05db51466070dd23c4ee57a4d4b40764dc019
2014-04-09Merge "Removing redundant assignments."Dmitry Kovalev
2014-04-09Merge "Remove unused tile arguments from vp_rdopt."Alex Converse
2014-04-09Merge "Cleanup vp9_rd_pick_inter_mode_sub8x8()."Alex Converse
2014-04-09Fix coding format in vp9_rc_regulate_qJingning Han
Change-Id: I08aa0c213df34c084eb7a3c51b6b3306e49c7757
2014-04-09Revert "Converting set_prev_mi() to get_prev_mi()."Dmitry Kovalev
This reverts commit 22a3e30790d141033778e430a47ba7d558237362 Change-Id: I460d905edf5fb2006da58c18fbe02c04d0c631bb
2014-04-09Merge "Fix the setting of mode_skip_mask"Yaowu Xu
2014-04-09Removing unused code from vp9_onyx_if.c.Dmitry Kovalev
Change-Id: I0462bf1ca1b4e5a1c06259979b4daff949b8a2c6
2014-04-09Moving q_trans[] table to vp9_quantize.{c, h}.Dmitry Kovalev
Change-Id: I1324c339815a47004ddccdaf651d24c60382b92f
2014-04-09Merge "Fix avx builds on macosx with clang 5.0."Tom Finegan
2014-04-09Remove duplicate codeYaowu Xu
Change-Id: Ie26b6ca8de733a527f820b16148e7a2231073f0f
2014-04-09Merge "Adding vp9_inc_frame_in_layer() function."Dmitry Kovalev
2014-04-09Minor code cleanupYunqing Wang
Cleanup. Change-Id: I54d989e24b35323cda7290654e425565d5c9ea2d
2014-04-09Remove unused tile arguments from vp_rdopt.Alex Converse
Change-Id: I721ff26e3d5dbef80b8cd2dd562adae3748f6687
2014-04-09Cleanup vp9_rd_pick_inter_mode_sub8x8().Alex Converse
Change-Id: I9be2e4e9aeda0fae6dc946deae2999be51daebe0
2014-04-09Merge "Fixing broken build."Alex Converse
2014-04-09Fix the setting of mode_skip_maskYaowu Xu
In mode selection loop, once mode_index pass mode_skip_start, all modes with a different reference frame from current best mode are masked out using mode_skip_mask. However, the setting of mode_skip_mask may use an invalid mode if there is no mode tested yet. This commit fixes the issue by making sure a mode has been tested and selected. Otherwise, no mode will be masked out because of their reference frame. Change-Id: Ib0009e8a96836a65cf5347440fff8a2e1a67f29f
2014-04-09Merge "Fix TODO typo"James Zern
2014-04-09Merge "Add more test files that change number of tile columns."James Zern
2014-04-09Merge "third_party/libwebm: Pull from upstream"Vignesh Venkatasubramanian
2014-04-09Fixing broken build.Dmitry Kovalev
Change-Id: I9b8f9a3f4fa9d48695149dd68ecb5e8d84accafe
2014-04-09Merge "Converting set_prev_mi() to get_prev_mi()."Dmitry Kovalev
2014-04-09Merge "Use source frame difference to make partition decision"Yunqing Wang
2014-04-09Adding vp9_inc_frame_in_layer() function.Dmitry Kovalev
Change-Id: Idf612c772440158cd1645623241c51ab0d57405c
2014-04-09Merge "Applying q_trans[] inside set_encoder_config()."Dmitry Kovalev
2014-04-09Fix encoder uninitialized read errors reported by drmemoryYunqing Wang
This patch fixed the uninitialized read errors in Issue 748: "dr memory VP9 encode errors". In vp9_convolve_avg_sse2, when width is 4, pavgb reads 8 bytes from dst buffer that is out of range. An error is reported although the data is not actually used later. This issue was resolved by preventing uninitialized reads. Change-Id: I109a54910aa47139cb13119de86f2062cff207df
2014-04-09Merge "Select prediction filter type in non-RD mode decision"Jingning Han
2014-04-09Fix TODO typoFrank Galligan
Change-Id: I7a5230852cb24ce22bfe85ea2608cdb4619b5200
2014-04-09Add more test files that change number of tile columns.Frank Galligan
Change-Id: I08fe184a04e5435aeac92f1d7cc9733ca52c2783
2014-04-08Merge "High-level hooks for Profile 2 (10/12 bit)"Deb Mukherjee
2014-04-08Applying q_trans[] inside set_encoder_config().Dmitry Kovalev
Change-Id: Ib64edeb58b3e25488fb85bbe85c9decb15b4d0a1
2014-04-08Fix avx builds on macosx with clang 5.0.Tom Finegan
The macosx release of clang v5.0 identifies itself as: Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn) This version of clang uses the older _mm_broadcastsi128_si256, like v3.3, as given away in the LLVM svn version above. Change-Id: I4d6d59d5454efd57d2ae9e75f5eb7486af7cbd0c
2014-04-08Removing redundant assignments.Dmitry Kovalev
Change-Id: I3ced24f2c3b9cc483278c0f0d60512e7d2efa4f4
2014-04-08Merge "Cleaning up encode_frame_internal()."Dmitry Kovalev
2014-04-08Merge "Cleaning up vp9_firstpass.c"Dmitry Kovalev
2014-04-08Merge "Adding vp9_ssim.h file."Dmitry Kovalev
2014-04-08Merge "Fix decoder resolution change with tiles"Frank Galligan
2014-04-08Use source frame difference to make partition decisionYunqing Wang
Calculate the difference variance between last source frame and current source frame. The variance is calculated at 16x16 block level. The variances are compared to several thresholds to decide final partition sizes. An adaptive strategy is implemented to decide using SOURCE_VAR_BASED_PARTITION or FIXED_PARTITION based on motions in the video. The switching test is done once every search_type_check_frequency frames. The selection of source_var_thresh needs to be investigated further later. RTC set Borg test showed 0.424% overall psnr gain, and 0.357% ssim gain. For clips with large enough static area, the encoding speedup is around 2% to 15%. Change-Id: Id7d268f1d8cbca7fb8026aa4a53b3c77459dc156
2014-04-08Select prediction filter type in non-RD mode decisionJingning Han
This commit allows the non-RD mode decision flow to select prediction filter type in NEWMV mode. It provides 8.14% compression performance gains in both settings of AQ=0 and 3. The current speed impact is about 5% to 10% slower. Change-Id: Id66ecebf77abd8f90fb3f6a066c0e8dfb4bf1c42
2014-04-08third_party/libwebm: Pull from upstreamVignesh Venkatasubramanian
Pulling latest libwebm from upstream. Change-Id: I62edafb0b0283160c9b4060fd5907e3aad6c7820
2014-04-08High-level hooks for Profile 2 (10/12 bit)Deb Mukherjee
Adds some high-level hooks for profile 2 before further progress on the implementation. According to the definitiion in this patch: 1. Profile 2 only supports 10 or 12 bit color but not 8 2. Profile 2 supports all color sampling modes: 444, 422 and 420, and alpha plane. 3. Profile 3 is currently undefined. Please consider the definition carefully and suggest modifications to the definition as needed. Change-Id: I5b284fc679e54ac5aee171af72fa7994cfd28995