Commit Graph

8640 Commits

Author SHA1 Message Date
Jingning Han
fd49e9678e Use dedicated variables to store the best mode
Use a set of dedicated variables to buffer the current best mode
in non-RD mode decision. This allows to use mode_info for more
complicated test in the non-RD process.

Change-Id: I6024c9feb0662afd3eb29f7017f7b5a5446f303f
2014-02-25 13:56:12 -08:00
Deb Mukherjee
276e568997 Merge "Adds variance based fixed size partitioning" 2014-02-25 13:46:21 -08:00
Deb Mukherjee
10bae82510 Adds variance based fixed size partitioning
Adds a method for determining a fixed size partition based on
variance of a 64x64 SB. This method is added to rtc speed 6.
Also fixes a bug in rtc_use_partition() and includes some
refactoring related to partitioning search, and some cosmetics.

Currently compared to speed 5, the coding efficiency of speed 6
is -19% and that of speed 7 is -55%, in cbr mode.

Change-Id: I057e04125a8b765906bb7d4bf7a36d1e575de7c6
2014-02-25 12:20:59 -08:00
Dmitry Kovalev
4632a96d97 Merge "Using vp9_subtract_plane instead of vp9_subtract_{sb, sby, sbuv}." 2014-02-25 11:06:05 -08:00
Dmitry Kovalev
8fc8583a4c Merge "Consistent names for reference_mode functions." 2014-02-25 11:04:37 -08:00
Dmitry Kovalev
7bca32a6a3 Merge "Changing vp9_full_search_sad{, x3, x8} signatures." 2014-02-25 10:51:17 -08:00
Dmitry Kovalev
55214924ac Merge "Cleaning up vp9_refining_search_sad() function." 2014-02-25 10:44:19 -08:00
Tom Finegan
008ef8dd0d Merge "Change dx_time data type in vpxdec.c" 2014-02-25 09:44:31 -08:00
Adrian Grange
da6b224e3c Merge "Trap request to display non-existant frame" 2014-02-25 08:48:14 -08:00
Yunqing Wang
da47b3415b Merge "Disable adaptive pred filter for non-split mode" 2014-02-25 08:28:03 -08:00
Yaowu Xu
b67bd637e0 Merge changes I7e96d619,I9a7631d5
* changes:
  normalize int64_t high value to INT64_MAX
  resolve issue with arm code failing unit test
2014-02-25 08:22:49 -08:00
Jim Bankoski
ec55dd1007 normalize int64_t high value to INT64_MAX
Change-Id: I7e96d6199f882d35357f6a9a08c04ad0af5dc26e
2014-02-25 07:29:48 -08:00
Jim Bankoski
df9c8d5bd9 resolve issue with arm code failing unit test
The optimizer did something funny with the code around
line 1412.  Before the call to encode_sb split_dist was
set properly but after it was adjusted and converted to
a negative.

https://code.google.com/p/webm/issues/detail?id=714

Change-Id: I9a7631d5325ade2dc28c1030653a23eecec8721b
2014-02-24 17:34:27 -08:00
James Yu
6d15132742 Change dx_time data type in vpxdec.c
Change dx_time data type to int64_t to prevent
test time overflow when decoding long video.

Change-Id: I3dd5e324a246843e07e635fd25c50e71e385ed70
Signed-off-by: James Yu <james.yu@linaro.org>
2014-02-25 09:17:06 +08:00
Marco Paniconi
c30cc9f2e4 vpx_temporal_scalable_patterns: fix to encoding_bitrate computation.
Change-Id: I56fcb82c4334c7591b765b55b3c2912778af6db5
2014-02-24 15:37:22 -08:00
Yunqing Wang
fee045d13a Disable adaptive pred filter for non-split mode
If sf->disable_split_mask is DISABLE_ALL_SPLIT, disable
sf->adaptive_pred_interp_filter to avoid unnecessary operations.

Change-Id: Icb59174b2f4e9a3c3c16a696deb8018e5bd999eb
2014-02-24 14:05:06 -08:00
Deb Mukherjee
8cc54d576f Merge "Adds an intermediate speed level for rtc" 2014-02-24 13:35:56 -08:00
Deb Mukherjee
5f542408b4 Adds an intermediate speed level for rtc
Moves the existing speed 6 to speed 7 and adds an
intermediate level 6 which is roughly in between
speeds 6 and 7 in both speed and coding efficiency.
Also includes some minor fixes/adjustments.

