Index: media/ffmpeg/ffmpeg_regression_tests.cc |
diff --git a/media/ffmpeg/ffmpeg_regression_tests.cc b/media/ffmpeg/ffmpeg_regression_tests.cc |
index 9f0873a5a56b9fea48d4c71a7780e21deebc312c..ba0d084eb5b1c709266cebc396e8882fe99d46c8 100644 |
--- a/media/ffmpeg/ffmpeg_regression_tests.cc |
+++ b/media/ffmpeg/ffmpeg_regression_tests.cc |
@@ -26,11 +26,11 @@ |
// MD5 hashing code. The error occurs due to some problematic error |
// resilence code for H264 inside of FFmpeg. See http://crbug.com/119020 |
// |
-// FLAKY_OGV_0 may run out of memory under ASAN on IA32 Linux/Mac. |
-// |
// Some OGG files leak ~30 bytes of memory, upstream tracking bug: |
// https://ffmpeg.org/trac/ffmpeg/ticket/1244 |
// |
+// Some OGG files leak hundreds of kilobytes of memory, upstream bug: |
+// https://ffmpeg.org/trac/ffmpeg/ticket/1931 |
#include "media/filters/pipeline_integration_test_base.h" |
@@ -99,10 +99,10 @@ FFMPEG_TEST_CASE(Cr47761, "content/crbug47761.ogg", PIPELINE_OK, PIPELINE_OK, |
"f45b9d7556f39dd811700ec72cb71483"); |
FFMPEG_TEST_CASE(Cr50045, "content/crbug50045.mp4", PIPELINE_OK, PIPELINE_OK, |
"c345e9ef9ebfc6bfbcbe3f0ddc3125ba", |
- "39cc70f744944eb01da947b8cf6fcd58"); |
-FFMPEG_TEST_CASE(Cr62127, "content/crbug62127.webm", |
- PIPELINE_OK, PIPELINE_OK, |
- "a064b2776fc5aef3e9cba47967a75db9", kNullHash); |
+ "73d65d9cc6ce25060b7510bd74678c26"); |
+FFMPEG_TEST_CASE(Cr62127, "content/crbug62127.webm", PIPELINE_ERROR_DECODE, |
+ PIPELINE_ERROR_DECODE, "d41d8cd98f00b204e9800998ecf8427e", |
+ kNullHash); |
FFMPEG_TEST_CASE(Cr93620, "security/93620.ogg", PIPELINE_OK, PIPELINE_OK, |
kNullHash, |
"0cff252cd46867d26c42a96e6a2e2376"); |
@@ -128,8 +128,8 @@ FFMPEG_TEST_CASE(Cr112670, "security/112670.mp4", PIPELINE_ERROR_DECODE, |
FFMPEG_TEST_CASE(Cr112976, "security/112976.ogg", PIPELINE_OK, |
PIPELINE_ERROR_DECODE, kNullHash, |
"ef79f7c5805561908805eb0bb7097bb4"); |
-FFMPEG_TEST_CASE(Cr116927, "security/116927.ogv", PIPELINE_ERROR_DECODE, |
- PIPELINE_ERROR_DECODE, kNullHash, kNullHash); |
+FFMPEG_TEST_CASE(Cr116927, "security/116927.ogv", DEMUXER_ERROR_COULD_NOT_OPEN, |
+ DEMUXER_ERROR_COULD_NOT_OPEN, kNullHash, kNullHash); |
FFMPEG_TEST_CASE(Cr117912, "security/117912.webm", DEMUXER_ERROR_COULD_NOT_OPEN, |
DEMUXER_ERROR_COULD_NOT_OPEN, kNullHash, kNullHash); |
FFMPEG_TEST_CASE(Cr123481, "security/123481.ogv", PIPELINE_OK, |
@@ -141,32 +141,33 @@ FFMPEG_TEST_CASE(Cr132779, "security/132779.webm", |
FFMPEG_TEST_CASE(Cr140165, "security/140165.ogg", PIPELINE_ERROR_DECODE, |
PIPELINE_ERROR_DECODE, kNullHash, |
"bd42757e42bdada18cb9441ee4ef8313"); |
-FFMPEG_TEST_CASE(Cr140647, "security/140647.ogv", |
- DECODER_ERROR_NOT_SUPPORTED, DECODER_ERROR_NOT_SUPPORTED, |
- kNullHash, kNullHash); |
+FFMPEG_TEST_CASE(Cr140647, "security/140647.ogv", DEMUXER_ERROR_COULD_NOT_OPEN, |
+ DEMUXER_ERROR_COULD_NOT_OPEN, kNullHash, kNullHash); |
FFMPEG_TEST_CASE(Cr142738, "content/crbug142738.ogg", PIPELINE_OK, PIPELINE_OK, |
kNullHash, |
"03a9591e5b596eb848feeafd7693f371"); |
FFMPEG_TEST_CASE(Cr152691, "security/152691.mp3", PIPELINE_ERROR_DECODE, |
PIPELINE_ERROR_DECODE, kNullHash, |
"59adb24ef3cdbe0297f05b395827453f"); |
+FFMPEG_TEST_CASE(Cr161639, "security/161639.m4a", PIPELINE_OK, PIPELINE_OK, |
+ kNullHash, "97ae2fa2a2e9ff3c2cf17be96b08bbe8"); |
// General MKV test cases. |
FFMPEG_TEST_CASE(MKV_0, "security/nested_tags_lang.mka.627.628", PIPELINE_OK, |
PIPELINE_ERROR_DECODE, kNullHash, |
- "7d1d74b9801002d983e7df3d52dd6db6"); |
+ "3fc4e8ef212df08c61acce3db34b2d09"); |
FFMPEG_TEST_CASE(MKV_1, "security/nested_tags_lang.mka.667.628", PIPELINE_OK, |
PIPELINE_ERROR_DECODE, kNullHash, |
- "7d04ad131b4b07e04406159a17537a54"); |
+ "2f5ad3e7dd25fa5c0e8f26879953ef0f"); |
// General MP4 test cases. |
-FFMPEG_TEST_CASE(MP4_0, "security/aac.10419.mp4", PIPELINE_OK, PIPELINE_OK, |
- kNullHash, kNullHash); |
+FFMPEG_TEST_CASE(MP4_0, "security/aac.10419.mp4", DEMUXER_ERROR_COULD_NOT_OPEN, |
+ DEMUXER_ERROR_COULD_NOT_OPEN, kNullHash, kNullHash); |
FFMPEG_TEST_CASE(MP4_1, "security/clockh264aac_200021889.mp4", |
DEMUXER_ERROR_COULD_NOT_OPEN, DEMUXER_ERROR_COULD_NOT_OPEN, |
kNullHash, kNullHash); |
FFMPEG_TEST_CASE(MP4_2, "security/clockh264aac_200701257.mp4", PIPELINE_OK, |
- PIPELINE_OK, kNullHash, "d4fea8297ca1c5ad7bbcd858864f66d9"); |
+ PIPELINE_OK, kNullHash, "d41d8cd98f00b204e9800998ecf8427e"); |
FFMPEG_TEST_CASE(MP4_5, "security/clockh264aac_3022500.mp4", |
DEMUXER_ERROR_NO_SUPPORTED_STREAMS, |
DEMUXER_ERROR_NO_SUPPORTED_STREAMS, kNullHash, kNullHash); |
@@ -183,7 +184,7 @@ FFMPEG_TEST_CASE(MP4_9, "security/smclockmp4aac_1_0.mp4", |
DEMUXER_ERROR_COULD_NOT_OPEN, DEMUXER_ERROR_COULD_NOT_OPEN, |
kNullHash, kNullHash); |
FFMPEG_TEST_CASE(MP4_11, "security/null1.mp4", PIPELINE_OK, PIPELINE_OK, |
- kNullHash, "d30daffed220266a133b27e00b892558"); |
+ kNullHash, "7397188f229211987268f39ef5a45b3c"); |
FFMPEG_TEST_CASE(MP4_16, "security/looping2.mov", |
DEMUXER_ERROR_COULD_NOT_OPEN, DEMUXER_ERROR_COULD_NOT_OPEN, |
kNullHash, kNullHash); |
@@ -253,7 +254,7 @@ FFMPEG_TEST_CASE(WEBM_5, "content/frame_size_change.webm", PIPELINE_OK, |
// Audio Functional Tests |
FFMPEG_TEST_CASE(AUDIO_GAMING_0, "content/gaming/a_220_00.mp3", PIPELINE_OK, |
- PIPELINE_OK, kNullHash, "1693d9a1e498b13c2a7fb8e7e62db880"); |
+ PIPELINE_OK, kNullHash, "3c2e03569e2af83415a8f32065425f8c"); |
FFMPEG_TEST_CASE(AUDIO_GAMING_1, "content/gaming/a_220_00_v2.ogg", PIPELINE_OK, |
PIPELINE_OK, kNullHash, "2fa0e9fca48759a7de1c22418fba7ea0"); |
FFMPEG_TEST_CASE(AUDIO_GAMING_2, "content/gaming/ai_laser1.ogg", PIPELINE_OK, |
@@ -291,17 +292,17 @@ FFMPEG_TEST_CASE(AUDIO_GAMING_17, "content/gaming/enemy_lock_on.ogg", |
"9670d8f5a668cf85f8ae8d6f8e0fdcdc"); |
FFMPEG_TEST_CASE(AUDIO_GAMING_18, "content/gaming/rocket_launcher.mp3", |
PIPELINE_OK, PIPELINE_OK, kNullHash, |
- "bd8b70f6452360db7cca5c34b6e72844"); |
+ "91354320606584f4404514d914d01ee0"); |
// Allocate gigabytes of memory, likely can't be run on 32bit machines. |
FFMPEG_TEST_CASE(BIG_MEM_1, "security/bigmem1.mov", |
DEMUXER_ERROR_COULD_NOT_OPEN, DEMUXER_ERROR_COULD_NOT_OPEN, |
kNullHash, kNullHash); |
FFMPEG_TEST_CASE(BIG_MEM_2, "security/looping1.mov", |
- DEMUXER_ERROR_COULD_NOT_PARSE, DEMUXER_ERROR_COULD_NOT_PARSE, |
+ DEMUXER_ERROR_COULD_NOT_OPEN, DEMUXER_ERROR_COULD_NOT_OPEN, |
kNullHash, kNullHash); |
FFMPEG_TEST_CASE(BIG_MEM_5, "security/looping5.mov", |
- DEMUXER_ERROR_COULD_NOT_PARSE, DEMUXER_ERROR_COULD_NOT_PARSE, |
+ DEMUXER_ERROR_COULD_NOT_OPEN, DEMUXER_ERROR_COULD_NOT_OPEN, |
kNullHash, kNullHash); |
FLAKY_FFMPEG_TEST_CASE(BIG_MEM_3, "security/looping3.mov"); |
FLAKY_FFMPEG_TEST_CASE(BIG_MEM_4, "security/looping4.mov"); |
@@ -338,8 +339,8 @@ TEST_P(FFmpegRegressionTest, BasicPlayback) { |
GetParam().init_status, true)); |
Play(); |
ASSERT_EQ(WaitUntilEndedOrError(), GetParam().end_status); |
- EXPECT_EQ(GetVideoHash(), GetParam().video_md5); |
- EXPECT_EQ(GetAudioHash(), GetParam().audio_md5); |
+ EXPECT_EQ(GetParam().video_md5, GetVideoHash()); |
+ EXPECT_EQ(GetParam().audio_md5, GetAudioHash()); |
// Check for ended if the pipeline is expected to finish okay. |
if (GetParam().end_status == PIPELINE_OK) { |
@@ -351,8 +352,8 @@ TEST_P(FFmpegRegressionTest, BasicPlayback) { |
} else { |
ASSERT_FALSE(Start(GetTestDataFilePath(GetParam().filename), |
GetParam().init_status, true)); |
- EXPECT_EQ(GetVideoHash(), GetParam().video_md5); |
- EXPECT_EQ(GetAudioHash(), GetParam().audio_md5); |
+ EXPECT_EQ(GetParam().video_md5, GetVideoHash()); |
+ EXPECT_EQ(GetParam().audio_md5, GetAudioHash()); |
} |
} |