Yunqing Wang [Thu, 5 Mar 2015 17:44:18 +0000 (09:44 -0800)]
Modify the setting of transform skip flags in non-rd mode
While searching for the best mode in non-rd case, SSE of
a partition block is calculated and the transform size is set.
This patch rewrites the skip checking conditions based on
transform size instead of partition size to be more precise.
Small gains were seen in rtc set borg test (speed 6).
AVG PSNR: 0.087%, overall PSNR: 0.073%, SSIM: 0.146%.
No noticeable speed change.
Change-Id: I5603ca5339c784dfa02263f4005988ccd8c32f6e
Johann [Wed, 4 Mar 2015 23:34:55 +0000 (15:34 -0800)]
Declare function used by 'once' with 'void' parameters
Visual Studio is exceptionally picky about this:
vp9_reconintra.c(900): warning C4113: 'void (__cdecl *)()' differs in
parameter lists from 'void (__cdecl *)(void)'
[.build-x86_64-win64-vs10\vpx.vcxproj]
Change-Id: I564c7415f4608fd962be8c699d6133a996b545f7
hkuang [Wed, 4 Mar 2015 22:23:01 +0000 (14:23 -0800)]
Merge "Fix variable shadowing."
Adrian Grange [Wed, 4 Mar 2015 20:49:58 +0000 (12:49 -0800)]
Merge "Small rationalization of code in vp9_first_pass"
hkuang [Wed, 4 Mar 2015 19:40:20 +0000 (11:40 -0800)]
Fix variable shadowing.
Change-Id: I287c61ad4aa85654aef3c871a62131bcd0d891ac
hkuang [Wed, 4 Mar 2015 19:27:58 +0000 (11:27 -0800)]
Merge "Remove unnecessary loopfilter init."
Adrian Grange [Wed, 4 Mar 2015 18:54:10 +0000 (10:54 -0800)]
Merge "Make encoder buffer allocation dynamic"
Adrian Grange [Fri, 27 Feb 2015 23:52:58 +0000 (15:52 -0800)]
Small rationalization of code in vp9_first_pass
Change-Id: I87cc0e038171c60a957298827e312fead500f7fb
Jingning Han [Wed, 4 Mar 2015 18:47:56 +0000 (10:47 -0800)]
Merge "Use SAD value to set chroma cost flag"
Jingning Han [Wed, 4 Mar 2015 17:40:01 +0000 (09:40 -0800)]
Use SAD value to set chroma cost flag
This saves an extra 64x64 variance calculation and replaces two
32x32 variance functions with sad functions. The compression
performance change is unnoticeable.
Change-Id: I6d33868695664ec73b56c42945162ae61c484856
Jingning Han [Wed, 4 Mar 2015 17:01:33 +0000 (09:01 -0800)]
Merge "Properly handle the boundary blocks for integral projection search"
Adrian Grange [Wed, 18 Feb 2015 17:40:34 +0000 (09:40 -0800)]
Make encoder buffer allocation dynamic
Frame buffers are now allocated dynamically on-demand.
Entries in the reference frame map, cm->ref_frame_map,
may now be set to -1 (INVALID_IDX) to indicate that
there is not a valid reference buffer in that "slot".
All slots in the reference frame map are now initialized
to the empty state (-1) and each buffer is initialized
to have a reference count of 0.
Change-Id: Id1afe98de98db4ae8b2dfefed7889c3b28c68582
Deb Mukherjee [Wed, 4 Mar 2015 07:23:44 +0000 (23:23 -0800)]
Merge "dc quantizer fix for 32x32 transforms"
Jingning Han [Wed, 4 Mar 2015 03:04:34 +0000 (19:04 -0800)]
Merge "Scale the normalization factor depending on the block size"
Jingning Han [Mon, 2 Mar 2015 21:51:12 +0000 (13:51 -0800)]
Properly handle the boundary blocks for integral projection search
Use rectangular block size for integral projection motion estimation
if the the 64x64 block has over half block outside the frame. This
avoids the issue that the motion information of these blocks is
dominated by the extended pixels, instead of the pixels of interest.
Change-Id: I22f4d2bb7f6a20db9b3f5e2e5463a7f4b9d1b737
Deb Mukherjee [Tue, 3 Mar 2015 20:26:41 +0000 (12:26 -0800)]
dc quantizer fix for 32x32 transforms
The rounding factor needs to be scaled down by a factor of 2.
Also, the quantized and dequantized coefficients are memset to 0
when dc quantizer is used.
Change-Id: Ifa68bab02addbf1b83d249c5b4cbd5cda796b1cf
Yunqing Wang [Tue, 3 Mar 2015 23:47:06 +0000 (15:47 -0800)]
Merge "fix a race condition caused by intra function pointer initialization"
Yaowu Xu [Tue, 3 Mar 2015 23:33:55 +0000 (15:33 -0800)]
Merge "Adapt color sensitiviy threshold to luma signal energy"
Jingning Han [Mon, 2 Mar 2015 18:28:12 +0000 (10:28 -0800)]
Scale the normalization factor depending on the block size
Change-Id: I0a26994bf65ea224e496b09af2ce71e1a4210433
Yaowu Xu [Mon, 2 Mar 2015 23:35:58 +0000 (15:35 -0800)]
Adapt color sensitiviy threshold to luma signal energy
Instead using only a fixed threshold, this commit adapts the threshold
for color sensitivity decision to luma signal energy: chroma channel's
sse is at least 1/6 of that in luma for color sensitivity flag to be
set to active.
This recoups a large portion of the speed loss due to accounting for
chroma component costs in RTC mode decision.
Change-Id: Ie01f747f6037dba6a1d1ed3e10b71a0ef1abc42c
hkuang [Fri, 13 Feb 2015 19:49:26 +0000 (11:49 -0800)]
Remove unnecessary loopfilter init.
Loopfilters are init in vp9_decode_frame.
Change-Id: I4fbf6286b9b231451452e4ef3c19877a7b9a6768
Yunqing Wang [Tue, 3 Mar 2015 00:19:23 +0000 (16:19 -0800)]
fix a race condition caused by intra function pointer initialization
This patch fixed webm issue 962.
(https://code.google.com/p/webm/issues/detail?id=962)
The data races occurred when an encoder and a decoder were created
at the same time, and the function pointers were initialized twice.
Change-Id: I8851b753c4b4ad4767d6eea781b61f0ac9abb44b
Johann [Tue, 3 Mar 2015 17:20:02 +0000 (09:20 -0800)]
Merge "libyuv: update to r1305"
James Zern [Fri, 27 Feb 2015 04:31:59 +0000 (20:31 -0800)]
ResizeCspTest: request PSNR packets
without VPX_CODEC_USE_PSNR they're only generated by default with
--enable-internal-stats
Change-Id: I9a5a8874a3aa4bde39ae09a4101ed5616c83c9a1
Johann [Mon, 2 Mar 2015 23:19:19 +0000 (15:19 -0800)]
libyuv: update to r1305
MIPS build fixes
https://code.google.com/p/webm/issues/detail?id=957
Change-Id: I9d53900af36d783c369b5dff27a7479cb94fd16b
Jingning Han [Fri, 27 Feb 2015 21:35:22 +0000 (13:35 -0800)]
Use variance metric for integral projection vector match
This commit replaces the SAD with variance as metric for the
integral projection vector match. It improves the search accuracy
in the presence of slight light change. The average speed -6
compression performance for rtc set is improved by 1.7%. No speed
changes are observed for the test clips.
Change-Id: I71c1d27e42de2aa429fb3564e6549bba1c7d6d4d
Jingning Han [Sat, 28 Feb 2015 02:19:18 +0000 (18:19 -0800)]
Merge "Fix source frame border extension"
Jingning Han [Fri, 27 Feb 2015 23:37:18 +0000 (15:37 -0800)]
Fix source frame border extension
This commit fixes an issue in source frame border extension. It
causes certain frame resolution such as 640x480 to have a portion
of the right/bottom extension filled by zeros, which misleads
motion search and degrades transform coding performance when large
block size is used.
This fix improves the speed 2 compression performance of a few
yt sequence, typically ranging from 1% - 2%, up to 5% at median
to low bit-rate.
Change-Id: Id6b09a5695d9e7651c6dfbc2c6a72288b08af7fb
Adrian Grange [Fri, 27 Feb 2015 23:42:08 +0000 (15:42 -0800)]
Merge "Fix calc_highbd_psnr"
Alex Converse [Fri, 27 Feb 2015 22:37:48 +0000 (14:37 -0800)]
Merge "Make SVC compatible with external resize."
Adrian Grange [Fri, 27 Feb 2015 22:02:49 +0000 (14:02 -0800)]
Fix calc_highbd_psnr
Should use the crop dimensions of the frame rather
than the extended size.
Change-Id: I49ed041a46ff0753d43e074020857b7ff2f95e17
Marco [Fri, 27 Feb 2015 19:53:57 +0000 (11:53 -0800)]
Merge "Fix arithmetic overflow warnings."
James Zern [Fri, 27 Feb 2015 18:59:59 +0000 (10:59 -0800)]
Merge "use LC_ALL=C to sort libvpx_*srcs.txt"
Jingning Han [Fri, 27 Feb 2015 17:49:30 +0000 (09:49 -0800)]
Merge "Refactor integral projection based motion estimation"
Jingning Han [Fri, 27 Feb 2015 17:49:10 +0000 (09:49 -0800)]
Merge "Fix high bit-depth loop-filter sse2 compiling issue - part 4"
Jingning Han [Fri, 27 Feb 2015 17:49:00 +0000 (09:49 -0800)]
Merge "Fix high bit-depth loop-filter sse2 compiling issue - part 3"
Jingning Han [Fri, 27 Feb 2015 17:48:51 +0000 (09:48 -0800)]
Merge "Fix high bit-depth loop-filter sse2 compiling issue - part 2"
Jingning Han [Fri, 27 Feb 2015 17:48:39 +0000 (09:48 -0800)]
Merge "Fix high bit-depth loop-filter sse2 compiling issue - part 1"
James Zern [Fri, 27 Feb 2015 07:14:54 +0000 (23:14 -0800)]
test-data.mk: fix perf test data dependency
both the encode and decode perf tests require niklas_1280_720_30.yuv
broken since:
28eebf3 Merge "tests: add a shorter 720p test clip"
7839d03 tests: add a shorter 720p test clip
Change-Id: I51ebbf7261832e25d8f2c1da5c7df5c2e47f748e
James Zern [Fri, 27 Feb 2015 04:48:40 +0000 (20:48 -0800)]
use LC_ALL=C to sort libvpx_*srcs.txt
Change-Id: I387da141ebade4fc4d2f3c0a2b6aa5aaea091c0c
James Zern [Fri, 27 Feb 2015 02:30:24 +0000 (18:30 -0800)]
tools_common.sh: use $$ in VPX_TEST_OUTPUT_DIR
a bit simpler than invoking awk for rand()
Change-Id: I36ac474708f7bf0157ae59b882c2a9f69b0aaf41
James Zern [Thu, 26 Feb 2015 23:54:41 +0000 (15:54 -0800)]
Merge "tools_common.sh: add directory name to error output"
Marco [Thu, 26 Feb 2015 22:27:16 +0000 (14:27 -0800)]
Fix arithmetic overflow warnings.
Change-Id: Ib85b5bc135aa0907a76b8c74faafe577e27d014f
Jingning Han [Tue, 24 Feb 2015 20:43:06 +0000 (12:43 -0800)]
Fix high bit-depth loop-filter sse2 compiling issue - part 3
Change-Id: Idb14b9a285f8098126f967c5e2750221d6a58f69
Yaowu Xu [Thu, 26 Feb 2015 23:13:28 +0000 (15:13 -0800)]
Merge "Fix the encoder to support profile change"
Yaowu Xu [Thu, 26 Feb 2015 23:13:06 +0000 (15:13 -0800)]
Merge "Correct parameter order in a function call"
James Zern [Thu, 26 Feb 2015 22:51:44 +0000 (14:51 -0800)]
Merge "tests: add a shorter 720p test clip"
Jingning Han [Mon, 23 Feb 2015 22:43:06 +0000 (14:43 -0800)]
Refactor integral projection based motion estimation
Support variable block size integral projection based motion
estimation.
Change-Id: Iee6d65e44df4480aa13fb7b84b9c91914b89caa1
James Zern [Thu, 26 Feb 2015 20:57:30 +0000 (12:57 -0800)]
tools_common.sh: add directory name to error output
+ add a helper function to reduce the duplication
this is a bit clearer when the environment variable is set, but the
directory is missing
Change-Id: I08f9b56122b5741bb40a5f795f7f82f5b49f1047
Jingning Han [Tue, 24 Feb 2015 20:21:04 +0000 (12:21 -0800)]
Fix high bit-depth loop-filter sse2 compiling issue - part 2
Change-Id: I6728b69bb3dff1daa64ff7142f691e80a089f1c4
Yaowu Xu [Wed, 25 Feb 2015 23:39:09 +0000 (15:39 -0800)]
Fix the encoder to support profile change
Change-Id: Iefb928ad1174e274409facfb44f80265ff0f7683
Yaowu Xu [Thu, 26 Feb 2015 19:39:57 +0000 (11:39 -0800)]
Correct parameter order in a function call
Change-Id: Ibd87db1c4371edcbe193d39df2fdc07d3842c21a
paulwilkins [Thu, 26 Feb 2015 16:20:08 +0000 (08:20 -0800)]
Merge "Account for rate error in GF group Q calculation."
James Zern [Thu, 26 Feb 2015 03:09:59 +0000 (19:09 -0800)]
tests: add a shorter 720p test clip
niklas_1280_720_30.y4m 60 frames @ 30fps
only a small number of frames are being used; this reduces the test data
download size in non-perf-test cases by >500M.
retain niklas_1280_720_30.yuv for encode+decode perf tests
Change-Id: I56b3433104acd462f952a9554280de5a3ec0b6d2
Alex Converse [Wed, 25 Feb 2015 22:05:51 +0000 (14:05 -0800)]
Make SVC compatible with external resize.
Fixes https://code.google.com/p/webm/issues/detail?id=943
Change-Id: I6177bf6ab6b31a22d2652732f579b8aed3f28887
Jingning Han [Wed, 25 Feb 2015 20:33:09 +0000 (12:33 -0800)]
Merge "Motion compensated reference refinement"
Jingning Han [Wed, 25 Feb 2015 18:33:25 +0000 (10:33 -0800)]
Merge "Re-distribute hierarchical vector match pattern"
Jingning Han [Mon, 23 Feb 2015 20:33:24 +0000 (12:33 -0800)]
Motion compensated reference refinement
This commit applies one-step refinement search to the resulting
motion vector of the integral projectiion based motion estimation,
per 64x64 block. It improves the coding performance of speed -6.
pedestrian 1080p 500 kbps
51735 b/f, 36.794 dB, 16044 ms ->
51382 b/f, 36.793 dB, 16282 ms
cloud 1080p 500 kbps
24081 b/f, 37.988 dB, 14016 ms ->
23597 b/f, 38.076 dB, 12774 ms
vidyo1 720p 1000 kbps
16552 b/f, 40.514 dB, 8279 ms ->
16553 b/f, 40.543 dB, 8510 ms
The rtc set compression performance is improved by 0.5%.
Change-Id: I3d09bea2caf58b2a4f3b38aa26fffafcbe9a2c17
Yaowu Xu [Wed, 25 Feb 2015 18:26:44 +0000 (10:26 -0800)]
Merge "Fix a trivial memory leak"
Yunqing Wang [Wed, 25 Feb 2015 18:10:10 +0000 (10:10 -0800)]
Merge "Fix ssse3 quantize_fp functions while skip=1"
Jingning Han [Tue, 24 Feb 2015 20:04:09 +0000 (12:04 -0800)]
Fix high bit-depth loop-filter sse2 compiling issue - part 1
The intrinsic statement _mm_subs_epi16() should take immediate.
Feeding variable as its input argument will cause compile failure
in older version gcc.
Change-Id: I6a71efcc8d3b16b84715e0a9bcfa818494eea3f4
Jingning Han [Wed, 25 Feb 2015 17:32:00 +0000 (09:32 -0800)]
Merge "Fix fwd transform sse2 build issue on older gcc version"
Jingning Han [Fri, 20 Feb 2015 19:39:05 +0000 (11:39 -0800)]
Fix fwd transform sse2 build issue on older gcc version
Change-Id: I3e0e53d129552babf29e6c5d047483733983973c
James Zern [Wed, 25 Feb 2015 03:09:32 +0000 (19:09 -0800)]
Merge "vp9_loopfilter: quiet integer constant size warnings"
Hanno Böck [Tue, 24 Feb 2015 23:48:21 +0000 (15:48 -0800)]
Fix a trivial memory leak
Change-Id: I1108d720bb3b30586b128dd01ce608e1e62b1756
Jingning Han [Tue, 24 Feb 2015 22:48:12 +0000 (14:48 -0800)]
Fix high bit-depth loop-filter sse2 compiling issue - part 4
Change-Id: I39f56f60425836f2e1ec07da71edd4810a4c78bb
Jingning Han [Mon, 23 Feb 2015 20:55:50 +0000 (12:55 -0800)]
Re-distribute hierarchical vector match pattern
This commit modifies the hierarchical vector match patter. It
avoids repeated SAD computation at same points. The function
vp9_vector_sad_sse2 is called 12 times per 64x64 block, instead
of 15 times as before. The effective coverage remains the same.
Change-Id: I91ad9d27d40db8963c907d02af84e10702136994
James Zern [Fri, 20 Feb 2015 04:05:19 +0000 (20:05 -0800)]
vp9_loopfilter: quiet integer constant size warnings
mark uint64_t constants with 'ULL'
Change-Id: I7648e161b4004fba35e1fa7ab79e34cc19e39716
Yunqing Wang [Tue, 24 Feb 2015 18:37:05 +0000 (10:37 -0800)]
Fix ssse3 quantize_fp functions while skip=1
In ssse3 functions, DEFINE_ARGS macro hard codes qcoeff and dqcoeff
to r3 and r4. If skip is 1, qcoeff and dqcoeff need to be loaded
from the stack, which doesn't work because of the above definitions.
Currently, skip=1 case is not used in the encoder. This patch fixed
the issue, so it can be turned on later.
Change-Id: I998d696b1a7a85dca2b3bcee790b21c21e039147
Yaowu Xu [Mon, 23 Feb 2015 21:01:14 +0000 (13:01 -0800)]
fix the propagation of color space info in decoder
This addresses the issue #960
Change-Id: Iddf45b4bd4f53cb0ddfd879e800a071cd843b915
paulwilkins [Fri, 20 Feb 2015 13:41:25 +0000 (13:41 +0000)]
Account for rate error in GF group Q calculation.
When GF group adaptive maxQ is enabled this patch accounts
somewhat for accumulated error in the rate control.
This improves accuracy quite a bit on many clips especially
when there is overshoot.
Examples when the overshoot and undershoot command line
parameters are set to 100:
Hall @ 1200 overshoot is reduced from 67-24%.
Akiyo @ 400 undershoot is reduced from 28%-15%.
Setting a lower value for undershoot or overshoot still
reduces the error further.
Impact on metrics is mixed with some gains in average psnr
but generally a little lower (e.g. 0.5%) on overall and ssim.
The GF group adaptation is still off by default in this patch.
Compared to with the head, enabling this mode now gives
big average psnr gains on the YT sets (e.g. YT_HD >11.2%),
a drop in overall PSNR (YT-HD 3.9%) and a smaller drop or
neutral for SSIM.
Change-Id: If4b32cd0740d3fb941317b374f9c2951954eee90
Adrian Grange [Sat, 21 Feb 2015 00:13:55 +0000 (16:13 -0800)]
Merge "Remove redundant test"
Marco [Fri, 20 Feb 2015 22:42:02 +0000 (14:42 -0800)]
Merge "Remove a few unneccessary multiplications in denoiser."
Marco [Fri, 20 Feb 2015 19:54:28 +0000 (11:54 -0800)]
Remove a few unneccessary multiplications in denoiser.
Change-Id: I3edbb7cc67203fbbf32c6fd4a08015ca9d9ed53e
Hangyu Kuang [Fri, 20 Feb 2015 18:58:12 +0000 (10:58 -0800)]
Move dequant table from VP9_COMMON to VP9_COMP as decoder
does not need it any more.
This reduces VP9_COMMON size from 25776 bytes to 17584 bytes(~31%).
Change-Id: Ic5daea732ccefb6d512b048af7983f0efe08589b
Marco [Fri, 20 Feb 2015 17:55:05 +0000 (09:55 -0800)]
Merge "Adjustments to cyclic refresh (aq-mode=3)."
Jingning Han [Fri, 20 Feb 2015 17:35:18 +0000 (09:35 -0800)]
Merge "Add high bit depth support to rtc sub8x8 block coding"
Marco [Wed, 28 Jan 2015 19:34:24 +0000 (11:34 -0800)]
Adjustments to cyclic refresh (aq-mode=3).
Target higher delta-qp for big blocks with zero motion,
and for segment#1: avoid 64x64 partition size and force 8x8 tx size.
Metrics on RTC set mostly positive: SSIM up by ~4%, PSRN by ~1.5%.
Doesn't seem to be any change in speed.
Change-Id: I1f68fa3c4f62dab3b90cc58041f05ebb048ae5ac
Jingning Han [Wed, 18 Feb 2015 23:48:40 +0000 (15:48 -0800)]
Add high bit depth support to rtc sub8x8 block coding
This commit adds proper buffer handle to support high bit depth
in rtc sub8x8 block coding.
Change-Id: Ibaf8a2160194121aec9ca68b8094817fed9ccaea
Hangyu Kuang [Fri, 20 Feb 2015 16:23:54 +0000 (08:23 -0800)]
Merge "Optimize the dequantization process on decoder side."
Adrian Grange [Fri, 20 Feb 2015 00:36:43 +0000 (16:36 -0800)]
Merge "Fix control string in firstpass stats fprintf"
Hangyu Kuang [Wed, 18 Feb 2015 23:32:24 +0000 (15:32 -0800)]
Optimize the dequantization process on decoder side.
Change-Id: I00621ff7165bbe86a18794b4a816976c9effaf78
Yunqing Wang [Thu, 19 Feb 2015 23:31:02 +0000 (15:31 -0800)]
Merge "Improve skip_txfm thresholds in the non-rd mode selection"
Adrian Grange [Thu, 19 Feb 2015 23:18:30 +0000 (15:18 -0800)]
Fix control string in firstpass stats fprintf
20 items in the control string but only 19 arguments.
Change-Id: I51dab9aa1c58c653b52395005a9cb41f09feb484
Jingning Han [Thu, 19 Feb 2015 23:08:11 +0000 (15:08 -0800)]
Merge "Integral projection based motion estimation"
Yunqing Wang [Thu, 19 Feb 2015 00:38:08 +0000 (16:38 -0800)]
Improve skip_txfm thresholds in the non-rd mode selection
Modified the thresholds of deciding whether or not to skip
the transforms in model_rd_for_sb_y(). Used zbin[] instead
of dequant[] to be more precise. Also, modified the checking
coditions.
Rtc set borg test results (at speed 6) showed:
average PSNR gain: 0.138%, overall PSNR gain: 0.158%,
and SSIM gain: 0.177%.
The data rate test was modified slightly as suggested by
Marco.
Change-Id: Ieaf633ab77f4838cb3c45cf69065b29d55f8ae6c
Jingning Han [Fri, 13 Feb 2015 19:23:45 +0000 (11:23 -0800)]
Integral projection based motion estimation
This commit introduces a new block match motion estimation
using integral projection measurement. The 2-D block and the nearby
region is projected onto the horizontal and vertical 1-D vectors,
respectively. It then runs vector match, instead of block match,
over the two separate 1-D vectors to locate the motion compensated
reference block.
This process is run per 64x64 block to align the reference before
choosing partitioning in speed 6. The overall CPU cycle cost due
to this additional 64x64 block match (SSE2 version) takes around 2%
at low bit-rate rtc speed 6. When strong motion activities exist in
the video sequence, it substantially improves the partition
selection accuracy, thereby achieving better compression performance
and lower CPU cycles.
The experiments were tested in RTC speed -6 setting:
cloud 1080p 500 kbps
17006 b/f, 37.086 dB, 5386 ms ->
16669 b/f, 37.970 dB, 5085 ms (>0.9dB gain and 6% faster)
pedestrian_area 1080p 500 kbps
53537 b/f, 36.771 dB, 18706 ms ->
51897 b/f, 36.792 dB, 18585 ms (4% bit-rate savings)
blue_sky 1080p 500 kbps
70214 b/f, 33.600 dB, 13979 ms ->
53885 b/f, 33.645 dB, 10878 ms (30% bit-rate savings, 25% faster)
jimred 400 kbps
13380 b/f, 36.014 dB, 5723 ms ->
13377 b/f, 36.087 dB, 5831 ms (2% bit-rate savings, 2% slower)
Change-Id: Iffdb6ea5b16b77016bfa3dd3904d284168ae649c
Jingning Han [Thu, 19 Feb 2015 17:54:08 +0000 (09:54 -0800)]
Fix a check condition in nonrd_pick_partition
Change-Id: Ic92fb4b16948f745c218351b24fdafecf9abce3a
hkuang [Wed, 18 Feb 2015 22:09:28 +0000 (14:09 -0800)]
Merge "Fix the frame parallel invalid file test failure on ARM."
James Zern [Tue, 17 Feb 2015 22:05:32 +0000 (14:05 -0800)]
Merge "test_vector_test: fix build with --disable-(vp8|vp9)"
hkuang [Mon, 9 Feb 2015 20:14:00 +0000 (12:14 -0800)]
Fix the frame parallel invalid file test failure on ARM.
There is a corner case that when a frame is corrupted, the following
inter frame decode worker will miss the previous failure. To solve
this problem, a need_resync flag needs to be added to master thread
to keep control of that.
Change-Id: Iea9309b2562e7b59a83dd6b720607410286c90a6
James Zern [Sat, 14 Feb 2015 02:03:45 +0000 (18:03 -0800)]
loop_filter_rows_mt: remove dependency on 'last_height'
using this to control reallocation would miss a change if the function
were not called for every frame.
fixes potential memory corruption by the subsequent memset
Change-Id: I4c6bb6ab68803104fc824c7e27cc2f9b2cf53e33
James Zern [Sat, 14 Feb 2015 02:48:45 +0000 (18:48 -0800)]
test_vector_test: fix build with --disable-(vp8|vp9)
use VP[89]_INSTANTIATE_TEST_CASE case when possible to disable the tests if
the codec is unavailable.
broken since:
be6aead Try again to merge branch 'frame-parallel' into master branch.
Change-Id: I8d81c5ba3b951f82be94bfaed6be194e4289baec
Yaowu Xu [Sat, 14 Feb 2015 00:40:41 +0000 (16:40 -0800)]
Merge "Fix an encoder/decode mismatch bug"
Yaowu Xu [Fri, 13 Feb 2015 22:53:11 +0000 (14:53 -0800)]
Fix an encoder/decode mismatch bug
This commit prevent the encoder to update last_frame_type when a frame
is dropped in the encoder. Prior to this fix, if there is a dropped
frame immediatedly after a key frame, decoder would have the value of
last_frame_type as key frame, different from encoder as the dropped
frame in encoder would have updated the value to an inter frame. This
leads to different probability update in encoder and decoder, thereby
encoder/decoder mismatch.
This fixes issue #941
Change-Id: I27115224b138bec43ae3916c016574f5740822b0
Marco [Fri, 13 Feb 2015 23:28:49 +0000 (15:28 -0800)]
Merge "Replace some operations with shift in encoder_breakout."
Adrian Grange [Fri, 13 Feb 2015 23:28:01 +0000 (15:28 -0800)]
Merge "Improve readability: move return statements"
Adrian Grange [Fri, 13 Feb 2015 22:51:32 +0000 (14:51 -0800)]
Remove redundant test
Change-Id: I11e4fd8dcd44b0475f3bff0545a035feb223ce55
Marco [Fri, 13 Feb 2015 18:42:57 +0000 (10:42 -0800)]
Replace some operations with shift in encoder_breakout.
Replaced a divide by 9 with 8, so some very small difference,
but otherwise no change in behavior.
Change-Id: I1079ae3c41e0789ff0bc6fa9940a238b6bca0f5b
Adrian Grange [Fri, 13 Feb 2015 18:20:14 +0000 (10:20 -0800)]
Merge "Add VP9 decoder control to get frame size"