Change-Id: I98befc4d82d750e79fe426c457c4a2571f6b6cc7
2014-02-24 12:15:33 -08:00
Adrian Grange
709fecac83 Trap request to display non-existant frame
If show_existing_frame indicates that the decoder should
display an existing (previously decoded) frame, add a
check to make sure that the signaled buffer does contain
a valid decoded frame.

Change-Id: Iac8c686b321827414d69a3f2d0467566911bcba2
2014-02-24 10:19:31 -08:00
Yaowu Xu
05e850cb9e added clamp of segment loop filter level
for ABSDATA mode, so segment loop filter level always fall in valid
range for both Absolute and delta modes.

Change-Id: If90df3411479533dbdab63f8ae088d2f5dd174a9
2014-02-24 09:56:48 -08:00
Yaowu Xu
bfaf415ea7 Merge "Added clamp of qindex to valid range" 2014-02-24 08:28:07 -08:00
James Zern
6859d0f0d0 fix vs9 build after obj_int_extract changes
broken since:
1d3ca08 obj_int_extract.bat: Pass obj_int_extract.exe path to obj_int_extract.bat.

Change-Id: Ic3de9f8c2b604e3aa9b905e1bc0b578963e01a4a
2014-02-23 16:08:00 -08:00
Dmitry Kovalev
092f32cf78 Merge "Combining if-else branches from different conditions." 2014-02-23 08:28:43 -08:00
Dmitry Kovalev
2aacc66b66 Merge "Cleaning up vp9_mvref_common.{h, c}." 2014-02-23 08:25:40 -08:00
Yaowu Xu
e22b12e304 Added clamp of qindex to valid range
The qindex for a segment was not clamped in ABSDATA mode, which may
cause invalid memory access if an ill-formed stream has a negative
value in ABSDATA mode. This commit added clamp to make sure qindex
for a segment always fall into valid range.

Change-Id: I0a74d00f4ef40aec7edaeca1d03c8645e23ab08c
2014-02-22 12:30:18 -08:00
Jingning Han
4b3e44f91d Merge "Periodically update mode and mv costs" 2014-02-22 11:54:20 -08:00
James Zern
8e3ef6c0e1 Merge "move nestegg to third_party" 2014-02-22 11:43:37 -08:00
James Zern
dd18536563 Merge "gen_msvs_vcxproj.sh: Set TargetName instead of OutputFile." 2014-02-22 11:08:39 -08:00
James Zern
8ec2d6eb5a Merge "tests: enable datarate_test based on CONFIG_ENCODERS" 2014-02-22 10:16:25 -08:00
Yaowu Xu
5a7ac03b9e Changed a constant array to static const type
Change-Id: I5b3918441f63ceb7889dcf546e9a2d781be4a3cb
2014-02-21 22:44:13 -08:00
Yaowu Xu
f1633e5844 Merge "Remove an unused variable" 2014-02-21 22:44:05 -08:00
James Zern
b4262c6cc5 tests: enable datarate_test based on CONFIG_ENCODERS
not just CONFIG_VP8_ENCODER; there's now VP9 code in the same file

Change-Id: I73d8b9141af1374b37480fb0495e17a7952eb4f9
2014-02-21 18:33:09 -08:00
Jingning Han
836252bfa6 Periodically update mode and mv costs
Skip coefficient cost update in non-RD mode decision setting. Allow
periodical mode and motion vector cost update. Currently every other
8 frames. The increment runtime is a constant number. Hence more
visible for CIF resolution, while negligible for 1080p.

Speed -6 compression performance for rtc set is improved by 4.5%.

Change-Id: I27e0ad7c521fcc2af1d825582cbdd1a27ac4c323
2014-02-21 18:25:43 -08:00
James Zern
64548b6451 update gitignore
- update example paths
- add a few missing generated rtcd, dox files
+ sort

