James Zern
54c2854fe2
vp9/decode: align tile worker data allocation
...
fixes a crash in assembly on 32-bit linux/windows
Change-Id: I0c27e6c0ece9732b5eb2ee5b59ff42c3c8016c50
2013-10-30 08:33:09 +01:00
Johann
2a67a34f4a
Merge "vp9_decodframe.c: use vpx_memset instead of cast"
2013-10-29 18:40:18 -07:00
Johann
b18ea70b20
Merge "idct_blk_mmx.c: use vpx_memset instead of cast"
2013-10-29 18:40:01 -07:00
Johann
272d76e3ce
Merge "decodframe.c: use vpx_memset instead of cast"
2013-10-29 18:39:24 -07:00
Johann
d03d960369
Merge "threading.c: use vpx_memset instead of cast"
2013-10-29 18:39:00 -07:00
Johann
15a24c6fba
Merge "idct_blk.c: use vpx_memset instead of cast"
2013-10-29 18:38:20 -07:00
Yunqing Wang
9ed2d0a577
Fix x_offset_q4/y_offset_q4 calculation
...
"<< SUBPEL_BITS" needs to be added in the calculation. Call
set_scaled_offsets() to calculate x_offset_q4 and y_offset_q4.
Change-Id: Ied130ea771510e918f51cd1dc3abe57f4c0962b5
2013-10-29 17:46:55 -07:00
James Zern
ce053e7006
Merge "vp9: add multi-threaded tile decoder"
2013-10-29 17:44:22 -07:00
James Zern
3b47e05908
Merge "vp9/decode: add get_tile()"
2013-10-29 17:34:56 -07:00
James Zern
fb484524bd
vp9: add multi-threaded tile decoder
...
tiles are decoded in parallel within a single frame
Change-Id: I7aca87cb1c239b74eceef72bdc9f672faebac373
2013-10-30 01:00:20 +01:00
James Zern
6b00202f1b
vp9/decode: add get_tile()
...
factorizes the code in decode_tiles(). reading the offsets backwards
wasn't doing anything to prove tile independence
Change-Id: I0395d3c77205852ebdc55efedc68291e93cef85c
2013-10-30 01:00:07 +01:00
Dmitry Kovalev
1bea58e4a8
Merge "Adding const to vp9_quantize_b_{32x32,} parameters."
2013-10-29 16:57:52 -07:00
Erik Niemeyer
27b8040c76
Merge "CL for adding AVX-AVX2 support in libvpx."
2013-10-29 15:55:54 -07:00
Dmitry Kovalev
065972f959
Adding const to vp9_quantize_b_{32x32,} parameters.
...
Change-Id: I56f8c50ac382202f66040cd9cfaa05d889572fc7
2013-10-29 15:25:19 -07:00
Erik Niemeyer
e6863ef318
CL for adding AVX-AVX2 support in libvpx.
...
Change-Id: Idc03f3fca4bf2d0afd33631ea1d3caf8fc34ec29
2013-10-29 15:11:16 -07:00
Dmitry Kovalev
cd94eee45f
Fixing clang warning.
...
Warning was: "implicit conversion from enumeration type 'VPX_SCALING_MODE'
(aka 'enum vpx_scaling_mode_1d') to different enumeration type
'VPX_SCALING'".
Change-Id: I45689e439a8775bc1e7534d0ea1ff7c729f2c7f5
2013-10-29 14:50:27 -07:00
Dmitry Kovalev
b4139d582d
Merge "Fixing wrongly initialized tx_type variable."
2013-10-29 14:07:16 -07:00
Johann
dc799a875b
vp9_decodframe.c: use vpx_memset instead of cast
...
Fix warning with -Wstrict-aliasing=1
Change-Id: Idfac09be1ab328923883e63436577f1018c895b8
2013-10-29 13:52:48 -07:00
Johann
47613d071c
idct_blk_mmx.c: use vpx_memset instead of cast
...
Fix warning with -Wstrict-aliasing=1
Change-Id: Ic37013e6477cf213925830d0bd8e6f17364ff7cc
2013-10-29 13:51:56 -07:00
Johann
0f20c839d7
decodframe.c: use vpx_memset instead of cast
...
Fix warning with -Wstrict-aliasing=1
Change-Id: Ic4e511af924247800e87d5f990636565f3dd91d2
2013-10-29 13:51:51 -07:00
Johann
7e5f5e26ba
threading.c: use vpx_memset instead of cast
...
Fix warning with -Wstrict-aliasing=1
Change-Id: I43df2781656dd7b3f4c0ec6daa283d7a78928a0c
2013-10-29 13:51:13 -07:00
Johann
1fb7a735dc
idct_blk.c: use vpx_memset instead of cast
...
Fix warning with -Wstrict-aliasing=1
Change-Id: Ibf4af991f2c82b8ccbdc20362da64be669564333
2013-10-29 13:50:15 -07:00
Yaowu Xu
cb035614d0
Merge "changed to comply with strict aliasing rule"
2013-10-29 13:44:07 -07:00
Dmitry Kovalev
e6dcf2aeb6
Fixing wrongly initialized tx_type variable.
...
Wrong value was used in get_tx_type_4x4() function, so making
initialization before that call.
Change-Id: Ief30bb1e0c03b2f23d993bbf9ae18d7150ba9a83
2013-10-29 12:18:53 -07:00
Dmitry Kovalev
86ef5a0689
Merge "Correct handling of show_bit in uncompressed header."
2013-10-29 12:10:43 -07:00
Dmitry Kovalev
156de9c3ef
Correct handling of show_bit in uncompressed header.
...
"keyframe" variable in the current code actually means that previous
frame is a keyframe because cm->frame_type has not been initialized
in read_uncompressed_header.
Change-Id: I5645b0816c70abdef5dfc70113018d06276dac77
2013-10-29 11:24:08 -07:00
Yaowu Xu
502912de3a
changed to comply with strict aliasing rule
...
The clamp operation may not affect the values of the final assigned mv
where compiler may make use of strict aliasing rule to optimize out the
clamp operation. This change made the code segments to better comply
the strict aliasing rule.
Change-Id: I24502ff18bd4f9e62507a879cc8760a91a0fd07e
2013-10-29 11:11:35 -07:00
Johann
a8bbe7d808
Merge "Disable aliasing when building with Clang"
2013-10-29 11:05:45 -07:00
Dmitry Kovalev
a8e31d624a
Merge "Cleaning up vp9_regular_quantize_b_4x4."
2013-10-29 10:49:52 -07:00
Dmitry Kovalev
e5956258dd
Merge "Making get_tx_counts() similar to get_tx_probs()."
2013-10-29 10:48:50 -07:00
Adrian Grange
038b26c312
Merge "Resolved Doxygen warnings."
2013-10-29 10:43:33 -07:00
Yunqing Wang
c634ec6a56
Merge "Rewrite loop_filter_info_n struct"
2013-10-29 09:49:36 -07:00
Adrian Grange
f58eca9020
Resolved Doxygen warnings.
...
Added comments to make the codebase build cleanly in Doxygen.
Change-Id: I01e000ceac57dbafa04342858c8f1be250ba20d1
2013-10-29 09:38:31 -07:00
James Zern
7795c1911e
Merge "vp9_decode_frame: group assignments/setup calls"
2013-10-29 03:34:10 -07:00
James Zern
d39f279daa
vp9_decode_frame: group assignments/setup calls
...
group error checking at the top followed by allocations, setup then
decode.
Change-Id: I877d21326bb767885520511ecea70e5fd1e28054
2013-10-29 11:03:50 +01:00
Dmitry Kovalev
aa76cd1e49
Removing is_intra_mode() function.
...
It is enough to check just block type: intra or inter. Intra block implies
intra prediction mode, and inter block implies inter mode.
Change-Id: I3cf98731a3935f670a3cd8e2b2443483eb944be4
2013-10-28 20:00:55 -07:00
Dmitry Kovalev
fa1ac00aee
Making get_tx_counts() similar to get_tx_probs().
...
Change-Id: I5b17f40e515c4bcf9ebef5380270a214af4e0115
2013-10-28 19:52:38 -07:00
Johann
8b47e1cfe1
Disable aliasing when building with Clang
...
When building with new versions of Clang we encounter some issues. Work
around them by adding -fno-strict-aliasing when we detect Clang.
https://code.google.com/p/webm/issues/detail?id=603
Change-Id: I8e945a18a7215bcc627e7a1ee110078413259cc7
2013-10-28 15:46:57 -07:00
Dmitry Kovalev
19cf72eddc
Adding {read, write}_partition() instead of check_bsize_coverage().
...
Making partition read/write logic more clear.
Change-Id: I1981e90327257d37095567c62d72a103cda1da33
2013-10-28 15:14:45 -07:00
Dmitry Kovalev
8253532c2d
Cleaning up vp9_regular_quantize_b_4x4.
...
Passing scan & iscan as parameters, adding useful local variables.
Change-Id: Ia2a87906941db9557350d273669ce5c3cdb7235d
2013-10-28 14:28:28 -07:00
James Zern
080150d96f
Merge "add tile test vectors"
2013-10-28 13:32:45 -07:00
James Zern
58a0f6dbdd
vp9: add TileInfo
...
replaces use of cur_tile_mi_(row|col)_(start|end) by VP9_COMMON, making
it less stateful and more reusable for parallel tile decoding
Change-Id: I1df09382b4567a0e5f4434825d47c79afe2399be
2013-10-28 20:54:43 +01:00
James Zern
f0eabfd432
vp9_decodframe: limit scope of private function params (2)
...
replace VP9D_COMP usage with the (slightly) more targeted
VP9_COMMON/MACROBLCKD structures.
Change-Id: Ifdd9034f44d69eb94e232dd03c922de763b96a30
2013-10-28 20:48:59 +01:00
James Zern
3ffa41aae3
Merge changes If9b16f7d,I75aab21c,I9cbb768c,If5cea3d3,I96940657,I025595d8,Ie0bc3935,I3ebb172d
...
* changes:
vp9: remove partition+entropy contexts from common
vp9: add above/left_context to MACROBLOCKD
vp9: add above/left_seg_context to MACROBLOCKD
vp9: add above/left_context to encoder
vp9: add above/left_seg_context to encoder
vp9: pass entropy context directly to set_skip_context
vp9: pass context directly to partition functions
vp9/decode: add alloc_tile_storage()
2013-10-28 12:45:11 -07:00
Dmitry Kovalev
ded951793c
Merge "Replacing is_inter_mode with is_inter_block."
2013-10-28 10:07:06 -07:00
James Zern
ea9b2c0312
add tile test vectors
...
1920x1080
vp90-2-08-tile_1x2_frame_parallel.webm
vp90-2-08-tile_1x2.webm
vp90-2-08-tile_1x4_frame_parallel.webm
vp90-2-08-tile_1x4.webm
vpxenc blue_sky_1080p25.y4m \
--codec=vp9 -p 2 \
--frame-parallel=${fpm} \
--tile-columns=${tc} \
--limit=10 \
--auto-alt-ref=1 \
--lag-in-frames=5 \
--target-bitrate=2500
Change-Id: Id9c94b722cc553a6865d443a94e8482c78b038bb
2013-10-28 17:53:20 +01:00
James Zern
50c4026e93
Merge "vp9 decode: defer loop filter allocation"
2013-10-28 08:00:59 -07:00
James Zern
e5edad3dc7
Merge "vp9_thread_test: quiet some msvc int->bool warnings"
2013-10-28 07:58:04 -07:00
James Zern
7b9ca3caa7
vp9: remove partition+entropy contexts from common
...
these are now handled separately by the encoder and decoder
Change-Id: If9b16f7d734e992fb94a510a6d88f2690d7fb7cb
2013-10-28 11:34:20 +01:00
James Zern
e571d3badc
vp9: add above/left_context to MACROBLOCKD
...
Change-Id: I75aab21c1692cbad717564cbb436578fddbc348d
2013-10-28 11:34:18 +01:00