Alex Converse [Wed, 19 Mar 2014 00:00:30 +0000 (17:00 -0700)]
Don't subpartion inactive area in rd_use_partition.
Change-Id: I50db8d3c99eea39e46cc5876cb1f49513c084073
Alex Converse [Fri, 21 Mar 2014 21:24:03 +0000 (14:24 -0700)]
Deduplicate and rename mode info step.
Change-Id: Ie624a119ce8e0891f4ca396040d679e22ef8ce27
Jim Bankoski [Mon, 24 Mar 2014 18:08:27 +0000 (11:08 -0700)]
Merge "refactor reset_skip_txfm_size and elimate a lot of code"
Jim Bankoski [Mon, 24 Mar 2014 18:07:53 +0000 (11:07 -0700)]
Merge "vp9_onyx_int.h convert header statics to inline"
Marco Paniconi [Mon, 24 Mar 2014 17:54:52 +0000 (10:54 -0700)]
Merge "Fix to a static warning."
Minghai Shang [Mon, 24 Mar 2014 17:54:06 +0000 (10:54 -0700)]
Merge "[svc] Add min/max q and min/max bitrate in svc test app"
Yunqing Wang [Mon, 24 Mar 2014 17:52:32 +0000 (10:52 -0700)]
Merge "AVX2 SAD Optimization:"
Marco Paniconi [Mon, 24 Mar 2014 16:31:17 +0000 (09:31 -0700)]
Fix to a static warning.
Change-Id: I398decf319c8f4d1b3abe1f276e009840e61b684
Dmitry Kovalev [Mon, 24 Mar 2014 16:27:06 +0000 (09:27 -0700)]
Merge "Removing unused members from VP9D_CONFIG struct."
Jim Bankoski [Mon, 24 Mar 2014 16:26:20 +0000 (09:26 -0700)]
vp9_onyx_int.h convert header statics to inline
Change-Id: I7872b726511887494107466a946e2b34e3d74045
Dmitry Kovalev [Mon, 24 Mar 2014 16:02:06 +0000 (09:02 -0700)]
Merge "Cleaning up vp9_loopfilter.c."
Jim Bankoski [Mon, 24 Mar 2014 15:51:45 +0000 (08:51 -0700)]
refactor reset_skip_txfm_size and elimate a lot of code
Change-Id: Id70bd0ff8836c28d9c8653e018e071ca9fb06610
Jim Bankoski [Tue, 11 Mar 2014 16:28:45 +0000 (09:28 -0700)]
vp9_block.h static reconverted to inline
Change-Id: I0e7d2815839d8a64250116a5486570d03659a4c0
Dmitry Kovalev [Sun, 23 Mar 2014 05:31:48 +0000 (22:31 -0700)]
Merge "Removing redundant {above, left}_seg_context manipulation code."
Dmitry Kovalev [Sun, 23 Mar 2014 05:31:38 +0000 (22:31 -0700)]
Merge "Removing output_partition from vp9."
Jingning Han [Sat, 22 Mar 2014 04:43:02 +0000 (21:43 -0700)]
Merge "Reformat non-RD coding flow"
Dmitry Kovalev [Sat, 22 Mar 2014 04:19:31 +0000 (21:19 -0700)]
Merge "Convert use_fast_lpf_pick to an enum."
Dmitry Kovalev [Sat, 22 Mar 2014 04:19:18 +0000 (21:19 -0700)]
Merge "Renaming and making vp9_update_mode_info_border() static."
Dmitry Kovalev [Sat, 22 Mar 2014 01:33:20 +0000 (18:33 -0700)]
Merge "Cleaning up vp9_svc_layercontext.c"
Minghai Shang [Fri, 14 Mar 2014 18:57:51 +0000 (11:57 -0700)]
[svc] Add min/max q and min/max bitrate in svc test app
Change-Id: I67ea45119f23659279d24aa67eb823c751ac86fc
Marco Paniconi [Sat, 22 Mar 2014 00:17:53 +0000 (17:17 -0700)]
Merge "Rename the aq_mode files."
Jingning Han [Thu, 20 Mar 2014 21:06:54 +0000 (14:06 -0700)]
Reformat non-RD coding flow
This commit reformats non-RD coding flow layout to allow mode
decision with fixed and variable block sizes.
Change-Id: I2cdd3bb9f26c499ee4a9849004fd925cdd195d09
Dmitry Kovalev [Fri, 21 Mar 2014 23:31:15 +0000 (16:31 -0700)]
Cleaning up vp9_loopfilter.c.
Change-Id: I7c7cf7d3c7b00d1c74ffa8aa8fb8d78a0e48326f
Dmitry Kovalev [Fri, 21 Mar 2014 23:10:51 +0000 (16:10 -0700)]
Removing output_partition from vp9.
Change-Id: I5e0c558b86cf300722ab34fa45ab4ad7c81bd4df
Frank Galligan [Fri, 21 Mar 2014 22:24:39 +0000 (15:24 -0700)]
Merge "Fix libvpx VP9 decoder dr memory errors"
Marco Paniconi [Fri, 21 Mar 2014 21:31:53 +0000 (14:31 -0700)]
Rename the aq_mode files.
Change-Id: Id76a628495c822e23825b66a7589b4a3279680e2
Alex Converse [Fri, 21 Mar 2014 21:59:26 +0000 (14:59 -0700)]
Convert use_fast_lpf_pick to an enum.
Change-Id: I06e17b489dea74dedea356c73ef72dc5ffad3a30
Dmitry Kovalev [Fri, 21 Mar 2014 21:08:19 +0000 (14:08 -0700)]
Removing unused members from VP9D_CONFIG struct.
Change-Id: I83a201ab4dcf2f00131f2030f382c6dbfcb39d7e
Dmitry Kovalev [Fri, 21 Mar 2014 21:03:49 +0000 (14:03 -0700)]
Merge "Tiny vp9_picklpf.c cleanup."
Dmitry Kovalev [Fri, 21 Mar 2014 21:02:25 +0000 (14:02 -0700)]
Renaming and making vp9_update_mode_info_border() static.
Change-Id: Ibb72a29cae9ca9443aae56fc4c5458d190eae279
Dmitry Kovalev [Fri, 21 Mar 2014 20:56:15 +0000 (13:56 -0700)]
Cleaning up vp9_svc_layercontext.c
Change-Id: I7c94b02f621ccc1a738b0d52edf60e9012cfc014
levytamar82 [Thu, 13 Mar 2014 21:47:30 +0000 (14:47 -0700)]
AVX2 SAD Optimization:
2 functions were optimized for avx2 by using full 256 bit register
In order to handle 32 elements in parallel instead of only 16 in parallel:
1. vp9_sad32x32x4d
2. vp9_sad64x64x4d
The function level gain is 66% and the user level gain is ~1%.
Change-Id: I4efbb3bc7d8bc03b64b6c98f5cd5c4a9dd3212cb
Yunqing Wang [Fri, 21 Mar 2014 20:40:27 +0000 (13:40 -0700)]
Merge "Add prediction mode skipping in non-rd situation"
Dmitry Kovalev [Fri, 21 Mar 2014 20:23:18 +0000 (13:23 -0700)]
Merge "Cleaning up vp9_mcomp.c."
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 19:13:44 +0000 (12:13 -0700)]
Merge "Fix bad speed settings interaction."
Dmitry Kovalev [Fri, 21 Mar 2014 19:12:55 +0000 (12:12 -0700)]
Removing redundant {above, left}_seg_context manipulation code.
Change-Id: Ib3c1746e61220c629cbd971b2458aa686b5c9e36
Dmitry Kovalev [Fri, 21 Mar 2014 19:02:42 +0000 (12:02 -0700)]
Merge "Reusing {above, left}_seg_context vars in both encoder and decoder."
Dmitry Kovalev [Fri, 21 Mar 2014 19:01:25 +0000 (12:01 -0700)]
Merge "Removing source & source_sz from VP9Decompressor struct."
Dmitry Kovalev [Fri, 21 Mar 2014 19:00:26 +0000 (12:00 -0700)]
Tiny vp9_picklpf.c cleanup.
Change-Id: I1804c3629c3df2b67438e87196ab35fafaddaa24
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
Yunqing Wang [Wed, 19 Mar 2014 18:52:13 +0000 (11:52 -0700)]
Add prediction mode skipping in non-rd situation
In non-rd pick_mode code, added mode skipping according to
thresholds. Used rd thresholds now, but we can modified them
later for real-time case.
RTC set borg test showed a 0.095% PSNR gain. For different rtc
clips, the real-time(speed 7) encoder speedup is 2% - 10%.
Change-Id: Ic72535c96b891092c662453be32d3168f7e34dcc
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
Paul Wilkins [Thu, 20 Mar 2014 15:16:35 +0000 (15:16 +0000)]
Fix bad speed settings interaction.
The flag x->skip_recode interacts badly with
the cpi->sf.use_nonrd_pick_mode and
cpi->sf.skip_encode_sb speed settings.
Restricting the use of the skip_decode flag when
these other speed choices are in use helps quality
for speeds 3 and 4 by a large amount with only a
small impact on speed.
Average improvmentes for 2 pass speed 4:
Derf +8.8%
Yt + 10.53%
Std-Hd +6.95%
yt-hd + 22.95%
Change-Id: I8010876d8012042a11077c92e69d813c3dfa58eb
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
Dmitry Kovalev [Thu, 20 Mar 2014 23:08:54 +0000 (16:08 -0700)]
Reusing {above, left}_seg_context vars in both encoder and decoder.
Change-Id: Id1fa36c92cb007b73a450cc8552e810cedad38b9
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 22:01:37 +0000 (15:01 -0700)]
Removing source & source_sz from VP9Decompressor struct.
Change-Id: If4c1a48c60e8b27dd021a83170289ccc5467c6de
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