Change-Id: I7f4fbf53972d247e96f9c741ff039d244ceb6b2e
2014-02-21 18:11:29 -08:00
James Zern
20eb5cb653 move vp9_spatial_scalable_encoder.c to examples/
Change-Id: Id5c889cb87ad33a21d83a415a23e957e8ee3218f
2014-02-21 17:57:27 -08:00
Jingning Han
ba9b4b81be Merge "Refactor selected partition size coding for rtc" 2014-02-21 17:41:32 -08:00
James Zern
bb3b9aa93f move nestegg to third_party
Change-Id: Idf58109195a88dec66c5e1ea6a51c61e6c659ff1
2014-02-21 17:16:04 -08:00
James Zern
a0f0655b5e Merge "update nestegg" 2014-02-21 17:15:16 -08:00
James Zern
0ccb203500 Merge "vp8cx.h: add brief desc. for VP9E_SET_SVC_LAYER_ID" 2014-02-21 15:49:11 -08:00
Alex Converse
a8e1d66b68 Merge "Stop gating non420 features with a configure flag." 2014-02-21 15:45:38 -08:00
Alex Converse
bc28ee7bb1 Merge "Require an --experimental-bitstream flag at runtime for encoding profile 1." 2014-02-21 15:45:33 -08:00
Jingning Han
1fc0bde675 Refactor selected partition size coding for rtc
This commit makes a refactoring of the rtc_use_partition. It allows
the encoder to take a preferred block size for non-RD mode decision.
The boundary blocks are handled such that smaller block sizes that
fit in the boundary size will be used instread.

In rtc mode, the coding performance of speed -6 for pedestrian_1080p
goes from
158980 b/f, 38.934 dB, 22721 ms to
159008 b/f, 40.064 dB, 23721 ms.

For rtc set, the speed -6 compression performance is improved by
26%. Still about 2dB behind speed -5 at this point.

Change-Id: If0944f0880eaf1ad340bc325d97cea8d0f9dd53f
2014-02-21 14:49:57 -08:00
Yaowu Xu
67a1bff91d Merge "vp9_rd_pick_inter_mode_sb() reorganization" 2014-02-21 12:06:31 -08:00
Alex Converse
6e3cf6ec1d Stop gating non420 features with a configure flag.
Change-Id: I8cc38fdef6a2a0968af8dfe15e7c2b3c46c531ea
2014-02-21 12:05:29 -08:00
Alex Converse
d66bd22526 Require an --experimental-bitstream flag at runtime for encoding profile 1.
Change-Id: I73865bbbf6ea74434f15b73783ae97b4d273be80
2014-02-21 12:04:57 -08:00
James Zern
cc6117d0f3 update nestegg
+ prune some unused files

https://github.com/kinetiknz/nestegg.git

commit f46223191d8116a36bf299b5b9793fcb798417b1
Merge: 0851279 4b0190a
Author:     Matthew Gregan <kinetik@flim.org>
AuthorDate: Wed Nov 27 13:50:43 2013 -0800
Commit:     Matthew Gregan <kinetik@flim.org>
CommitDate: Wed Nov 27 13:50:43 2013 -0800

    Merge pull request #15 from shadone/master

    Fix compiler warning.

Change-Id: I59eecdd68fced1ef61b67d446735539628d81484
2014-02-21 11:50:01 -08:00
James Zern
53a11c9ce7 vp8cx.h: add brief desc. for VP9E_SET_SVC_LAYER_ID
fixes doxygen warning related to vpx_svc_layer_id

Change-Id: I365688133c1598182488501158de6af4b0f4c546
2014-02-20 23:19:07 -08:00
Tom Finegan
1d3ca088f6 obj_int_extract.bat: Pass obj_int_extract.exe path to obj_int_extract.bat.
- Update the vcxproj generator to pass the path to the batch file.
- Update the batch file the take the path to obj_int_extract.exe as arg
  2.

Fixes this warning:
warning MSB8012: TargetPath does not match Linker's OutputFile property
value.

Change-Id: I5825f1d1d79f370aeb295bbd2aeb08b22c0e73ab
2014-02-20 22:20:58 -08:00
Yaowu Xu
6c714bdbcd Merge "Enable reduced set of intra modes in rtc coding" 2014-02-20 21:11:10 -08:00
Adrian Grange
b27207cf63 Merge "Added three test vectors with droppable frames" 2014-02-20 18:29:59 -08:00