Dmitry Kovalev [Thu, 23 Jan 2014 22:55:52 +0000 (14:55 -0800)]
Inlining IFMVCV macro.
Change-Id: I5173f996612e410d9cd495df9414d194b1ab18f3
hkuang [Fri, 24 Jan 2014 18:48:44 +0000 (10:48 -0800)]
Merge "Add vp9_tm_predictor_16x16 neon implementation which is 3.5 times faster than C."
James Zern [Fri, 24 Jan 2014 18:47:00 +0000 (10:47 -0800)]
Merge changes I826655a7,I5164df72,Iba9b198c,Ide9a6846,I4f51ce85,I0e6aa00f,Ic334da9a,I252f5f8a,I7865db2d,I13b434b1
* changes:
test/: remove unnecessary extern "C"s
top-level: add extern "C" to headers
vpx_ports: add extern "C" to headers
vpx: add extern "C" to headers
vp9/encoder: add extern "C" to headers
vp9/decoder: add extern "C" to headers
vp9/common: add extern "C" to headers
vp8/encoder: add extern "C" to headers
vp8/decoder: add extern "C" to headers
vp8/common: add extern "C" to headers
hkuang [Tue, 21 Jan 2014 22:49:15 +0000 (14:49 -0800)]
Add vp9_tm_predictor_16x16 neon implementation
which is 3.5 times faster than C.
Change-Id: I24439ba7a2971829c11620f34848facf2c916678
Adrian Grange [Fri, 24 Jan 2014 16:38:52 +0000 (08:38 -0800)]
Merge changes I24ad1f0f,I33be1366
* changes:
Reorder functions to avoid forward declaration
Rename set_scale_factors as set_ref_ptrs
Yaowu Xu [Fri, 24 Jan 2014 16:07:27 +0000 (08:07 -0800)]
Merge "Changed to prevent decoder crash"
Dmitry Kovalev [Fri, 24 Jan 2014 07:09:21 +0000 (23:09 -0800)]
Merge "Cleaning up vp9_firstpass.c file."
Dmitry Kovalev [Fri, 24 Jan 2014 06:37:36 +0000 (22:37 -0800)]
Merge "Removing get_scale_ref_frame_idx() function + cleanup."
James Zern [Sat, 18 Jan 2014 21:03:31 +0000 (13:03 -0800)]
test/: remove unnecessary extern "C"s
Change-Id: I826655a708010149de231ca31a2e3ba4f1842c0c
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
top-level: add extern "C" to headers
Change-Id: I5164df72aff84eca0ace56032c5373f04053c6a5
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
vpx_ports: add extern "C" to headers
Change-Id: Iba9b198ce78b3f8b644feba064f83abc247e75dd
Dmitry Kovalev [Fri, 24 Jan 2014 01:20:34 +0000 (17:20 -0800)]
vpxdec: grouping together code with the same if conditions
Change-Id: I5e546fce725b8c4722da5494e9423154e870fd58
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
vpx: add extern "C" to headers
Change-Id: Ide9a68466ed30453872465a6c2f9c414690df876
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
vp9/encoder: add extern "C" to headers
Change-Id: I4f51ce859a97bf1b8fd2b37ac585b7c643232b69
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
vp9/decoder: add extern "C" to headers
Change-Id: I0e6aa00f220280e22d30d098545265835d0c1079
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
vp9/common: add extern "C" to headers
Change-Id: Ic334da9aee968e33762c2b25d9fbad24c844b411
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
vp8/encoder: add extern "C" to headers
Change-Id: I252f5f8a5d5ada65da08699774a7bb1eb2bd5b2e
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
vp8/decoder: add extern "C" to headers
Change-Id: I7865db2d15ffa8cfa4de88714e48734c5ff9bb86
James Zern [Sat, 18 Jan 2014 20:16:11 +0000 (12:16 -0800)]
vp8/common: add extern "C" to headers
Change-Id: I13b434b1e6621e31962b08831c3587c039368c83
Yaowu Xu [Thu, 23 Jan 2014 23:43:08 +0000 (15:43 -0800)]
Changed to prevent decoder crash
The change prevent a decoder crash for invalid stream with negative
size.
Change-Id: I7411765f3524c783058fa3d436549be4e75d8969
Dmitry Kovalev [Thu, 23 Jan 2014 20:36:19 +0000 (12:36 -0800)]
Cleaning up vp9_firstpass.c file.
Change-Id: Ic352b0429d5784f9d78872a478fe6275ee7a56a0
Yaowu Xu [Thu, 23 Jan 2014 17:03:56 +0000 (09:03 -0800)]
Revert "Removing unnecessary vp9_clear_system_state() calls."
This reverts commit
36406fdb07dfe08df1d49abe36dbf27469e42213.
Change-Id: I0bd31d03ce2a562d0624f2cd67593d0d25df4a54
James Zern [Thu, 23 Jan 2014 03:45:43 +0000 (19:45 -0800)]
Merge "cpplint: restore runtime/sizeof"
James Zern [Thu, 23 Jan 2014 03:45:28 +0000 (19:45 -0800)]
Merge "update cpplint"
Dmitry Kovalev [Thu, 23 Jan 2014 01:15:22 +0000 (17:15 -0800)]
Merge "Cleaning up vp9_refining_search_sad() function."
Dmitry Kovalev [Thu, 23 Jan 2014 01:10:37 +0000 (17:10 -0800)]
Removing get_scale_ref_frame_idx() function + cleanup.
Change-Id: Ic9472f361f8749a165aa464c2fa859681b66381b
James Zern [Thu, 23 Jan 2014 00:50:30 +0000 (16:50 -0800)]
Merge "Enforce effective motion vector search range"
Dmitry Kovalev [Thu, 23 Jan 2014 00:28:31 +0000 (16:28 -0800)]
Merge "Fixing simple_weight() function + cleanup."
Adrian Grange [Thu, 23 Jan 2014 00:20:39 +0000 (16:20 -0800)]
Reorder functions to avoid forward declaration
Change-Id: I24ad1f0f1cb0e991c476ea174db8ac1584929b02
Yaowu Xu [Wed, 22 Jan 2014 23:46:49 +0000 (15:46 -0800)]
Merge "changed to use vpx_integer.h for type definition"
hkuang [Wed, 22 Jan 2014 23:30:46 +0000 (15:30 -0800)]
Merge "Add tm_predictor_8x8 neon implementation."
hkuang [Wed, 22 Jan 2014 22:58:59 +0000 (14:58 -0800)]
Fix the vpxenc mismatch problem due to seperate
the boarder size for encoder and decoder.
Change-Id: I7291a9e06035d1533202d7a75ab40abfc1131342
hkuang [Sat, 18 Jan 2014 00:25:07 +0000 (16:25 -0800)]
Add tm_predictor_8x8 neon implementation.
Change-Id: I76c2720546b737cb63018a8ab6a3ff62a291786d
Adrian Grange [Wed, 22 Jan 2014 21:04:30 +0000 (13:04 -0800)]
Rename set_scale_factors as set_ref_ptrs
New name better describes what the function does.
Change-Id: I33be1366a81f058a9854b804bcde211061187dc7
Yaowu Xu [Wed, 22 Jan 2014 20:52:31 +0000 (12:52 -0800)]
changed to use vpx_integer.h for type definition
Change-Id: I7739849aa8dd5dcb0755858367fd3223587d107f
Alex Converse [Wed, 22 Jan 2014 20:42:49 +0000 (12:42 -0800)]
Merge "Expand the lossless and datarate tests to cover 4:4:4."
Dmitry Kovalev [Wed, 22 Jan 2014 20:38:08 +0000 (12:38 -0800)]
Merge "vpxdec: Disable writing of Y4M header when --md5 argument is specified."
Dmitry Kovalev [Wed, 22 Jan 2014 19:53:49 +0000 (11:53 -0800)]
vpxdec: Disable writing of Y4M header when --md5 argument is specified.
Change-Id: I2380b1b80f48496732b69c8255a485024d375f0f
Deb Mukherjee [Wed, 22 Jan 2014 19:46:43 +0000 (11:46 -0800)]
Merge "Adds a non-normative resize library to vp9 encoder"
Yaowu Xu [Wed, 22 Jan 2014 19:39:24 +0000 (11:39 -0800)]
Merge "Prevent invaid memory access"
Christian Duvivier [Wed, 22 Jan 2014 19:36:03 +0000 (11:36 -0800)]
Merge "arm: Use vreinterpret instead of a plain cast for converting between neon vector types"
Dmitry Kovalev [Wed, 22 Jan 2014 19:28:22 +0000 (11:28 -0800)]
Merge "Removing out_open() & out_close() functions from vpxdec."
Alex Converse [Fri, 17 Jan 2014 21:52:23 +0000 (13:52 -0800)]
Expand the lossless and datarate tests to cover 4:4:4.
Change-Id: I2dc7b3265d0a87d7a26c95b48e360c7c68cc7355
Adrian Grange [Wed, 22 Jan 2014 19:14:07 +0000 (11:14 -0800)]
Merge "Tidy up comments & remove commented out code."
Johann [Wed, 22 Jan 2014 19:10:51 +0000 (11:10 -0800)]
Merge "Match vp9_coefband_trans_* declarations"
hkuang [Wed, 22 Jan 2014 18:59:31 +0000 (10:59 -0800)]
Merge "Seperate the border size for encoder and decoder."
Adrian Grange [Wed, 22 Jan 2014 17:36:07 +0000 (09:36 -0800)]
Tidy up comments & remove commented out code.
Change-Id: I46dd5ce06f36362c6274511cd1531d93926aa9bc
Yaowu Xu [Wed, 22 Jan 2014 17:10:44 +0000 (09:10 -0800)]
Prevent invaid memory access
Reading second motion vector only when it has a second ref_frame
Change-Id: Ica72c1cd955832e15ceccda5e5a17b0bfcd83044
Dmitry Kovalev [Wed, 22 Jan 2014 17:04:07 +0000 (09:04 -0800)]
Removing out_open() & out_close() functions from vpxdec.
Change-Id: I60f2ce77638cf7d2116bc1e64b466942c76644e0
Dmitry Kovalev [Wed, 22 Jan 2014 16:57:13 +0000 (08:57 -0800)]
Fixing simple_weight() function + cleanup.
We used y_width/y_height instead of y_crop_width/y_crop_height.
Change-Id: Ia796494956f16d7a4085e043d58bdfe6de19abe7
Dmitry Kovalev [Wed, 22 Jan 2014 16:54:59 +0000 (08:54 -0800)]
Merge "Simplifying target_size_from_buffer_level() function."
Dmitry Kovalev [Wed, 22 Jan 2014 16:49:23 +0000 (08:49 -0800)]
Merge "Removing unnecessary vp9_clear_system_state() calls."
Adrian Grange [Wed, 22 Jan 2014 16:34:48 +0000 (08:34 -0800)]
Merge "Force show_frame=1 when show_existing_frame=1"
Dmitry Kovalev [Wed, 22 Jan 2014 10:39:52 +0000 (02:39 -0800)]
Removing unnecessary vp9_clear_system_state() calls.
Change-Id: I597645a15fff2d3a1104861a5c90f64394952e0b
Dmitry Kovalev [Wed, 22 Jan 2014 10:24:01 +0000 (02:24 -0800)]
Simplifying target_size_from_buffer_level() function.
Change-Id: I1d556ddf04ab0a98eadf412972a6977c1055446f
Dmitry Kovalev [Wed, 22 Jan 2014 09:51:08 +0000 (01:51 -0800)]
Merge "Cleaning up first_pass_motion_search() function."
Martin Storsjo [Wed, 22 Jan 2014 09:13:11 +0000 (11:13 +0200)]
arm: Use vreinterpret instead of a plain cast for converting between neon vector types
This fixes building with MSVC for arm.
Change-Id: Iffae0408e0c68760e87e96b9e17d9df8e8cadb1a
Dmitry Kovalev [Wed, 22 Jan 2014 07:12:42 +0000 (23:12 -0800)]
Merge "Cleaning up vp9_ratectrl.c."
Dmitry Kovalev [Wed, 22 Jan 2014 07:11:39 +0000 (23:11 -0800)]
Merge "Cleaning up vp9_setup_buffer_inter() function."
Dmitry Kovalev [Wed, 22 Jan 2014 07:01:27 +0000 (23:01 -0800)]
Merge "Replacing cpi->twopass with twopass."
Dmitry Kovalev [Wed, 22 Jan 2014 03:46:07 +0000 (19:46 -0800)]
Cleaning up vp9_setup_buffer_inter() function.
Change-Id: Ia63e2d05fa5dca3fb67788b0f1f28e9802ef27dd
Yaowu Xu [Wed, 22 Jan 2014 02:02:50 +0000 (18:02 -0800)]
Merge "remove complex rd modeling."
James Zern [Wed, 22 Jan 2014 01:59:26 +0000 (17:59 -0800)]
Merge changes I57a94d2f,Ifb305185
* changes:
test/: remove some unnecessary extern "C"s
rtcd.sh: add extern "C" to generated headers
James Zern [Wed, 22 Jan 2014 01:56:04 +0000 (17:56 -0800)]
cpplint: restore runtime/sizeof
dropped in r113; this check is helpful in this project
Change-Id: If810607b7cbf89ad701b4865d685f4b96aeee2dc
James Zern [Sat, 18 Jan 2014 04:18:48 +0000 (20:18 -0800)]
update cpplint
adds --linelength / --extensions and support for eclipse style output
latest from (r119):
http://google-styleguide.googlecode.com/svn/trunk/cpplint/cpplint.py
Change-Id: I58be3a2d60daa9ba0d0bc1574fd13a2144c5d13d
Johann [Wed, 22 Jan 2014 01:06:07 +0000 (17:06 -0800)]
Match vp9_coefband_trans_* declarations
VS2013 Chromium builds failed with:
warning C4742: 'vp9_coefband_trans_8x8plus' has different alignment in
https://code.google.com/p/chromium/issues/detail?id=336620
Change-Id: I865f72bc23ae958531eeb5f497002c12e9a36fcd
Deb Mukherjee [Fri, 17 Jan 2014 20:56:36 +0000 (12:56 -0800)]
Adds a non-normative resize library to vp9 encoder
Adds an arbitrary-size resize library for use in scaling of input
frames in a non-normative manner in the vp9 encoder. The method
used is as follows:
Downsampling - Uses a 8 tap filter for factor of 2 decimation upto
a size just higher than the desired size. Then interpolates pixels
at a precision of 1/32 pel using a set of 8-tap filters.
Upsampling - Interpolates pixels at a precision of 1/32 pel using
a set of 8-tap filters.
There is no assembly optimization yet.
Change-Id: Ib5b81e174fc139da322bb97c8214d52289d60d8a
Alex Converse [Wed, 22 Jan 2014 00:31:14 +0000 (16:31 -0800)]
Merge "Have check_initial_width() take subsampling as arguments directly."
Yaowu Xu [Wed, 22 Jan 2014 00:04:35 +0000 (16:04 -0800)]
Merge "Enforce key frame placement"
hkuang [Fri, 10 Jan 2014 21:10:39 +0000 (13:10 -0800)]
Seperate the border size for encoder and decoder.
Encoder's boarder is still 160, while decoder's boarder will be 32.
With on demand and separate boarder buffer for boarder extension.
The decoder's boarder does not need to to 160 anymore.
Change-Id: I93d5aaff15a33a2213e9761eaa37c5f2870747db
Dmitry Kovalev [Thu, 16 Jan 2014 02:25:05 +0000 (18:25 -0800)]
Removing duplicated SAD calculation code.
Change-Id: I8d693371a29103769d5bed9d5f9cfe4f58ca3189
Yaowu Xu [Tue, 21 Jan 2014 22:07:45 +0000 (14:07 -0800)]
Enforce key frame placement
Change-Id: I2f85c6b058638571d68a7209779de8ca8168934f
Jingning Han [Tue, 21 Jan 2014 19:40:33 +0000 (11:40 -0800)]
Enforce effective motion vector search range
This commit explicitly enforces the effective motion vector range
in the motion search stage. The range needs to be the intersection
of UMV border, effective absolute motion vector value range, and
the target search area.
Change-Id: I1cf7c563e02b1086040dad6c1f4f6be1538635a6
Adrian Grange [Tue, 21 Jan 2014 18:39:39 +0000 (10:39 -0800)]
Force show_frame=1 when show_existing_frame=1
When showing a previously decoded frame, we need to
explicitly set the show_frame flag.
For the current frame being decoded this flag is
explicitly set in the frame header.
This should fix WebM Issue 696:
http://code.google.com/p/webm/issues/detail?id=696
Change-Id: I5751a809813f88d2ca6f62c47c3878475ff9ba8d
Dmitry Kovalev [Tue, 21 Jan 2014 18:17:29 +0000 (10:17 -0800)]
Merge "Replacing macros with inline functions."
Dmitry Kovalev [Tue, 21 Jan 2014 18:16:22 +0000 (10:16 -0800)]
Merge "Moving vp8_multi_resolution_encoder to examples folder."
Dmitry Kovalev [Tue, 21 Jan 2014 18:15:59 +0000 (10:15 -0800)]
Merge "Removing duplicated example file example_xma.c."
Jim Bankoski [Tue, 21 Jan 2014 17:56:43 +0000 (09:56 -0800)]
remove complex rd modeling.
The affect on quality was minimal. Less than .1%, various sets
yt ( +.15%), derf (-.1%), hd ( -.1% ), std hd(-.15%)...
The affect on speed of encode at speed -5 was substantial ( ~3% ).
Change-Id: I8903346fbae0c35f5b9ea20f81fdd239ae81247d
Yaowu Xu [Tue, 21 Jan 2014 17:35:52 +0000 (09:35 -0800)]
Merge "Deprecate best_mv from encoder"
James Zern [Sat, 18 Jan 2014 04:59:51 +0000 (20:59 -0800)]
test/: remove some unnecessary extern "C"s
Change-Id: I57a94d2f9e26a872a20d805a506855a20e61c356
James Zern [Sat, 18 Jan 2014 04:53:27 +0000 (20:53 -0800)]
rtcd.sh: add extern "C" to generated headers
Change-Id: Ifb30518555402eb473c3fde81bc860fbe17851dd
Dmitry Kovalev [Sat, 18 Jan 2014 07:59:21 +0000 (23:59 -0800)]
Merge "Moving y4m encoding functions into separate files."
Dmitry Kovalev [Sat, 18 Jan 2014 02:19:06 +0000 (18:19 -0800)]
Merge "Cleaning up vp9_picklpf.c file."
Dmitry Kovalev [Sat, 18 Jan 2014 01:43:04 +0000 (17:43 -0800)]
Cleaning up vp9_ratectrl.c.
Change-Id: I3a260d3ca68db3a9352ae5409de76e56202976e5
Jingning Han [Sat, 18 Jan 2014 01:15:34 +0000 (17:15 -0800)]
Deprecate best_mv from encoder
This commit deprecates the use of best_mv from encoding and bit-stream
writing stages. It hence removes the definition from MACROBLOCKD.
Change-Id: I8e5302775a2aa4a18900726df407bff881f2dfb1
Yaowu Xu [Sat, 18 Jan 2014 01:04:32 +0000 (17:04 -0800)]
Merge "Change the vp8 END_USAGE typedef"
Dmitry Kovalev [Sat, 18 Jan 2014 01:02:37 +0000 (17:02 -0800)]
Moving y4m encoding functions into separate files.
Change-Id: I03f614872167841515a74740d654c008b60104a4
Dmitry Kovalev [Sat, 18 Jan 2014 00:56:04 +0000 (16:56 -0800)]
Moving vp8_multi_resolution_encoder to examples folder.
Change-Id: If0e1cd13aecd1620d26c28bf95e4f84469f78456
Dmitry Kovalev [Sat, 18 Jan 2014 00:44:45 +0000 (16:44 -0800)]
Removing duplicated example file example_xma.c.
The same file is in examples folder now.
Change-Id: I0f541f4424a0f0a67abd95907cb9d32132112f37
hkuang [Sat, 18 Jan 2014 00:17:36 +0000 (16:17 -0800)]
Merge "Use a temp buffer for reconstruction when reference buffer is out of boarder."
hkuang [Mon, 13 Jan 2014 22:14:44 +0000 (14:14 -0800)]
Use a temp buffer for reconstruction when
reference buffer is out of boarder.
Change-Id: Ic7ad136e54a4d68abe0fd4345146a86b0ba824e1
Dmitry Kovalev [Fri, 17 Jan 2014 03:28:02 +0000 (19:28 -0800)]
Cleaning up vp9_picklpf.c file.
Change-Id: Id54f317846f61a320cc5aeef47248e074376ee5d
Alex Converse [Fri, 17 Jan 2014 23:49:06 +0000 (15:49 -0800)]
Merge "Fix output cropping in vp9_get_preview_raw_frame."
Dmitry Kovalev [Fri, 17 Jan 2014 23:43:02 +0000 (15:43 -0800)]
Merge "Removing unused vp9_yv12_copy_partial_frame() function."
Deb Mukherjee [Fri, 17 Jan 2014 23:39:49 +0000 (15:39 -0800)]
Change the vp8 END_USAGE typedef
Makes the END_USAGE typedef compatible with the vpxenc input
Change-Id: If784586fdb90a1e6f7badcb522ea9e93d4ddc030
Dmitry Kovalev [Fri, 17 Jan 2014 23:20:28 +0000 (15:20 -0800)]
Cleaning up vp9_refining_search_sad() function.
Change-Id: I660b53da8ebf3049832ce8a10721051c4e0ebb00
Alex Converse [Fri, 17 Jan 2014 22:01:53 +0000 (14:01 -0800)]
Fix output cropping in vp9_get_preview_raw_frame.
Handle the non-420 case and set uv_width.
This is needed to get the correct colorspace information out of
vp9e_get_preview().
Change-Id: I62ce118cd7082708d812deb0843c1be87582e0fe
Dmitry Kovalev [Fri, 17 Jan 2014 20:56:58 +0000 (12:56 -0800)]
Merge "Adding vpx_image_scale() function in vpxdec."
Dmitry Kovalev [Fri, 17 Jan 2014 20:36:00 +0000 (12:36 -0800)]
Merge "Cleaning up vp9_refining_search_8p_c() function."
Dmitry Kovalev [Fri, 17 Jan 2014 20:19:19 +0000 (12:19 -0800)]
Adding vpx_image_scale() function in vpxdec.
Change-Id: I29eaffff5089b26e8778a977c3b3da11800f1c49