Commit Graph

7278 Commits

Author SHA1 Message Date
Tom Finegan
2abe2d4664 vpxdec: Relocate WebM input support.
- Move it to webmdec.c and webmdec.h.
- Also, tidy up obvious style nits in the vicinity of code I was
  already touching.

Change-Id: Ie2898d06e73c1e9030d9c8d465b73ee7edc3c02a
2013-11-19 10:26:51 -08:00
Dmitry Kovalev
953b1e9683 Removing raster_block_offset_uint8() function.
There is no need to use that function, it is much clear to pass offset
directly to the buffer.

Change-Id: I9026cb0c5094c46f97df5d7f7daeb952f2843b24
2013-11-18 19:00:49 -08:00
Dmitry Kovalev
9e1e7bee48 Merge "Finally removing txfrm_block_to_raster_block() function." 2013-11-18 18:43:16 -08:00
Dmitry Kovalev
b5c4520101 Calculating dst pointer only once per transform block.
Change-Id: I23fea0a2e85be8373600e3e2dae98d36acde389c
2013-11-18 18:37:53 -08:00
Dmitry Kovalev
220af9ac2c Merge "Cleaning up vp9_entropy.c file." 2013-11-18 18:04:56 -08:00
Abo Talib Mahfoodh
613e2d2e90 Improve vp9_iht4x4_16_add_sse2 (x1.341)
This rebase is a better implementation of the previous ones.

Modifications are done to reduce the total clock cycle.
Speedup: 1.341
Compiled with -O3
Tested with: park_joy_420_720p50.y4m

Change-Id: I940eaf283f60597ca0d9d2e13d518878d55ff02d
2013-11-18 20:53:13 -05:00
Dmitry Kovalev
d8c06d23da Cleaning up vp9_entropy.c file.
Change-Id: I568f5e2d4ef2f2affe013ba1691ffb546f1fe8c6
2013-11-18 17:18:14 -08:00
Joshua Litt
a782d63954 Decoder performance test added to unit tests
Change-Id: Id578a5fe2039631cefd82dc2ef98cc62683194c3
2013-11-18 17:12:05 -08:00
Tom Finegan
a7c4209724 Merge "vpxdec: Include frame number when decode fails." 2013-11-18 16:23:20 -08:00
Tom Finegan
f225b1e69b vpxdec: Include frame number when decode fails.
Change-Id: I6ea460af884d522319735e4416a2dd66c2f35d27
2013-11-18 16:13:04 -08:00
Yaowu Xu
040dc8c945 Merge "Fixed a bug in commit a4a5a210" 2013-11-18 15:43:41 -08:00
Yaowu Xu
a42ab027fd Merge "Move vp9_extend.{h,c} from common to encoder" 2013-11-18 15:43:32 -08:00
Yaowu Xu
e63aaf9ad1 Fixed a bug in commit a4a5a210
Commit a4a5a210 enabled lossless coding, but the commit incorrectly
disabled the usage of skip in encoder even when skip should be used.
This commit make sure that skip is enabled even in lossless mode.

Change-Id: I276954f952c6ac68f17a316ebc72f09001228a08
2013-11-18 14:51:04 -08:00
Johann
e813843b46 Disable avx/avx2 for Visual Studio 2010
VS2010 only supports avx. There is currently no avx code
in libvpx so don't create a special case for it.

Change-Id: Iacb10ea4762155412e04f23904b4324d01451fbd
2013-11-18 13:30:19 -08:00
Yaowu Xu
1c61e1960d Move vp9_extend.{h,c} from common to encoder
Since they used in encoder only. This commit also re-order includes
for the files that include vp9_extend.h

Change-Id: I929fc113f2135d3198cd1fc6a17434e5a2f8a459
2013-11-18 12:43:36 -08:00
Jingning Han
46ce6ddec4 Merge "Constrain encoder motion search range" 2013-11-18 12:35:34 -08:00
Jingning Han
bbe68fbd2a Constrain encoder motion search range
Explicitly constrain the upper limit of motion search range (in the
unit of full pixel) to be [-1023, +1023]. It is intended to control
the effective motion search range for 4K sequences.

Change-Id: I645539c70885eec0f155781f439d97d333336e88
2013-11-18 11:19:45 -08:00
Yunqing Wang
e3168b0c54 Merge "Do horizontal loopfiltering in parallel" 2013-11-18 10:03:41 -08:00
Yaowu Xu
c8e38a6c69 Merge "Add support for VC++2013" 2013-11-18 09:32:19 -08:00
Jim Bankoski
83eb1975df partition context update speedup
This removes a lot of operations in setting partition context...

Change-Id: I365e6f5607ece85190cb21443988816dfa510ce3
2013-11-17 06:58:08 -08:00
Tom Finegan
5ae4ba5774 vpxdec: Restore IVF support.
Refactored IVF frame reading code out into ivf_read_frame(). Forgot
to actually make the function call in read_frame().

