Commit Graph

4437 Commits

Author SHA1 Message Date
John Koleszar
cbd3b98dd8 Merge "General code cleanup." into experimental 2013-04-03 20:59:51 -07:00
Dmitry Kovalev
d5a017300c General code cleanup.
Making code more readable in different places.

Change-Id: Iea92c9a35e64d257ee358879fc04fc926843d52e
2013-04-03 18:40:17 -07:00
Dmitry Kovalev
50e02b947a Adding decode_sb_16x16 function.
Moving command code from decode_sb32 and decode_sb64 into new
decode_sb_16x16 function.

Change-Id: I57a161300af085557adec2fe600f3c10a145faf2
2013-04-03 18:37:28 -07:00
John Koleszar
4add99aa97 Merge "Motion vector decoder cleanup." into experimental 2013-04-03 18:00:31 -07:00
Dmitry Kovalev
19fb4df8fe Motion vector decoder cleanup.
Better formatting, shorter code, adding read_switchable_filter_type
function.

Change-Id: Ib919b529385cae34c2d682b1c3093518b6942fc1
2013-04-03 17:43:45 -07:00
John Koleszar
1e5f25ecc8 Remove special case vp9_decode_coefs_4x4
This code was only called in the BPRED case, but had no real special
case associated with it. Made BPRED behave like all other modes. No
bitstream change.

Change-Id: I87ba11fe723928b6314d094979011228d5ba006f
2013-04-03 16:12:51 -07:00
Yunqing Wang
dcd3a5c055 Merge "Modify vp9_setup_interp_filters function" into experimental 2013-04-03 14:09:01 -07:00
Yunqing Wang
4ca882f32f Modify vp9_setup_interp_filters function
Took vp9_setup_scale_factors_for_frame() out from
vp9_setup_interp_filters(), so that it is only called once per
frame instead of per macroblock. Decoder tests showed a 1.5%
performance gain.

Change-Id: I770cb09eb2140ab85132f82aed388ac0bdd3a0aa
2013-04-03 13:49:55 -07:00
John Koleszar
f800085eac vp8: set y_crop_{width,height}
Update to use the new YV12_BUFFER_CONFIG structure.

Change-Id: Ia64757d50cc9019d336fa622e059bf68140d0fa7
2013-04-03 12:34:22 -07:00
Dmitry Kovalev
da0232fd59 Reimplementation of setup_frame_size.
General code cleanup in loopfilter code. Modification of setup_frame_size,
so now VP9_COMMON is modified in one place after all width/height checks
passed.

Change-Id: Iedf32df43a912d7aae788ed276ac6c429973f6fe
2013-04-03 12:21:47 -07:00
Dmitry Kovalev
59b2928d40 Adding setup_pred_probs and read_txfm_mode functions.
Decomposition vp9_decode_frame function, moving code into read_txfm_mode
and setup_pred_probs functions.

Change-Id: I90970dea43cbcef4d6d61fdef267c2094ddee65d
2013-04-03 12:18:15 -07:00
John Koleszar
30d83c4159 Merge "Fix overlapping writes by copy_and_extend_plane" into experimental 2013-04-03 11:54:29 -07:00
John Koleszar
7d67aed16c Merge "Remove unused inplace idct_add functions" into experimental 2013-04-03 11:10:50 -07:00
John Koleszar
8b71b8a6de Merge "Renaming sb32_coded and sb64_coded fields." into experimental 2013-04-02 21:49:03 -07:00
John Koleszar
dc12e6c0dc Merge "Lower case names for struct members." into experimental 2013-04-02 21:27:32 -07:00
John Koleszar
f677b13fb4 Merge "Adding functions with common code for superblock decoding." into experimental 2013-04-02 20:18:13 -07:00
John Koleszar
ede03dfa48 Merge "Code cleanup in vp9_onyx_if.c." into experimental 2013-04-02 20:16:56 -07:00
Dmitry Kovalev
dca8ad178c Renaming sb32_coded and sb64_coded fields.
Renaming sb32_coded to prob_sb32_coded and sb64_coded to prob_sb64_coded.

