Commit Graph

20653 Commits

Author SHA1 Message Date
Johann Koenig
9c64914990 Merge changes I6e837e6f,Ibec70e66
* changes:
  remove WIDE_REFERENCE definition
  remove ARCHITECTURE definition
2019-04-23 21:40:14 +00:00
sdeng
1d8d8f562b Add VPX_TUNE_SSIM and VPX_TUNE_PSNR enums
Change-Id: I3df5af2c60b774e6d395062077542c52db868236
2019-04-23 11:09:32 -07:00
Johann
eb9d819ba1 remove WIDE_REFERENCE definition
The last usage was removed in 2011:
cbf923b12c%5E%21/#F33

Change-Id: I6e837e6f1e55eeea6bbeb3159ce6ddf861bcbd72
2019-04-23 10:02:49 -07:00
Johann
4bc723fabc remove ARCHITECTURE definition
In the distant past this was used to distinguish between
armv5/6/7 targets when building the assembly files. The
project has not supported armv5/6 for a long time.

BUG=webm:1623

Change-Id: Ibec70e6624b651df0fa6f882ab6f201dc73e92e2
2019-04-23 09:48:35 -07:00
sdeng
8cbea4a049 Add vpx_clear_system_state() in SSIM based rdmult adjustments
Change-Id: I2a0cdec3bfce864e975aaa408cfdcb855db8680f
2019-04-22 16:13:28 -07:00
Harish Mahendrakar
cc55568fef [vp9] Fix handling of skip in row_mt=1
For row_mt=1, when mi->skip is set to 1 after parse based on
eobtotal for that partition, dqcoeff and eob need to be restored
as recon_partition doesn't increment these pointers for skip cases

Change-Id: I79711b0c175937aa6da3bba3b3bc053f91a8ce35
2019-04-22 15:55:24 +00:00
Harish Mahendrakar
9a5d6a9d9a Merge "test_vector_test: Add row-mt and lpf-opt tests for vp9 decoder" 2019-04-22 15:54:53 +00:00
Jingning Han
184af622dd Merge "Refine interval for key frame boost calculation" 2019-04-22 04:59:22 +00:00
Jingning Han
19d0153341 Merge "Fix issues with bits allocated and consumed" 2019-04-22 04:59:04 +00:00
Angie Chiang
814cf325d2 Remove mv_dist and mv_cost from TplDepStats
Change-Id: I1af8814449a187e900df9c930dc174f0832b0212
2019-04-21 15:41:58 -07:00
Angie Chiang
a40e63f956 Remove inter_cost_arr and recon_error_arr
Change-Id: I9eaf9563f2ee92fcfbe38d0f5e36c82632af468f
2019-04-21 15:37:45 -07:00
Angie Chiang
c579f9dab9 Remove RE_COMPUTE_MV_INCONSISTENCY
Change-Id: I58c1bc0f285271ccff163791d35c8c0c6cc8460b
2019-04-21 15:25:20 -07:00
Angie Chiang
21ac7decfa Remove unused mv_[dist/cost]_sum
Change-Id: I8d173add2d1fc599a7915a3c9668870f18a0c59f
2019-04-21 15:19:21 -07:00
Harish Mahendrakar
4747e9fd50 test_vector_test: Add row-mt and lpf-opt tests for vp9 decoder
BUG=webm:1619

Change-Id: I4e835a6375523da04a2c4febb2fb441a5f2d56c5
2019-04-19 23:59:40 +00:00
Harish Mahendrakar
4d56e0969e Merge "[CFI] Remove function pointer cast of row_decode_worker_hook" 2019-04-19 23:59:30 +00:00
Jerome Jiang
692789b42e Merge "vp9: Use model rd for large blocks in filter search." 2019-04-19 16:26:31 +00:00
Harish Mahendrakar
19564b9ddc [CFI] Remove function pointer cast of row_decode_worker_hook
This fixes CFI error flagged for this function when row-mt=1

Change-Id: Ic5b427a6b621228280ebe829d00b540b18e2c087
2019-04-19 15:43:20 +00:00
James Zern
bd45c003bb Merge "Fix PSNRHVS computation" 2019-04-19 06:10:01 +00:00
Jerome Jiang
82b8a25194 vp9: Use model rd for large blocks in filter search.
Neutral on speed and quality.

