Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(407)

Side by Side Diff: media/ffmpeg/ffmpeg_regression_tests.cc

Issue 1207423003: Roll FFmpeg for M45. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Pointing deps to updated ffmpeg master Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 // 4 //
5 // Regression tests for FFmpeg. Test files can be found in the internal media 5 // Regression tests for FFmpeg. Test files can be found in the internal media
6 // test data directory: 6 // test data directory:
7 // 7 //
8 // svn://svn.chromium.org/chrome-internal/trunk/data/media/ 8 // svn://svn.chromium.org/chrome-internal/trunk/data/media/
9 // 9 //
10 // Simply add the custom_dep below to your gclient and sync: 10 // Simply add the custom_dep below to your gclient and sync:
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
80 "security/100492.webm", 80 "security/100492.webm",
81 DECODER_ERROR_NOT_SUPPORTED, 81 DECODER_ERROR_NOT_SUPPORTED,
82 DECODER_ERROR_NOT_SUPPORTED); 82 DECODER_ERROR_NOT_SUPPORTED);
83 FFMPEG_TEST_CASE(Cr100543, "security/100543.webm", PIPELINE_OK, PIPELINE_OK); 83 FFMPEG_TEST_CASE(Cr100543, "security/100543.webm", PIPELINE_OK, PIPELINE_OK);
84 FFMPEG_TEST_CASE(Cr101458, "security/101458.webm", PIPELINE_OK, PIPELINE_OK); 84 FFMPEG_TEST_CASE(Cr101458, "security/101458.webm", PIPELINE_OK, PIPELINE_OK);
85 FFMPEG_TEST_CASE(Cr108416, "security/108416.webm", PIPELINE_OK, PIPELINE_OK); 85 FFMPEG_TEST_CASE(Cr108416, "security/108416.webm", PIPELINE_OK, PIPELINE_OK);
86 FFMPEG_TEST_CASE(Cr110849, 86 FFMPEG_TEST_CASE(Cr110849,
87 "security/110849.mkv", 87 "security/110849.mkv",
88 DEMUXER_ERROR_COULD_NOT_OPEN, 88 DEMUXER_ERROR_COULD_NOT_OPEN,
89 DEMUXER_ERROR_NO_SUPPORTED_STREAMS); 89 DEMUXER_ERROR_NO_SUPPORTED_STREAMS);
90 FFMPEG_TEST_CASE(Cr112384, 90 FFMPEG_TEST_CASE(Cr112384, "security/112384.webm", PIPELINE_OK, PIPELINE_OK);
91 "security/112384.webm",
92 DEMUXER_ERROR_COULD_NOT_PARSE,
93 DEMUXER_ERROR_COULD_NOT_PARSE);
94 FFMPEG_TEST_CASE(Cr112976, "security/112976.ogg", PIPELINE_OK, PIPELINE_OK); 91 FFMPEG_TEST_CASE(Cr112976, "security/112976.ogg", PIPELINE_OK, PIPELINE_OK);
95 FFMPEG_TEST_CASE(Cr116927, 92 FFMPEG_TEST_CASE(Cr116927,
96 "security/116927.ogv", 93 "security/116927.ogv",
97 DEMUXER_ERROR_NO_SUPPORTED_STREAMS, 94 DEMUXER_ERROR_NO_SUPPORTED_STREAMS,
98 DEMUXER_ERROR_NO_SUPPORTED_STREAMS); 95 DEMUXER_ERROR_NO_SUPPORTED_STREAMS);
99 FFMPEG_TEST_CASE(Cr117912, 96 FFMPEG_TEST_CASE(Cr117912,
100 "security/117912.webm", 97 "security/117912.webm",
101 DEMUXER_ERROR_COULD_NOT_OPEN, 98 DEMUXER_ERROR_COULD_NOT_OPEN,
102 DEMUXER_ERROR_COULD_NOT_OPEN); 99 DEMUXER_ERROR_COULD_NOT_OPEN);
103 FFMPEG_TEST_CASE(Cr123481, "security/123481.ogv", PIPELINE_OK, PIPELINE_OK); 100 FFMPEG_TEST_CASE(Cr123481, "security/123481.ogv", PIPELINE_OK, PIPELINE_OK);
104 FFMPEG_TEST_CASE(Cr132779, 101 FFMPEG_TEST_CASE(Cr132779,
105 "security/132779.webm", 102 "security/132779.webm",
106 DEMUXER_ERROR_COULD_NOT_PARSE, 103 DEMUXER_ERROR_COULD_NOT_PARSE,
107 DEMUXER_ERROR_COULD_NOT_PARSE); 104 DEMUXER_ERROR_COULD_NOT_PARSE);
108 FFMPEG_TEST_CASE(Cr140165, "security/140165.ogg", PIPELINE_OK, PIPELINE_OK); 105 FFMPEG_TEST_CASE(Cr140165, "security/140165.ogg", PIPELINE_OK, PIPELINE_OK);
109 FFMPEG_TEST_CASE(Cr140647, 106 FFMPEG_TEST_CASE(Cr140647,
110 "security/140647.ogv", 107 "security/140647.ogv",
111 DEMUXER_ERROR_COULD_NOT_OPEN, 108 DEMUXER_ERROR_COULD_NOT_OPEN,
112 DEMUXER_ERROR_COULD_NOT_OPEN); 109 DEMUXER_ERROR_COULD_NOT_OPEN);
113 FFMPEG_TEST_CASE(Cr142738, "crbug142738.ogg", PIPELINE_OK, PIPELINE_OK); 110 FFMPEG_TEST_CASE(Cr142738, "crbug142738.ogg", PIPELINE_OK, PIPELINE_OK);
114 FFMPEG_TEST_CASE(Cr152691, 111 FFMPEG_TEST_CASE(Cr152691,
115 "security/152691.mp3", 112 "security/152691.mp3",
116 PIPELINE_OK, 113 PIPELINE_OK,
117 PIPELINE_ERROR_DECODE); 114 PIPELINE_ERROR_DECODE);
118 FFMPEG_TEST_CASE(Cr161639, 115 FFMPEG_TEST_CASE(Cr161639, "security/161639.m4a", PIPELINE_OK, PIPELINE_OK);
119 "security/161639.m4a",
120 PIPELINE_OK,
121 PIPELINE_ERROR_DECODE);
122 FFMPEG_TEST_CASE(Cr222754, 116 FFMPEG_TEST_CASE(Cr222754,
123 "security/222754.mp4", 117 "security/222754.mp4",
124 PIPELINE_OK, 118 PIPELINE_OK,
125 PIPELINE_ERROR_DECODE); 119 PIPELINE_ERROR_DECODE);
126 FFMPEG_TEST_CASE(Cr234630a, "security/234630a.mov", PIPELINE_OK, PIPELINE_OK); 120 FFMPEG_TEST_CASE(Cr234630a, "security/234630a.mov", PIPELINE_OK, PIPELINE_OK);
127 FFMPEG_TEST_CASE(Cr234630b, 121 FFMPEG_TEST_CASE(Cr234630b,
128 "security/234630b.mov", 122 "security/234630b.mov",
129 PIPELINE_OK, 123 PIPELINE_OK,
130 PIPELINE_ERROR_DECODE); 124 PIPELINE_ERROR_DECODE);
131 FFMPEG_TEST_CASE(Cr242786, "security/242786.webm", PIPELINE_OK, PIPELINE_OK); 125 FFMPEG_TEST_CASE(Cr242786, "security/242786.webm", PIPELINE_OK, PIPELINE_OK);
132 // Test for out-of-bounds access with slightly corrupt file (detection logic 126 // Test for out-of-bounds access with slightly corrupt file (detection logic
133 // thinks it's a MONO file, but actually contains STEREO audio). 127 // thinks it's a MONO file, but actually contains STEREO audio).
134 FFMPEG_TEST_CASE(Cr275590, 128 FFMPEG_TEST_CASE(Cr275590, "security/275590.m4a", PIPELINE_OK, PIPELINE_OK);
135 "security/275590.m4a",
136 DECODER_ERROR_NOT_SUPPORTED,
137 DEMUXER_ERROR_COULD_NOT_OPEN);
138 FFMPEG_TEST_CASE(Cr444522, "security/444522.mp4", PIPELINE_OK, PIPELINE_OK); 129 FFMPEG_TEST_CASE(Cr444522, "security/444522.mp4", PIPELINE_OK, PIPELINE_OK);
139 FFMPEG_TEST_CASE(Cr444539, 130 FFMPEG_TEST_CASE(Cr444539,
140 "security/444539.m4a", 131 "security/444539.m4a",
141 DEMUXER_ERROR_COULD_NOT_OPEN, 132 DEMUXER_ERROR_COULD_NOT_OPEN,
142 DEMUXER_ERROR_COULD_NOT_OPEN); 133 DEMUXER_ERROR_COULD_NOT_OPEN);
143 FFMPEG_TEST_CASE(Cr444546, 134 FFMPEG_TEST_CASE(Cr444546,
144 "security/444546.mp4", 135 "security/444546.mp4",
145 DEMUXER_ERROR_COULD_NOT_OPEN, 136 DEMUXER_ERROR_COULD_NOT_OPEN,
146 DEMUXER_ERROR_COULD_NOT_OPEN); 137 DEMUXER_ERROR_COULD_NOT_OPEN);
147 FFMPEG_TEST_CASE(Cr449958, 138 FFMPEG_TEST_CASE(Cr449958,
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
324 FLAKY_FFMPEG_TEST_CASE(WEBM_3, "security/out.webm.139771.2965"); 315 FLAKY_FFMPEG_TEST_CASE(WEBM_3, "security/out.webm.139771.2965");
325 316
326 // Not really flaky, but can't pass the seek test. 317 // Not really flaky, but can't pass the seek test.
327 FLAKY_FFMPEG_TEST_CASE(MP4_10, "security/null1.m4a"); 318 FLAKY_FFMPEG_TEST_CASE(MP4_10, "security/null1.m4a");
328 FLAKY_FFMPEG_TEST_CASE(Cr112670, "security/112670.mp4"); 319 FLAKY_FFMPEG_TEST_CASE(Cr112670, "security/112670.mp4");
329 320
330 TEST_P(FFmpegRegressionTest, BasicPlayback) { 321 TEST_P(FFmpegRegressionTest, BasicPlayback) {
331 if (GetParam().init_status == PIPELINE_OK) { 322 if (GetParam().init_status == PIPELINE_OK) {
332 ASSERT_EQ(PIPELINE_OK, Start(GetParam().filename, kClockless)); 323 ASSERT_EQ(PIPELINE_OK, Start(GetParam().filename, kClockless));
333 Play(); 324 Play();
334 ASSERT_EQ(WaitUntilEndedOrError(), GetParam().end_status); 325 ASSERT_EQ(GetParam().end_status, WaitUntilEndedOrError());
335 326
336 // Check for ended if the pipeline is expected to finish okay. 327 // Check for ended if the pipeline is expected to finish okay.
337 if (GetParam().end_status == PIPELINE_OK) { 328 if (GetParam().end_status == PIPELINE_OK) {
338 ASSERT_TRUE(ended_); 329 ASSERT_TRUE(ended_);
339 330
340 // Tack a seek on the end to catch any seeking issues. 331 // Tack a seek on the end to catch any seeking issues.
341 Seek(base::TimeDelta::FromMilliseconds(0)); 332 Seek(base::TimeDelta::FromMilliseconds(0));
342 } 333 }
343 } else { 334 } else {
344 // Don't bother checking the exact status as we only care that the 335 // Don't bother checking the exact status as we only care that the
345 // pipeline failed to start. 336 // pipeline failed to start.
346 EXPECT_NE(PIPELINE_OK, Start(GetParam().filename)); 337 EXPECT_NE(PIPELINE_OK, Start(GetParam().filename));
347 } 338 }
348 } 339 }
349 340
350 TEST_P(FlakyFFmpegRegressionTest, BasicPlayback) { 341 TEST_P(FlakyFFmpegRegressionTest, BasicPlayback) {
351 if (Start(GetParam().filename, kClockless) == PIPELINE_OK) { 342 if (Start(GetParam().filename, kClockless) == PIPELINE_OK) {
352 Play(); 343 Play();
353 WaitUntilEndedOrError(); 344 WaitUntilEndedOrError();
354 } 345 }
355 } 346 }
356 347
357 } // namespace media 348 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698