Stefan Holmer
d04f852368
Adding error-concealment to the decoder.
...
The error-concealer is plugged in after any motion vectors have been
decoded. It tries to estimate any missing motion vectors from the
motion vectors of the previous frame. Intra blocks with missing
residual are replaced with inter blocks with estimated motion vectors.
This feature was developed in a separate sandbox
(sandbox/holmer/error-concealment).
Change-Id: I5c8917b031078d79dbafd90f6006680e84a23412
2011-05-19 13:46:33 -04:00
Attila Nagy
f96d56c4aa
Fixed iwalsh_neon build problems with RVDS4.1
...
rvct 4.1 was complaining about vstmia.16, store multiple expects 64 data type.
optimized the implementation.
Change-Id: I0701052cabd685c375637bbc3796ff6d88f5972c
2011-05-19 10:27:26 +03:00
John Koleszar
72913435cb
Merge remote branch 'internal/upstream' into HEAD
...
Conflicts:
vp8/common/blockd.h
vp8/decoder/decodemv.c
Change-Id: Ib97c226d5b33b1ac1675d9c96eac1986af4dd579
2011-05-13 10:16:37 -04:00
John Koleszar
71a0eaf33c
Merge remote branch 'origin/master' into experimental
...
Change-Id: Idf2dead51d2936984eb9827dd6d2cb704817f4c8
2011-05-13 00:05:14 -04:00
Scott LaVarnway
6b25501bf1
Using int_mv instead of MV
...
The compiler produces better assembly when using int_mv
for assignments. The compiler shifts and ors the two 16bit
values when assigning MV.
Change-Id: I52ce4bc2bfbfaf3f1151204b2f21e1e0654f960f
2011-05-12 11:08:16 -04:00
John Koleszar
5c849a64d9
Merge remote branch 'origin/master' into experimental
...
Change-Id: I3149502b80e7c30decc125a2ddc5ad12b12b3667
2011-05-11 00:05:10 -04:00
John Koleszar
65b1648f35
Merge remote branch 'internal/upstream' into HEAD
2011-05-11 00:05:07 -04:00
John Koleszar
6edd07d656
Merge remote branch 'internal/upstream-experimental' into HEAD
2011-05-11 00:05:07 -04:00
Johann
df2023a6cb
set up Global Offset Table in recon
...
global values were being referenced, but the GOT was not being set up.
as the GOT is only required for PIC, this issue wasn't caught in the
default configuration.
Change-Id: I8006e53776139362a76f2c80cf9d0f8458602b2f
http://code.google.com/p/webm/issues/detail?id=328
2011-05-10 15:58:56 -04:00
John Koleszar
b08c6fa699
Merge remote branch 'origin/master' into experimental
...
Change-Id: I24a548e3ce7794409b6731829f83befc0d465800
2011-05-10 00:05:10 -04:00
Johann
a7d4d3c550
clean up unused variable warnings
...
Change-Id: I9467d7a50eac32d8e8f3a2f26db818e47c93c94b
2011-05-09 12:56:20 -04:00
John Koleszar
cadb2d6651
Merge remote branch 'origin/master' into experimental
...
Change-Id: I22f61430b52348b32078253d5ef38e68e7f91939
2011-05-07 00:05:11 -04:00
John Koleszar
017e85cf58
Merge remote branch 'internal/upstream' into HEAD
2011-05-07 00:05:11 -04:00
Aron Rosenberg
eeb8117303
Fix semaphore emulation on Windows
...
The existing emulation of posix semaphores on Windows uses SetEvent()
and WaitForSingleObject(), which implements a binary semaphore, not a
counting semaphore as implemented by posix. This causes deadlock when
used with the expected posix semantics. Instead, this patch uses the
CreateSemaphore() and ReleaseSemaphore() calls (introduced in Windows
2000) which have the expected behavior.
This patch also reverts commit eb16f00, which split a semaphore that
was being used with counting semantics into two binary semaphores.
That commit is unnecessary with corrected emulation.
Change-Id: If400771536a27af4b0c3a31aa4c4e9ced89ce6a0
2011-05-06 00:13:59 -04:00
John Koleszar
e965d8f6f3
Merge remote branch 'origin/master' into experimental
...
Change-Id: Ib6c8596030140ed2b5e1dea76de024d27ad8ed86
2011-05-06 00:05:11 -04:00
John Koleszar
39e36f8604
Merge remote branch 'internal/upstream' into HEAD
2011-05-06 00:05:10 -04:00
Johann
ca5c1b17a2
Merge "Loopfilter NEON: Use VMOV for constant vectors instead of VLD."
2011-05-05 06:16:21 -07:00
Yunqing Wang
aeb86d615c
Merge "Runtime detection of available processor cores."
2011-05-05 04:59:54 -07:00
Attila Nagy
a6aa389d2f
Loopfilter NEON: Use VMOV for constant vectors instead of VLD.
...
Change-Id: I562b6e01c32bb51d00f3b95faf757fc7dc29a3a3
2011-05-04 11:29:23 +03:00
John Koleszar
b336dc6bff
Merge remote branch 'origin/master' into experimental
...
Change-Id: Ibcddf16cdbfde86d2e3fc0adb7b727072a3d12e9
2011-05-03 00:05:09 -04:00
John Koleszar
e2990fcc48
Merge remote branch 'internal/upstream' into HEAD
2011-05-03 00:05:05 -04:00
John Koleszar
c09d8c1419
Merge "Fix documentation typos"
2011-05-02 06:50:22 -07:00
John Koleszar
a66d8d33dd
Fix compile error with --enable-postproc-visualizer
...
Typo.
Change-Id: I9cc6a4587c3d93c9f0da5e101d376741fc9622a4
2011-05-02 09:28:37 -04:00
Thijs Vermeir
8942f70cdf
Fix documentation typos
...
Change-Id: I97124670926433bf1593c91660d8b8f8482ea9ce
2011-04-30 09:34:59 +02:00
John Koleszar
518c551903
Merge remote branch 'origin/master' into experimental
...
Change-Id: I9c995f1fdb46c098b0c519bf333318dff651cb40
2011-04-30 00:05:06 -04:00
John Koleszar
8398449cbf
Merge remote branch 'internal/upstream' into HEAD
2011-04-30 00:05:05 -04:00
Ronald S. Bultje
5a23352c03
Make hor UV predict ~2x faster (73 vs 132 cycles) using SSSE3.
...
Change-Id: I658a1df7d825f820573cb2d11ad402f9d2791035
2011-04-29 11:52:09 -07:00
Yaowu Xu
57ad189129
changed configure option name to reduce confusion
...
Renamed configure option "enable-psnr" to "enable-internal-stats" to
better reflect the purpose of the option and eliminate the confusion
reported in http://code.google.com/p/webm/issues/detail?id=35
Change-Id: If72df6fdb9f1e33dab1329240ba4d8911d2f1f7a
2011-04-29 09:39:05 -07:00
Scott LaVarnway
1b2abc5f49
Merge "Consolidated build inter predictors"
2011-04-29 07:13:49 -07:00
John Koleszar
89c3269636
Merge remote branch 'origin/master' into experimental
...
Change-Id: I993021d0b2d7fbe44d6371464f2686eed3ccfaae
2011-04-29 00:05:07 -04:00
John Koleszar
57afffbcbb
Merge remote branch 'internal/upstream' into HEAD
2011-04-29 00:05:07 -04:00
James Berry
f10732554b
bug fix removed inline from recon_wrapper_sse2.c
...
removed inline from recon_wrapper_sse2.c to build
for visual stuido
Change-Id: I74a3482950448e2cdb30e9cd7087145b440d8a22
2011-04-28 15:12:00 -04:00
Scott LaVarnway
219ba87a93
Merge "Use psadbw to get the sum of bytes in a line."
2011-04-28 07:58:20 -07:00
Scott LaVarnway
ccd6f7ed77
Consolidated build inter predictors
...
Code cleanup.
Change-Id: Ic8b0167851116c64ddf08e8a3d302fb09ab61146
2011-04-28 10:53:59 -04:00
John Koleszar
c26bb0fe8f
Merge remote branch 'origin/master' into experimental
...
Change-Id: I7d91efbc3662c86d6efa2d7495eb4689ccdb0ced
2011-04-28 00:05:07 -04:00
John Koleszar
e1b90ce862
Merge remote branch 'internal/upstream' into HEAD
2011-04-28 00:05:07 -04:00
Ronald S. Bultje
1e7ded69cf
Use psadbw to get the sum of bytes in a line.
...
Thanks Jason for pointing that out on #vp8. ;-).
Change-Id: I5330a753e752a8704b78a409597472628e0b26a5
2011-04-27 13:49:21 -07:00
Scott LaVarnway
2e102855f4
Removed unused code in reconinter
...
The skip flag is never set by the encoder for SPLITMV.
Change-Id: I5ae6457edb3a1193cb5b05a6d61772c13b1dc506
2011-04-27 15:25:32 -04:00
Ronald S. Bultje
1083fe4999
SSE2/SSSE3 optimizations for build_predictors_mbuv{,_s}().
...
decoding
before
10.425
10.432
10.423
=10.426
after:
10.405
10.416
10.398
=10.406, 0.2% faster
encoding
before
14.252
14.331
14.250
14.223
14.241
14.220
14.221
=14.248
after
14.095
14.090
14.085
14.095
14.064
14.081
14.089
=14.086, 1.1% faster
Change-Id: I483d3d8f0deda8ad434cea76e16028380722aee2
2011-04-27 11:31:27 -07:00
John Koleszar
0a77e59847
Merge remote branch 'origin/master' into experimental
...
Conflicts:
vp8/common/alloccommon.c
vp8/encoder/rdopt.c
Change-Id: I142167d31d1b9cffe143774f6915bca463df67f0
2011-04-26 08:28:51 -04:00
John Koleszar
bbc24a65c4
Merge remote branch 'internal/upstream' into HEAD
...
Conflicts:
vp8/common/alloccommon.c
vp8/encoder/rdopt.c
Change-Id: Ic34b33577423031e277235ffa6bcaff7b252e5cb
2011-04-26 08:27:39 -04:00
Johann
d5c46bdfc0
Merge "remove simpler_lpf"
2011-04-25 14:51:07 -07:00
Johann
01527e743f
remove simpler_lpf
...
the decision to run the regular or simple loopfilter is made outside the
function and managed with pointers
stop tracking the option in two places. use filter_type exclusively
Change-Id: I39d7b5d1352885efc632c0a94aaf56b72cc2fe15
2011-04-25 17:37:41 -04:00
John Koleszar
cfbfd39de8
Merge "Change rc undershoot/overshoot semantics"
2011-04-25 10:49:32 -07:00
John Koleszar
aa926fbd27
Add rc_max_intra_bitrate_pct control
...
Adds a control to limit the maximum size of a keyframe, as a function of
the per-frame bitrate. See this thread[1] for more detailed discussion:
[1]: http://groups.google.com/a/webmproject.org/group/codec-devel/browse_thread/thread/271b944a5e47ca38
Change-Id: I7337707642eb8041d1e593efc2edfdf66db02a94
2011-04-25 13:47:14 -04:00
John Koleszar
308e31a3ef
Merge remote branch 'internal/upstream-experimental' into HEAD
...
Conflicts:
vp8/decoder/onyxd_int.h
Change-Id: Icf445b589c2bc61d93d8c977379bbd84387d0488
2011-04-25 09:13:41 -04:00
John Koleszar
5dfd6f51cb
Merge remote branch 'origin/master' into experimental
...
Change-Id: I6f77e7c10a54c54b26126b8acd5edd0a03358a41
2011-04-22 00:05:08 -04:00
Scott LaVarnway
3698c1f620
Removed dc_diff from MB_MODE_INFO
...
The dc_diff flag is used to skip loopfiltering. Instead
of setting this flag in the decoder/encoder, we now check
for this condition in the loopfilter.
Change-Id: Ie2b9cdf9e0f4e8b932bbd36e0878c05bffd28931
2011-04-21 14:38:36 -04:00
John Koleszar
b59bd22cc0
Merge remote branch 'origin/master' into experimental
...
Change-Id: I78a30fb4438ddd0730262691d7c120d67cbcaaa9
2011-04-21 00:05:08 -04:00
Scott LaVarnway
7a49accd0b
Removed force_no_skip
...
force_no_skip is always set to zero.
Change-Id: I89b61c5e0bee34627a9c07c05f3517e1db76af77
2011-04-20 15:45:12 -04:00