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

Side by Side Diff: content/browser/media/media_canplaytype_browsertest.cc

Issue 186973003: Add browser tests for canPlayType() results (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fixing trybot failed tests: wav, webm, mp3 Created 6 years, 9 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
« no previous file with comments | « no previous file | content/content_tests.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright (c) 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #include <string>
6
7 #include "content/browser/media/media_browsertest.h"
8 #include "content/public/test/browser_test_utils.h"
9 #include "content/shell/browser/shell.h"
10 #include "content/test/content_browser_test_utils.h"
11
12 const char* kProbably = "probably";
13 const char* kMaybe = "maybe";
14 const char* kNot = "";
15
16 #if defined(USE_PROPRIETARY_CODECS)
17 const char* kPropProbably = "probably";
18 const char* kPropMaybe = "maybe";
19 const char* kPropProbablyElseMaybe = "probably";
20 #else
21 const char* kPropProbably = "";
22 const char* kPropMaybe = "";
23 const char* kPropProbablyElseMaybe = "maybe";
24 #endif // USE_PROPRIETARY_CODECS
25
26 // TODO(amogh.bihani): Change the opus tests when opus is on
27 // Android. (http://crbug.com/318436).
28 #if !defined(OS_ANDROID)
29 const char* kOggVideoProbably = "probably";
30 const char* kOggVideoMaybe = "maybe";
31 const char* kTheoraProbably = "probably";
32 const char* kOpusProbably = "probably";
33 const char* kOpusProbablyElseMaybe = "probably";
34 const char* kHLSProbably = "";
35 const char* kHLSMaybe = "";
36 #if defined(USE_PROPRIETARY_CODECS)
37 const char* kTheoraAndPropProbably = "probably";
38 const char* kTheoraAndPropProbablyElseMaybe = "probably";
39 const char* kOpusAndPropProbably = "probably";
40 #else
41 const char* kTheoraAndPropProbably = "";
42 const char* kTheoraAndPropProbablyElseMaybe = "maybe";
43 const char* kOpusAndPropProbably = "";
44 #endif // USE_PROPRIETARY_CODECS
45 #else
46 const char* kOggVideoProbably = "";
47 const char* kOggVideoMaybe = "";
48 const char* kTheoraProbably = "maybe";
49 const char* kOpusProbably = "";
50 const char* kOpusProbablyElseMaybe = "maybe";
51 const char* kTheoraAndPropProbably = "maybe";
52 const char* kTheoraAndPropProbablyElseMaybe = "";
53 const char* kOpusAndPropProbably = "maybe";
54 const char* kHLSProbably = "probably";
55 const char* kHLSMaybe = "maybe";
56 #endif // !OS_ANDROID
57
58 namespace content {
59
60 class MediaCanPlayTypeTest : public MediaBrowserTest {
61 public:
62 MediaCanPlayTypeTest() : url_("about:blank") { }
63
64 virtual void SetUpOnMainThread() OVERRIDE {
65 NavigateToURL(shell(), url_);
66 }
67
68 std::string CanPlay(const std::string& type) {
69 std::string command("document.createElement('video').canPlayType(");
70 command.append(type);
71 command.append(")");
72
73 std::string result;
74 EXPECT_TRUE(ExecuteScriptAndExtractString(
75 shell()->web_contents(),
76 "window.domAutomationController.send(" + command + ");",
77 &result));
78 return result;
79 }
80
81 private:
82 GURL url_;
83 DISALLOW_COPY_AND_ASSIGN(MediaCanPlayTypeTest);
84 };
85
86 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_wav) {
87 EXPECT_EQ(kMaybe, CanPlay("'audio/wav'"));
88 EXPECT_EQ(kProbably, CanPlay("'audio/wav; codecs=\"1\"'"));
89
90 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vorbis\"'"));
91 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"theora\"'"));
92
93 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vp8\"'"));
94 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vp8.0\"'"));
95 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vp9\"'"));
96 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vp9.0\"'"));
97 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"opus\"'"));
98
99 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"avc1\"'"));
100 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"avc3\"'"));
101 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"mp4a\"'"));
102 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"avc1.4D401E\"'"));
103 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"avc3.64001F\"'"));
104 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"mp4a.40.5\"'"));
105
106 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"1, mp4a\"'"));
107 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"1, opus\"'"));
108 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"1, theora\"'"));
109 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"1, vorbis\"'"));
110 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"opus, vorbis\"'"));
111 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"opus, theora\"'"));
112 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vorbis, mp4a\"'"));
113
114 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"unknown\"'"));
115
116 EXPECT_EQ(kMaybe, CanPlay("'audio/x-wav'"));
117 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"1\"'"));
118
119 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
120 // http://crbug.com/53193 ----------------------------------------------------
121 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"vorbis\"'"));
122 EXPECT_EQ(kTheoraProbably, CanPlay("'audio/x-wav; codecs=\"theora\"'"));
123
124 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"vp8\"'"));
125 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"vp8.0\"'"));
126 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"vp9\"'"));
127 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"vp9.0\"'"));
128 EXPECT_EQ(kOpusProbablyElseMaybe, CanPlay("'audio/x-wav; codecs=\"opus\"'"));
129
130 EXPECT_EQ(kPropProbablyElseMaybe, CanPlay("'audio/x-wav; codecs=\"avc1\"'"));
131 EXPECT_EQ(kPropProbablyElseMaybe, CanPlay("'audio/x-wav; codecs=\"avc3\"'"));
132 EXPECT_EQ(kPropProbablyElseMaybe, CanPlay("'audio/x-wav; codecs=\"mp4a\"'"));
133 EXPECT_EQ(kPropProbablyElseMaybe,
134 CanPlay("'audio/x-wav; codecs=\"avc1.4D401E\"'"));
135 EXPECT_EQ(kPropProbablyElseMaybe,
136 CanPlay("'audio/x-wav; codecs=\"avc3.64001F\"'"));
137 EXPECT_EQ(kPropProbablyElseMaybe,
138 CanPlay("'audio/x-wav; codecs=\"mp4a.40.5\"'"));
139
140 EXPECT_EQ(kPropProbablyElseMaybe,
141 CanPlay("'audio/x-wav; codecs=\"1, mp4a\"'"));
142 EXPECT_EQ(kOpusProbablyElseMaybe,
143 CanPlay("'audio/x-wav; codecs=\"1, opus\"'"));
144 EXPECT_EQ(kTheoraProbably, CanPlay("'audio/x-wav; codecs=\"1, theora\"'"));
145 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"1, vorbis\"'"));
146 EXPECT_EQ(kOpusProbablyElseMaybe,
147 CanPlay("'audio/x-wav; codecs=\"opus, vorbis\"'"));
148 EXPECT_EQ(kTheoraProbably, CanPlay("'audio/x-wav; codecs=\"opus, theora\"'"));
149 EXPECT_EQ(kPropProbablyElseMaybe,
150 CanPlay("'audio/x-wav; codecs=\"vorbis, mp4a\"'"));
151
152 EXPECT_EQ(kMaybe, CanPlay("'audio/x-wav; codecs=\"unknown\"'"));
153 // ---------------------------------------------------------------------------
154 }
155
156 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_webm) {
157 EXPECT_EQ(kMaybe, CanPlay("'video/webm'"));
158
159 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8\"'"));
160 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8.0\"'"));
161 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8, vorbis\"'"));
162 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8.0, vorbis\"'"));
163 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp8, opus\"'"));
164 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp8.0, opus\"'"));
165
166 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp9\"'"));
167 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp9.0\"'"));
168 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp9, vorbis\"'"));
169 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp9.0, vorbis\"'"));
170 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp9, opus\"'"));
171 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp9.0, opus\"'"));
172
173 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8, vp9\"'"));
174 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8.0, vp9.0\"'"));
175 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, theora\"'"));
176 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, avc1\"'"));
177 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, avc3\"'"));
178
179 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, 1\"'"));
180 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8.0, 1\"'"));
181 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, mp4a.40.2\"'"));
182 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8.0, mp4a.40.2\"'"));
183
184 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, 1\"'"));
185 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9.0, 1\"'"));
186 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, mp4a.40.2\"'"));
187 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9.0, mp4a.40.2\"'"));
188
189 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"theora\"'"));
190 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"1\"'"));
191
192 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"avc1\"'"));
193 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"avc3\"'"));
194 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"mp4a\"'"));
195 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"avc1.4D401E\"'"));
196 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"avc3.64001F\"'"));
197 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"mp4a.40.2\"'"));
198
199 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP8\"'"));
200 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP8.0\"'"));
201 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP9\"'"));
202 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"Vp9.0\"'"));
203
204 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP8, Vorbis\"'"));
205 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, Vorbis\"'"));
206 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP9, Opus\"'"));
207 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, Opus\"'"));
208
209 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"unknown\"'"));
210
211 EXPECT_EQ(kMaybe, CanPlay("'audio/webm'"));
212 EXPECT_EQ(kProbably, CanPlay("'audio/webm; codecs=\"vorbis\"'"));
213 EXPECT_EQ(kOpusProbably, CanPlay("'audio/webm; codecs=\"opus\"'"));
214 EXPECT_EQ(kOpusProbably, CanPlay("'audio/webm; codecs=\"opus, vorbis\"'"));
215
216 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8\"'"));
217 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0\"'"));
218 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8, vorbis\"'"));
219 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0, vorbis\"'"));
220 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8, opus\"'"));
221 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0, opus\"'"));
222
223 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9\"'"));
224 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0\"'"));
225 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9, vorbis\"'"));
226 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0, vorbis\"'"));
227 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9, opus\"'"));
228 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0, opus\"'"));
229
230 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"1\"'"));
231 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"1, opus\"'"));
232 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"1, vorbis\"'"));
233 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vorbis, mp4a\"'"));
234
235 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"avc1\"'"));
236 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"avc3\"'"));
237 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"mp4a\"'"));
238 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"avc1.4D401E\"'"));
239 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"avc3.64001F\"'"));
240 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"mp4a.40.2\"'"));
241
242 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"unknown\"'"));
243 }
244
245 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_ogg) {
246 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg'"));
247 EXPECT_EQ(kOggVideoProbably, CanPlay("'video/ogg; codecs=\"theora\"'"));
248 EXPECT_EQ(kOggVideoProbably,
249 CanPlay("'video/ogg; codecs=\"theora, vorbis\"'"));
250 EXPECT_EQ(kOggVideoProbably,
251 CanPlay("'video/ogg; codecs=\"theora, opus\"'"));
252 EXPECT_EQ(kOggVideoProbably,
253 CanPlay("'video/ogg; codecs=\"opus, vorbis\"'"));
254
255 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
256 // http://crbug.com/53193 ----------------------------------------------------
257 EXPECT_EQ(kOggVideoProbably, CanPlay("'video/ogg; codecs=\"vp8\"'"));
258 EXPECT_EQ(kOggVideoProbably, CanPlay("'video/ogg; codecs=\"vp8.0\"'"));
259 EXPECT_EQ(kOggVideoProbably, CanPlay("'video/ogg; codecs=\"vp9\"'"));
260 EXPECT_EQ(kOggVideoProbably, CanPlay("'video/ogg; codecs=\"vp9.0\"'"));
261
262 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
263 CanPlay("'video/ogg; codecs=\"avc1\"'"));
264 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
265 CanPlay("'video/ogg; codecs=\"avc3\"'"));
266 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
267 CanPlay("'video/ogg; codecs=\"mp4a\"'"));
268 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
269 CanPlay("'video/ogg; codecs=\"avc1, mp4a\"'"));
270 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
271 CanPlay("'video/ogg; codecs=\"avc1, vorbis\"'"));
272 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
273 CanPlay("'video/ogg; codecs=\"avc3, mp4a\"'"));
274 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
275 CanPlay("'video/ogg; codecs=\"avc3, vorbis\"'"));
276 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
277 CanPlay("'video/ogg; codecs=\"avc1, vp8\"'"));
278 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
279 CanPlay("'video/ogg; codecs=\"avc3, vp9\"'"));
280 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
281 CanPlay("'video/ogg; codecs=\"avc1, avc3\"'"));
282
283 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
284 CanPlay("'video/ogg; codecs=\"avc1.4D401E\"'"));
285 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
286 CanPlay("'video/ogg; codecs=\"avc3.64001F\"'"));
287 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
288 CanPlay("'video/ogg; codecs=\"mp4a.4.02\"'"));
289 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
290 CanPlay("'video/ogg; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
291 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
292 CanPlay("'video/ogg; codecs=\"avc3.64001F, mp4a.40.2\"'"));
293 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
294 CanPlay("'video/ogg; codecs=\"avc1.4D401E, vorbis\"'"));
295 EXPECT_EQ(kTheoraAndPropProbablyElseMaybe,
296 CanPlay("'video/ogg; codecs=\"avc3.64001F, vorbis\"'"));
297
298 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg; codecs=\"Theora\"'"));
299 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg; codecs=\"Opus\"'"));
300 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg; codecs=\"Vorbis\"'"));
301 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg; codecs=\"Theora, Opus\"'"));
302 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg; codecs=\"Theora, Vorbis\"'"));
303
304 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg; codecs=\"unknown\"'"));
305 // ---------------------------------------------------------------------------
306
307 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg'"));
308 EXPECT_EQ(kProbably, CanPlay("'audio/ogg; codecs=\"vorbis\"'"));
309 EXPECT_EQ(kOpusProbablyElseMaybe, CanPlay("'audio/ogg; codecs=\"opus\"'"));
310 EXPECT_EQ(kOpusProbablyElseMaybe,
311 CanPlay("'audio/ogg; codecs=\"vorbis, opus\"'"));
312
313 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
314 // http://crbug.com/53193 ----------------------------------------------------
315 EXPECT_EQ(kTheoraProbably, CanPlay("'audio/ogg; codecs=\"theora\"'"));
316 EXPECT_EQ(kTheoraProbably, CanPlay("'audio/ogg; codecs=\"theora, vorbis\"'"));
317 EXPECT_EQ(kTheoraProbably, CanPlay("'audio/ogg; codecs=\"theora, opus\"'"));
318 EXPECT_EQ(kOpusProbablyElseMaybe, CanPlay("'audio/ogg; codecs=\"opus, 1\"'"));
319 EXPECT_EQ(kProbably, CanPlay("'audio/ogg; codecs=\"vorbis, 1\"'"));
320
321 EXPECT_EQ(kProbably, CanPlay("'audio/ogg; codecs=\"vp8\"'"));
322 EXPECT_EQ(kProbably, CanPlay("'audio/ogg; codecs=\"vp8.0\"'"));
323 EXPECT_EQ(kProbably, CanPlay("'audio/ogg; codecs=\"vp9\"'"));
324 EXPECT_EQ(kProbably, CanPlay("'audio/ogg; codecs=\"vp9.0\"'"));
325
326 EXPECT_EQ(kPropProbablyElseMaybe, CanPlay("'audio/ogg; codecs=\"avc1\"'"));
327 EXPECT_EQ(kPropProbablyElseMaybe, CanPlay("'audio/ogg; codecs=\"avc3\"'"));
328 EXPECT_EQ(kPropProbablyElseMaybe, CanPlay("'audio/ogg; codecs=\"mp4a\"'"));
329 EXPECT_EQ(kPropProbablyElseMaybe,
330 CanPlay("'audio/ogg; codecs=\"avc1.4D401E\"'"));
331 EXPECT_EQ(kPropProbablyElseMaybe,
332 CanPlay("'audio/ogg; codecs=\"avc3.64001F\"'"));
333 EXPECT_EQ(kPropProbablyElseMaybe,
334 CanPlay("'audio/ogg; codecs=\"mp4a.40.2\"'"));
335
336 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg; codecs=\"Theora\"'"));
337 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg; codecs=\"Opus\"'"));
338 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg; codecs=\"Vorbis\"'"));
339 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg; codecs=\"Theora, Vorbis\"'"));
340 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg; codecs=\"Theora, Opus\"'"));
341
342 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg; codecs=\"unknown\"'"));
343 // ---------------------------------------------------------------------------
344
345 EXPECT_EQ(kMaybe, CanPlay("'application/ogg'"));
346 EXPECT_EQ(kProbably, CanPlay("'application/ogg; codecs=\"vorbis\"'"));
347 EXPECT_EQ(kTheoraProbably, CanPlay("'application/ogg; codecs=\"theora\"'"));
348 EXPECT_EQ(kOpusProbablyElseMaybe,
349 CanPlay("'application/ogg; codecs=\"opus\"'"));
350 EXPECT_EQ(kTheoraProbably,
351 CanPlay("'application/ogg; codecs=\"theora, vorbis\"'"));
352 EXPECT_EQ(kTheoraProbably,
353 CanPlay("'application/ogg; codecs=\"theora, opus\"'"));
354 EXPECT_EQ(kOpusProbablyElseMaybe,
355 CanPlay("'application/ogg; codecs=\"opus, vorbis\"'"));
356 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
357 // http://crbug.com/53193 ----------------------------------------------------
358 EXPECT_EQ(kProbably, CanPlay("'application/ogg; codecs=\"vp8\"'"));
359 EXPECT_EQ(kProbably, CanPlay("'application/ogg; codecs=\"vp8.0\"'"));
360 EXPECT_EQ(kProbably, CanPlay("'application/ogg; codecs=\"vp9\"'"));
361 EXPECT_EQ(kProbably, CanPlay("'application/ogg; codecs=\"vp9.0\"'"));
362
363 EXPECT_EQ(kPropProbablyElseMaybe,
364 CanPlay("'application/ogg; codecs=\"avc1\"'"));
365 EXPECT_EQ(kPropProbablyElseMaybe,
366 CanPlay("'application/ogg; codecs=\"avc3\"'"));
367 EXPECT_EQ(kPropProbablyElseMaybe,
368 CanPlay("'application/ogg; codecs=\"mp4a\"'"));
369 EXPECT_EQ(kPropProbablyElseMaybe,
370 CanPlay("'application/ogg; codecs=\"avc1, mp4a\"'"));
371 EXPECT_EQ(kPropProbablyElseMaybe,
372 CanPlay("'application/ogg; codecs=\"avc1, vorbis\"'"));
373 EXPECT_EQ(kPropProbablyElseMaybe,
374 CanPlay("'application/ogg; codecs=\"avc3, mp4a\"'"));
375 EXPECT_EQ(kPropProbablyElseMaybe,
376 CanPlay("'application/ogg; codecs=\"avc3, vorbis\"'"));
377 EXPECT_EQ(kPropProbablyElseMaybe,
378 CanPlay("'application/ogg; codecs=\"avc1, vp8\"'"));
379 EXPECT_EQ(kPropProbablyElseMaybe,
380 CanPlay("'application/ogg; codecs=\"avc3, vp9\"'"));
381 EXPECT_EQ(kPropProbablyElseMaybe,
382 CanPlay("'application/ogg; codecs=\"avc1, avc3\"'"));
383
384 EXPECT_EQ(kPropProbablyElseMaybe,
385 CanPlay("'application/ogg; codecs=\"avc1.4D401E\"'"));
386 EXPECT_EQ(kPropProbablyElseMaybe,
387 CanPlay("'application/ogg; codecs=\"avc3.64001F\"'"));
388 EXPECT_EQ(kPropProbablyElseMaybe,
389 CanPlay("'application/ogg; codecs=\"mp4a.40.2\"'"));
390 EXPECT_EQ(kPropProbablyElseMaybe,
391 CanPlay("'application/ogg; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
392 EXPECT_EQ(kPropProbablyElseMaybe,
393 CanPlay("'application/ogg; codecs=\"avc3.64001F, mp4a.40.2\"'"));
394 EXPECT_EQ(kPropProbablyElseMaybe,
395 CanPlay("'application/ogg; codecs=\"avc1.4D401E, vorbis\"'"));
396 EXPECT_EQ(kPropProbablyElseMaybe,
397 CanPlay("'application/ogg; codecs=\"avc3.64001F, vorbis\"'"));
398
399 EXPECT_EQ(kMaybe, CanPlay("'application/ogg; codecs=\"Theora\"'"));
400 EXPECT_EQ(kMaybe, CanPlay("'application/ogg; codecs=\"Vorbis\"'"));
401 EXPECT_EQ(kMaybe, CanPlay("'application/ogg; codecs=\"Opus\"'"));
402 EXPECT_EQ(kMaybe, CanPlay("'application/ogg; codecs=\"Theora, Vorbis\"'"));
403 EXPECT_EQ(kMaybe, CanPlay("'application/ogg; codecs=\"Theora, Opus\"'"));
404
405 EXPECT_EQ(kMaybe, CanPlay("'application/ogg; codecs=\"unknown\"'"));
406 // ---------------------------------------------------------------------------
407 }
408
409 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_mp3) {
410 EXPECT_EQ(kNot, CanPlay("'video/mp3'"));
411 EXPECT_EQ(kNot, CanPlay("'video/mpeg'"));
412 EXPECT_EQ(kNot, CanPlay("'video/x-mp3'"));
413
414 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg'"));
415
416 // audio/mpeg and audio/mp3 do not allow any codecs parameter
417 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
418 // http://crbug.com/53193 ----------------------------------------------------
419 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"avc1\"'"));
420 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"avc3\"'"));
421
422 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"avc1.4D401E\"'"));
423 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"avc3.64001F\"'"));
424
425 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"mp4a\"'"));
426 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"mp4a.40.2\"'"));
427
428 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"avc1.unknown\"'"));
429 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"avc3.unknown\"'"));
430 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"mp4a.unknown\"'"));
431
432 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"avc1.\"'"));
433 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"avc3.\"'"));
434 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"mp4a.\"'"));
435
436 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"vorbis\"'"));
437 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'audio/mpeg; codecs=\"opus\"'"));
438 EXPECT_EQ(kTheoraAndPropProbably, CanPlay("'audio/mpeg; codecs=\"theora\"'"));
439 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"vp8\"'"));
440 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"vp8.0\"'"));
441 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"vp9\"'"));
442 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg; codecs=\"vp9.0\"'"));
443
444 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"AVC1\"'"));
445 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"AVC1.4d401e\"'"));
446 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"AVC3\"'"));
447 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"AVC3.64001f\"'"));
448 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"MP4A\"'"));
449 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"MP4A.40.2\"'"));
450 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"AVC1, MP4\"'"));
451 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"AVC3, MP4\"'"));
452 EXPECT_EQ(kPropMaybe,
453 CanPlay("'audio/mpeg; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
454 EXPECT_EQ(kPropMaybe,
455 CanPlay("'audio/mpeg; codecs=\", AVC3.64001F, MP4.40.2\"'"));
456
457 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"avc2\"'"));
458 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"avc4\"'"));
459
460 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"avc1x\"'"));
461 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"avc3x\"'"));
462 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"mp4ax\"'"));
463
464 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mpeg; codecs=\"unknown\"'"));
465 // ---------------------------------------------------------------------------
466
467 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3'"));
468
469 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
470 // http://crbug.com/53193 ----------------------------------------------------
471 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"avc1\"'"));
472 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"avc3\"'"));
473
474 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"avc1.4D401E\"'"));
475 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"avc3.64001F\"'"));
476
477 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"mp4a\"'"));
478 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"mp4a.40.2\"'"));
479
480 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"avc1.unknown\"'"));
481 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"avc3.unknown\"'"));
482 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"mp4a.unknown\"'"));
483
484 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"avc1.\"'"));
485 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"avc3.\"'"));
486 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"mp4a.\"'"));
487
488 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"vorbis\"'"));
489 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'audio/mp3; codecs=\"opus\"'"));
490 EXPECT_EQ(kTheoraAndPropProbably, CanPlay("'audio/mp3; codecs=\"theora\"'"));
491 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"vp8\"'"));
492 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"vp8.0\"'"));
493 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"vp9\"'"));
494 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3; codecs=\"vp9.0\"'"));
495
496 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"AVC1\"'"));
497 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"AVC1.4d401e\"'"));
498 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"AVC3\"'"));
499 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"AVC3.64001f\"'"));
500 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"MP4A\"'"));
501 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"MP4A.40.2\"'"));
502 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"AVC1, MP4\"'"));
503 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"AVC3, MP4\"'"));
504 EXPECT_EQ(kPropMaybe,
505 CanPlay("'audio/mp3; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
506 EXPECT_EQ(kPropMaybe,
507 CanPlay("'audio/mp3; codecs=\", AVC3.64001F, MP4.40.2\"'"));
508
509 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"avc2\"'"));
510 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"avc4\"'"));
511
512 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"avc1x\"'"));
513 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"avc3x\"'"));
514 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"mp4ax\"'"));
515
516 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp3; codecs=\"unknown\"'"));
517 // ---------------------------------------------------------------------------
518
519 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3'"));
520
521 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
522 // http://crbug.com/53193 ----------------------------------------------------
523 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"avc1\"'"));
524 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"avc3\"'"));
525
526 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"avc1.4D401E\"'"));
527 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"avc3.64001F\"'"));
528
529 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"mp4a\"'"));
530 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"mp4a.40.2\"'"));
531
532 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"avc1.unknown\"'"));
533 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"avc3.unknown\"'"));
534 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"mp4a.unknown\"'"));
535
536 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"vorbis\"'"));
537 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'audio/x-mp3; codecs=\"opus\"'"));
538 EXPECT_EQ(kTheoraAndPropProbably,
539 CanPlay("'audio/x-mp3; codecs=\"theora\"'"));
540 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"vp8\"'"));
541 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"vp8.0\"'"));
542 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"vp9\"'"));
543 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3; codecs=\"vp9.0\"'"));
544
545 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"AVC1\"'"));
546 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"AVC1.4d401e\"'"));
547 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"AVC3\"'"));
548 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"AVC3.64001f\"'"));
549 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"MP4A\"'"));
550 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"MP4A.40.2\"'"));
551 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"AVC1, MP4\"'"));
552 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"AVC3, MP4\"'"));
553 EXPECT_EQ(kPropMaybe,
554 CanPlay("'audio/x-mp3; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
555 EXPECT_EQ(kPropMaybe,
556 CanPlay("'audio/x-mp3; codecs=\", AVC3.64001F, MP4.40.2\"'"));
557
558 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"avc2\"'"));
559 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"avc4\"'"));
560
561 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"avc1x\"'"));
562 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"avc3x\"'"));
563 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"mp4ax\"'"));
564
565 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-mp3; codecs=\"unknown\"'"));
566 // ---------------------------------------------------------------------------
567 }
568
569 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_mp4) {
570 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4'"));
571
572 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1\"'"));
573 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3\"'"));
574 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"mp4a\"'"));
575 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1, mp4a\"'"));
576 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3, mp4a\"'"));
577 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1, avc3\"'"));
578
579 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4D401E\"'"));
580 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.64001F\"'"));
581 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"mp4a.40.2\"'"));
582 EXPECT_EQ(kPropProbably,
583 CanPlay("'video/mp4; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
584 EXPECT_EQ(kPropProbably,
585 CanPlay("'video/mp4; codecs=\"avc3.64001F, mp4a.40.5\"'"));
586
587 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
588 // http://crbug.com/53193 ----------------------------------------------------
589 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.unknown\"'"));
590 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.unknown\"'"));
591 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"mp4a.unknown\"'"));
592
593 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.\"'"));
594 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.\"'"));
595 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"mp4a.\"'"));
596
597 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"vp8\"'"));
598 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"vp9\"'"));
599
600 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"vorbis\"'"));
601 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1, vorbis\"'"));
602 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3, vorbis\"'"));
603 EXPECT_EQ(kPropProbably,
604 CanPlay("'video/mp4; codecs=\"avc1.4D401E, vorbis\"'"));
605 EXPECT_EQ(kPropProbably,
606 CanPlay("'video/mp4; codecs=\"avc3.64001F, vorbis\"'"));
607
608 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'video/mp4; codecs=\"opus\"'"));
609 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'video/mp4; codecs=\"vp8, opus\"'"));
610 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'video/mp4; codecs=\"vp9, opus\"'"));
611
612 EXPECT_EQ(kTheoraAndPropProbably, CanPlay("'video/mp4; codecs=\"theora\"'"));
613 EXPECT_EQ(kTheoraAndPropProbably,
614 CanPlay("'video/mp4; codecs=\"theora, vorbis\"'"));
615 EXPECT_EQ(kTheoraAndPropProbably,
616 CanPlay("'video/mp4; codecs=\"theora, mp4a\"'"));
617 EXPECT_EQ(kTheoraAndPropProbably,
618 CanPlay("'video/mp4; codecs=\"theora, mp4a.40.2\"'"));
619 EXPECT_EQ(kTheoraAndPropProbably,
620 CanPlay("'video/mp4; codecs=\"theora, avc1\"'"));
621 EXPECT_EQ(kTheoraAndPropProbably,
622 CanPlay("'video/mp4; codecs=\"theora, avc3\"'"));
623 EXPECT_EQ(kTheoraAndPropProbably,
624 CanPlay("'video/mp4; codecs=\"theora, avc1.4D401E\"'"));
625 EXPECT_EQ(kTheoraAndPropProbably,
626 CanPlay("'video/mp4; codecs=\"theora, avc3.64001F\"'"));
627
628 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"AVC1\"'"));
629 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"AVC1.4d401e\"'"));
630 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"AVC3\"'"));
631 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"AVC3.64001f\"'"));
632 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"MP4A\"'"));
633 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"MP4A.40.2\"'"));
634 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"AVC1, MP4\"'"));
635 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"AVC3, MP4\"'"));
636 EXPECT_EQ(kPropMaybe,
637 CanPlay("'video/mp4; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
638 EXPECT_EQ(kPropMaybe,
639 CanPlay("'video/mp4; codecs=\", AVC3.64001F, MP4.40.2\"'"));
640
641 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc2\"'"));
642 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc4\"'"));
643
644 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1x\"'"));
645 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3x\"'"));
646 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"mp4ax\"'"));
647
648 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"unknown\"'"));
649 // ---------------------------------------------------------------------------
650
651 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v'"));
652
653 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc1\"'"));
654 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc3\"'"));
655 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"mp4a\"'"));
656 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc1, mp4a\"'"));
657 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc3, mp4a\"'"));
658 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc1, avc3\"'"));
659
660 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc1.4D401E\"'"));
661 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc3.64001F\"'"));
662 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"mp4a.40.2\"'"));
663 EXPECT_EQ(kPropProbably,
664 CanPlay("'video/x-m4v; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
665 EXPECT_EQ(kPropProbably,
666 CanPlay("'video/x-m4v; codecs=\"avc3.64001F, mp4a.40.5\"'"));
667
668 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
669 // http://crbug.com/53193 ----------------------------------------------------
670 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc1.unknown\"'"));
671 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc3.unknown\"'"));
672 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"mp4a.unknown\"'"));
673
674 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc1.\"'"));
675 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc3.\"'"));
676 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"mp4a.\"'"));
677
678 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"vp8\"'"));
679 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"vp9\"'"));
680
681 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"vorbis\"'"));
682 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc1, vorbis\"'"));
683 EXPECT_EQ(kPropProbably, CanPlay("'video/x-m4v; codecs=\"avc3, vorbis\"'"));
684 EXPECT_EQ(kPropProbably,
685 CanPlay("'video/x-m4v; codecs=\"avc1.4D401E, vorbis\"'"));
686 EXPECT_EQ(kPropProbably,
687 CanPlay("'video/x-m4v; codecs=\"avc3.64001F, vorbis\"'"));
688
689 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'video/x-m4v; codecs=\"opus\"'"));
690 EXPECT_EQ(kOpusAndPropProbably,
691 CanPlay("'video/x-m4v; codecs=\"vp8, opus\"'"));
692 EXPECT_EQ(kOpusAndPropProbably,
693 CanPlay("'video/x-m4v; codecs=\"vp9, opus\"'"));
694
695 EXPECT_EQ(kTheoraAndPropProbably,
696 CanPlay("'video/x-m4v; codecs=\"theora\"'"));
697 EXPECT_EQ(kTheoraAndPropProbably,
698 CanPlay("'video/x-m4v; codecs=\"theora, vorbis\"'"));
699 EXPECT_EQ(kTheoraAndPropProbably,
700 CanPlay("'video/x-m4v; codecs=\"theora, mp4a\"'"));
701 EXPECT_EQ(kTheoraAndPropProbably,
702 CanPlay("'video/x-m4v; codecs=\"theora, mp4a.40.2\"'"));
703 EXPECT_EQ(kTheoraAndPropProbably,
704 CanPlay("'video/x-m4v; codecs=\"theora, avc1\"'"));
705 EXPECT_EQ(kTheoraAndPropProbably,
706 CanPlay("'video/x-m4v; codecs=\"theora, avc3\"'"));
707 EXPECT_EQ(kTheoraAndPropProbably,
708 CanPlay("'video/x-m4v; codecs=\"theora, avc1.4D401E\"'"));
709 EXPECT_EQ(kTheoraAndPropProbably,
710 CanPlay("'video/x-m4v; codecs=\"theora, avc3.64001F\"'"));
711
712 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"AVC1\"'"));
713 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"AVC1.4d401e\"'"));
714 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"AVC3\"'"));
715 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"AVC3.64001f\"'"));
716 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"MP4A\"'"));
717 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"MP4A.40.2\"'"));
718 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"AVC1, MP4\"'"));
719 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"AVC3, MP4\"'"));
720 EXPECT_EQ(kPropMaybe,
721 CanPlay("'video/x-m4v; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
722 EXPECT_EQ(kPropMaybe,
723 CanPlay("'video/x-m4v; codecs=\", AVC3.64001F, MP4.40.2\"'"));
724
725 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc2\"'"));
726 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc4\"'"));
727
728 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1x\"'"));
729 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc3x\"'"));
730 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"mp4ax\"'"));
731
732 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"unknown\"'"));
733 // ---------------------------------------------------------------------------
734
735 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4'"));
736 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"mp4a\"'"));
737 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"mp4a.40.2\"'"));
738
739 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
740 // http://crbug.com/53193 ----------------------------------------------------
741 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc1\"'"));
742 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc3\"'"));
743 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc1, mp4a\"'"));
744 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc3, mp4a\"'"));
745
746 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc1.4D401E\"'"));
747 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc3.64001F\"'"));
748
749 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc1.unknown\"'"));
750 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc3.unknown\"'"));
751 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"mp4a.unknown\"'"));
752
753 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc1.\"'"));
754 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc3.\"'"));
755 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"mp4a.\"'"));
756
757 EXPECT_EQ(kPropProbably,
758 CanPlay("'audio/mp4; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
759 EXPECT_EQ(kPropProbably,
760 CanPlay("'audio/mp4; codecs=\"avc3.64001F mp4a.40.2\"'"));
761 EXPECT_EQ(kPropProbably,
762 CanPlay("'audio/mp4; codecs=\"mp4a, vorbis\"'"));
763 EXPECT_EQ(kPropProbably,
764 CanPlay("'audio/mp4; codecs=\"mp4a.40.2, vorbis\"'"));
765
766 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"vorbis\"'"));
767
768 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"vp8\"'"));
769 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"vp8.0\"'"));
770 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"vp9\"'"));
771 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"vp9.0\"'"));
772
773 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'audio/mp4; codecs=\"opus\"'"));
774 EXPECT_EQ(kOpusAndPropProbably,
775 CanPlay("'audio/mp4; codecs=\"mp4a, opus\"'"));
776 EXPECT_EQ(kOpusAndPropProbably,
777 CanPlay("'audio/mp4; codecs=\"vorbis, opus\"'"));
778 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'audio/mp4; codecs=\"vp8, opus\"'"));
779 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'audio/mp4; codecs=\"vp9, opus\"'"));
780
781 EXPECT_EQ(kTheoraAndPropProbably, CanPlay("'audio/mp4; codecs=\"theora\"'"));
782 EXPECT_EQ(kTheoraAndPropProbably,
783 CanPlay("'audio/mp4; codecs=\"theora, vorbis\"'"));
784 EXPECT_EQ(kTheoraAndPropProbably,
785 CanPlay("'audio/mp4; codecs=\"theora, mp4a\"'"));
786 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp4; codecs=\"avc1, vorbis\"'"));
787
788 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"AVC1\"'"));
789 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"AVC1.4d401e\"'"));
790 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"AVC3\"'"));
791 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"AVC3.64001f\"'"));
792 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"MP4A\"'"));
793 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"MP4A.40.2\"'"));
794 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"AVC1, MP4\"'"));
795 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"AVC3, MP4\"'"));
796 EXPECT_EQ(kPropMaybe,
797 CanPlay("'audio/mp4; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
798 EXPECT_EQ(kPropMaybe,
799 CanPlay("'audio/mp4; codecs=\", AVC3.64001F, MP4.40.2\"'"));
800
801 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"avc2\"'"));
802 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"avc4\"'"));
803
804 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"avc1x\"'"));
805 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"avc3x\"'"));
806 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"mp4ax\"'"));
807
808 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"unknown\"'"));
809 // ---------------------------------------------------------------------------
810
811 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a'"));
812 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"mp4a\"'"));
813 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"mp4a.40.2\"'"));
814
815 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
816 // http://crbug.com/53193 ----------------------------------------------------
817 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc1\"'"));
818 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc3\"'"));
819 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc1, mp4a\"'"));
820 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc3, mp4a\"'"));
821
822 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc1.4D401E\"'"));
823 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc3.64001F\"'"));
824
825 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc1.unknown\"'"));
826 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc3.unknown\"'"));
827 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"mp4a.unknown\"'"));
828
829 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc1.\"'"));
830 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc3.\"'"));
831 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"mp4a.\"'"));
832
833 EXPECT_EQ(kPropProbably,
834 CanPlay("'audio/x-m4a; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
835 EXPECT_EQ(kPropProbably,
836 CanPlay("'audio/x-m4a; codecs=\"avc3.64001F mp4a.40.2\"'"));
837 EXPECT_EQ(kPropProbably,
838 CanPlay("'audio/x-m4a; codecs=\"mp4a, vorbis\"'"));
839 EXPECT_EQ(kPropProbably,
840 CanPlay("'audio/x-m4a; codecs=\"mp4a.40.2, vorbis\"'"));
841
842 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"vorbis\"'"));
843
844 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"vp8\"'"));
845 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"vp8.0\"'"));
846 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"vp9\"'"));
847 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"vp9.0\"'"));
848
849 EXPECT_EQ(kOpusAndPropProbably, CanPlay("'audio/x-m4a; codecs=\"opus\"'"));
850 EXPECT_EQ(kOpusAndPropProbably,
851 CanPlay("'audio/x-m4a; codecs=\"mp4a, opus\"'"));
852 EXPECT_EQ(kOpusAndPropProbably,
853 CanPlay("'audio/x-m4a; codecs=\"vorbis, opus\"'"));
854 EXPECT_EQ(kOpusAndPropProbably,
855 CanPlay("'audio/x-m4a; codecs=\"vp8, opus\"'"));
856 EXPECT_EQ(kOpusAndPropProbably,
857 CanPlay("'audio/x-m4a; codecs=\"vp9, opus\"'"));
858
859 EXPECT_EQ(kTheoraAndPropProbably,
860 CanPlay("'audio/x-m4a; codecs=\"theora\"'"));
861 EXPECT_EQ(kTheoraAndPropProbably,
862 CanPlay("'audio/x-m4a; codecs=\"theora, vorbis\"'"));
863 EXPECT_EQ(kTheoraAndPropProbably,
864 CanPlay("'audio/x-m4a; codecs=\"theora, mp4a\"'"));
865 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-m4a; codecs=\"avc1, vorbis\"'"));
866
867 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"AVC1\"'"));
868 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"AVC1.4d401e\"'"));
869 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"AVC3\"'"));
870 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"AVC3.64001f\"'"));
871 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"MP4A\"'"));
872 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"MP4A.40.2\"'"));
873 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"AVC1, MP4\"'"));
874 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"AVC3, MP4\"'"));
875 EXPECT_EQ(kPropMaybe,
876 CanPlay("'audio/x-m4a; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
877 EXPECT_EQ(kPropMaybe,
878 CanPlay("'audio/x-m4a; codecs=\", AVC3.64001F, MP4.40.2\"'"));
879
880 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"avc2\"'"));
881 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"avc4\"'"));
882
883 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"avc1x\"'"));
884 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"avc3x\"'"));
885 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"mp4ax\"'"));
886
887 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"unknown\"'"));
888 // ---------------------------------------------------------------------------
889 }
890
891 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_HLS) {
892 EXPECT_EQ(kHLSMaybe, CanPlay("'application/x-mpegurl'"));
893
894 EXPECT_EQ(kHLSProbably,
895 CanPlay("'application/x-mpegurl; codecs=\"avc1\"'"));
896 EXPECT_EQ(kHLSProbably,
897 CanPlay("'application/x-mpegurl; codecs=\"avc3\"'"));
898 EXPECT_EQ(kHLSProbably,
899 CanPlay("'application/x-mpegurl; codecs=\"mp4a\"'"));
900 EXPECT_EQ(kHLSProbably,
901 CanPlay("'application/x-mpegurl; codecs=\"avc1, mp4a\"'"));
902 EXPECT_EQ(kHLSProbably,
903 CanPlay("'application/x-mpegurl; codecs=\"avc3, mp4a\"'"));
904
905 EXPECT_EQ(kHLSProbably,
906 CanPlay("'application/x-mpegurl; codecs=\"avc1.4D401E\"'"));
907 EXPECT_EQ(kHLSProbably,
908 CanPlay("'application/x-mpegurl; codecs=\"avc3.64001F\"'"));
909 EXPECT_EQ(kHLSProbably,
910 CanPlay("'application/x-mpegurl; codecs=\"mp4a.40.2\"'"));
911 EXPECT_EQ(kHLSProbably,
912 CanPlay("'application/x-mpegurl; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
913 EXPECT_EQ(kHLSProbably,
914 CanPlay("'application/x-mpegurl; codecs=\"avc3.64001F, mp4a.40.5\"'"));
915
916 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
917 // http://crbug.com/53193 ----------------------------------------------------
918 EXPECT_EQ(kHLSProbably,
919 CanPlay("'application/x-mpegurl; codecs=\"avc1.unknown\"'"));
920 EXPECT_EQ(kHLSProbably,
921 CanPlay("'application/x-mpegurl; codecs=\"avc3.unknown\"'"));
922 EXPECT_EQ(kHLSProbably,
923 CanPlay("'application/x-mpegurl; codecs=\"mp4a.unknown\"'"));
924
925 EXPECT_EQ(kHLSProbably, CanPlay("'application/x-mpegurl; codecs=\"avc1.\"'"));
926 EXPECT_EQ(kHLSProbably, CanPlay("'application/x-mpegurl; codecs=\"avc3.\"'"));
927 EXPECT_EQ(kHLSProbably, CanPlay("'application/x-mpegurl; codecs=\"mp4a.\"'"));
928
929 EXPECT_EQ(kHLSProbably, CanPlay("'application/x-mpegurl; codecs=\"vp8\"'"));
930 EXPECT_EQ(kHLSProbably, CanPlay("'application/x-mpegurl; codecs=\"vp9\"'"));
931 EXPECT_EQ(kHLSProbably,
932 CanPlay("'application/x-mpegurl; codecs=\"vorbis\"'"));
933
934 EXPECT_EQ(kHLSProbably,
935 CanPlay("'application/x-mpegurl; codecs=\"avc1, vorbis\"'"));
936 EXPECT_EQ(kHLSProbably,
937 CanPlay("'application/x-mpegurl; codecs=\"avc3, vorbis\"'"));
938 EXPECT_EQ(kHLSProbably,
939 CanPlay("'application/x-mpegurl; codecs=\"avc1.4D401E, vorbis\"'"));
940 EXPECT_EQ(kHLSProbably,
941 CanPlay("'application/x-mpegurl; codecs=\"avc3.64001F, vorbis\"'"));
942
943 EXPECT_EQ(kHLSMaybe, CanPlay("'application/x-mpegurl; codecs=\"opus\"'"));
944 EXPECT_EQ(kHLSMaybe,
945 CanPlay("'application/x-mpegurl; codecs=\"vp8, opus\"'"));
946 EXPECT_EQ(kHLSMaybe,
947 CanPlay("'application/x-mpegurl; codecs=\"vp9, opus\"'"));
948
949 EXPECT_EQ(kHLSMaybe,
950 CanPlay("'application/x-mpegurl; codecs=\"theora\"'"));
951 EXPECT_EQ(kHLSMaybe,
952 CanPlay("'application/x-mpegurl; codecs=\"theora, vorbis\"'"));
953 EXPECT_EQ(kHLSMaybe,
954 CanPlay("'application/x-mpegurl; codecs=\"theora, mp4a\"'"));
955 EXPECT_EQ(kHLSMaybe,
956 CanPlay("'application/x-mpegurl; codecs=\"theora, mp4a.40.2\"'"));
957
958 EXPECT_EQ(kHLSMaybe, CanPlay("'application/x-mpegurl; codecs=\"AVC1\"'"));
959 EXPECT_EQ(kHLSMaybe,
960 CanPlay("'application/x-mpegurl; codecs=\"AVC1.4d401e\"'"));
961 EXPECT_EQ(kHLSMaybe, CanPlay("'application/x-mpegurl; codecs=\"AVC3\"'"));
962 EXPECT_EQ(kHLSMaybe,
963 CanPlay("'application/x-mpegurl; codecs=\"AVC3.64001f\"'"));
964 EXPECT_EQ(kHLSMaybe, CanPlay("'application/x-mpegurl; codecs=\"MP4A\"'"));
965 EXPECT_EQ(kHLSMaybe,
966 CanPlay("'application/x-mpegurl; codecs=\"MP4A.40.2\"'"));
967 EXPECT_EQ(kHLSMaybe,
968 CanPlay("'application/x-mpegurl; codecs=\"AVC1, MP4\"'"));
969 EXPECT_EQ(kHLSMaybe,
970 CanPlay("'application/x-mpegurl; codecs=\"AVC3, MP4\"'"));
971 EXPECT_EQ(kHLSMaybe,
972 CanPlay("'application/x-mpegurl; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
973 EXPECT_EQ(kHLSMaybe,
974 CanPlay("'application/x-mpegurl; codecs=\", AVC3.64001F, MP4.40.2\"'"));
975
976 EXPECT_EQ(kHLSMaybe,
977 CanPlay("'application/x-mpegurl; codecs=\"avc2\"'"));
978 EXPECT_EQ(kHLSMaybe,
979 CanPlay("'application/x-mpegurl; codecs=\"avc4\"'"));
980
981 EXPECT_EQ(kHLSMaybe,
982 CanPlay("'application/x-mpegurl; codecs=\"avc1x\"'"));
983 EXPECT_EQ(kHLSMaybe,
984 CanPlay("'application/x-mpegurl; codecs=\"avc3x\"'"));
985 EXPECT_EQ(kHLSMaybe,
986 CanPlay("'application/x-mpegurl; codecs=\"mp4ax\"'"));
987
988 EXPECT_EQ(kHLSMaybe,
989 CanPlay("'application/x-mpegurl; codecs=\"unknown\"'"));
990 // ---------------------------------------------------------------------------
991
992 EXPECT_EQ(kHLSMaybe, CanPlay("'application/vnd.apple.mpegurl'"));
993
994 EXPECT_EQ(kHLSProbably,
995 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1\"'"));
996 EXPECT_EQ(kHLSProbably,
997 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3\"'"));
998 EXPECT_EQ(kHLSProbably,
999 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a\"'"));
1000 EXPECT_EQ(kHLSProbably,
1001 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1, mp4a\"'"));
1002 EXPECT_EQ(kHLSProbably,
1003 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3, mp4a\"'"));
1004
1005 EXPECT_EQ(kHLSProbably,
1006 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1.4D401E\"'"));
1007 EXPECT_EQ(kHLSProbably,
1008 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3.64001F\"'"));
1009 EXPECT_EQ(kHLSProbably,
1010 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.40.2\"'"));
1011
1012 // TODO(amogh.bihani): Change these tests when bug 53193 is fixed.
1013 // http://crbug.com/53193 ----------------------------------------------------
1014 EXPECT_EQ(kHLSProbably,
1015 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1.unknown\"'"));
1016 EXPECT_EQ(kHLSProbably,
1017 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3.unknown\"'"));
1018 EXPECT_EQ(kHLSProbably,
1019 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.unknown\"'"));
1020
1021 EXPECT_EQ(kHLSProbably,
1022 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1.\"'"));
1023 EXPECT_EQ(kHLSProbably,
1024 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3.\"'"));
1025 EXPECT_EQ(kHLSProbably,
1026 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.\"'"));
1027
1028 EXPECT_EQ(kHLSProbably,
1029 CanPlay("'application/vnd.apple.mpegurl; codecs=\"vp8\"'"));
1030 EXPECT_EQ(kHLSProbably,
1031 CanPlay("'application/vnd.apple.mpegurl; codecs=\"vp9\"'"));
1032 EXPECT_EQ(kHLSProbably,
1033 CanPlay("'application/vnd.apple.mpegurl; codecs=\"vorbis\"'"));
1034
1035 EXPECT_EQ(kHLSProbably,
1036 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1, vorbis\"'"));
1037 EXPECT_EQ(kHLSProbably,
1038 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3, vorbis\"'"));
1039 EXPECT_EQ(kHLSProbably,
1040 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1.4D401E, vorbis\"'"));
1041 EXPECT_EQ(kHLSProbably,
1042 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3.64001F, vorbis\"'"));
1043
1044 EXPECT_EQ(kHLSMaybe,
1045 CanPlay("'application/vnd.apple.mpegurl; codecs=\"opus\"'"));
1046 EXPECT_EQ(kHLSMaybe,
1047 CanPlay("'application/vnd.apple.mpegurl; codecs=\"vp8, opus\"'"));
1048 EXPECT_EQ(kHLSMaybe,
1049 CanPlay("'application/vnd.apple.mpegurl; codecs=\"vp9, opus\"'"));
1050
1051 EXPECT_EQ(kHLSMaybe,
1052 CanPlay("'application/vnd.apple.mpegurl; codecs=\"theora\"'"));
1053 EXPECT_EQ(kHLSMaybe,
1054 CanPlay("'application/vnd.apple.mpegurl; codecs=\"theora, vorbis\"'"));
1055 EXPECT_EQ(kHLSMaybe,
1056 CanPlay("'application/vnd.apple.mpegurl; codecs=\"theora, mp4a\"'"));
1057 EXPECT_EQ(kHLSMaybe,
1058 CanPlay("'application/vnd.apple.mpegurl; codecs=\"theora, mp4a.40.2\"'"));
1059
1060 EXPECT_EQ(kHLSMaybe,
1061 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC1\"'"));
1062 EXPECT_EQ(kHLSMaybe,
1063 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC1.4d401e\"'"));
1064 EXPECT_EQ(kHLSMaybe,
1065 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC3\"'"));
1066 EXPECT_EQ(kHLSMaybe,
1067 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC3.64001f\"'"));
1068 EXPECT_EQ(kHLSMaybe,
1069 CanPlay("'application/vnd.apple.mpegurl; codecs=\"MP4A\"'"));
1070 EXPECT_EQ(kHLSMaybe,
1071 CanPlay("'application/vnd.apple.mpegurl; codecs=\"MP4A.40.2\"'"));
1072 EXPECT_EQ(kHLSMaybe,
1073 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC1, MP4\"'"));
1074 EXPECT_EQ(kHLSMaybe,
1075 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC3, MP4\"'"));
1076 EXPECT_EQ(kHLSMaybe,
1077 CanPlay("'application/vnd.apple.mpegurl; "
1078 "codecs=\", AVC1.4D401E, MP4.40.2\"'"));
1079 EXPECT_EQ(kHLSMaybe,
1080 CanPlay("'application/vnd.apple.mpegurl; "
1081 "codecs=\", AVC3.64001F, MP4.40.2\"'"));
1082
1083 EXPECT_EQ(kHLSMaybe,
1084 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc2\"'"));
1085 EXPECT_EQ(kHLSMaybe,
1086 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc4\"'"));
1087
1088 EXPECT_EQ(kHLSMaybe,
1089 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1x\"'"));
1090 EXPECT_EQ(kHLSMaybe,
1091 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3x\"'"));
1092 EXPECT_EQ(kHLSMaybe,
1093 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4ax\"'"));
1094
1095 EXPECT_EQ(kHLSMaybe,
1096 CanPlay("'application/vnd.apple.mpegurl; codecs=\"unknown\"'"));
1097 // ---------------------------------------------------------------------------
1098 }
1099
1100 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | content/content_tests.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698