Yunqing Wang
9f5811c2da
Add joint motion search in comp_inter_inter mode(experiment)
...
In current code, motion vectors got from single prediction mode are used
in compound prediction mode directly. These motion vectors may not give
accurate prediction since they are searched independently. In this patch,
we took Pascal's suggestion, and did joint motion search in compound
prediction mode to find better motion vectors in this situation.
Test results:
Overall PSNR: 0.570%(derf), 0.918%(stdhd);
SSIM: 0.572%(derf), 1.009%(stdhd);
The encoder is a little slower. This can be improved since some c
code is used in motion search.
Change-Id: Ib30c9240f6c56c9b070867b4ca89412a76d9f3c6
2013-05-10 10:15:43 -07:00
John Koleszar
eab6a421ea
Merge "Use common get_uv_tx_size()" into experimental
2013-05-09 12:18:10 -07:00
Dmitry Kovalev
eb93893bee
Updating comments for prediction modes.
...
Change-Id: If4063184f7b37dc011ec6a7a3e75260f4251e984
2013-05-09 11:37:51 -07:00
John Koleszar
1fec23bef6
Use common get_uv_tx_size()
...
Use a single method for calculating the transform size of
non-luma planes.
Change-Id: I16ebd10e7944d7b9075ab79d15e6a5b5f9bab775
2013-05-08 20:48:32 -07:00
Dmitry Kovalev
f66320abff
Removing LOOPFILTER_TYPE and corresponding bit in bitstream.
...
We don't have two loopfilter types anymore.
Change-Id: I53c0137361342c7d00887ad03be3490f0dfa3532
2013-05-08 16:44:08 -07:00
Dmitry Kovalev
267e9331e2
Merge "Using 4-iteration loop for extra_mb_col inside loopfilter function." into experimental
2013-05-08 16:37:34 -07:00
Dmitry Kovalev
7b602cba65
Merge "Eliminating several YV12_BUFFER_CONFIG usages." into experimental
2013-05-08 16:36:24 -07:00
Jingning Han
944ad130b6
Merge "Extend left/above partition context to per mi(8x8)" into experimental
2013-05-08 16:33:25 -07:00
Dmitry Kovalev
81f33bc091
Eliminating several YV12_BUFFER_CONFIG usages.
...
Change-Id: Ia85b987c935d545920dcae5a6f44136b1a08a008
2013-05-08 14:11:47 -07:00
Dmitry Kovalev
673cc21dfc
Using loop to iterate through YV12_BUFFER_CONFIG planes.
...
Change-Id: I22f1066eb0022c8d75f65a78435ee4ffecdfe0c9
2013-05-08 13:39:16 -07:00
Dmitry Kovalev
a0b6b8a7d4
Merge "Removing unused code + little cleanup." into experimental
2013-05-08 11:23:14 -07:00
Jingning Han
4a88ad89fd
Extend left/above partition context to per mi(8x8)
...
Update and buffer left/above partition information context per 8x8
block. This allows to further enable recursive partition down to
4x4 block size, and hence deprecating I4X4_PRED and SPLITMV.
This commit also fixes a context buffer swap/restore issue in 32x32
partition type search. This gives 0.1% performance gain for derf/yt.
Will refactor the superblock partition type search into recursion
form.
Change-Id: Ib61975aca5f12b78d8018481d7fa1393d085689b
2013-05-08 10:20:34 -07:00
John Koleszar
7465f52f81
Merge "Make setup_pred_block subsampling-aware." into experimental
2013-05-07 21:53:31 -07:00
Dmitry Kovalev
8e39295934
Using 4-iteration loop for extra_mb_col inside loopfilter function.
...
Change-Id: I3a4f456035628a9397bdc57c19cdb03439ab1ed3
2013-05-07 17:18:57 -07:00
John Koleszar
d6c490cb15
Merge "Deprecate code_zerogroup experiment." into experimental
2013-05-07 17:09:38 -07:00
Dmitry Kovalev
9cd5406c32
Merge "Removing vp9_swap_yv12_buffer function and corresponding files." into experimental
2013-05-07 17:02:38 -07:00
Dmitry Kovalev
cba0a5db2b
Removing unused code + little cleanup.
...
Change-Id: I81c19a8f19cfb5c7183609656ade833d72feb500
2013-05-07 16:56:22 -07:00
Paul Wilkins
a14ae84749
Deprecate code_zerogroup experiment.
...
Delete code under the CONFIG_CODE_ZEROGROUP flag.
Change-Id: I5fe6c7b42a5da9b73118e33594301da4129f320a
2013-05-07 16:52:55 -07:00
Dmitry Kovalev
b05247df95
Removing vp9_swap_yv12_buffer function and corresponding files.
...
Adding static swap_yv12 function to vp9_firstpass.c.
Change-Id: I7da9caab9720498db4a74c627901bf37816ed06c
2013-05-07 16:49:22 -07:00
Paul Wilkins
1ed57a6a62
Deprecate comp_interintra_pred experiment.
...
Delete code under the CONFIG_COMP_INTERINTRA_PRED
flag.
Change-Id: I3d1079cf46305c08f7e11d738596ea112e7b547f
2013-05-07 16:24:08 -07:00
Paul Wilkins
0bfcd30768
Remove enable_6tap filter experiment.
...
Clean out code under CONFIG_ENABLE_6TAP flag.
Change-Id: Ic45b624081181027d6ba24d55dd644c3197f9830
2013-05-07 16:13:02 -07:00
Paul Wilkins
8c1b516d10
Deprecate the newbintramode experiment.
...
Clean out code relating to newbintramode.
Change-Id: Ie91f4f156cdf60ce0da8ca407c1c9cb00c7d0705
2013-05-07 16:00:59 -07:00
Paul Wilkins
9afb6700c2
Adjust q range
...
Skip Q values between the q.0 mode and a real q of
2.0 as these are not valuable from an RD perspective.
Change-Id: I110c4858c57f97315953f4d88a2596d4764360df
2013-05-07 15:34:17 -07:00
Jingning Han
b0cd64f189
Merge "Add building blocks for partition down to 4x4" into experimental
2013-05-07 15:33:20 -07:00
Dmitry Kovalev
847e184011
Merge "General code cleanup inside treewriter-related files." into experimental
2013-05-07 15:04:28 -07:00
Jingning Han
cf8b5a09ed
Add building blocks for partition down to 4x4
...
Macro ab4x4 contains experiments for recursive partition down to
4x4 block size.
Change-Id: Ic727842fa98a4df9fd51e0025a545dc76a5c76c1
2013-05-07 12:11:51 -07:00
John Koleszar
e559e14fa6
Make setup_pred_block subsampling-aware.
...
Code previously set up the pointers by scaling by MI_UV_SIZE, which
is 4:2:0 only.
Change-Id: Ic13a92895cff018ec1345736746ed84cb31e6e31
2013-05-07 11:47:45 -07:00
Jingning Han
c0504a9b24
Merge "Merge SB8X8 into the codebase" into experimental
2013-05-07 09:23:47 -07:00
Jingning Han
776c1482a3
Merge SB8X8 into the codebase
...
Pull sb8x8 out of experimental list. verified via borg run tests.
Fixed unit test failures.
Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
2013-05-07 09:08:25 -07:00
Scott LaVarnway
cb7955d83e
Removed vp9_setup_intra_recon()
...
This setup is now handled by vp9_build_intra_predictors()
when left_available and/or up_available is zero.
Change-Id: I59cec0ab95f8be69ce885fd20727510e4deef8a0
2013-05-06 16:13:06 -04:00
Ronald S. Bultje
f7fa367094
Fix first-pass intra4x4 for sb8x8 experiment.
...
Change-Id: I1df17f45721c690d157800daa6a0b377e3d32bc2
2013-05-04 15:49:41 -07:00
John Koleszar
acc9c125dd
Remove old_block_idx_4x4
...
Removes several instances where the old block numbering was
still in use.
Change-Id: Id35130591455a4abe6844613e45c0b70c1220c08
2013-05-03 17:19:13 -07:00
John Koleszar
6c622e2783
Merge "Separate transform and quant from vp9_encode_sb" into experimental
2013-05-03 17:19:01 -07:00
John Koleszar
4529c68b3b
Separate transform and quant from vp9_encode_sb
...
This allows removing a large number of transform size specific functions,
as well as supporting 444/alpha by routing all code through the
subsampling-aware path.
Change-Id: Ieb085cebe9f37f24fc24de179898b22abfda08a4
2013-05-03 12:14:50 -07:00
Adrian Grange
7aae782c37
Merge "Extend number of reference buffers to 8." into experimental
2013-05-03 09:59:54 -07:00
Adrian Grange
d7eea782f2
Extend number of reference buffers to 8.
...
The number of reference buffers is extended to 8 and
a reference sign-bias added for the LAST_FRAME.
Whilst the number of reference buffers used by an
individual frame remains unchanged at 3, these may
now be selected from 8 possible buffers.
Change-Id: I2d247b9c1c2b3a339d6c9fac125e81ba373f75a7
2013-05-03 09:17:18 -07:00
Scott LaVarnway
3041cf8c8b
Merge "Reduced y_dequant, uv_dequant size" into experimental
2013-05-03 07:30:31 -07:00
Dmitry Kovalev
519d9f3e16
Merge "Using treed_read/treed_write functions for segment ids." into experimental
2013-05-02 10:40:58 -07:00
Ronald S. Bultje
704fb4866e
Fix right-edge availability for intra prediction in sb8x8.
...
Fixes valgrind uninitialized value use warnings.
Change-Id: Ie9314d684e2ad194f8aca5bde1729fb9b7c0221d
2013-05-02 10:16:48 -07:00
Ronald S. Bultje
ec6cf519d1
Merge "Fix some more offset errors in sb8x8." into experimental
2013-05-02 09:08:33 -07:00
Jingning Han
73a4824c34
Merge "Fix bug in sb8x8 partition context" into experimental
2013-05-02 09:04:28 -07:00
Ronald S. Bultje
3e345cd4d8
Fix some more offset errors in sb8x8.
...
Change-Id: I83677227f7610fdf2db9f15f87fecd4d8e072427
2013-05-02 07:54:18 -07:00
Ronald S. Bultje
dd1e6b8e6f
Merge "Fix block reconstruction with sb8x8 enabled." into experimental
2013-05-02 07:11:36 -07:00
Jingning Han
ba24a28f69
Fix bug in sb8x8 partition context
...
Fix the issue that causes array bound excess in getting partition
context.
Change-Id: I66166f047f0bcaefebb0bcf441c5b1f777d8da44
2013-05-01 22:34:27 -07:00
Ronald S. Bultje
ff37688a91
Fix block reconstruction with sb8x8 enabled.
...
The encoder reconstruction is now correct. Decoder to follow shortly.
Change-Id: Iedf98cdaebb4ca1256c7714cad7024a75853ad6a
2013-05-01 19:28:17 -07:00
Jingning Han
b8decb0313
Fix bugs in sb8x8 experiment/context prob update
...
Fix bugs occur in contextual partition probability update, when
sb8x8 is enabled.
Change-Id: I19e2cec8a54c2dafd2be2803bbfde7337a2ae45f
2013-05-01 15:16:50 -07:00
Ronald S. Bultje
b6c2d872f0
Fix some crashes in sb8x8 experiment.
...
Change-Id: I390bb1cedc835f439fd5dd6cda6572b29cbb139c
2013-05-01 14:45:27 -07:00
Jingning Han
650e632400
Merge "Enable bit-stream support to SB8X8" into experimental
2013-05-01 13:48:14 -07:00
Scott LaVarnway
94ed11d89d
Reduced y_dequant, uv_dequant size
...
Currently, only two values are used. Removed the unused
values.
Change-Id: Idc5b8be354d84ffc68df39ea3e45f9f50d977b35
2013-05-01 16:25:10 -04:00
Jingning Han
2bf1dc2e23
Enable bit-stream support to SB8X8
...
This commit enables bit-stream writing and reading for recursive
partition down to block 8x8.
Change-Id: I163cd48d191cc94ead49cbb7fc91374f6bf204e2
2013-05-01 13:03:54 -07:00