Change-Id: I6de5cad00a57c3e066d53467f8c38cb6073dce11
2013-04-02 18:21:55 -07:00
John Koleszar
01247f67a7 Fix overlapping writes by copy_and_extend_plane
Broken by refactoring commit 180cd5faa5

Change-Id: I307f6e54d93219a31e7336f1633103ecb25e4832
2013-04-02 14:58:10 -07:00
John Koleszar
42db454c7f Merge branch 'master' into experimental
Conflicts:
	vp9/vp9_common.mk

Change-Id: I2cd5ab47dc31c4210cefc23a282102123d5e2221
2013-04-02 14:54:44 -07:00
Dmitry Kovalev
626635c271 Lower case names for struct members.
Lower case member names inside VP9D_CONFIG and VP9D_COMP structs.

Change-Id: I75af9ad2d929a35c357207a3fd9ebedddabf79c3
2013-04-02 13:34:20 -07:00
Johann
3db60c8c6c Demux vp9_loopfilter_x86.c
Allow more careful targeting of compiler flags.

Change-Id: I963ab4a6479dedb165419310dfca52a58a9877b8
2013-04-02 12:49:04 -07:00
John Koleszar
e7b3b692e1 Remove unused inplace idct_add functions
Change-Id: I1c29e041d6db4af4508356315cd65718acb1f668
2013-04-02 12:23:22 -07:00
Johann
6c147b9d93 vp9_sadmxn_x86 only contains SSE2 functions
Rename the file and clean up includes. In the future we would like to
pattern match the files which need additional compiler flags.

Change-Id: I2c76256467f392a78dd4ccc71e6e0a580e158e56
2013-04-02 11:20:55 -07:00
Dmitry Kovalev
9738e2dbd8 Adding functions with common code for superblock decoding.
Adding decode_sb_8x8 and decode_sb_4x4 with common code for superblock
decoding. Renaming decode_superblock32 to decode_sb32 and
decode_superblock64 to decode_sb64.

Change-Id: Id006d7e398b9bfa3acec4326e1e0c537ebfefdd3
2013-04-02 10:42:22 -07:00
Dmitry Kovalev
6f53eee531 Code cleanup in vp9_onyx_if.c.
Using clamp and MIN/MAX functions instead of plain C code. Lower case
variable names. Removing redundant parenthesis.

Change-Id: Ibf7cc5fbe4fbdb5029049a599af71534176e6f42
2013-04-02 10:24:56 -07:00
John Koleszar
49bc402a94 Merge "Code cleanup." into experimental 2013-04-01 21:12:56 -07:00
John Koleszar
a417a6e32c Merge "Removing redundant function arguments." into experimental 2013-04-01 21:09:48 -07:00
John Koleszar
01e4e0b11d Merge "Code cleanup in block reconstruction code." into experimental 2013-04-01 21:05:35 -07:00
Dmitry Kovalev
e71248addc Code cleanup in block reconstruction code.
Adding recon, recond_sby and recon_sbuv functions.

Change-Id: I6050db233e792e73a3699d18b056eaef9c901d6d
2013-04-01 18:26:58 -07:00
Dmitry Kovalev
50e54c112d Code cleanup.
Adding multiple16 function, removing redundant code, better formatting.

Change-Id: I50195b78ac8ab803e3d05c8fb05a7ca134fab386
2013-04-01 18:23:04 -07:00
Ronald S. Bultje
cdac4ad4e6 Merge "Calculate SSIM over both reconstruction as well as postproc buffer." into experimental 2013-04-01 17:22:29 -07:00
Vignesh Venkatasubramanian
416bd7529c Adding/Uncommenting elements for Alpha Support
Uncommenting Track elements related to BlockAdditional and adding
the new AlphaMode element as specified in the matroska spec here:
http://matroska.org/technical/specs/index.html#AlphaMode