Change-Id: Ia1d3929124bb57e31bbab516a994734d2fd51891
2019-04-18 18:09:30 -07:00
Marco Paniconi
f96b7117b1 Merge "vp9-rtc: Use correct plane for UV in estimate_intra" 2019-04-19 00:58:16 +00:00
Marco Paniconi
12acbb1552 vp9-rtc: Use correct plane for UV in estimate_intra
For nonrd-pickmode: some PSNR increase observed on
screen content/scroll clips.

Change-Id: Idf1bce9dd434e33d7c35dbeb59e02e2e58ea1aaa
2019-04-18 15:43:46 -07:00
Marco Paniconi
6b1954ee9a vp9-rtc: Move setting for use_model_rd_large
Move the setting to just before the inter-mode loop,
as for screen content the value may change due
to reset of segment.

No change in behavior except for screen-content.

Change-Id: I256795b581ceda352e57b88eba2e86aa18b0fdc4
2019-04-18 10:01:05 -07:00
Deepa K G
66772d2b11 Fix issues with bits allocated and consumed
For show existing frames, set the variables
this_frame_target and projected_frame_size
correctly.

Change-Id: Id5f06eb4ac195f6b63c0199d9d761eaaaea79bbd
2019-04-18 07:39:23 +00:00
Deepa K G
1051e71ea6 Refine interval for key frame boost calculation
In the calculation of boost for key frames, increase number
of frames to be scanned based on the content nature.

Change-Id: Ia4533966a00055d0bec712e073d82d4bd1dc715a
2019-04-18 07:36:13 +00:00
Deepa K G
74cf247d31 Increase the active best quality in CQ
For boosted frames, active best quality is increased.

Change-Id: I282fbefaf16b4216f5d22d344f098e6a5766c4a5
2019-04-18 06:03:08 +00:00
Ravi Chaudhary
4bb51416e1 Refine active best quality of layered ARF frames
Change-Id: If630af68fc3793d579a947d5955c2001c0cf0a8d
2019-04-18 06:02:33 +00:00
Deepa K G
640735025e Fix in key frame detection
The frame next to scene cut frame does not usually have
a high second ref useage. Thus the sec ref useage of the
frame next to scene cut frame is tested against a
threshold for scene cut detection.

With this change scene cut detection is improved for
contents where genuine scene cuts were being missed.

Change-Id: I11190d848fa1c1dcd63aab81da799354371e2a30
2019-04-18 04:47:17 +00:00
James Zern
e718cade1d Merge "Revert "Refactor tile boundary condition for intra prediction"" 2019-04-17 14:52:59 +00:00
Jerome Jiang
7ef20bf051 Merge "vp9: refactor condtions for model rd for large blocks." 2019-04-17 01:51:41 +00:00
Angie Chiang
6f594bb8c8 Merge "Refine vp9_kmeans()" 2019-04-17 01:49:56 +00:00
James Zern
e232dc86e5 Revert "Refactor tile boundary condition for intra prediction"
This reverts commit 14208ab41e.

This causes test vectors failures with --row-mt=1.

BUG=webm:1617

Change-Id: Icb14bbbb6f38608a73dde0370ad874c0b1b0af8a
2019-04-16 18:18:34 -07:00
Jerome Jiang
a9d70ee2fa vp9: refactor condtions for model rd for large blocks.
Change-Id: If474273642b68e29abacb7b87cbb6e3c91bb93a4
2019-04-16 15:37:47 -07:00
Marco Paniconi
d310225c19 Merge "vp9-rtc: Add speed feature to force SMOOTH filter" 2019-04-16 21:44:34 +00:00
Angie Chiang
da373475ed Refine vp9_kmeans()
Reduce the number of group_idx initialization.
Initialize the center to the median of the data group.

Change-Id: Ie16150610480bf54a6b5e2bc048ba1e940bef10f
2019-04-16 12:07:45 -07:00
Marco Paniconi
972d31480f vp9-rtc: Add speed feature to force SMOOTH filter
Add speed feature for real-time to always force
SMOOTH filter for subpel motion. Can be useful in some
cases for noisy content or high motion at low bitrate.
Also some speedup in avoiding the checking of two filters.

Keep it off always for now.