Change-Id: Ie9f6917e70bd26d0352a761932465c60a29a1f81
2013-11-16 08:31:20 -08:00
Yunqing Wang
64f728caef Do horizontal loopfiltering in parallel
This patch followed "Rewrite filter_selectively_horiz for parallel
loopfiltering" commit, and added x86 SSE2 optimization to do
16-pixel filtering in parallel. Also, corrected the declaration
of aligned arrays. For 8-pixel-in-parallel case, improved the
calculation of the masks and filters. Updated the threshold loading
since the thresholds were already duplicated. Updated neon C functions
to call neon loopfilters twice.

Using tulip clip, tests showed it gave a ~1.5% decoder speed gain.

Change-Id: Id02638626ac27a4b0e0b09d71792a24c0499bd35
2013-11-15 16:18:43 -08:00
hkuang
7fb5e73897 Merge "Let the idct vp9_idct32x32_34_add = vp9_idct32x32_1024_add on arm until we implenment real vp9_idct32x32_34_add_neon." 2013-11-15 15:45:49 -08:00
Jingning Han
bdc4371174 Take out assertion from inverse transforms
Separate the rounding and right shift operations of forward transform
from those of inverse transform. Take out the assertion check from
inverse transforms. If the transform coefficients were constructed to
cause intermediate steps of inverse transform overflow, the codec will
just let it overflow without breaking the decoding flow.

Change-Id: I73cfc3706c4e840fc543a77cbc4cdb0b05d07730
2013-11-15 15:30:47 -08:00
Yaowu Xu
dc90541563 Merge "Renamed two files" 2013-11-15 15:20:23 -08:00
hkuang
7424492a0b Let the idct vp9_idct32x32_34_add = vp9_idct32x32_1024_add
on arm until we implenment real vp9_idct32x32_34_add_neon.

This issue is due to commit 47665452f0
Merge "Add 32x32 idct function for eob<=34 case".

Change-Id: I56b5f0abc20e7dd1bba521f78a995e85d65ea296
2013-11-15 14:59:16 -08:00
Dmitry Kovalev
3b9befe52e Merge "Removing vp9_encodeintra.{h, c} files." 2013-11-15 13:38:20 -08:00
Yaowu Xu
49cbe4580d Renamed two files
from vp9_decodframe.{c,h} to vp9_decodeframe.{c,h}

Change-Id: I21ac4b14fc90246e3f16bd90c52c12d126d791f8
2013-11-15 12:48:43 -08:00
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
Tom Finegan
6f25c15d23 Merge "vpx[dec|enc]: Extract IVF support from the apps." 2013-11-15 11:21:57 -08:00
Paweł Hajdan
81c4a42e2a Prepare 1.3.0 release:
- update .mailmap and AUTHORS
- update CHANGELOG

Change-Id: I3d75e8a6f87cabcbebc20e3ee5f3cd7db4d2e84d
2013-11-15 10:48:09 -08:00
Guillaume Martres
17084657e6 vpxenc: add --aq-mode flag to control adaptive quantization
Change-Id: I57e1ad4bed3487df12893ced77c49093f8755706
2013-11-15 19:42:20 +01:00
Dmitry Kovalev
8d7bd4d126 Merge "Cleaning up vp9_loopfilter.c file." 2013-11-15 10:10:59 -08:00
Johann
b4a28b3314 Merge "Generate GAS output for Chromium" 2013-11-15 09:17:37 -08:00
Johann
37d7550391 Merge "Build iOS targets with XCode 5" 2013-11-15 09:17:28 -08:00
Jingning Han
a9b9f22bcd Merge "Fix coding format in vp9_idct" 2013-11-15 08:59:14 -08:00
Johann
16344c4a55 Generate GAS output for Chromium
Upstream changes to account for differences in clang
syntax for Chromium iOS builds.

Since most of these are incompatible with XCode clang,
hide them behind a flag.

Change-Id: Idafcbcd4eb01b1ada6277da2d2edfd6c04b579fd
2013-11-15 08:36:47 -08:00
Johann
5d0c33b8e5 Build iOS targets with XCode 5
Thanks to armando.dicianno for the patch

Fixes issue #603

Change-Id: I91ec030e5674b82c05115ed4dfbdb8ccbff22b66
2013-11-15 08:36:31 -08:00
Tom Finegan
00a35aab7c vpx[dec|enc]: Extract IVF support from the apps.
- Move IVF reading support into ivfdec.c and ivfdec.h
- Move IVF writing support into ivfenc.c and ivfenc.h
- Removed IVF writing code from the SVC example in favor of ivfenc.

Change-Id: I70adf6240d0320fdd232d8546ed573f0f68dd793
2013-11-15 08:33:24 -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
49fbbf72fa Finally removing txfrm_block_to_raster_block() function.
We only use txfrm_block_to_raster_xy() now.

Change-Id: I4242cd592da99e761041acf9fef1bac3d55a48e1
2013-11-14 13:45:51 -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
Joshua Litt
f16cde998b Tweaks to vpx_test android make file
* Change from thumb mode to arm mode improves test time significantly
  * Direct inclusion of test.mk allows for unit test configuration via
    configure script
Change-Id: Id58d3ba8289374528756a672459d8334afe20e2a
2013-11-14 13:30:28 -08:00
Jim Bankoski
ef99b7b884 loop filter assert cleanout
Change-Id: I4e2ad4b7342681e6ac236356ef3a4927a54f105b
2013-11-14 12:25:32 -08:00