summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-02-04Release v1.8.0 Northern ShovelerJohann
BUG=webm:1573 Change-Id: I2884d0d8198f937a9d14428cc9f5f7e86f4ec450
2019-01-16vp9: fix definition for VP9E_SET_POSTENCODE_DROPJerome Jiang
(cherry picked from commit 24614dd9cb1ec6d5c946909ff17adf53d6aa2e54) Change-Id: Ie763cf801107639ad11ad625408670d8d70b7628
2019-01-14Fix segmentation fault in hbd pathDeepa K G
When CONFIG_VP9_HIGHBITDEPTH is enabled, lowbd modules were called in the hbd path. This patch fixes the issue. (cherry picked from commit 797ec1cd66c04fd335adba8ecc01dc93eab1898e) BUG=webm:1589 Change-Id: I1caf701514dbf80eb75b953f40b1e7238f265a2c
2019-01-10vp8 dec: Add flag to bring up threads.Jerome Jiang
Instead of creating a new decoder instance when restarting all threads after they were shut down, re-create threads on the new flag. BUG=webm:1577 (cherry picked from commit 7be8d2df6c1c224a96b75d8f2ed66df7cbd0bb48) Change-Id: I80211d47e8d4beaa361416b58e99dd65d8da39c4
2019-01-08Merge "vp8 idct dequant: resolve missing declarations"Johann Koenig
2019-01-08Merge "vp8 blend: resolve missing declarations"Johann Koenig
2019-01-08Merge "vp8 overlaps: resolve missing declaration"Johann Koenig
2019-01-07vp8 idct dequant: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: Iecd2a0154c523fa61349c456befdf6c37d980efc
2019-01-07vp8 overlaps: resolve missing declarationJohann
BUG=webm:1584 Change-Id: I67fa7460cb90b9bbe8583b60340d7bbf615a11f2
2019-01-07vp9_get_blockiness: resolve missing declarationJohann
BUG=webm:1584 Change-Id: I719c64734f4eae07def2d700006834a2420891a7
2019-01-07vp8 blend: resolve missing declarationsJohann
Remove unused functions. BUG=webm:1584 Change-Id: If7a49e920e12f7fca0541190b87e6dae510df05c
2019-01-07Merge "vp8 multi dimensional search: resolve missing declarations"Johann Koenig
2019-01-07Merge "vp8_copy32xn: resolve missing declaration"Johann Koenig
2019-01-07Merge "vpx_filter: resolve missing declarations"Johann Koenig
2019-01-07Merge "vpx_clear_system_state: resolve missing declaration"Johann Koenig
2019-01-07Merge "vp9 intra pred test: resolve -Wuninitialized warning"Johann Koenig
2019-01-07Merge "arm neon: resolve missing declarations"Johann Koenig
2019-01-07vp8_copy32xn: resolve missing declarationJohann
BUG=webm:1584 Change-Id: I8279e099fb9595edad858bf7332bf2b40fecae02
2019-01-07arm neon: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: I2dcf39f2327b72b58be72c27f952ea781a790dd3
2019-01-07vpx_filter: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: I1be768446b9304123da7b1ea0aed0db056db31c5
2019-01-07vpx_clear_system_state: resolve missing declarationJohann
BUG=webm:1584 Change-Id: I0770fc97055b98cdf9ff7bd7a93ae3a5e19b8180
2019-01-07Merge "Fix OOB memory access on fuzzed data"Fyodor Kyslov
2019-01-07vp9 intra pred test: resolve -Wuninitialized warningJohann
BUG=webm:1584 Change-Id: I58505e04bd248697047d4957cebe495dada670a0
2019-01-07vp8 multi dimensional search: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: I5c3fb5ab00bff66a8e8f4b8d27cbcea4946eced0
2019-01-07Fix OOB memory access on fuzzed datakyslov
vp8_norm table has 256 elements while index to it can be higher on fuzzed data. Typecasting it to unsigned char will ensure valid range and will trigger proper error later. Also declaring "shift" as unsigned char to avoid UB sanitizer warning BUG=b/122373286,b/122373822,b/122371119 Change-Id: I3cef1d07f107f061b1504976a405fa0865afe9f5
2019-01-07fix vp9 fdct_quantJohann
Values in [q]coeff1 were not correctly stored. This caused a segfault in the sse2 libvpx__nightly_optimization jobs. Broken in: commit 85032bac388917916f7a149173db8b34e93e8f6e Author: Johann <johannkoenig@google.com> Date: Fri Dec 21 00:27:00 2018 +0000 fdct_quant: resolve missing declarations BUG=webm:1584 Change-Id: I5f5fad34ec5e32023f5b40ff3691125754c11ced
2019-01-04Merge "VP9 firstpass: Bugfix when mi_col_start/end is odd"Urvang Joshi
2019-01-04VP9 firstpass: Bugfix when mi_col_start/end is oddUrvang Joshi
Before this patch, if mi_col_end was odd, then the for loop for 'mb_col' was looping once LESS than it should have been. For example, if mi_col_end = 47, then the loop was terminating when mb_col == 23. However, the correct behavior would be to terminate when mb_col == 24. The issue was introduced in: https://chromium-review.googlesource.com/c/webm/libvpx/+/423279 This can lead to many of the stats being inaccurate, for such videos (with mi_col_start/end having an odd value). As an example: Even for very static content, fp_acc_data->intercount can never reach the same value as num_mbs. And in turn, pcnt_inter can never reach the value 1 (that is, 100%). This would lead to very static videos NOT being marked static, and encoded like regular videos. Note: this is just one possible effect based on observation. Other issues are also possible based on other stats. Improvement on some test clips: ------------------------------- - One test clip saw a gain of -2.580% in VBR mode (and -3.153% in Q mode). The reason for improvement: a wrongly detected scene cut was avoided due to corrected value in 'this_frame->pcnt_inter'. - Some very static clips correctly marked as having 100% zero motion. This avoided addition of unncecessary alt-refs, thereby reducing the bitrate. BDRate (PSNR) on regular sets (VBR mode): ----------------------------------------- lowres: 0.0 midres: -0.027 (some clips were better/worse, but I double checked that changes were as expected, given correction in stats calculation). hdres: 0.0 STATS_CHANGED for the types of videos described above. Change-Id: Ifbc2c0c0815d23ec4015475680bdf8886f158dcc
2019-01-03Increase memory size in non-greedy-mvAngie Chiang
The smallest block size of motion field is 4x4, but the mi_unit size is 8x8, therefore the number of units of motion field is "mi_rows * mi_cols * 4". Change-Id: I95292904d757705d39b78af5d0cf2d25f376c642
2019-01-03Build pyramid motion fieldAngie Chiang
Change-Id: I43fd61f7946a8a96d444dab5e94a9b01483ffab7
2019-01-02vp9: psnr diff thres for single vs multi threading.Jerome Jiang
Change the threshold from 0.1 to 0.2. BUG=webm:1588 Change-Id: I1ca20b360bcae66d09dc898c3266c9f5ac346561
2018-12-27Adaptively choose block sizes in temporal filteringYunqing Wang
Use variable block sizes in temporal filtering. Based on prediction errors of 32x32 or 16x16 blocks, choose the block size adaptively. This improves the coding performance, especially for HD resolutions. Speed 1 borg test result: avg_psnr: ovr_psnr: ssim: lowres: -0.090 -0.075 -0.112 midres: -0.120 -0.107 -0.168 hdres: -0.506 -0.512 -0.547 Change-Id: I8f774e29ecb2e0dd372b32b60c32d8fa30c013a8
2018-12-24Merge "fwd_dct32x32 avx2: resolve missing declarations"Johann Koenig
2018-12-22Merge "Revert "Add Tile-SB-Row based Multi-threading in Decoder""James Zern
2018-12-22test-data: add missing test data entriesJames Zern
invalid-bug-1443-v2.ivf{,.res} invalid-vp80-00-comprehensive-s17661_r01-05_b6-.v2.ivf{,.res} missed in: 6dbf738a4 vp8: kill all threads on corrupted frame. Change-Id: I6481f4ad7544ecc069d0e0442888e97e9638fdd3
2018-12-22Revert "Add Tile-SB-Row based Multi-threading in Decoder"James Zern
This reverts commit 02b3ef7faee5be5ee519856fbb3523d3ab49f6e7. Reason for revert: fails to build under visual studio Original change's description: > Add Tile-SB-Row based Multi-threading in Decoder > > Add the multi-thread function that decodes a video row by row instead > of a tile at a time. Create a job queue for queueing all parse and recon jobs. > Each SB row of a tile is a job. > > Performance Improvement: > > Platform Resolution 3 Threads 4 Threads > ARM 720p 36.81% 18.37% > 1080p 32.27% 14.76% > > ARM Improvement measured on Nexus 6 Snapdragon 805 Quad-core @ 2.65 GHz > > Change-Id: I3d4dd7a932fc2904c90d9546b2de99c809afd29e BUG=webm:1587 Change-Id: Ia4c8f5128922a205cd9fd83aaef8a2e73764d4a7
2018-12-21Merge "Bound the total allocated memory of frame buffer"Fyodor Kyslov
2018-12-21Merge "fwd_dct32x32 sse2: resolve missing declarations"Johann Koenig
2018-12-21Bound the total allocated memory of frame bufferkyslov
This CL allows to limit memory consumption of the frame buffer pool. As the result if compiled with VPX_MAX_ALLOCABLE_MEMORY set codec will fail if frame resolution requires more memory This is backported CL aae2183cb58b60d01b8e4e15269ee9f48dd72908 from aomedia Tested: configure --extra-cflags="-DVPX_MAX_ALLOCABLE_MEMORY=536870912" make ./test_libvpx BUG=webm:1579 Change-Id: Ic62213b600a7562917d5a339a344ad8db4b6f481
2018-12-21Merge "vp9_decodeframe.c: resolve missing declarations"Johann Koenig
2018-12-21Merge "vp9_highbd_block_error_sse2: resolve missing declarations"Johann Koenig
2018-12-21Merge "convolve avx2: resolve missing declarations"Johann Koenig
2018-12-21Merge "Improve accuracy of benchmarking"Elliott Karpilovsky
2018-12-21fwd_dct32x32 avx2: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: Iaba854952534a95e710a985acfcab46e093872c2
2018-12-21fwd_dct32x32 sse2: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: Ia2d9fcbccbad0c2142a3759e610670b86af0fef4
2018-12-21vp9_highbd_block_error_sse2: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: I43d051c538bf4a6f6210eefa398dc0901ab8d157
2018-12-21vp9_decodeframe.c: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: Ie0d26b745ab1f5907a6a2dc10fbc5083f3fb0b8d
2018-12-21convolve avx2: resolve missing declarationsJohann
BUG=webm:1584 Change-Id: I5990c0100af83d13f7a4800147473bc997f5e5d1
2018-12-21Merge "subpixel_8t sse2: resolve missing declarations"Johann Koenig
2018-12-21Merge "vpx{dec,enc}: resolve missing declarations"Johann Koenig