Dmitry Kovalev [Tue, 24 Sep 2013 17:17:53 +0000 (10:17 -0700)]
Merge "Adding best_mv[2] array instead of two variables."
Deb Mukherjee [Tue, 24 Sep 2013 16:51:08 +0000 (09:51 -0700)]
Merge "Small tweak in the constant quality parameter"
Frank Galligan [Tue, 24 Sep 2013 16:36:30 +0000 (09:36 -0700)]
Merge "vpxenc: Stop writing the WebM FrameRate element."
Tom Finegan [Tue, 24 Sep 2013 16:08:42 +0000 (09:08 -0700)]
vpxenc: Stop writing the WebM FrameRate element.
The FrameRate element has been deprecated.
Change-Id: I68ac496e7b33685a100a45d2772e0ff30eb6a811
Jingning Han [Tue, 24 Sep 2013 16:18:17 +0000 (09:18 -0700)]
Merge "Enable per transformed block zero coeffs forcing"
Jingning Han [Tue, 24 Sep 2013 16:18:03 +0000 (09:18 -0700)]
Merge "Calculate rd cost per transformed block"
Deb Mukherjee [Tue, 24 Sep 2013 16:09:35 +0000 (09:09 -0700)]
Small tweak in the constant quality parameter
Improves results a little.
Change-Id: I7bcac02dbb65b43a993445cf557c520197114e5c
Yunqing Wang [Tue, 24 Sep 2013 15:40:56 +0000 (08:40 -0700)]
Merge "Number of instructions in fdct4_1d_sse2 reduced by two."
A.Mahfoodh [Mon, 23 Sep 2013 18:13:40 +0000 (14:13 -0400)]
Number of instructions in fdct4_1d_sse2 reduced by two.
Mathematically the results are the same.
Change-Id: I1c5126cd3ca64e8515ca6331e0989c6f7dd651a0
Yaowu Xu [Fri, 20 Sep 2013 23:14:37 +0000 (16:14 -0700)]
change to prevent computatio of log(0.0)
Change-Id: I5759f309f94a2b5c1297e6db3735c52986d3ecb2
Yaowu Xu [Fri, 20 Sep 2013 20:29:59 +0000 (13:29 -0700)]
fix integer overflow in vp8
Change-Id: I62550a7a883115f3ce878710cf3bb039bea54390
Yaowu Xu [Mon, 23 Sep 2013 23:43:41 +0000 (16:43 -0700)]
Merge "Correct 3 step search site initialziation"
Frank Galligan [Mon, 23 Sep 2013 23:13:47 +0000 (16:13 -0700)]
Merge "Hide global symbols for macho32/64"
Yaowu Xu [Mon, 23 Sep 2013 23:07:31 +0000 (16:07 -0700)]
Correct 3 step search site initialziation
39c7b01d accidently reverted the row/col initialization, which broke
mv clamps, which is dependent on the sites for valid motion vector
range. This commit fixed the issue.
Change-Id: Ibcce0226e0360b1ef483fe760b2e33f1af4bf494
Yunqing Wang [Mon, 23 Sep 2013 20:45:43 +0000 (13:45 -0700)]
Hide global symbols for macho32/64
Added hiding global symbols for macho32 and macho64 in x86inc.asm.
This was done to fix exported symbol issue in Chrome build.
Change-Id: I08d5c559b985b82f655b537469fee125615e78c0
Jingning Han [Fri, 20 Sep 2013 23:29:24 +0000 (16:29 -0700)]
Enable per transformed block zero coeffs forcing
This commit enables forcing all coefficients zero per transformed
block, when its rate-distortion cost is lower than regular coeff
quantization.
The overall performance improvement (including its parent patch on
calculating rd cost per transformed block) at speed 1:
derf: 0.298%
yt: 0.452%
hd: 0.741%
stdhd: 0.006%
Change-Id: I66005fe0fd7af192c3eba32e02fd6d77952accb5
Jingning Han [Mon, 23 Sep 2013 15:47:21 +0000 (08:47 -0700)]
Merge "Remove redundant mv_pred use for sub8x8 blocks"
Deb Mukherjee [Fri, 20 Sep 2013 07:41:29 +0000 (00:41 -0700)]
Improves constant qual, constrained qual turned on
Adds modeled functions to decide the qp for altref frames in constant q
mode similar to other functions in use in bitrate mode.
Also turns on the constrained quality mode (end-usage=2) option which
was turned off before. Basic testing shows the mode works in principle,
to cap bitrate to the target-bitrate specified, while allowing lower
bitrate depending on the cq-level specified. The mode will need to be
improved over time.
Results for constant quality vs bitrate control mode:
derfraw300/fullderfraw: +3.0% at constant quality over bitrate control.
fullstdhdraw: +4.341%
stdhdraw250: +5.361%
Change-Id: If5027c9ec66c8e88d33e47062c6cb84a07b1cda9
Dmitry Kovalev [Sat, 21 Sep 2013 09:57:47 +0000 (02:57 -0700)]
Merge "Cleanup in vp9_init3smotion_compensation."
James Zern [Sat, 21 Sep 2013 03:03:30 +0000 (20:03 -0700)]
Merge "thumb: Extend the regexp for handling negative register indexing"
Johann [Fri, 20 Sep 2013 23:11:05 +0000 (16:11 -0700)]
Use lowercase instruction in assembly
The iOS compiler does not recognize BLE:
bad instruction `BLE idct32_transpose_pair_loop'
Change-Id: I7426694c66bc31caf939a2d5000968da1222c15b
Jingning Han [Fri, 20 Sep 2013 18:30:46 +0000 (11:30 -0700)]
Calculate rd cost per transformed block
This commit makes the rate-distortion optimization loop evaluate
the rd costs of regular quantization and all zero coeffs, per
transformed block. It improves speed 1 compression performance:
derf: 0.245%
yt: 0.515%
For a large partition that consists multiple transformed blocks,
this allows more flexibility to selectively force a portion of
them coded as all zero coeffs, as well be continued in the next
patches.
Change-Id: I211518be4179747b57375696f017d1160cc91851
Dmitry Kovalev [Fri, 20 Sep 2013 13:08:53 +0000 (17:08 +0400)]
Adding best_mv[2] array instead of two variables.
Change-Id: I584fe50f73879f6a72fada45714ef80893b6d549
Dmitry Kovalev [Fri, 20 Sep 2013 08:54:14 +0000 (12:54 +0400)]
Cleanup in vp9_init3smotion_compensation.
Change-Id: Ie47f53e76bc9530475c8c6d24e9b7a5a0189de56
Dmitry Kovalev [Fri, 20 Sep 2013 07:15:06 +0000 (00:15 -0700)]
Merge "Adding get_scan_and_band function."
Jingning Han [Thu, 19 Sep 2013 17:27:09 +0000 (10:27 -0700)]
Remove redundant mv_pred use for sub8x8 blocks
The sub8x8 blocks has its own motion vector reference scheme. The
mv_pred is only used blocks of sizes 8x8 and above, to find the
starting point for motion search.
This change does not change any coding behavior. It makes the
encoding process slightly faster. (0.5% speed-up for local test on
speed 1.)
Change-Id: I746ee6ef0eac19aa3621be014afa12be8d82cbb9
Jingning Han [Thu, 19 Sep 2013 16:59:56 +0000 (09:59 -0700)]
Merge "Refactor 8x8 fwd transform unit test"
Yaowu Xu [Thu, 19 Sep 2013 16:27:59 +0000 (09:27 -0700)]
Merge "fix vp8-only build"
Yaowu Xu [Wed, 18 Sep 2013 19:29:32 +0000 (12:29 -0700)]
change to avoid invalid memory read.
The fake token EOSB may cause invaild memory read in pack token, this
commit reworked the loop to avoid such invalid read.
Change-Id: I37fdfce869b44a7f90003f82a02f84c45472a457
Yaowu Xu [Tue, 17 Sep 2013 23:31:46 +0000 (16:31 -0700)]
fix integer overflow errors
Change-Id: I76f440a917832c02d7a727697b225bac66b99f56
Dmitry Kovalev [Thu, 19 Sep 2013 12:53:48 +0000 (16:53 +0400)]
Adding get_scan_and_band function.
Extracting get_scan_and_band function from get_entropy_context to
remove duplicated code.
Change-Id: I5da1f5a60263017e887da68bc834317b5f084cb2
Martin Storsjo [Thu, 19 Sep 2013 11:18:18 +0000 (14:18 +0300)]
thumb: Extend the regexp for handling negative register indexing
Now the same regexp that previously handled cases such as
"ldr r1, [r2, -r3]" also can handle the first operand being omitted
as in "pld [r2, -r3]".
This fixes building vp9_convolve8*neon.asm in thumb mode (and thus,
for Windows Phone as well).
Change-Id: I20c1c3f2bfb2587fb5fa523b863972a7fe30d8ff
Dmitry Kovalev [Thu, 19 Sep 2013 07:30:18 +0000 (00:30 -0700)]
Merge "Removing redundant code from vp9_mcomp.c."
Dmitry Kovalev [Thu, 19 Sep 2013 07:28:31 +0000 (00:28 -0700)]
Merge "Removing redundant coef calculation + cleanup."
Dmitry Kovalev [Thu, 19 Sep 2013 07:26:52 +0000 (00:26 -0700)]
Merge "Fixing typo in the encoder."
Yunqing Wang [Wed, 18 Sep 2013 21:51:31 +0000 (14:51 -0700)]
Merge "Fix x86inc.asm to build PIC code correctly"
Yunqing Wang [Wed, 18 Sep 2013 17:36:21 +0000 (10:36 -0700)]
Fix x86inc.asm to build PIC code correctly
Current x86inc.asm didn't handle 32bit PIC build properly.
TEXTRELs were seen in the library built. The PIC macros from
libvpx's x86_abi_support.asm was used to fix this problem.
The assembly code was modified to use the macros.
Notes: We need this fix in for decoder building. Functions in
encoder will be fixed later.
Change-Id: Ifa548d37b1d0bc7d0528db75009cc18cd5eb1838
Adrian Grange [Wed, 18 Sep 2013 15:36:00 +0000 (08:36 -0700)]
Merge "Modified resize unit test to output test vector"
Dmitry Kovalev [Wed, 18 Sep 2013 12:20:10 +0000 (16:20 +0400)]
Removing redundant coef calculation + cleanup.
Adding temp variable for &x->plane[0], inlining src_diff values.
Change-Id: I24c08a5425a6da6fd66f5b0278f2fce74f9989b2
Dmitry Kovalev [Wed, 18 Sep 2013 09:11:38 +0000 (13:11 +0400)]
Removing redundant code from vp9_mcomp.c.
Replacing ((1 << MV_MAX_BITS) - 1) with MV_MAX, adding const
qualifiers, reusing computed values.
Change-Id: I7b46d47f6c644b079d9c3478116a9de465a9baec
Dmitry Kovalev [Wed, 18 Sep 2013 08:02:22 +0000 (12:02 +0400)]
Fixing typo in the encoder.
Change-Id: I168efdc366eecf638694f357ccad2f4eba7e2fdb
James Zern [Wed, 18 Sep 2013 01:47:25 +0000 (18:47 -0700)]
fix vp8-only build
Change-Id: Id9ce44f3364dd57b30ea491d956a2a0d6186be05
Yaowu Xu [Wed, 18 Sep 2013 00:10:58 +0000 (17:10 -0700)]
Merge "Silence a bunch of MSVC warnings"
Jingning Han [Tue, 17 Sep 2013 21:06:00 +0000 (14:06 -0700)]
Clean up second ref check in sub8x8 rd loop
This commit cleans up the second reference check in the
rate-distortion optimization loop of sub8x8 blocks.
Change-Id: Ife68feaa4cddbfad2878c9b44d3012788d634f97
Adrian Grange [Thu, 12 Sep 2013 16:35:04 +0000 (09:35 -0700)]
Modified resize unit test to output test vector
Modified the resize unit test so that it optionally
writes the encoded bitstream to file. The macro
WRITE_COMPRESSED_STREAM should be set to 1 to enable
output of the test bitstream; it is set to 0 by default.
Change-Id: I7d436b1942f935da97db6d84574a98d379f57fb1
Yaowu Xu [Tue, 17 Sep 2013 16:45:13 +0000 (09:45 -0700)]
Silence a bunch of MSVC warnings
Change-Id: I16633269582a640809dca27572bbe99efa6369fc
Jingning Han [Tue, 17 Sep 2013 19:08:45 +0000 (12:08 -0700)]
Remove redundant argument in get_sub_block_mv
The sub8x8 check can be directly inferred from block_idx, hence
removed from the arguments if get_sub_block_mv.
Change-Id: Ib766d57e81248fb92df0f6d9b163e6c77b933ccd
Paul Wilkins [Tue, 17 Sep 2013 10:39:24 +0000 (03:39 -0700)]
Merge "Minor clean up."
Paul Wilkins [Tue, 17 Sep 2013 10:39:15 +0000 (03:39 -0700)]
Merge "Adjustment to mode_skip_start."
Jingning Han [Mon, 16 Sep 2013 23:01:50 +0000 (16:01 -0700)]
Refactor 8x8 fwd transform unit test
This commit reworked the unit test for 8x8 forward transform. It
allows scalability to cover various implemented versions.
Change-Id: I5594bd3e2307bb5bec764eaffd8860caa260e432
Adrian Grange [Tue, 17 Sep 2013 00:20:59 +0000 (17:20 -0700)]
Merge "Fix failure to copy data files if content changes"
Adrian Grange [Mon, 16 Sep 2013 18:46:00 +0000 (11:46 -0700)]
Fix failure to copy data files if content changes
Jenkins was failing to detect the case where an existing
file is recreated with new content. In this case, thinking
that the file already existed, Jenkins did not re-copy the
file as it should have.
By adding the file test-data.sha1 as a dependendency to
the LIBVPX_TEST_DATA build target the files will be
recopied if the MD5 of an existing file changes.
This could be further improved to only copy files that
have changed rather than copying the whole set as done in
this patch.
(Thanks to jzern@ who diagnozed ithe problem and suggested
this fix).
Change-Id: Icea7c61a95189bc639fec83020c28c70da5b2b41
hkuang [Mon, 16 Sep 2013 21:39:45 +0000 (14:39 -0700)]
Merge "Speed up iht8x8 by rearranging instructions. Speed improves from 282% to 302% faster based on assembly-perf."
hkuang [Mon, 16 Sep 2013 17:55:54 +0000 (10:55 -0700)]
Speed up iht8x8 by rearranging instructions.
Speed improves from 282% to 302% faster based on assembly-perf.
Change-Id: I08c5c1a542d43361611198f750b725e4303d19e2
Yaowu Xu [Mon, 16 Sep 2013 19:44:50 +0000 (12:44 -0700)]
fix a problem where an invalid mv used in search
The commit added reset of pred_mv at the beginning of each SB64x64
partition mv search, also limited the usage of pred_mv only when
search on the largest partition is already done. This is to fix
a crash at speed 1/2 encoder where an invalid mv is used in mv
search.
Change-Id: I39010177da76d054e3c90b7899a44feb2e3a5b1b
Paul Wilkins [Fri, 13 Sep 2013 17:04:32 +0000 (18:04 +0100)]
Minor clean up.
Removed some unused code and minor cleanup
/ reordering.
Change-Id: I4083ae56aeb8edfe9b85aa2f42a16aa28d19da94
Paul Wilkins [Fri, 13 Sep 2013 16:18:42 +0000 (17:18 +0100)]
Adjustment to mode_skip_start.
Corrected values relating to modified mode order.
Change-Id: I24fccba3af4bc16721d5e7e51888a66305bfa7fe
James Zern [Fri, 13 Sep 2013 23:06:27 +0000 (16:06 -0700)]
Merge "Revert "Improved 8t filters""
Yaowu Xu [Fri, 13 Sep 2013 22:20:24 +0000 (15:20 -0700)]
Merge "Minor adjustment in unit tests"
James Zern [Fri, 13 Sep 2013 22:11:07 +0000 (15:11 -0700)]
Revert "Improved 8t filters"
This is incompatible with most toolchains other than gcc.
Revert "Deleted #include <inttypes.h>"
This reverts commit
4d018be950ef8b056a7c797a22ee58012443df26.
This reverts commit
d22a504d11a15dc3eab666859db0046b5a7d75c5.
Change-Id: I1751dc6831f4395ee064e6748281418e967e1dcf
Jingning Han [Fri, 13 Sep 2013 21:43:23 +0000 (14:43 -0700)]
Merge "Adaptive motion search control"
Jingning Han [Thu, 12 Sep 2013 17:06:47 +0000 (10:06 -0700)]
Adaptive motion search control
This commit enables adaptive constraint on motion search range for
smaller partitions, given the motion vectors of collocated larger
partition as a candidate initial search point.
It makes speed 0 runtime of bus at CIF and 2000 kbps goes from
167s down to 162s (3% speed-up), at 0.01dB performance gains. In
the settings of speed 1, this makes the runtime goes from 33687 ms
to 32142 ms (4.5% speed-up), at 0.03dB performance gains.
Compression performance wise, it gains at speed 1:
derf 0.118%
yt 0.237%
hd 0.203%
stdhd 0.438%
Change-Id: Ic8b34c67810d9504a9579bef2825d3fa54b69454
Deb Mukherjee [Fri, 13 Sep 2013 18:03:59 +0000 (11:03 -0700)]
Merge "Clean up of the search best filter speed feature"
Yaowu Xu [Fri, 13 Sep 2013 16:23:53 +0000 (09:23 -0700)]
Minor adjustment in unit tests
The CpuSpeedTest is extended to cover 2pass good quality with CpuUsed
from 0 to 4. The BordersTest is changed to use CpuUsed 1 for faster
turn around.
Change-Id: I005e89adee7fe63af4b1f2a76a3a13ea826feadf
Paul Wilkins [Fri, 13 Sep 2013 16:19:31 +0000 (09:19 -0700)]
Merge "Fix VP9_mode_order[]"
Scott LaVarnway [Fri, 13 Sep 2013 15:56:20 +0000 (08:56 -0700)]
Merge "New mode_info_context storage -- undo revert"
Paul Wilkins [Fri, 13 Sep 2013 12:14:38 +0000 (13:14 +0100)]
Fix VP9_mode_order[]
Mis-merge of the following change managed to break mode order
and delete two mode options (new alt ref and near alt ref)
It also created a situation where we could test two undefined
modes off the end of the VP9_mode_order[] data structure.
"clang warnings : remove split and i4x4_pred fake modes"
"Change Id: I8ef3c*"
Initial testing on Akiyo at speed 2.
101.35 44.567 44.447 improves to
96.82 44.915 44.815
Approx 0.3-0.4db gain and 2.5% size reduction
Change-Id: Icff813e7c0778d140ad4f0eea18cf1ed203c4e34
Paul Wilkins [Fri, 13 Sep 2013 08:05:31 +0000 (01:05 -0700)]
Merge "Deleted #include <inttypes.h>"
Jim Bankoski [Thu, 12 Sep 2013 23:39:05 +0000 (16:39 -0700)]
Merge "fix clang warning in rdopt"
hkuang [Thu, 12 Sep 2013 22:42:44 +0000 (15:42 -0700)]
Merge "Add neon optimize iht8x8 which is 282% faster than C."
Christian Duvivier [Thu, 12 Sep 2013 21:23:00 +0000 (14:23 -0700)]
Merge "First draft of vp9_short_idct32x32_add_neon."
hkuang [Thu, 12 Sep 2013 18:45:15 +0000 (11:45 -0700)]
Add neon optimize iht8x8 which is 282% faster than C.
Change-Id: I963dd4a6e8671957403ccbb9a16ea7de703e3530
Jim Bankoski [Thu, 12 Sep 2013 13:39:42 +0000 (06:39 -0700)]
fix clang warning in rdopt
either missed this or it crept back in
Change-Id: I6cc1519d09e558be7250254c25bde2ae720555ea
Jim Bankoski [Fri, 6 Sep 2013 17:13:35 +0000 (10:13 -0700)]
clang warnings : ref frame enum mismatch
Convert from refframe_type_t to VP9_REFFRAME
Change-Id: Iff4043c3fdb3e1c9c2b412bdffd5da8ed913ec13
Jim Bankoski [Thu, 12 Sep 2013 13:20:45 +0000 (06:20 -0700)]
Merge "clang warnings : remove split and i4x4_pred fake modes"
Paul Wilkins [Thu, 12 Sep 2013 12:43:07 +0000 (13:43 +0100)]
Deleted #include <inttypes.h>
This seems not to be needed and is not supported
in the Windows build.
Change-Id: Iaca3bbf8cca283aee6bc336cb31ba9dd4610322b
Paul Wilkins [Thu, 12 Sep 2013 09:22:45 +0000 (02:22 -0700)]
Merge "Changes in speed 2 settings"
Jim Bankoski [Wed, 11 Sep 2013 23:34:55 +0000 (16:34 -0700)]
clang warnings : remove split and i4x4_pred fake modes
Change-Id: I8ef3c7c0f08f0f1f4ccb8ea4deca4cd8143526ee
Christian Duvivier [Wed, 11 Sep 2013 22:18:47 +0000 (15:18 -0700)]
First draft of vp9_short_idct32x32_add_neon.
Lots of TODO which will be taken care in upcoming changes. As is,
about 6x faster than C version.
Change-Id: Ie2557b72fd2d8edca376dbf400a4d173aa5e63e0
Deb Mukherjee [Wed, 11 Sep 2013 22:16:36 +0000 (15:16 -0700)]
Clean up of the search best filter speed feature
Removes this speed feature since it is very slow and unlikely
to be used in practice. This cleanup removes a bunch of unnecessary
complications in the outer encode loop.
Change-Id: I3c66ef1ca924fbfad7dadff297c9e7f652d308a1
Scott LaVarnway [Wed, 11 Sep 2013 21:34:54 +0000 (14:34 -0700)]
Merge "Improved 8t filters"
Jim Bankoski [Wed, 11 Sep 2013 20:40:11 +0000 (13:40 -0700)]
Merge "resolve clang issue : implicit convert tx_mode -> tx_size"
Scott LaVarnway [Wed, 11 Sep 2013 17:56:32 +0000 (13:56 -0400)]
Improved 8t filters
Reformatted version of a patch submitted by Erik/Tamar
from Intel. For the test clips used, the decoder
performance improved by ~2%.
Change-Id: Ifbc37ac6311bca9ff1cfefe3f2e9b7f13a4a511b
Deb Mukherjee [Tue, 10 Sep 2013 23:13:15 +0000 (16:13 -0700)]
Changes in speed 2 settings
Propose some changes to the speed 2 settings to improve quality.
In particular, turns off the adjust_thresholds_by_speed feature
which improves results by 6%. Also removes the code for
adjust_thresholds_by_speed since it conflicts with the adaptive
rd thresh feature.
Overall, with this change speed 2 is -15.2% from speed 0 settings,
on derf, which is significantly better than -21.6% down before.
Change-Id: I6e90a563470979eb0c258ec32d6183ed7ce9a505
Scott LaVarnway [Wed, 11 Sep 2013 17:45:44 +0000 (13:45 -0400)]
New mode_info_context storage -- undo revert
mode_info_context was stored as a grid of MODE_INFO structs.
The grid now constists of pointers to MODE_INFO structs. The
MODE_INFO structs are now stored as a stream (decoder only),
eliminating unnecessary copies and is a little more cache
friendly.
Change-Id: I031d376284c6eb98a38ad5595b797f048a6cfc0d
Yunqing Wang [Wed, 11 Sep 2013 16:32:00 +0000 (09:32 -0700)]
code cleanup
Removed unused function.
Change-Id: Icb12a09e4d303968be6aec9fae1ef05935913a4f
Jingning Han [Tue, 10 Sep 2013 23:39:18 +0000 (16:39 -0700)]
Merge "Remove redundant condition check in 32x32 quant"
James Zern [Tue, 10 Sep 2013 21:03:31 +0000 (14:03 -0700)]
Merge "vpx_mem: increase default alignment"
Adrian Grange [Tue, 10 Sep 2013 19:46:38 +0000 (12:46 -0700)]
Merge "Enable and fix resize_test for VP9"
Jingning Han [Tue, 10 Sep 2013 19:05:22 +0000 (12:05 -0700)]
Merge "Remove the use of uninitialized_safe in encode_sb_"
Jingning Han [Mon, 9 Sep 2013 23:02:07 +0000 (16:02 -0700)]
Remove redundant condition check in 32x32 quant
The c code implementation of 32x32 quantization does the zbin check
of all coefficients prior to the quant/dequant loop, hence removing
the redundant zbin check inside the loop. This only affects the
c code version. SSSE3 version does not separate the zbin check out.
Change-Id: Ic197a7d61d0b25fcac3cc092987651378cb56e4e
Adrian Grange [Tue, 10 Sep 2013 19:02:37 +0000 (12:02 -0700)]
Enable and fix resize_test for VP9
Added the resize_test unit test to the VP9 set.
Set g_in_frames = 0 to avoid a problem when the total
number of frames being encoded is smaller than
g_in_frames. In this case the test will not have
access to the encoded frames and will not be able to
compare them for testing for encoder/decoder mismatch.
Change-Id: I0d2ff8ef058de7002c5faa894ed6ea794d5f900b
Deb Mukherjee [Tue, 10 Sep 2013 18:16:47 +0000 (11:16 -0700)]
Merge "Small tweaks on the constant quality mode"
Deb Mukherjee [Tue, 10 Sep 2013 00:31:58 +0000 (17:31 -0700)]
Small tweaks on the constant quality mode
Improves results a little.
derf is now +1.078% over bitrate control.
Change-Id: I4812136f3e67be21d14ec089419976a32a841785
Yunqing Wang [Fri, 6 Sep 2013 23:59:55 +0000 (16:59 -0700)]
Stop partition checking when distortion is small
If the current obtained distortion is very small, which happens
for static image case, we pick the current partition type without
further split checking.
This won't affect regular videos. For static videos, we got 10%~12%
encoding speed gain. PSNR was better for some clips, and worse for
others. Overall it was even.
Change-Id: If787a57bedf46fc595ca4f5ded2b0c0a69e9fdef
Yunqing Wang [Tue, 10 Sep 2013 17:04:30 +0000 (10:04 -0700)]
Merge "Modify encode breakout for static frames"
Yunqing Wang [Fri, 6 Sep 2013 00:10:58 +0000 (17:10 -0700)]
Modify encode breakout for static frames
Thank Paul for the suggestions. While turning on static-thresh
for static-image videos, a big jump on bitrate was seen. In this
patch, we detected static frames in the video using first-pass
stats. For different cases, disable encode breakout or reduce
encode breakout threshold to limit the skipping.
More modification need be done to break incorrect partition
picking pattern for static frames while skipping happens.
Change-Id: Ia25f47041af0f04e229c70a0185e12b0ffa6047f
Jingning Han [Tue, 10 Sep 2013 16:05:34 +0000 (09:05 -0700)]
Merge "Enable accuracy/memory check for 16x16 transforms"
Jingning Han [Tue, 10 Sep 2013 16:05:04 +0000 (09:05 -0700)]
Merge "Rework 16x16 transform unit test"
hkuang [Tue, 10 Sep 2013 15:23:57 +0000 (08:23 -0700)]
Merge "Speed up idct16x16 by rearrange instructions."