Граф коммитов

38 Коммитов

Автор SHA1 Сообщение Дата
Yaowu Xu 2ab7ff05f1 Change to use AOM copyright notice
Change-Id: I2b2b70e756b7eb9611b7b33b7d5f19b3b30e0a50
2016-09-02 19:52:03 +00:00
Yaowu Xu f883b42cab Port renaming changes from AOMedia
Cherry-Picked the following commits:
0defd8f Changed "WebM" to "AOMedia" & "webm" to "aomedia"
54e6676 Replace "VPx" by "AVx"
5082a36 Change "Vpx" to "Avx"
7df44f1 Replace "Vp9" w/ "Av1"
967f722 Remove kVp9CodecId
828f30c Change "Vp8" to "AOM"
030b5ff AUTHORS regenerated
2524cae Add ref-mv experimental flag
016762b Change copyright notice to AOMedia form
81e5526 Replace vp9 w/ av1
9b94565 Add missing files
fa8ca9f Change "vp9" to "av1"
ec838b7  Convert "vp8" to "aom"
80edfa0 Change "VP9" to "AV1"
d1a11fb Change "vp8" to "aom"
7b58251 Point to WebM test data
dd1a5c8 Replace "VP8" with "AOM"
ff00fc0 Change "VPX" to "AOM"
01dee0b Change "vp10" to "av1" in source code
cebe6f0 Convert "vpx" to "aom"
17b0567 rename vp10*.mk to av1_*.mk
fe5f8a8 rename files vp10_* to av1_*

Change-Id: I6fc3d18eb11fc171e46140c836ad5339cf6c9419
2016-08-31 18:19:03 -07:00
Yaowu Xu c27fc14b02 Port folder renaming changes from AOM
Manually cherry-picked commits:
ceef058 libvpx->libaom part2
3d26d91 libvpx -> libaom
cfea7dd vp10/ -> av1/
3a8eff7 Fix a build issue for a test
bf4202e Rename vpx to aom

Change-Id: I1b0eb5a40796e3aaf41c58984b4229a439a597dc
2016-08-31 17:26:24 -07:00
clang-format 3a826f1d3d test/: apply clang-format
Change-Id: I1138fbeff5f63beb5c0de2c357793da12502d453
2016-08-12 12:40:41 -07:00
James Zern cc73e1fcd4 remove SVC
spatial/temporal scalability are not supported in VP10 currently.
+ remove the unused vp10/encoder/skin_detection.[hc]

this also enables DatarateTestLarge for VP10 which passes with no
experiments enabled. these were removed previously when only the SVC
tests should have been:
134710a Disable tests not applicable to VP10

Change-Id: I9ee7a0dd5ad3d8cc1e8fd5f0a90260fa43da387c
2016-08-09 18:42:20 -07:00
Yaowu Xu 3fa28d51af More vp8/vp9 clean up
Change-Id: I8101de20e873c19d03c7fd2977bc22003e395807
2016-07-28 18:22:47 -07:00
Yaowu Xu 7c514e2dfd Merged branch 'master' into nextgenv2
Resolved Conflicts in the following files:
        configure
        vp10/common/idct.c
        vp10/encoder/dct.c
        vp10/encoder/encodemb.c
        vp10/encoder/rdopt.c

Change-Id: I4cb3986b0b80de65c722ca29d53a0a57f5a94316
2015-09-29 16:17:32 -07:00
Jingning Han 3ee6db6c81 Fork VP9 and VP10 codebase
This commit folks the VP9 and VP10 codebase and makes libvpx
support VP8, VP9, and VP10.

Change-Id: I81782e0b809acb3c9844bee8c8ec8f4d5e8fa356
2015-08-11 17:05:28 -07:00
Jingning Han 097d59c28c Cosmetics - Fix header file order in unit tests
Change-Id: I9582a8d74990125b71e8fe620f7f3f2585a30798
2015-07-29 20:48:25 -07:00
Marco c139b81a13 Vidyo patch: Rate control for SVC, 1 pass CBR mode.
-Make Rate control work for SVC 1 pass CBR mode.
-Added temporal layering mode.
-Fixed bug in non-rd variance partition.
-Modified/updated the sample encoders (vp9_spatial_svc_encoder, vpx_temporal_svc_encoder).
-Added datarate unittest(s) for 1 pass CBR SVC.

Change-Id: Ie94b1b68a56ea1267b5087c625e5df04def2ee48
2015-06-02 07:54:13 -07:00
Frank Galligan 45f9ee263f Fix multithread encode test
The multithread encode test was never actually setting more than
one thread.

Change-Id: Ie7a3b7b138e88344c943bffd544cf2b4aab866a9
2015-04-16 14:20:18 -07:00
Alex Converse 797a2556eb Allow larger encoder configurations.
Allow changing colorspace in the encoder and increasing frame size.

