Yunqing Wang [Fri, 21 Mar 2014 19:23:47 +0000 (12:23 -0700)]
Fix libvpx VP9 decoder dr memory errors
Fixed dr memory errors reported in Issue 736:
https://code.google.com/p/webm/issues/detail?id=736
All elements in left_col buffer need to be initialized to ensure
the correctness of SIMD operations in x86 optimized code.
Change-Id: I8e7f26ab45cca8099c1f9342bcf852f828bda7e4
Yaowu Xu [Fri, 21 Mar 2014 18:13:48 +0000 (11:13 -0700)]
Merge "changed to use correct pred_mv"
Yaowu Xu [Fri, 21 Mar 2014 18:13:43 +0000 (11:13 -0700)]
Merge "Fix a valgrind error"
Yaowu Xu [Fri, 21 Mar 2014 03:02:08 +0000 (20:02 -0700)]
changed to use correct pred_mv
The third pred_mv is stored in x->pred_mv[ref_frame]. This commit make
sure the correct mv is read.
Change-Id: Ibed24daf36703a63f0394c87b2381ee1d2eb7910
Yaowu Xu [Fri, 21 Mar 2014 15:44:04 +0000 (08:44 -0700)]
Merge "Remove duplicate declaration"
Yaowu Xu [Fri, 21 Mar 2014 02:35:06 +0000 (19:35 -0700)]
Fix a valgrind error
Valgrind was complaining uninitialzed values are being used.
Change-Id: Ia9eb619f4e67d1fb7af1057d50304f15adc02aab
Marco Paniconi [Fri, 21 Mar 2014 04:15:40 +0000 (21:15 -0700)]
Merge "Some code cleanup for cyclic refresh."
Yaowu Xu [Fri, 21 Mar 2014 00:29:04 +0000 (17:29 -0700)]
Change the min/max q validation in lossless mode
This commit changed how q is validated in lossless mode. With this
commit, when --lossless=1 is specificed at commandline, --min-q and
--max-q are now ignored. This is to make the option non-ambiguious.
Change-Id: I33e85690460537509d33be75d6a3597be4affc09
Yaowu Xu [Wed, 19 Mar 2014 23:19:16 +0000 (16:19 -0700)]
Use local vairable in rd_auto_partition_range()
In addition to a few cleanups.
Change-Id: Ice5938ef494513921a47e7c64ba9928f2202e24e
Marco Paniconi [Fri, 21 Mar 2014 00:58:35 +0000 (17:58 -0700)]
Disable speed 6 for datarate test.
One of the tests for real-time mode is failing at speed 6.
Introduced recently, will enable again when fixed.
Change-Id: I8f42de6a3eca226c9aa5c5e1fab98d629993c087
Marco Paniconi [Thu, 20 Mar 2014 23:42:13 +0000 (16:42 -0700)]
Some code cleanup for cyclic refresh.
Change-Id: I0e4e2462ee27640f9bf4091431241ede6fc97267
Tom Finegan [Thu, 20 Mar 2014 22:17:48 +0000 (15:17 -0700)]
Merge "intrapred_test: fix inheritance"
Minghai Shang [Thu, 20 Mar 2014 22:12:14 +0000 (15:12 -0700)]
Merge "[svc] Finalize spatial svc first pass rate control"
Dmitry Kovalev [Thu, 20 Mar 2014 20:43:13 +0000 (13:43 -0700)]
Merge "Removing mi_stream."
Marco Paniconi [Thu, 20 Mar 2014 18:32:39 +0000 (11:32 -0700)]
Log encoding time/fps in vpx_temporal_scalable_patterns
Change-Id: I368750c3641c5daaa8871f3880af5cfcf5e79bba
Yunqing Wang [Fri, 14 Mar 2014 22:42:23 +0000 (15:42 -0700)]
Remove unused mode_sad
Removed mode_sad.
Change-Id: I230b42ac9b617ae2c375e297057aa0756bd355fe
Martin Storsjo [Thu, 20 Mar 2014 06:12:29 +0000 (08:12 +0200)]
ads2armasm_ms: Match the indentation of the previous line
Instead of hardcoding a certain indentation, use the regexp to
provide similar indentation for the new line as well.
Change-Id: Iacb2621b35ce7e1aa3980c1603b8e3ab02d98a35
James Zern [Thu, 20 Mar 2014 02:33:53 +0000 (19:33 -0700)]
Merge "configure: test -m(mmx|sse|sse2|sse3) flags"
James Zern [Thu, 20 Mar 2014 02:10:46 +0000 (19:10 -0700)]
Merge "ads2armasm_ms: Add an ALIGN 4 after ENDP"
Jingning Han [Thu, 20 Mar 2014 01:54:42 +0000 (18:54 -0700)]
Merge "Enable variable block size test in non-RD mode decision"
Dmitry Kovalev [Thu, 20 Mar 2014 01:36:09 +0000 (18:36 -0700)]
Merge "Cleaning up vp9_onyx_if.c and vp9_onyx_int.h."
Dmitry Kovalev [Wed, 19 Mar 2014 23:46:28 +0000 (16:46 -0700)]
Merge "Moving common code into vp9_update_mv_count()."
Jingning Han [Wed, 19 Mar 2014 18:25:40 +0000 (11:25 -0700)]
Enable variable block size test in non-RD mode decision
This is an initial attempt to allow variable block size partition
in non-RD coding flow. It tests 8x8, 16x16 and 32x32 block size per
64x64 block, all using non-RD mode decision and the associated rate
distortion costs from modeling, then selects the best block size to
encode the entire 64x64 block. Such operations are triggered every
other 3 frames. The blocks of intermediate frames will reuse the
collocated block's partition type.
It improves the compression performance by 13.2%. Note that the gains
are not evenly distributed. For many hard clips, the compression
performance is improved by 20% to 28%. Local speed test shows that
it will also increase runtime by 50%, as compared to speed -7. It is
now enabled in speed -6 setting.
Change-Id: Ib4fb8659d21621c9075b3c369ddaa9ecb0a4b204
Dmitry Kovalev [Wed, 19 Mar 2014 21:26:11 +0000 (14:26 -0700)]
Moving common code into vp9_update_mv_count().
Change-Id: I512482853bdf2695fbdf1c705a2ada354ccf76cf
Dmitry Kovalev [Wed, 19 Mar 2014 18:50:04 +0000 (11:50 -0700)]
Adding alloc_mi() function.
Change-Id: I3b944884c048f589c86e0169aeb3c3855bc8b729
Martin Storsjo [Wed, 19 Mar 2014 14:18:44 +0000 (16:18 +0200)]
ads2armasm_ms: Add an ALIGN 4 after ENDP
This makes sure that labels for data symbols directly after
functions get properly 4-byte-aligned (when the source is assembled
in thumb mode).
Previously, if declaring a data symbol directly after a function, the
symbol could end up pointing to the unaligned address (if the total
size of the thumb function didn't end up being a multiple of 4). The
data in the symbol itself ended up aligned, but the symbol pointed to
the preceding unaligned position.
That is, a source file looking like this:
---
...
ENDP
symbol
DCD 0x12345678
---
could end up being assembled into
symbol:
xxxxx2: 0000
xxxxx4: 5678
xxxxx6: 1234
(This doesn't happen if the symbol label is on the same line as the
DCD directive.)
By adding an ALIGN 4 directly after the ENDP we make sure the symbol
itself gets aligned properly.
This isn't an issue with the original, untranslated arm source,
since it only is built in arm mode where all instructions are 4 byte,
and since the gnu assembler automatically adds the padding before the
symbol even in thumb mode.
Change-Id: Iadbeebd656b0197e423e79a12a7d3ef8859cf445
Yaowu Xu [Wed, 19 Mar 2014 16:40:19 +0000 (09:40 -0700)]
Remove duplicate declaration
Change-Id: Ic8e52a89e0df816c38cd8ff1b7c53862b9a6dff2
Jingning Han [Wed, 19 Mar 2014 18:21:41 +0000 (11:21 -0700)]
Merge "Fix the use of uninitialized skip flag"
Dmitry Kovalev [Wed, 19 Mar 2014 18:18:47 +0000 (11:18 -0700)]
Merge "Rearranging and removing unused defines."
Yaowu Xu [Wed, 19 Mar 2014 18:13:28 +0000 (11:13 -0700)]
Merge "Fix the md5 mismatch for some scale cases."
Minghai Shang [Wed, 19 Mar 2014 18:06:20 +0000 (11:06 -0700)]
[svc] Finalize spatial svc first pass rate control
1. Save stats for each spatial layer
2. Add frame buffer management for svc first pass rc
3. Set default spatial layer to 1
4. Flush encoder at the end of stream in test app
This only supports spatial svc.
Change-Id: Ia89cfa87bb6394e6c0405b921d86c426d0a0c9ae
Dmitry Kovalev [Wed, 19 Mar 2014 17:47:32 +0000 (10:47 -0700)]
Removing mi_stream.
Change-Id: If674140e30c223c88894b983fd22a583efb99dcf
Yaowu Xu [Wed, 19 Mar 2014 16:04:44 +0000 (09:04 -0700)]
Merge "Removed several unused functions."
Yaowu Xu [Wed, 19 Mar 2014 16:04:35 +0000 (09:04 -0700)]
Merge "Remove an unused function"
James Zern [Wed, 19 Mar 2014 03:28:23 +0000 (20:28 -0700)]
configure: test -m(mmx|sse|sse2|sse3) flags
<=sse2 isn't strictly necessary on x86_64, but this is more consistent
with the rest of the flags and should be harmless
Change-Id: Ice0f1d1c4c7510ee90af2a62dbd3d6508db63487
James Zern [Wed, 19 Mar 2014 03:17:11 +0000 (20:17 -0700)]
update gitignore
vp8_set_maps was renamed in
61ecd7f Add VP9 support to the set maps example.
Change-Id: I6c67254b9c437886e88dca21387ae4e86c74c440
James Zern [Wed, 19 Mar 2014 02:58:03 +0000 (19:58 -0700)]
Merge changes If529f310,I0f4a8202
* changes:
configure: test for -mssse3
configure: factorize gcc machine option checks
James Zern [Wed, 19 Mar 2014 02:25:31 +0000 (19:25 -0700)]
intrapred_test: fix inheritance
inheritance should be public; also correct placement of ClearSystemState
as the base class doesn't inherit from testing
Change-Id: I0f41330fccc62a70b8dd40d66bbd829b9d98cf84
James Zern [Wed, 19 Mar 2014 01:19:16 +0000 (18:19 -0700)]
Revert "configure: Check for make"
This reverts commit
89025585cde1e2696c134b3cb7457abd6a3c3933.
This check breaks BSD builds and isn't useful through the configure
process. The README describes the build environment requirements (GNU
make).
Change-Id: I25f8a9c1640909412ab405dbd09a1c4d93e5a511
James Zern [Wed, 19 Mar 2014 00:30:05 +0000 (17:30 -0700)]
configure: test for -mssse3
fixes compile with older versions of gcc
Change-Id: If529f3102dbc926be8d5fb91d4161fa686c11840
James Zern [Wed, 19 Mar 2014 00:22:35 +0000 (17:22 -0700)]
configure: factorize gcc machine option checks
check_gcc_machine_option() replaces individual -m* checks
Change-Id: I0f4a82020c0541b99209321907e80e071d1245e1
James Zern [Wed, 19 Mar 2014 00:07:36 +0000 (17:07 -0700)]
Merge "y4minput: add more error reporting on read failure"
James Zern [Sat, 15 Mar 2014 19:35:44 +0000 (12:35 -0700)]
y4minput: add more error reporting on read failure
Change-Id: Iedb136e4019ec3eb3005ea567efb33902dccfb8d
James Zern [Tue, 18 Mar 2014 22:09:41 +0000 (15:09 -0700)]
Merge "tokenize: quiet -Warray-bounds warnings"
James Zern [Tue, 18 Mar 2014 22:08:54 +0000 (15:08 -0700)]
Merge "rdopt: quiet -Warray-bounds warnings"
James Zern [Tue, 18 Mar 2014 22:05:47 +0000 (15:05 -0700)]
Merge "onyx_if: quiet -Warray-bounds warnings"
James Zern [Tue, 18 Mar 2014 22:05:00 +0000 (15:05 -0700)]
Merge "svc_encodeframe: quiet -Warray-bounds warnings"
Jingning Han [Sat, 15 Mar 2014 00:05:35 +0000 (17:05 -0700)]
Fix the use of uninitialized skip flag
The use of uninitialized skip flag will trigger inconsistency in
coding statistics, when alternate RD and non-RD coding modes are
enabled. This commit fixes this issue and removes unnecessary if
statements from update_state_rt.
Change-Id: I7d549dcb0e3ef48b999e5bbc78174ba84502cfcf
Dmitry Kovalev [Tue, 18 Mar 2014 21:55:23 +0000 (14:55 -0700)]
Merge "Fixing warnings/errors from c++ compiler."
Marco Paniconi [Tue, 18 Mar 2014 21:12:48 +0000 (14:12 -0700)]
Merge "In-frame q adjustment for cyclic background refresh."
Dmitry Kovalev [Tue, 18 Mar 2014 20:10:10 +0000 (13:10 -0700)]
Merge "Cleaning up calc_active_worst_quality_one_pass_vbr()."
Vignesh Venkatasubramanian [Tue, 18 Mar 2014 18:57:23 +0000 (11:57 -0700)]
Merge "Adding libwebm sources to third_party/libwebm."
Dmitry Kovalev [Tue, 18 Mar 2014 18:49:23 +0000 (11:49 -0700)]
Cleaning up vp9_onyx_if.c and vp9_onyx_int.h.
Change-Id: I5136c45d3f5f435005a88d04652addcd835f4bfe
Dmitry Kovalev [Tue, 18 Mar 2014 18:20:06 +0000 (11:20 -0700)]
Rearranging and removing unused defines.
Change-Id: I03049f89565ce19a297e65e2d53db127dc6f77d9
Marco Paniconi [Fri, 14 Mar 2014 21:35:47 +0000 (14:35 -0700)]
In-frame q adjustment for cyclic background refresh.
Activated using aq_mode=3.
Change-Id: Ied628b9e7bd0e88b0c75790276bca75b19eb5c07
Dmitry Kovalev [Tue, 18 Mar 2014 17:47:51 +0000 (10:47 -0700)]
Fixing warnings/errors from c++ compiler.
Change-Id: Ia561dda53f2dd10e3a10a2df2adb8027ab19397a
Dmitry Kovalev [Tue, 18 Mar 2014 17:41:22 +0000 (10:41 -0700)]
Cleaning up calc_active_worst_quality_one_pass_vbr().
Change-Id: Ibfccee5e35c235c02843e1c1fbd3c39034619cf5
Vignesh Venkatasubramanian [Mon, 17 Mar 2014 20:30:55 +0000 (13:30 -0700)]
Adding libwebm sources to third_party/libwebm.
Hash and license details are found in README.webm
Change-Id: I52192abe8eba8ec413f6bccd479e8e2256a8f617
Alex Converse [Tue, 18 Mar 2014 01:39:44 +0000 (18:39 -0700)]
Merge "Remove non-420 configure option."
Jingning Han [Mon, 17 Mar 2014 21:17:58 +0000 (14:17 -0700)]
Merge "Add bit-stream write flag to nonrd_use_partition"
Dmitry Kovalev [Mon, 17 Mar 2014 21:13:56 +0000 (14:13 -0700)]
Merge "Cleaning up enums in vp9_onyx_int.h"
Dmitry Kovalev [Mon, 17 Mar 2014 21:12:13 +0000 (14:12 -0700)]
Merge "Moving defines from vp9_onyx_int.h to suitable *.c files."
Yaowu Xu [Mon, 17 Mar 2014 21:09:29 +0000 (14:09 -0700)]
Removed several unused functions.
Change-Id: Ib9e27298c575afc02a98b593bc6ad60762064d9b
Yunqing Wang [Mon, 17 Mar 2014 21:04:47 +0000 (14:04 -0700)]
Merge "Calculate rate_mv after sub-pixel search in non-rd mode"
Yaowu Xu [Mon, 17 Mar 2014 21:03:14 +0000 (14:03 -0700)]
Remove an unused function
Change-Id: Iaaea882e59dfec38c0a9a24deaf8525a0fb62515
Dmitry Kovalev [Sat, 15 Mar 2014 00:38:15 +0000 (17:38 -0700)]
Cleaning up enums in vp9_onyx_int.h
Change-Id: Ib5cbf77052bc03495ae135b3cdcd39c2452c2b34
Dmitry Kovalev [Mon, 17 Mar 2014 19:54:51 +0000 (12:54 -0700)]
Moving defines from vp9_onyx_int.h to suitable *.c files.
Change-Id: I0d39bdbb8166ee44561f1008d1a2e76e70b36f30
James Zern [Mon, 17 Mar 2014 19:29:02 +0000 (12:29 -0700)]
Merge "Remove the vp8_vpxyv12_copy_y_neon."
James Zern [Mon, 17 Mar 2014 19:25:54 +0000 (12:25 -0700)]
Merge "thumb: Clarify a comment about the conversions that are done"
Yaowu Xu [Mon, 17 Mar 2014 18:25:39 +0000 (11:25 -0700)]
Merge "Remove unused functions"
Dmitry Kovalev [Mon, 17 Mar 2014 18:23:49 +0000 (11:23 -0700)]
Merge "Cleaning up vp9_diamond_search_sad_c & vp9_diamond_search_sadx4."
hkuang [Fri, 14 Mar 2014 22:31:49 +0000 (15:31 -0700)]
Fix the md5 mismatch for some scale cases.
Fixes issue #731
Change-Id: Id313e84b8fb4ff20f6a4e1ed11cb601927888318
Alex Converse [Mon, 17 Mar 2014 17:39:37 +0000 (10:39 -0700)]
Remove non-420 configure option.
Change-Id: Ic130a77cb77c780bea9d5a3fc7c7dccd3c77f0dd
Vignesh Venkatasubramanian [Mon, 17 Mar 2014 17:06:49 +0000 (10:06 -0700)]
Merge "Adding a configure flag to control WebM container support"
Martin Storsjo [Mon, 17 Mar 2014 10:21:31 +0000 (12:21 +0200)]
thumb: Clarify a comment about the conversions that are done
The comment made it look like the condition code was dropped from
the extra add instruction, while it actually was handled properly.
Thus, the comment was misleading while the code itself did the right
thing.
Also clarify the comment indicating that we use the full three-operand
form of the add instruction.
Change-Id: I2c1ac6ac4fedf262d104ea30a6c005febc74de9c
James Zern [Sat, 15 Mar 2014 01:37:20 +0000 (18:37 -0700)]
tokenize: quiet -Warray-bounds warnings
eob is limited by GetCoeffs
Change-Id: Ie5c0d024796fe6c9b2db0374892544e421bd5d09
James Zern [Sat, 15 Mar 2014 01:37:20 +0000 (18:37 -0700)]
rdopt: quiet -Warray-bounds warnings
eob is limited by GetCoeffs
Change-Id: Id48a92e600375a1d4fb956757c93c91ebb5df59a
James Zern [Sat, 15 Mar 2014 01:37:20 +0000 (18:37 -0700)]
onyx_if: quiet -Warray-bounds warnings
'number_of_layers' is range checked before assignment from the user
config.
Change-Id: Idefdaceb8736f126fa7c647da2b047dafb56ea52
James Zern [Sat, 15 Mar 2014 01:37:20 +0000 (18:37 -0700)]
svc_encodeframe: quiet -Warray-bounds warnings
si->layers is validated prior to assignment; add an assertion prior to
first use as a loop bound
Change-Id: I727d4e24be3c352c3e5320d92e89d3f787944812
Jingning Han [Sat, 15 Mar 2014 00:10:32 +0000 (17:10 -0700)]
Add bit-stream write flag to nonrd_use_partition
This is for the purpose to test variable partition choices for the
same 64x64 block.
Change-Id: I0fab7351a62e7d3dfccd667e908bccb996ee677e
hkuang [Wed, 12 Mar 2014 18:22:49 +0000 (11:22 -0700)]
Remove the vp8_vpxyv12_copy_y_neon.
vp8_vpxyv12_copy_y_neon is slower than vp8_vpxyv12_copy_y_c.
Change-Id: I7ba860619dc0714d700f232242ce915620461587
Yunqing Wang [Fri, 14 Mar 2014 22:02:48 +0000 (15:02 -0700)]
Calculate rate_mv after sub-pixel search in non-rd mode
Modified the non-rd rate_mv calculation and moved it after sub-pixel
motion search is done.
Change-Id: I6a5cbd3d67ff0a86b3693e25ecf1fd77b16d708c
Yaowu Xu [Fri, 14 Mar 2014 22:43:24 +0000 (15:43 -0700)]
Remove unused functions
Change-Id: Iec885af58c95e65814fcb6ab528ce4e0874eb573
James Zern [Fri, 14 Mar 2014 22:27:00 +0000 (15:27 -0700)]
Merge "y4minput: add some tolerance for read short counts"
Vignesh Venkatasubramanian [Fri, 14 Mar 2014 15:10:35 +0000 (08:10 -0700)]
Adding a configure flag to control WebM container support
Adding a --(enable|disable)-webm-io flag to control WebM container input and
output support. For now, enabling WebM IO by default only when there is a C++
compiler. Doing so because eventually we will move WebM IO to libwebm and it
is built using C++.
Change-Id: I210ac36c23528e382ed41d3c4322291720481492
Jingning Han [Fri, 14 Mar 2014 21:31:25 +0000 (14:31 -0700)]
Merge "Properly reset the block coding skip flag array in non-RD mode"
Yaowu Xu [Fri, 14 Mar 2014 20:27:32 +0000 (13:27 -0700)]
Merge "change to save rdmult value correctly"
Jingning Han [Fri, 14 Mar 2014 19:07:21 +0000 (12:07 -0700)]
Properly reset the block coding skip flag array in non-RD mode
The block coding skip flags are assigned in the normal RD mode
decision loop. They are then used in the final encoding stage.
In the non-RD mode decision, the forward transform and quantization
stages are replaced by modeling based on SSE and variance of
prediction residues. This commit applies reset to this array in
the non-RD coding mode.
Change-Id: I66584669b035e9c8ac23e95047849ff277472742
Yaowu Xu [Fri, 14 Mar 2014 18:48:09 +0000 (11:48 -0700)]
Merge "Use of inline instead of INLINE."
Yaowu Xu [Fri, 14 Mar 2014 18:03:58 +0000 (11:03 -0700)]
change to save rdmult value correctly
This commit moves the position where rdmult is saved to make sure it
is the correct value. Prior, an uninitialized value may be saved and
restored.
This addresses issue:
https://code.google.com/p/webm/issues/detail?id=733
Change-Id: I436407f289169bc63da3c5a6bf609bed16cb71b5
Jingning Han [Fri, 14 Mar 2014 16:06:11 +0000 (09:06 -0700)]
Merge "Remove deprecated function nonrd_use_fixed_partition"
Jingning Han [Fri, 14 Mar 2014 16:06:03 +0000 (09:06 -0700)]
Merge "Remove unused comment"
Jingning Han [Fri, 14 Mar 2014 16:05:54 +0000 (09:05 -0700)]
Merge "Refactor the non-RD partition decision process"
Jingning Han [Fri, 14 Mar 2014 16:05:41 +0000 (09:05 -0700)]
Merge "Unify non-RD partition use cases"
Jingning Han [Fri, 14 Mar 2014 16:05:32 +0000 (09:05 -0700)]
Merge "Return rate and distortion cost values from non-RD mode decision"
Paul Wilkins [Fri, 14 Mar 2014 11:36:06 +0000 (11:36 +0000)]
Use of inline instead of INLINE.
This causes a build failure in VS 2008.
Change-Id: I03b0c0c006589b56d92a238d7b794711eb62575e
Dmitry Kovalev [Fri, 14 Mar 2014 00:47:27 +0000 (17:47 -0700)]
Merge "Adding vp9_swap_mi_and_prev_mi() function."
Dmitry Kovalev [Fri, 14 Mar 2014 00:47:14 +0000 (17:47 -0700)]
Merge "Using MB_PREDICTION_MODE enum instead of int."
Jingning Han [Thu, 13 Mar 2014 23:13:07 +0000 (16:13 -0700)]
Remove deprecated function nonrd_use_fixed_partition
This function was subsumed by nonrd_use_partition, hence removed.
Change-Id: Id36757bc600ce6cf6ca03ad5df80268c4786d386
Jingning Han [Thu, 13 Mar 2014 23:03:48 +0000 (16:03 -0700)]
Remove unused comment
Change-Id: I12ce22c036b12073a45b762d4dd38f6ec4960e56