Dmitry Kovalev
5380739a87
Removing vp9_encodeintra.{h, c} files.
...
There was only one function in *.c file, so moving it to vp9_encodemb.c.
Change-Id: I728859d08b3d6c05c33c1c5b21f0ea1d0e0f83af
2013-11-15 12:17:16 -08:00
Dmitry Kovalev
8d7bd4d126
Merge "Cleaning up vp9_loopfilter.c file."
2013-11-15 10:10:59 -08:00
Jingning Han
a9b9f22bcd
Merge "Fix coding format in vp9_idct"
2013-11-15 08:59:14 -08:00
Jim Bankoski
e1b6c42eed
partition plane context speed up
...
Removes silly operations inside loop.
Change-Id: I9eeab1e914e715a887f86cf1089de508e2364165
2013-11-15 08:00:43 -08:00
Jim Bankoski
ffb17e2c09
Merge "loop filter assert cleanout"
2013-11-15 07:48:36 -08:00
Dmitry Kovalev
38e6cb8c7b
Merge "Cleaning up vp9_tile_common.{h, c} files."
2013-11-14 20:55:01 -08:00
Jingning Han
7637387cf1
Fix coding format in vp9_idct
...
Change-Id: If97ae16a4478717933345b6b9d5bc1b417b8dd84
2013-11-14 16:05:22 -08:00
Adrian Grange
38144ed8b2
fix scalling bug by buffer auto-reallocation
...
Change-Id: Ib748eb287520c794631697204da6ebe19523ce95
2013-11-14 15:53:09 -08:00
Dmitry Kovalev
3f9fc6f6f8
Cleaning up vp9_loopfilter.c file.
...
Change-Id: Ic6770072f80dfb54d2725ed96370d4f243a9f474
2013-11-14 15:04:14 -08:00
Dmitry Kovalev
f91ac9b436
Cleaning up vp9_tile_common.{h, c} files.
...
Change-Id: I9d18f351abe7614107f34f47eeb38a234a9937c9
2013-11-14 13:40:56 -08:00
Dmitry Kovalev
e6b72d0119
Removing unused coefband_trans_8x8plus array from VP9Decompressor.
...
Change-Id: Ic1367d767705377402ebfec0705f9f553a834400
2013-11-14 13:37:18 -08:00
Jim Bankoski
ef99b7b884
loop filter assert cleanout
...
Change-Id: I4e2ad4b7342681e6ac236356ef3a4927a54f105b
2013-11-14 12:25:32 -08:00
Dmitry Kovalev
58f754374d
Merge "Eliminating usage of txfrm_block_to_raster_block() from encode_block()."
2013-11-14 10:12:54 -08:00
Marco Paniconi
b6ca9d917d
Merge "For CBR, keep rate-correction damping factor to 2."
2013-11-14 08:11:43 -08:00
Deb Mukherjee
cfcd5c4f61
Simplifies band-getting with a static array
...
Simplifies the code by implementing band mapping with static arrays.
A lot of the code complexity introduced in a previous patch
disappears.
Change-Id: Ia3fac36e594fb5ad2d55ae141c58bba4c55c2d28
2013-11-13 22:15:16 -08:00
Dmitry Kovalev
7bfc20ac7a
Eliminating usage of txfrm_block_to_raster_block() from encode_block().
...
Change-Id: I7d11f1b6075a1115cdc2dcd605225b9c9c9b39c7
2013-11-13 19:33:12 -08:00
Dmitry Kovalev
8282c1a68d
Merge "Cleaning up decode_coefs() function."
2013-11-13 18:39:14 -08:00
Dmitry Kovalev
11631fec16
Cleaning up decode_coefs() function.
...
Removing vp9_read_and_apply_sign macro which was used only once.
Change-Id: I6a1625b720d89fc1291c99deccd6638b705f9b06
2013-11-13 16:46:21 -08:00
Marco Paniconi
9977332615
For CBR, keep rate-correction damping factor to 2.
...
The switch to the rate-correction damping factor
in https://gerrit.chromium.org/gerrit/#/c/67536/ was not conditioned on CBR mode.
Change-Id: I2326704e8ac030a4f7b592dd3fedb94c7dd0644d
2013-11-13 16:14:31 -08:00
Jingning Han
697846d76e
Merge "Dual buffer encoding for intra modes"
2013-11-13 15:43:00 -08:00
Jingning Han
fabc783695
Fix an overflow issue in SSE2 forward ADST
...
The step that sums three input samples could potentially cause the
intermediate result go beyond 16 bit limit, when operating as the
second 1-D transform. This commit fixes the issue.
Change-Id: Iaf512449ac2d25ddd8a806d760afab362c62a516
2013-11-13 15:15:59 -08:00
Dmitry Kovalev
b3c75a2d6c
Merge "Replacing raster_block with block in the encoder."
2013-11-13 14:14:27 -08:00
Dmitry Kovalev
26a1ad604f
Merge "Removing function pointers from inter prediction."
2013-11-13 13:54:15 -08:00
Jingning Han
b6b9143218
Dual buffer encoding for intra modes
...
Overall change (using dual buffer scheme for superblocks of both inter
and intra modes) reduces speed 2 runtime:
bluesky_1080p at 6000kbps: 263553ms -> 257441ms
riverbed_1080p at 8000kbps: 233230ms -> 225308ms.
Change-Id: Idf8d70f768a4b0d97b2a8506372c57b7b4022119
2013-11-13 12:57:03 -08:00
Dmitry Kovalev
d1899557eb
Merge "Syncing write_modes_{b, sb} implementation with decode_modes_{b, sb}."
2013-11-13 10:47:46 -08:00
Dmitry Kovalev
60d1a52995
Merge "Optimizing set_contexts() function."
2013-11-13 10:01:05 -08:00
Yunqing Wang
8ce0967df8
Merge "Use 1D array to store super block filter levels"
2013-11-13 09:40:14 -08:00
Johann
4da2a8b718
Merge "mips dsp-ase r2 vp9 decoder intra module optimizations (rebase)"
2013-11-13 09:00:09 -08:00
Parag Salasakar
1530a6b77f
mips dsp-ase r2 vp9 decoder intra module optimizations (rebase)
...
Change-Id: Ib27fc4f3dbe01fe8adfa04a61aaba21b3480e75c
2013-11-13 11:17:14 +05:30
Parag Salasakar
248cf6f69f
mips dsp-ase r2 vp9 decoder loopfilter module optimizations (rebase)
...
Change-Id: Ia7f640ca395e8deaac5986f19d11ab18d85eec2d
2013-11-13 10:53:16 +05:30
Dmitry Kovalev
3f3d14e1d3
Moving q_index from MACROBLOCKD to MACROBLOCK.
...
Moving because q_index is used only by encoder.
Change-Id: I0b96175614ed4fd3d76ee56a0ba36258e1e896f6
2013-11-12 18:13:19 -08:00
Jingning Han
e69461593d
Merge "Enable dual buffer rd search and encoding scheme"
2013-11-12 18:11:41 -08:00
Dmitry Kovalev
919eeef5c8
Merge "Calculating transform block offsets (x and y) only once."
2013-11-12 16:57:30 -08:00
Dmitry Kovalev
73a5cbeba4
Merge "Using max_tx_size instead of bsize when possible."
2013-11-12 16:54:30 -08:00
Dmitry Kovalev
3a2ea76469
Merge "Moving {sb, mb, b, ab}_index from MACROBLOCKD to MACROBLOCK."
2013-11-12 15:59:28 -08:00
Dmitry Kovalev
58b004ff64
Merge "Adding const to tree pointer inside vp9_extra_bit struct."
2013-11-12 15:48:07 -08:00
Johann
8dd3905163
Merge "Added optimized vp9_idct32x32_34_add_dspr2"
2013-11-12 15:30:00 -08:00
Dmitry Kovalev
20f34ff0db
Adding const to tree pointer inside vp9_extra_bit struct.
...
Change-Id: I60e02fa3de930ff1f969687ab5af93dee40d86ad
2013-11-12 14:21:15 -08:00
Dmitry Kovalev
ed5a993a97
Calculating transform block offsets (x and y) only once.
...
Change-Id: I4b5106bdc08fd4551339b968c13428a8f43122e2
2013-11-12 13:55:13 -08:00
Yunqing Wang
ce89309b45
Use 1D array to store super block filter levels
...
As Jim suggested, 1D array was used to store filter levels instead
of 2D array. This used shift_y in setup_mask directly, and saved
few cycles.
Change-Id: If61ab298784861f1806b1cd396d4e4e2e0f097b9
2013-11-12 12:07:57 -08:00
Deb Mukherjee
a33a84b11a
Merge "Removes conditional statements from band getting"
2013-11-12 11:22:21 -08:00
Johann
e72d49a97a
Use lowercase 'b' to branch
...
iOS doesn't recognize B:
bad instruction `B idct32_pass_loop'
Change-Id: I3cf6aede4639f1d9efa97f7962fa287ba6feaaef
2013-11-12 10:41:06 -08:00
Yunqing Wang
17322275dd
Merge "Rewrite filter_selectively_horiz for parallel loopfiltering"
2013-11-12 10:20:49 -08:00
Yunqing Wang
7989768766
Merge "Improve loopfilter function"
2013-11-12 10:19:56 -08:00
Deb Mukherjee
5ade423774
Removes conditional statements from band getting
...
Implements scan order to band map with arrays in both the encoder
and decoder to remove conditional statements.
Encoding seems to be about 1% faster at speed 0, tested on football.
Decoding seems to be about 0.5-1% faster on a set of 25 videos.
Change-Id: Idb233ca0b9e0efd790e30880642e8717e1c5c8dd
2013-11-12 10:13:27 -08:00
Dmitry Kovalev
e5ed605f01
Merge "Removing redundant assignment."
2013-11-11 18:37:22 -08:00
Dmitry Kovalev
50f97cf7fb
Removing function pointers from inter prediction.
...
Removing foreach_predicted_block_visitor and calling build_inter_predictors
directly.
Change-Id: I11bb3c872b99b47c2680b01b0dbcc01c558c4a2b
2013-11-11 18:37:00 -08:00
Jingning Han
34b6abefa2
Enable dual buffer rd search and encoding scheme
...
This commit enables the dual buffer rate-distortion optimization
and encoding scheme. It stacks the original transform coefficients,
quantized levels, and reconstructed coefficients, in the rate-
distortion optimization search process, hence eliminates the need
to re-run residual generation, forward transform, and quantization
in the encoding stage.
Change-Id: I011bfad3a59a380a869ee552e91dae0394ec492e
2013-11-11 18:32:55 -08:00
Jingning Han
e5741c56d1
Merge "Allocate dual buffer sets for encoding"
2013-11-11 18:00:57 -08:00
Dmitry Kovalev
42b1f62085
Removing redundant assignment.
...
xd->mi_8x8 is assigned inside set_offsets() for each prediction block.
Change-Id: I20e5974a9eaf105e5a04fc7f99b7a93bd50e3d0a
2013-11-11 17:39:43 -08:00