Change-Id: I8e7c3b891af29ce420a15beb4f6f9c250245b2bb
2015-01-29 15:07:40 -08:00
Yunqing Wang 3666478195 Improve the libvpx encoder test driver
The encoder initialization is called in EncodeFrame(). Therefore,
in the unit tests, the set control is done when video->frame() is 1.
This didn't cause problem since current tests mainly test lag_frame
> 0 case, or no encoding option that needs to allocate memory before
1st frame is used. If use lag_frame = 0 and encoding multiple tiles,
the unit tests crash. The issue is fixed by doing the initialization
before encoding frames.

Change-Id: I43102048f88448bcf27e9c60e0ec06c176b02e5c
2014-12-17 08:49:46 -08:00
hkuang 9353607ac8 Fix a bug that break the vp8 fragment decoder.
(issue #882).

Change-Id: I2ca7f96d390c4eaec0473c50cb01b903d0bd3ee6
2014-12-12 16:44:14 -08:00
Jim Bankoski be7a285820 Make the decoder Cfg available to encoder tests..
Adds decoder config as a changeable parameter to unit tests, and
changes end to end test to use commonly used parameters to enable
base test of tiles encoding and frame parallel decoding.

Change-Id: I5d23a6857303b4d68b92b15c3f2f04a1bcb4c2bb
2014-12-07 11:28:51 -08:00
James Zern cae810ac5e encode_test_driver.h: remove unused param warnings
in EncoderTest default implementations

Change-Id: I3e29d8d2a834fece87aab35813b5e275a30c32fd
2014-08-22 12:12:41 -07:00
Jim Bankoski 943e43273b allow config options to limit max size of decode
This is a practical concern to allow us to fail in a decoder instance
if the size of a file is bigger than we can reasonably handle.

Change-Id: I0446b5502b1f8a48408107648ff2a8d187dca393
2014-07-17 07:07:48 -07:00
Alex Converse a56546961a Add an active map test.
Change-Id: I641a75dd75cd3c53a20eb4dbceb7a9b70a5a0e4d
2014-03-12 14:34:34 -07:00
Marco Paniconi 4864ab21b0 Layer based rate control for CBR mode.
This patch adds a buffer-based rate control for temporal layers,
under CBR mode.

Added vpx_temporal_scalable_patters.c encoder for testing temporal
layers, for both vp9 and vp8 (replaces the old vp8_scalable_patterns).

Updated datarate unittest with tests for temporal layer rate-targeting.

Change-Id: I8900a854288b9354d9c697cfeb0243a9fd6790b1
2014-02-06 09:24:45 -08:00
Marco Paniconi 7ec838edc4 Revert "Layer based rate control for CBR mode."
This reverts commit 6be2b750b8

Change-Id: Ic52acd98b37c3ba49d4999b463389eb564f49c4b
2014-02-03 12:28:32 -08:00
Marco Paniconi 6be2b750b8 Layer based rate control for CBR mode.
This patch adds a buffer-based rate control for temporal layers,
under CBR mode.

Added vpx_temporal_scalable_patters.c encoder for testing temporal
layers, for both vp9 and vp8 (replaces the old vp8_scalable_patterns).

Updated datarate unittest with tests for temporal layer rate-targeting.

Change-Id: I9cb6cce2494390ae6096ee17774af7fb9308bde7
2014-02-02 14:30:43 -08:00
James Zern 4a703576f7 remove duplicate const from vpx_codec_iface_t use
the public typedef already includes a const, quiets
'same type qualifier used more than once' warnings

Change-Id: Ib118b3b116fba59d4c6ead84d85b26e5d3ed363d
2014-01-31 16:32:42 -08:00
James Zern 1c05e9de2c encode_test_driver: check for fatal failures
Make the base test be:
!(fatal || abort_) removing some redundancy in the encode tests

Change-Id: I8ffaf33fcf9a3030b38ea3e8eb94704cdc2fc920
2013-06-25 17:57:52 -07:00
James Zern 51b7fd0d77 encode_test_driver: make ~Encoder virtual
+ some quick lint fixes

Change-Id: I95b6c32454c17d7fc717f1daa2376eb4d5418ee3
2013-05-03 19:08:08 -07:00
John Koleszar 522d4bf852 Add 'superframe' index
A 'superframe' is a group of frames that share the same PTS, but have a
defined decoding order. This commit adds the ability to append an index
to such a group of frames, allowing for random access to the constituent
frames. This could be useful for frame-level parallelism or partial
decoding in a multilayer scenario.

Decoding the stream serially without such an index should work as a
fallback, and VP9/TestSuperframeIndexIsOptional verifies that.

Change-Id: Idff83b7560e1a7077d8fb067bfbc45b567e78b1c
2013-03-05 12:45:40 -08:00
John Koleszar 88f99f4ec2 Adds a test for the VP8E_SET_SCALEMODE control
Tests that the external interface to set the internal codec scaling
works as expected. Also updates the test to pull the height from
the decoded frame size rather than parsing the keyframe header,
in anticipation of allowing resolution changes on non-keyframes.

Change-Id: I3ed92117d8e5288fbbd1e7b618f2f233d0fe2c17
2013-02-08 12:20:30 -08:00
Deb Mukherjee 01cafaab1d Adds an error-resilient mode with test
Adds an error-resilient mode where frames can be continued
to be decoded even when there are errors (due to network losses)
on a prior frame. Specifically, backward updates are turned off
and probabilities of various symbols are reset to defaults at
the beginning of each frame. Further, the last frame's mvs are
not used for the mv reference list, and the sorting of the
initial list based on search on previous frames is turned off
as well.

Also adds a test where an arbitrary set of frames are skipped
from decoding to simulate errors. The test verifies (1) that if
the error frames are droppable - i.e. frame buffer updates have
been turned off - there are no mismatch errors for the remaining
frames after the error frames; and (2) if the error-frames are non
droppable, there are not only no decoding errors but the mismatch
PSNR between the decoder's version of the post-error frames and the
encoder's version is at least 20 dB.

Change-Id: Ie6e2bcd436b1e8643270356d3a930e8989ff52a5
2013-01-23 21:56:15 -08:00
John Koleszar 706cafe336 Support multiple codecs in test infrastructure
This commit starts to convert the tests to a system where the codec
to be used is provided by a factory object. Currently no tests are
instantiated for VP9 since they all fail for various reasons, but it
was verified that they're called and the correct codec is
instantiated.

Change-Id: Ia7506df2ca3a7651218ba3ca560634f08c9fbdeb
2013-01-23 14:41:33 -08:00
Adrian Grange e6109dbd41 Added handler for PSNR packets to EncoderTest class
Added a virtual function to handle PSNR packets.

Change-Id: Id2a6372c691a14f19bbeed217a93a9df03e81e75
2012-10-03 14:23:47 -07:00
Adrian Grange 4206c6dd01 Add initialization and per frame flag members
Modified EncoderTest class to have separate member variables
for initialization time and per-frame.

Change-Id: I08a1901f8f3ec16e45f96297e08e7f6df0f4aa0b
2012-10-03 14:13:15 -07:00
Adrian Grange 30f58b526d Added Reset method to TwopassStatsStore
The stats buffer needs to be reset between runs of the
encoder. I added a Reset() function to TwopassStatsStore
and called it at the beginning of each encode.

This enables us to run multiple encodes which was
previously not possible since there was no way to reset
the stats between runs.

Change-Id: Iebb18dab83ba9331f009f764cc858609738a27f9
2012-10-03 11:50:54 -07:00
Yaowu Xu c953aeacd4 added encode/decode matching validation to tests
This commit adds the ability of validating matched encoder and
decoder to unit tests.

Change-Id: Ie00d69a42477b6a69b324a6bd134939684f7300b
2012-08-31 13:43:51 -07:00
James Zern 51ebb9a396 EncoderTest: check that timestamps are monotonic
Change-Id: I813fa94c83df6282f382b24bbaccb1fe2fa94276
2012-08-08 14:16:08 -07:00
John Koleszar 336ca9a43a Merge "keyframe_test: use a fixed speed step for realtime" 2012-08-08 11:23:49 -07:00
Johann a9cb6f6918 Remove unused macros
Also available in util.h

Change-Id: I4745d72f57c11c55772d3bf0ef15c09bd86eb5bf
2012-07-20 11:45:23 -07:00
John Koleszar 606ac45b2f keyframe_test: use a fixed speed step for realtime
The lower complexity modes may not generate a keyframe automatically.
This behavior was found when running under Valgrind, as the slow
performance caused the speed selection to pick lower complexities than
when running natively. Instead, use a fixed complexity for the
realtime auto keyframe test.

Affected tests:
  AllModes/KeyframeTest.TestAutoKeyframe/0

Change-Id: I44e3f44e125ad587c293ab5ece29511d7023be9b
2012-07-10 15:46:53 -07:00
John Koleszar 2fb29ff7f9 Add external resize tests
Adds a test that ensures the application is able to trigger frame size
changes via vpx_codec_enc_config_set()

Change-Id: I231c062e533d75c8d63c5f8a5544650117429a63
2012-05-24 09:38:39 -07:00
John Koleszar b9180fc049 Add initial keyframe tests
Implements a couple simple tests of the encoder API using the gtest
framework:

  TestDisableKeyframes
  TestForceKeyframe
  TestKeyframeMaxDistance

Change-Id: I38e93fe242fbeb30bb11b23ac12de8ddc291a28d
2012-05-22 15:08:11 -07:00