Change-Id: I843d79aaddef75f9c6ded60906cc75c279a6e37a
2019-04-16 10:19:51 -07:00
Yaowu Xu
6382a95fee Fix PSNRHVS computation
Cherry-pick libaom #1362e15990eccab8101305be418528824fb32245 to fix
PSNRHVS calculation.

BUG=webm:1620

Change-Id: Ife7bd8056fcaed06992ad76e8c1ab734c3956ad7
2019-04-16 10:11:52 -07:00
Jingning Han
16ddf82dc0 Merge "Use uniform sampling as initial centers for k-means" 2019-04-16 16:15:52 +00:00
sdeng
da5be113f3 Fix libvpx__nightly_optimization-levels - Build Failing
This CL removes the extra floating math in tune=psnr, I will add
clear_system_state calls in tune=ssim in the next cl.

Change-Id: I7cdd4854b2b8e7e7f872f097c5535f10c80cfe0d
2019-04-15 19:36:47 -07:00
James Zern
a708bf5e0f Merge "loop_filter_rows_mt: unify worker count calculation" 2019-04-14 00:21:50 +00:00
sdeng
c88b592dc7 Add Tune for SSIM for high bitdepth encoding
midres_bd10 test results:
avg_psnr  ssim     ms_ssim
3.189     -4.083   -5.258

Change-Id: I9faccc02f34692fc304d82241390f92267f5a72c
2019-04-13 11:02:02 -07:00
Sai Deng
a9b722e00c Merge "Add Tune for SSIM" 2019-04-13 17:47:46 +00:00
James Zern
e8b2750904 loop_filter_rows_mt: unify worker count calculation
fixes a deadlock with an odd number of threads that go from < number of
tiles to >. the previous calculations were out of sync so going from
e.g., 8 tiles to 2 with 3 threads would result in scheduling only 2
workers, but thread_loop_filter_rows() would expect 3.

BUG=webm:1618

Change-Id: I78c967a8c3c927d929e13c949808a5ef443ebacb
2019-04-12 23:50:08 -07:00
Jingning Han
4d14b55ee7 Use uniform sampling as initial centers for k-means
The Wiener variance output has been sorted prior to the clustering,
which allows to directly use the uniform sampling as the initial
center points. It avoids empty cluster situations when the samples
are heavily distributed at two far ends and leave the middle empty.

Change-Id: I159fbfa6bbb4aafd19411fd005666d144cca30fc
2019-04-12 15:59:51 -07:00
sdeng
7dedf4cbc7 Add Tune for SSIM
Implementation with some tuning of the paper:
C. Yeo, H. L. Tan, and Y. H. Tan, "On rate distortion optimization using
SSIM," Circuits and Systems for Video Technology, IEEE Transactions on,
vol. 23, no. 7, pp. 1170-1181, 2013.

Test results:
           avg_psnr      ssim      ms-ssim
lowres      2.516       -2.622     -2.450
midres      2.312       -3.062     -3.882
hdres       2.292       -4.293     -5.246

The encoding time is about the same as the baseline.

Change-Id: Ida2c380ade79b6c15cf12b88bf090069da8765d8
2019-04-12 15:02:05 -07:00
Jingning Han
b758ba795a Use qsort to find median value
The list is short enough to use qsort.

Change-Id: I5bb1f2c43eec508bafaf4d1ad7c8a92441f066ce
2019-04-12 10:57:56 -07:00
James Zern
1fa6e2912c Merge "update libwebm to libwebm-1.0.0.27-358-gdbf1d10" 2019-04-12 05:58:12 +00:00
kyslov
4ba3098ecb Fix static analysis warnings
With switching to clang-7.0.1 we got new warnings. With this change the
warnings are back to 0 for all configurations (excluding warnings in
third_party)

BUG=webm:1616

Change-Id: I25ceb592c425394e8f14d333fb5680144f892213
2019-04-11 17:37:15 -07:00
Jerome Jiang
e8bfbf5317 Merge "vp9 svc test: test KSVC and other inter layer pred mode." 2019-04-11 20:00:55 +00:00
Jerome Jiang
d9c1496bff vp9 svc test: test KSVC and other inter layer pred mode.
Change-Id: I6214eb63737f67bf41753f0705047e0682f3dc70
2019-04-11 11:57:52 -07:00
Angie Chiang
5bcc0017df Merge "Use log-based sse in eval_mv_mode" 2019-04-11 17:25:40 +00:00