Change-Id: I87895931e8885e4832efa74776ab1bea91a634e2
2013-04-01 15:36:29 -07:00
Ronald S. Bultje
6dd6ffb0bb Calculate SSIM over both reconstruction as well as postproc buffer.
We used to calculate SSIM only over the postproc buffer, whereas we
calculate PSNR for both. Compared to postproc-SSIM, this is about 0.3%
higher for derf, 1.4% lower for hd and 0.5% lower for stdhd, although
it is highly variable on a per-clip basis.

Change-Id: I8dd491f0f5b4201dedfb15d288c854d5d4caa10f
2013-04-01 09:10:27 -07:00
Deb Mukherjee
e3955007df Merge "Framework changes in nzc to allow more flexibility" into experimental 2013-03-29 15:57:27 -07:00
John Koleszar
868ecb55a1 Merge "Tokenization code cleanup." into experimental 2013-03-29 10:55:55 -07:00
John Koleszar
edb1222acb Merge "Extracting common motion vector prediction code." into experimental 2013-03-29 10:43:38 -07:00
John Koleszar
2e181c2d0b Merge "General code cleanup." into experimental 2013-03-29 10:40:34 -07:00
John Koleszar
282a89f329 Merge "Extracting decode_tiles function." into experimental 2013-03-29 10:25:34 -07:00
Yaowu Xu
4b3e59ef0e Merge "define a specific neighborhood for SB64 mv search" into experimental 2013-03-29 09:26:14 -07:00
Yaowu Xu
cbc7ec55a5 Merge "remove code not in use" into experimental 2013-03-29 08:40:29 -07:00
Deb Mukherjee
c5840a8d8e Merge "Reoptimizing the interpolation filters" into experimental 2013-03-29 07:15:05 -07:00
Scott LaVarnway
add343383a Merge "Bug fix: Issue 532: VPX codec executes emms instruction without" 2013-03-28 14:26:13 -07:00
Paul Wilkins
0b4deea896 Merge "Adjust mv_ratio_accumulator threshold." into experimental 2013-03-28 12:53:23 -07:00
Ronald S. Bultje
6cb2fcf601 Merge "Fix mix-up in pt token indexing." into experimental 2013-03-28 12:53:00 -07:00
Yaowu Xu
e071fe15b2 Merge "Fix crash when --tune=ssim is selected." into experimental 2013-03-28 11:23:44 -07:00
Ronald S. Bultje
ed78d1439f Merge "Save nzcstats." into experimental 2013-03-28 09:36:58 -07:00
Deb Mukherjee
fe9b5143ba Framework changes in nzc to allow more flexibility
The patch adds the flexibility to use standard EOB based coding
on smaller block sizes and nzc based coding on larger blocksizes.
The tx-sizes that use nzc based coding and those that use EOB based
coding are controlled by a function get_nzc_used().
By default, this function uses nzc based coding for 16x16 and 32x32
transform blocks, which seem to bridge the performance gap
substantially.

All sets are now lower by 0.5% to 0.7%, as opposed to ~1.8% before.

Change-Id: I06abed3df57b52d241ea1f51b0d571c71e38fd0b
2013-03-28 09:33:50 -07:00
Ronald S. Bultje
9eea9fa206 Fix mix-up in pt token indexing.
This fixes uninitialized reads in the trellis, and probably makes the
trellis do something again.

Change-Id: Ifac8dae9aa77574bde0954a71d4571c5c556df3c
2013-03-28 09:24:29 -07:00
Paul Wilkins
17ef6a8dfd Adjust mv_ratio_accumulator threshold.
This threshold effectively limits the amount of motion
from one end of a GF/ARF group to the other.
This patch makes the threshold depend on image size.

Change-Id: Id45d1d7bced815f86ddd037be53164894b00b82f
2013-03-28 12:49:02 +00:00