]>
granicus.if.org Git - libvpx/log
Linfeng Zhang [Thu, 29 Jun 2017 23:30:32 +0000 (16:30 -0700)]
Add vpx_highbd_idct8x8_{12, 64}_add_sse4_1
BUG=webm:1412
Change-Id: I5d038b4fa842ce2f6b9bd5c8c44c70647bda9591
Linfeng Zhang [Wed, 28 Jun 2017 23:29:40 +0000 (16:29 -0700)]
sse2: Add transpose_32bit_4x4x2() and update transpose_32bit_4x4()
BUG=webm:1412
Change-Id: I9d00d1ddbd724fd5f825fd974c4cf46a9bca6cb3
Linfeng Zhang [Wed, 28 Jun 2017 23:17:39 +0000 (16:17 -0700)]
Refactor highbd idct 4x4 sse4.1 code and add highbd_inv_txfm_sse4.h
Also clean highbd_inv_txfm_sse2.h
BUG=webm:1412
Change-Id: I0722841d824ce602874019bd9779b10d49d10c0b
Linfeng Zhang [Wed, 28 Jun 2017 21:36:23 +0000 (14:36 -0700)]
Refactor vpx_idct8x8_12_add_ssse3() and add inv_txfm_ssse3.h
BUG=webm:1412
Change-Id: I1f640db71ad4c644b7521305a781f2218eb1ba9d
James Zern [Thu, 29 Jun 2017 23:21:18 +0000 (23:21 +0000)]
Merge changes from topic 'rm-dec-frame-parallel'
* changes:
rm vp9_frame_parallel_test.cc
test_vector_test: rm ref to VPX_CODEC_USE_FRAME_THREADING
James Zern [Tue, 27 Jun 2017 02:26:22 +0000 (19:26 -0700)]
rm vp9_frame_parallel_test.cc
VPX_CODEC_USE_FRAME_THREADING was made a no-op in:
01d23109a vp9: make VPX_CODEC_USE_FRAME_THREADING a no-op
and the tests in this file have been disabled since:
6ab0870d4 disable VP9MultiThreadedFrameParallel tests
BUG=webm:1395
Change-Id: I2c7a250acb65cf9522cf8a7bb724bb92070e41c6
James Zern [Tue, 27 Jun 2017 02:18:14 +0000 (19:18 -0700)]
test_vector_test: rm ref to VPX_CODEC_USE_FRAME_THREADING
this was made a no-op in:
01d23109a vp9: make VPX_CODEC_USE_FRAME_THREADING a no-op
and the test hitting this branch has been disabled since:
6ab0870d4 disable VP9MultiThreadedFrameParallel tests
rename the test to VP9MultiThreaded to exercise the tile-based threading
BUG=webm:1395
Change-Id: I35564a75eb5a7d7f7ccb923133b1b07295201f4c
James Zern [Thu, 29 Jun 2017 21:42:03 +0000 (14:42 -0700)]
dct_partial_test,fwd_txfm: change << to *
left shift of a negative number is undefined in C; quiets a ubsan
warning
Change-Id: Ib1624ad5326ac8e0eead9348468ef7fe5d4df9a4
Jerome Jiang [Tue, 27 Jun 2017 20:20:02 +0000 (13:20 -0700)]
vp9: Remove avg2x2 in skin detection and clean up.
Change-Id: I6510e36866138f8ac4cb82c207e58e0b9522e499
Johann Koenig [Wed, 28 Jun 2017 22:37:00 +0000 (22:37 +0000)]
Merge changes Ib454762d,I966650df,Ie126553e,I068f06c6,Icb72a94e
* changes:
sad neon: rewrite 64x64 and add 64x32
sad neon: rewrite 32x32, add 32x16 and 32x64
sad neon: rewrite 16x8, 16x16, add 16x32
sad neon: rewrite 8x8 and 8x16
sad neon: rewrite 4x4 and add 4x8
Johann Koenig [Wed, 28 Jun 2017 22:36:05 +0000 (22:36 +0000)]
Merge "buffer.h: Only allow Init() to be called once."
Johann Koenig [Wed, 28 Jun 2017 22:34:53 +0000 (22:34 +0000)]
Merge "partial fdct test"
Johann [Fri, 23 Jun 2017 00:12:27 +0000 (17:12 -0700)]
partial fdct test
Test the _1 variant of the fdct, which simply sums the block and applies
a modifying shift based on the block size.
BUG=webm:1424
Change-Id: Ic80d6008abba0c596b575fa0484d5b5855321468
Johann [Tue, 27 Jun 2017 22:17:31 +0000 (15:17 -0700)]
sad neon: rewrite 64x64 and add 64x32
BUG=webm:1425
Change-Id: Ib454762d1c61b05a98324fe81ad58c9e09784717
Johann [Tue, 27 Jun 2017 21:33:28 +0000 (14:33 -0700)]
sad neon: rewrite 32x32, add 32x16 and 32x64
BUG=webm:1425
Change-Id: I966650df7e3face93e1e771634d1cc5458a35f85
Johann [Tue, 27 Jun 2017 21:15:58 +0000 (14:15 -0700)]
sad neon: rewrite 16x8, 16x16, add 16x32
BUG=webm:1425
Change-Id: Ie126553e5fffcdfaf3d82a85b368ac10ce9ab082
Johann [Tue, 27 Jun 2017 20:02:28 +0000 (13:02 -0700)]
sad neon: rewrite 8x8 and 8x16
BUG=webm:1425
Change-Id: I068f06c67b841f09ea07c04ada0c2f1706102138
Johann [Tue, 27 Jun 2017 19:44:54 +0000 (12:44 -0700)]
sad neon: rewrite 4x4 and add 4x8
The previous implementation loaded 8 values (discarding half)
BUG=webm:1425
Change-Id: Icb72a94e2557a4ee2db7091266ab58fd92f72158
Jerome Jiang [Wed, 28 Jun 2017 18:01:46 +0000 (18:01 +0000)]
Merge "vp9: compute skinmap only once before encoding."
Johann [Wed, 7 Jun 2017 19:25:05 +0000 (12:25 -0700)]
buffer.h: Only allow Init() to be called once.
Change-Id: I041c8b6f314802833c5287a176dbfeec9461b08e
Marco [Wed, 28 Jun 2017 03:14:26 +0000 (20:14 -0700)]
vp9: Speed >= 8: Remove logic on reducing subpel.
Existing logic was only affecting resolutions above 720p.
Needs more testing for reducing subpel for speed >= 8.
No change on RTC metrics.
Change-Id: I2f4bf9f25891614aafa9a86aa5a5063a3ccfce4d
James Zern [Tue, 27 Jun 2017 23:30:16 +0000 (23:30 +0000)]
Merge "highbd_quantize_fp_32x32: normalize abs_qcoeff type"
Jerome Jiang [Tue, 27 Jun 2017 20:17:59 +0000 (13:17 -0700)]
vp9: compute skinmap only once before encoding.
This could save some cycles since skin detection is used in multiple
places in vp9.
1~2% speed up on ARM.
Change-Id: I86b731945f85215bbb0976021cd0f2040ff2687c
Linfeng Zhang [Mon, 26 Jun 2017 21:57:41 +0000 (14:57 -0700)]
Update vpx_idct8x8_12_add_ssse3()
Change-Id: I0f38801c391db87ddae168602a786a062cd34b1d
Linfeng Zhang [Mon, 26 Jun 2017 21:48:49 +0000 (21:48 +0000)]
Merge "Update load_input_data() in x86"
Jerome Jiang [Mon, 26 Jun 2017 21:32:51 +0000 (21:32 +0000)]
Merge "vp8: Clean up skinmap debugging codes."
Linfeng Zhang [Fri, 23 Jun 2017 23:04:27 +0000 (16:04 -0700)]
Update load_input_data() in x86
Split to load_input_data4() and load_input_data8().
Use pack with signed saturation instruction for high bitdepth.
Change-Id: Icda3e0129a6fdb4a51d1cafbdc652ae3a65f4e06
James Zern [Thu, 22 Jun 2017 03:16:26 +0000 (20:16 -0700)]
roll libwebm snapshot
git log --no-merges --oneline
9732ae9 ..
a97c484
9096786 mkvparser: fix float conversion warning
84e8257 disable -Wdeprecated-declarations in legacy code
a98f495 AddGenericFrame: fix memory leak on failure
da131dd AddCuePoint: fix memory leak on failure
b0cea9c Add(Audio|Video)Track: fix memory leak on failure
5261a67 webm_info: check vp9 ParseUncompressedHeader return
85f7e2e webm_info,PrintVP9Info: validate alt ref sizes
9b97ca1 vp9_header_parser_tests: check parser return
300d6d8 CuePoint::Find: check Track pointer
50c44bb webm_info,OutputCues: fix indexing of tracks
a0d27f0 mkvparser,Block::Parse: remove incorrect assert
784fc1b vttdemux,CloseFiles: check file pointer before closing
b4522c1 .gitattributes: force mkv/webm to be treated as binary
a118f3d Add test for projection parse failures.
d398479 Add test for primary chromaticity parse failures.
9bbec4c Fix permissions on test file.
2cef4d5 mkvparser:Parse: s/FLT_MIN/-FLT_MAX/
35a3c88 mkvmuxer: Turn off estimate_file_duration_ by default
5a41830 mkvparser: Avoid double free when Chromaticity parse fails.
67e3ffa mkvparser: Avoid casts of values too large for float in
Projection elements.
87bcddf vttdemux::ChapterAtomParser: check for NULL display string
a534a24 Update .gitignore
a0d67d0 mkvmuxer: Fix hard-coded data size in EbmlElementSize
c36112c mkvparser: #include sys/type.h
686664e Fix cmake generation warnings on Windows.
2b2c196 cmake: Fix required flag check.
166e40f Cmake refactor.
9fb774a Add missing include in webm2pes.cc.
4956b2d mkvmuxer: Force new clusters when audio queue gets too long.
54f1559 cmake: Cache results of CXX flag tests.
81c73fc mkvparser: Avoid alloc failures in SeekHead::Parse.
Change-Id: Ib81b1772ec81e7af3852dcfef2d312416f6db53d
Linfeng Zhang [Sat, 24 Jun 2017 01:15:13 +0000 (01:15 +0000)]
Merge "Add vpx_highbd_idct4x4_16_add_sse4_1()"
Urvang Joshi [Sat, 24 Jun 2017 00:58:24 +0000 (00:58 +0000)]
Merge "Enable greedy version of optimize_b() in VP9 by default."
Linfeng Zhang [Sat, 24 Jun 2017 00:51:07 +0000 (00:51 +0000)]
Merge "Cosmetics, 8x8 idct SSE2 optimization"
Urvang Joshi [Sat, 24 Jun 2017 00:04:58 +0000 (17:04 -0700)]
Enable greedy version of optimize_b() in VP9 by default.
Improvements were already mentioned in the previous patch:
https://chromium-review.googlesource.com/#/c/531675/
Change-Id: I4906ab1c61c25a815bdeb986016fad6dcb69eb71
James Zern [Fri, 23 Jun 2017 22:48:40 +0000 (22:48 +0000)]
Merge "variance_test: move Subpel* from tuples to TestParams"
Marco Paniconi [Fri, 23 Jun 2017 21:59:31 +0000 (21:59 +0000)]
Merge "vp9: Use scene detection for CBR mode."
Linfeng Zhang [Fri, 23 Jun 2017 21:27:18 +0000 (14:27 -0700)]
Add vpx_highbd_idct4x4_16_add_sse4_1()
BUG=webm:1412
Change-Id: Ie33482409351a01be4e89466b0441834eb1e905a
Linfeng Zhang [Wed, 21 Jun 2017 22:18:17 +0000 (15:18 -0700)]
Cosmetics, 8x8 idct SSE2 optimization
Change-Id: Id21fa94fd323e36cd19a2d890bf4a0cafb7d964d
Jerome Jiang [Fri, 23 Jun 2017 20:59:54 +0000 (13:59 -0700)]
vp8: Clean up skinmap debugging codes.
Use the computed skinmap.
Change-Id: I8aabb5922ef5190ec85b9e01807cb79b4803b925
James Zern [Fri, 23 Jun 2017 20:00:50 +0000 (20:00 +0000)]
Merge "datarate_test: rename thread -> Thread in test name"
James Zern [Fri, 23 Jun 2017 07:26:00 +0000 (00:26 -0700)]
variance_test: move Subpel* from tuples to TestParams
this normalizes these tests with the regular variance ones both in
implementation and test list output
Change-Id: I387aea81456f94b8223b8fb2a28cab94bc1aa9d5
Marco [Thu, 22 Jun 2017 21:59:27 +0000 (14:59 -0700)]
vp9: Use scene detection for CBR mode.
Use the scene detection for CBR mode, and use it to reset the
rate control if large source sad is detected and rate
correctioni fact/QP is at minimum state.
Avoids large frame sizes after big content change following
low content period.
Only affects CBR mode for 1 pass at speeds 5, 6, 7.
Change-Id: I56dd853478cd5849b32db776e9221e258998d874
Jerome Jiang [Fri, 23 Jun 2017 17:17:01 +0000 (17:17 +0000)]
Merge "vp8: Compute skinmap only once before encoding."
James Zern [Fri, 23 Jun 2017 05:44:24 +0000 (05:44 +0000)]
Merge changes from topic 'missing-proto'
* changes:
onyxd_int.h: add missing prototypes
onyxd.h: add vp8dx_references_buffer prototype
vp[89],vpx_dsp: add missing includes
vp8,encodeframe.h: correct prototypes
vp8: add temporal_filter.h
add picklpf.h
add ethreading.h
vp8,bitstream.h: add missing prototypes
vp8: remove vp8_fast_quantize_b_mmx
vp8,loopfilter_filters: make some functions static
vp9_ratectrl: make adjust_gf_boost_lag_one_pass_vbr static
vp9_encodeframe: make scale_part_thresh_sumdiff static
vp9_alt_ref_aq: correct vp9_alt_ref_aq_create proto
tiny_ssim: make some functions static
James Zern [Fri, 16 Jun 2017 23:16:05 +0000 (16:16 -0700)]
onyxd_int.h: add missing prototypes
vp8cx_init_de_quantizer, vp8_mb_init_dequantizer
quiets -Wmissing-prototypes
Change-Id: Ib63d14caf0144eff31a75b7cdb667b7e1f9d83ae
Johann Koenig [Fri, 23 Jun 2017 01:57:59 +0000 (01:57 +0000)]
Merge "fdct32x32 neon implementation"
Jerome Jiang [Wed, 21 Jun 2017 22:02:31 +0000 (15:02 -0700)]
vp8: Compute skinmap only once before encoding.
Get ready for other uses (i.e. cyclic refresh).
Then use it when needed.
Change-Id: Id0519a9921045e5fb7f3badb54e9f04e903f28f9
Marco Paniconi [Thu, 22 Jun 2017 22:18:47 +0000 (22:18 +0000)]
Merge "vp9: Add high source sad to content state."
Linfeng Zhang [Thu, 22 Jun 2017 21:42:23 +0000 (21:42 +0000)]
Merge changes I783c5f4f,I365f8e53,I5dac0e98
* changes:
Clean vpx_idct16x16_256_add_sse2()
Update vpx_idct{8x8,16x16,32x32}_1_add_sse2()
Clean 32x32 full idct sse2 and ssse3 code
Paul Wilkins [Thu, 22 Jun 2017 16:30:39 +0000 (16:30 +0000)]
Merge "Fix int overflow in rate control for high bit rates."
Johann [Fri, 16 Jun 2017 20:14:01 +0000 (13:14 -0700)]
fdct32x32 neon implementation
Almost 3x faster in constrained loop testing. Over 10x faster in HBD
builds.
BUG=webm:1424
Change-Id: I2b7f8453e1d4ada63cde729d8115d684c4a71ff9
paulwilkins [Wed, 21 Jun 2017 16:26:20 +0000 (17:26 +0100)]
Fix int overflow in rate control for high bit rates.
Fix misplaced cast that caused an overflow and incorrect rate adaptation
behavior for high data rates. This in particular will have affected 4k encodes
but could also have come into play for some higher rate 1080p cases.
In our standard test sets the quality impact is small though several high rate
clips show improved rate accuracy. This can also impact the number of recode
loop hits and on one problem 4k clip the encode time for speeds 0 and 1 was
reduced by >25%
Change-Id: I108da7ca42f3bc95c5825dd33c9d84583227dac1
Marco [Thu, 22 Jun 2017 03:39:59 +0000 (20:39 -0700)]
vp9: Add high source sad to content state.
Use it to limit NEWMV early exit in nonrd pickmode
Small change in RTC metrics, has some improvement
for high motion clips.
Change-Id: I1d89fd955e1b3486d5fb07f4472eeeecd553f67f
Marco Paniconi [Thu, 22 Jun 2017 03:27:46 +0000 (03:27 +0000)]
Merge "vp9: Adjustments for aq-mode and pickmode for speed >= 8."
James Zern [Thu, 22 Jun 2017 03:05:31 +0000 (20:05 -0700)]
datarate_test: rename thread -> Thread in test name
this is consistent with other threaded tests and ensures gtest_filters
meant to operate on these pick them up
Change-Id: I99ce53720553a22c4b9905a2882273c2be2c031b
James Zern [Thu, 22 Jun 2017 02:01:10 +0000 (02:01 +0000)]
Merge "vp8_dx_iface: clear -Wclobbered warnings"
James Zern [Fri, 16 Jun 2017 23:15:28 +0000 (16:15 -0700)]
onyxd.h: add vp8dx_references_buffer prototype
quiets -Wmissing-prototypes
Change-Id: I6bee535f3fb67e54a390266d787a5a92127aeadc
James Zern [Fri, 16 Jun 2017 23:12:20 +0000 (16:12 -0700)]
vp[89],vpx_dsp: add missing includes
quiets -Wmissing-prototypes
Change-Id: I841cfc019d592f2bc6b3fec5818051a31f4c53b5
James Zern [Fri, 16 Jun 2017 09:12:18 +0000 (02:12 -0700)]
vp8,encodeframe.h: correct prototypes
+ add missing include
quiets -Wmissing-prototypes
Change-Id: I64af0368ba3d7f1d4de22a5887b631bb2cf15b8a
James Zern [Fri, 16 Jun 2017 09:09:47 +0000 (02:09 -0700)]
vp8: add temporal_filter.h
quiets -Wmissing-prototypes
Change-Id: Iffa77467720affe030de5335e9335232b9e70af1
James Zern [Fri, 16 Jun 2017 08:51:19 +0000 (01:51 -0700)]
add picklpf.h
quiets -Wmissing-prototypes
Change-Id: Ic24164aa1f86fe99a493a633d64606e6f44ecdc1
James Zern [Fri, 16 Jun 2017 08:48:55 +0000 (01:48 -0700)]
add ethreading.h
quiets -Wmissing-prototypes in encodeframe.c
Change-Id: Ic216d0bdd6130eac44f2183639a715b2f1088ebe
James Zern [Fri, 16 Jun 2017 08:45:11 +0000 (01:45 -0700)]
vp8,bitstream.h: add missing prototypes
quiets -Wmissing:prototypes
Change-Id: I835a80eddca2b16280780e18558c321df3272c43
James Zern [Fri, 16 Jun 2017 08:33:57 +0000 (01:33 -0700)]
vp8: remove vp8_fast_quantize_b_mmx
and vp8_fast_quantize_b_impl_mmx; this was never enabled in rtcd
an sse2 version exists so there isn't much reason to keep a mmx
implementation around.
Change-Id: I8b3ee7f46ba194ffa0d0a6225a0f299f2a4dea90
James Zern [Fri, 16 Jun 2017 07:58:49 +0000 (00:58 -0700)]
vp8,loopfilter_filters: make some functions static
quiets -Wmissing-prototypes
Change-Id: Ie5b00537f64a05e68a38dc558463691523988994
James Zern [Fri, 16 Jun 2017 07:53:05 +0000 (00:53 -0700)]
vp9_ratectrl: make adjust_gf_boost_lag_one_pass_vbr static
quiets -Wmissing-prototypes
Change-Id: I72d899c2d8de1ddc52d90ac081f2629374b3a6e9
James Zern [Fri, 16 Jun 2017 07:51:42 +0000 (00:51 -0700)]
vp9_encodeframe: make scale_part_thresh_sumdiff static
quiets -Wmissing-prototypes
Change-Id: I696223d75860edba13c6b6f38c1f8db353a6f812
James Zern [Fri, 16 Jun 2017 07:49:53 +0000 (00:49 -0700)]
vp9_alt_ref_aq: correct vp9_alt_ref_aq_create proto
quiets -Wmissing-prototypes
Change-Id: Ib2d4f294f1982739bb2ac98155e789e040d309a1
James Zern [Thu, 22 Jun 2017 01:56:10 +0000 (18:56 -0700)]
highbd_quantize_fp_32x32: normalize abs_qcoeff type
use an int to quiet an unsigned rollover warning similar to:
25110f283 Fix an ubsan warning: vp9_quantizer.c
Change-Id: Iedecb79a17249bc18f10c0920f88cf704920f12b
Marco [Thu, 22 Jun 2017 00:30:53 +0000 (17:30 -0700)]
vp9: Put skin detection usage around cpi flag.
Skin detection usage in choose_partitioning should be
around the cpi->use_skin_detection.
Change-Id: I6986179af9ce94c60c0974d66c311fc07cc04cfe
Marco [Wed, 21 Jun 2017 22:24:56 +0000 (15:24 -0700)]
vp9: Adjustments for aq-mode and pickmode for speed >= 8.
Adjust the threshold for turning off cyclic refresh for high motion,
and avoid testing golden in nonrd pickmode for speed >= 8 if
golden refresh was long ago.
No change/neutral on RTC metrics.
Change-Id: I40959b8d9637f3553e7458bbabd8c6024c2c09c0
James Zern [Wed, 21 Jun 2017 01:34:13 +0000 (18:34 -0700)]
vp8_dx_iface: clear -Wclobbered warnings
with gcc 6.x
Change-Id: Ib2070421603a6777892d4ea01f4b0921696f38b3
Johann Koenig [Wed, 21 Jun 2017 21:16:23 +0000 (21:16 +0000)]
Merge "dct tests: align InvAccuracyCheck buffers"
Linfeng Zhang [Tue, 20 Jun 2017 01:10:38 +0000 (18:10 -0700)]
Clean vpx_idct16x16_256_add_sse2()
Remove macro IDCT16 which is redundant with idct16_8col().
Change-Id: I783c5f4fda038a22d5ee5c2b22e8c2cdfb38432c
Linfeng Zhang [Thu, 15 Jun 2017 23:48:40 +0000 (16:48 -0700)]
Update vpx_idct{8x8,16x16,32x32}_1_add_sse2()
Change-Id: I365f8e53d9ccd028cef0f561d4de9e5916278609
Linfeng Zhang [Thu, 15 Jun 2017 23:06:53 +0000 (16:06 -0700)]
Clean 32x32 full idct sse2 and ssse3 code
vpx_idct32x32_1024_add_ssse3() is actually a sse2 function and faster
than vpx_idct32x32_1024_add_sse2(). Replace the slow one. All are
code relocations, no new code.
Change-Id: I5dac0e98cc411a4ce05660406921118986638d19
Hui Su [Wed, 21 Jun 2017 20:38:44 +0000 (20:38 +0000)]
Merge "VP9 level targeting: properly handle max_gf_interval"
Johann [Wed, 21 Jun 2017 18:46:58 +0000 (11:46 -0700)]
dct tests: align InvAccuracyCheck buffers
'in' is used for the reference fdct. 'coeff' is input to the idct being
tested and 'dst[16]' is output
Fixes a segfault on unaligned memory access on x86.
Change-Id: I3691b1380ed49986897dd89a63ce63a80a0e0962
James Zern [Wed, 21 Jun 2017 02:42:29 +0000 (19:42 -0700)]
fix build, rm ref to vpx_idct8x8_64_add_ssse3
this was deleted in:
98967645a Remove vpx_idct8x8_64_add_ssse3()
but this was merged in:
9e03eedf6 Merge changes Ib26dd515,Ie60dabc3
after:
a92991133 Merge "dct tests: run all possible sizes in one test"
which added a new reference
Change-Id: I8da4a6c80d27b237a378ff15eead1daab89e7e25
Linfeng Zhang [Wed, 21 Jun 2017 00:38:24 +0000 (00:38 +0000)]
Merge changes Ib26dd515,Ie60dabc3
* changes:
Clean 8x8 idct x86 optimization
Remove vpx_idct8x8_64_add_ssse3()
hui su [Tue, 20 Jun 2017 23:26:00 +0000 (16:26 -0700)]
VP9 level targeting: properly handle max_gf_interval
Don't overide max_gf_interval if it's not specified. It will
be assigned with a default value in vp9_rc_set_gf_interval_range().
BUG=b/
62803416
Change-Id: Ide46ce00279ed076865fc54ce98c55a994f0c798
Marco [Tue, 20 Jun 2017 19:20:52 +0000 (12:20 -0700)]
vp9: Adjust key-frame pars in vpx_temporal_svc_encoder.
Sample encoder change: reduce max-intra-rate to 1000 and
buf-initial to 600. Paramaters affect target size of key frame.
Change-Id: I2be6bc2927f5fa74e19e1efa3fb574d23a503300
Marco [Tue, 20 Jun 2017 16:05:56 +0000 (09:05 -0700)]
vp9: Adjust key-frame pars in vpx_temporal_svc_encoder.
Sample encoder change: reduce max-intra-rate to 1500 and
buf-initial to 700. Paramaters affect target size of key frame.
Change-Id: I01e238378b63eeef28dfc2178baadffcd3cc7561
Johann Koenig [Tue, 20 Jun 2017 15:04:24 +0000 (15:04 +0000)]
Merge "dct tests: run all possible sizes in one test"
Marco Paniconi [Tue, 20 Jun 2017 03:08:32 +0000 (03:08 +0000)]
Merge "vp9: SVC: Rework the usage of base_mv for SVC."
Marco [Tue, 20 Jun 2017 01:25:53 +0000 (18:25 -0700)]
vp9: Adjust key-frame pars in vpx_temporal_svc_encoder.
Adjust some parameters in sample encoder: vpx_temporal_svc_encoder.
Parameters adjusted to set lower QP for initial key frame,
and allow for larger target size on subsequent key frames.
Change-Id: I092ad968e5b51b9f495dadb6ee96e810663c910e
Marco Paniconi [Mon, 19 Jun 2017 23:45:34 +0000 (23:45 +0000)]
Merge "vp9: Speed >= 8: Adjust resolution threshold for subpel."
Johann [Tue, 9 May 2017 17:08:24 +0000 (10:08 -0700)]
dct tests: run all possible sizes in one test
Modify fdct4x4_test.cc to support all size combinations. This does not
add any new tests and in fact fails a few. There were minimal changes
made to the tests so it's not entirely surprising that some of the
larger 12 bit transforms are failing since it was initially only used
for 4x4.
In follow up patches the tests in fdct8x8_test.cc, dct16x16_test.cc and
dct32x32_test.cc will be evaluated and moved to dct_test.cc.
BUG=webm:1424
Change-Id: I72a23430f457d7fae8c91e706adc0e77c25abc8f
James Zern [Mon, 19 Jun 2017 22:15:06 +0000 (22:15 +0000)]
Merge "libs.mk: retry partial testdata download"
James Zern [Fri, 16 Jun 2017 06:33:11 +0000 (23:33 -0700)]
libs.mk: retry partial testdata download
attempt retry on transient failures uncaught by --retry
Change-Id: I7cd8846ff88daf0f521af9ee182e30bfd79f51f3
Marco [Mon, 19 Jun 2017 20:56:04 +0000 (13:56 -0700)]
vp9: Speed >= 8: Adjust resolution threshold for subpel.
Get some quality gain on RTC metrics (~7%), with
~5-8% speed slowdown.
Change-Id: I0d02942a77074424ee0326b6e110ddff09f2df5e
Jerome Jiang [Mon, 19 Jun 2017 16:42:10 +0000 (16:42 +0000)]
Merge "Enable 8x8 skin detection for vp8."
Marco [Thu, 15 Jun 2017 23:23:36 +0000 (16:23 -0700)]
vp9: SVC: Rework the usage of base_mv for SVC.
Set the base_mv_aggressive for temporal enhancement layers (TL > 0).
Under the aggressive mode, skip the NEWMV depending on the
SSE of the base_mv. Also reduce the subpel motion to 1/2 under
aggressive mode if base_mv is good.
Speedup ~3% with small/negligible loss in quality on RTC.
Affects speed >= 6.
Change-Id: I89341b279cad6da2a04b76d5e726016191dacdb8
James Zern [Fri, 16 Jun 2017 07:48:11 +0000 (00:48 -0700)]
tiny_ssim: make some functions static
quiets -Wmissing-prototypes
Change-Id: If2e77c921b2fba456ed8d94119773e360d90b878
James Zern [Fri, 16 Jun 2017 20:07:51 +0000 (20:07 +0000)]
Merge "configure: test for -Wparentheses-equality"
Jerome Jiang [Wed, 14 Jun 2017 00:22:26 +0000 (17:22 -0700)]
Enable 8x8 skin detection for vp8.
If 2 or more 8x8 blocks are identified as skin, the macroblock will be
labeled as skin.
Change-Id: I596542c81a2df9e96270cab39d920bbfeb02bc6e
James Zern [Thu, 15 Jun 2017 23:05:20 +0000 (16:05 -0700)]
configure: test for -Wparentheses-equality
Change-Id: I36de79c58461907deaea70d6131da9119bc0bc69
Linfeng Zhang [Thu, 15 Jun 2017 18:29:07 +0000 (11:29 -0700)]
Clean 8x8 idct x86 optimization
Create load_buffer_8x8() and write_buffer_8x8().
Change-Id: Ib26dd515d734a5402971c91de336ab481b213fdf
Linfeng Zhang [Thu, 15 Jun 2017 21:09:33 +0000 (14:09 -0700)]
Remove vpx_idct8x8_64_add_ssse3()
It's almost identical with vpx_idct8x8_64_add_sse2(), except little
difference in instructions order.
Change-Id: Ie60dabc35eaa6ebae7c755e6cff00a710aad284f
Urvang Joshi [Thu, 8 Jun 2017 21:51:01 +0000 (14:51 -0700)]
VP9: Add greedy version of av1_optimize_b().
This was ported from the greedy version in AV1, written by Dake He
(dkhe@google.com).
See:
https://aomedia.googlesource.com/aom/+/master/av1/encoder/encodemb.c#137
Greedy version is disabled by default, but can be picked by setting
USE_GREEDY_OPTIMIZE_B to 1.
To be enabled by default later.
This is both faster and better in terms of compression.
Compression Improvement:
------------------------
lowres: -0.119
midres: -0.064
hdres: -0.405
Speed Improvement:
------------------
(Based on encode time of 3 videos of different difficulties at
3 different target bitrates)
With --cpu-used=0: 0.38% to 5.55% faster
With --cpu-used=1: 0.24% to 2.79% faster
With --cpu-used=2: 0.29% to 1.46% faster
Change-Id: Ia7a23b3b244ad8eb253ac9e43cd03c5e021d2635
Linfeng Zhang [Thu, 15 Jun 2017 17:57:50 +0000 (17:57 +0000)]
Merge changes Ibf9d120b,I341399ec,Iaa5dd63b,Id59865fd
* changes:
Update high bitdepth load_input_data() in x86
Clean array_transpose_{4X8,16x16,16x16_2) in x86
Remove array_transpose_8x8() in x86
Convert 8x8 idct x86 macros to inline functions
Marco Paniconi [Wed, 14 Jun 2017 15:59:54 +0000 (15:59 +0000)]
Merge "vp8: Adjust the pred_err threhsold for drop on overshoot."