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

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

Issue 356403003: Refactoring canPlayType browsertests to have helper methods (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #include <string> 5 #include <string>
6 6
7 #include "content/browser/media/media_browsertest.h" 7 #include "content/browser/media/media_browsertest.h"
8 #include "content/public/test/browser_test_utils.h" 8 #include "content/public/test/browser_test_utils.h"
9 #include "content/public/test/content_browser_test_utils.h" 9 #include "content/public/test/content_browser_test_utils.h"
10 #include "content/shell/browser/shell.h" 10 #include "content/shell/browser/shell.h"
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 command.append(")"); 55 command.append(")");
56 56
57 std::string result; 57 std::string result;
58 EXPECT_TRUE(ExecuteScriptAndExtractString( 58 EXPECT_TRUE(ExecuteScriptAndExtractString(
59 shell()->web_contents(), 59 shell()->web_contents(),
60 "window.domAutomationController.send(" + command + ");", 60 "window.domAutomationController.send(" + command + ");",
61 &result)); 61 &result));
62 return result; 62 return result;
63 } 63 }
64 64
65 void TestMPEGUnacceptableCombinations(std::string mime) {
66 // Codecs must be followed by valid hexadecimal number.
67 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1.unknown\"'"));
68 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3.unknown\"'"));
69 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"mp4a.unknown\"'"));
70
71 // Codecs must not end with a dot.
72 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1.\"'"));
73 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3.\"'"));
74 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"mp4a\"'"));
75 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"mp4a.\"'"));
76 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"mp4a.40.\"'"));
77
78 // Codecs not belonging to MPEG container.
79 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"vorbis\"'"));
80 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1, vorbis\"'"));
81 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3, vorbis\"'"));
82 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1.4D401E, vorbis\"'"));
83 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3.64001F, vorbis\"'"));
84
85 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"opus\"'"));
86 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1, opus\"'"));
87 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3, opus\"'"));
88 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1.4D401E, opus\"'"));
89 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3.64001F, opus\"'"));
90
91 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"vp8\"'"));
92 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"vp9\"'"));
93 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"vp8, mp4a.40\"'"));
94 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"vp9, mp4a.40\"'"));
95 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"vp8, mp4a.40.2\"'"));
96 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"vp9, mp4a.40.2\"'"));
97
98 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"1\"'"));
99 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1, 1\"'"));
100 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3, 1\"'"));
101 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1.4D401E, 1\"'"));
102 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3.64001F, 1\"'"));
103
104 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"theora\"'"));
105 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"theora, mp4a\"'"));
106 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"theora, mp4a.40.2\"'"));
107
108 // Codecs are case sensitive.
109 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"AVC1\"'"));
110 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"AVC1.4d401e\"'"));
111 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"AVC3\"'"));
112 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"AVC3.64001f\"'"));
113 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"MP4A\"'"));
114 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"MP4A.40.2\"'"));
115 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"AVC1, MP4\"'"));
116 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"AVC3, MP4\"'"));
117 EXPECT_EQ(kNot,
118 CanPlay("'" + mime + "; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
119 EXPECT_EQ(kNot,
120 CanPlay("'" + mime + "; codecs=\", AVC3.64001F, MP4.40.2\"'"));
121
122 // Unknown codecs.
123 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc2\"'"));
124 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc4\"'"));
125
126 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc1x\"'"));
127 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"avc3x\"'"));
128 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"mp4ax\"'"));
129
130 EXPECT_EQ(kNot, CanPlay("'" + mime + "; codecs=\"unknown\"'"));
131 }
132
133 void TestOGGUnacceptableCombinations(std::string mime) {
134 // Codecs not belonging to OGG container.
135 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8\"'"));
136 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8.0\"'"));
137 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8, opus\"'"));
138 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8, vorbis\"'"));
139
140 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9\"'"));
141 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9.0\"'"));
142 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9, opus\"'"));
143 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9, vorbis\"'"));
144
145 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1\"'"));
146 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3\"'"));
147 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1.4D401E\"'"));
148 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3.64001F\"'"));
149 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1, vorbis\"'"));
150 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3, vorbis\"'"));
151 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1, opus\"'"));
152 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3, opus\"'"));
153
154 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"mp4a.40\"'"));
155 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"mp4a.40.2\"'"));
156 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"theora, mp4a.40.2\"'"));
157
158 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"1\"'"));
159 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"theora, 1\"'"));
160
161 // Codecs are case sensitive.
162 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"Theora\"'"));
163 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"Opus\"'"));
164 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"Vorbis\"'"));
165 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"Theora, Opus\"'"));
166 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"Theora, Vorbis\"'"));
167
168 // Unknown codecs.
169 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"unknown\"'"));
170 }
171
172 void TestWEBMUnacceptableCombinations(std::string mime) {
173 // Codecs not belonging to WEBM container.
174 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"1\"'"));
175 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8, 1\"'"));
176 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9, 1\"'"));
177 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8.0, 1\"'"));
178 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9.0, 1\"'"));
179
180 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"theora\"'"));
181 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"theora, vorbis\"'"));
182 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"theora, opus\"'"));
183
184 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1\"'"));
185 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3\"'"));
186 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1.4D401E\"'"));
187 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3.64001F\"'"));
188 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1, vorbis\"'"));
189 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3, vorbis\"'"));
190 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1, opus\"'"));
191 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3, opus\"'"));
192
193 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"mp4a.40\"'"));
194 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"mp4a.40.2\"'"));
195 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8, mp4a.40\"'"));
196 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9, mp4a.40\"'"));
197 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8.0, mp4a.40\"'"));
198 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9.0, mp4a.40\"'"));
199
200 // Codecs are case sensitive.
201 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"VP8, Vorbis\"'"));
202 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"VP8.0, Opus\"'"));
203 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"VP9, Vorbis\"'"));
204 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"VP9.0, Opus\"'"));
205
206 // Unknown codec.
207 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"unknown\"'"));
208 }
209
210 void TestWAVUnacceptableCombinations(std::string mime) {
211 // Codecs not belonging to WAV container.
212 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8\"'"));
213 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9\"'"));
214 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp8.0, 1\"'"));
215 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vp9.0, 1\"'"));
216
217 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"vorbis\"'"));
218 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"opus\"'"));
219 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"theora\"'"));
220 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"theora, 1\"'"));
221
222 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1\"'"));
223 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3\"'"));
224 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1.4D401E\"'"));
225 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3.64001F\"'"));
226 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc1, 1\"'"));
227 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"avc3, 1\"'"));
228
229 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"mp4a.40\"'"));
230 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"mp4a.40.2\"'"));
231
232 // Unknown codec.
233 EXPECT_EQ(kNot, CanPlay("'" + mime +"; codecs=\"unknown\"'"));
234 }
235
65 private: 236 private:
66 GURL url_; 237 GURL url_;
67 DISALLOW_COPY_AND_ASSIGN(MediaCanPlayTypeTest); 238 DISALLOW_COPY_AND_ASSIGN(MediaCanPlayTypeTest);
68 }; 239 };
69 240
70 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_wav) { 241 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_wav) {
71 EXPECT_EQ(kMaybe, CanPlay("'audio/wav'")); 242 EXPECT_EQ(kMaybe, CanPlay("'audio/wav'"));
72 EXPECT_EQ(kProbably, CanPlay("'audio/wav; codecs=\"1\"'")); 243 EXPECT_EQ(kProbably, CanPlay("'audio/wav; codecs=\"1\"'"));
73 244
74 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vorbis\"'")); 245 TestWAVUnacceptableCombinations("audio/wav");
75 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"theora\"'"));
76
77 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vp8\"'"));
78 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vp8.0\"'"));
79 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vp9\"'"));
80 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vp9.0\"'"));
81 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"opus\"'"));
82
83 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"avc1\"'"));
84 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"avc3\"'"));
85 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"mp4a\"'"));
86 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"avc1.4D401E\"'"));
87 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"avc3.64001F\"'"));
88 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"mp4a.40.5\"'"));
89
90 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"1, mp4a\"'"));
91 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"1, opus\"'"));
92 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"1, theora\"'"));
93 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"1, vorbis\"'"));
94 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"opus, vorbis\"'"));
95 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"opus, theora\"'"));
96 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"vorbis, mp4a\"'"));
97
98 EXPECT_EQ(kNot, CanPlay("'audio/wav; codecs=\"unknown\"'"));
99 246
100 EXPECT_EQ(kMaybe, CanPlay("'audio/x-wav'")); 247 EXPECT_EQ(kMaybe, CanPlay("'audio/x-wav'"));
101 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"1\"'")); 248 EXPECT_EQ(kProbably, CanPlay("'audio/x-wav; codecs=\"1\"'"));
102 249
103 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"vorbis\"'")); 250 TestWAVUnacceptableCombinations("audio/x-wav");
104 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"theora\"'"));
105
106 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"vp8\"'"));
107 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"vp8.0\"'"));
108 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"vp9\"'"));
109 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"vp9.0\"'"));
110 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"opus\"'"));
111
112 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"avc1\"'"));
113 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"avc3\"'"));
114 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"mp4a\"'"));
115 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"avc1.4D401E\"'"));
116 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"avc3.64001F\"'"));
117 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"mp4a.40.5\"'"));
118
119 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"1, mp4a\"'"));
120 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"1, opus\"'"));
121 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"1, theora\"'"));
122 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"1, vorbis\"'"));
123 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"opus, vorbis\"'"));
124 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"opus, theora\"'"));
125 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"vorbis, mp4a\"'"));
126
127 EXPECT_EQ(kNot, CanPlay("'audio/x-wav; codecs=\"unknown\"'"));
128 } 251 }
129 252
130 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_webm) { 253 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_webm) {
131 // On Android, VP9 is supported only on KitKat and above (API level 19). 254 // On Android, VP9 is supported only on KitKat and above (API level 19).
132 std::string VP9Probably = "probably"; 255 std::string VP9Probably = "probably";
133 std::string VP9AndOpusProbably = "probably"; 256 std::string VP9AndOpusProbably = "probably";
134 #if defined(OS_ANDROID) 257 #if defined(OS_ANDROID)
135 VP9AndOpusProbably = ""; 258 VP9AndOpusProbably = "";
136 if (base::android::BuildInfo::GetInstance()->sdk_int() < 19) 259 if (base::android::BuildInfo::GetInstance()->sdk_int() < 19)
137 VP9Probably = ""; 260 VP9Probably = "";
(...skipping 10 matching lines...) Expand all
148 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp9\"'")); 271 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp9\"'"));
149 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp9.0\"'")); 272 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp9.0\"'"));
150 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp9, vorbis\"'")); 273 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp9, vorbis\"'"));
151 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp9.0, vorbis\"'")); 274 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp9.0, vorbis\"'"));
152 EXPECT_EQ(VP9AndOpusProbably, CanPlay("'video/webm; codecs=\"vp9, opus\"'")); 275 EXPECT_EQ(VP9AndOpusProbably, CanPlay("'video/webm; codecs=\"vp9, opus\"'"));
153 EXPECT_EQ(VP9AndOpusProbably, 276 EXPECT_EQ(VP9AndOpusProbably,
154 CanPlay("'video/webm; codecs=\"vp9.0, opus\"'")); 277 CanPlay("'video/webm; codecs=\"vp9.0, opus\"'"));
155 278
156 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp8, vp9\"'")); 279 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp8, vp9\"'"));
157 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp8.0, vp9.0\"'")); 280 EXPECT_EQ(VP9Probably, CanPlay("'video/webm; codecs=\"vp8.0, vp9.0\"'"));
158 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, theora\"'"));
159 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, avc1\"'"));
160 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, avc3\"'"));
161 281
162 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, 1\"'")); 282 TestWEBMUnacceptableCombinations("video/webm");
163 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8.0, 1\"'"));
164 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, mp4a.40.2\"'"));
165 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8.0, mp4a.40.2\"'"));
166
167 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, 1\"'"));
168 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9.0, 1\"'"));
169 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, mp4a.40.2\"'"));
170 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9.0, mp4a.40.2\"'"));
171
172 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"theora\"'"));
173 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"1\"'"));
174
175 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"avc1\"'"));
176 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"avc3\"'"));
177 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"mp4a\"'"));
178 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"avc1.4D401E\"'"));
179 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"avc3.64001F\"'"));
180 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"mp4a.40.2\"'"));
181
182 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP8\"'"));
183 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP8.0\"'"));
184 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP9\"'"));
185 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"Vp9.0\"'"));
186
187 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP8, Vorbis\"'"));
188 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, Vorbis\"'"));
189 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"VP9, Opus\"'"));
190 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, Opus\"'"));
191
192 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"unknown\"'"));
193 283
194 EXPECT_EQ(kMaybe, CanPlay("'audio/webm'")); 284 EXPECT_EQ(kMaybe, CanPlay("'audio/webm'"));
195 EXPECT_EQ(kProbably, CanPlay("'audio/webm; codecs=\"vorbis\"'")); 285 EXPECT_EQ(kProbably, CanPlay("'audio/webm; codecs=\"vorbis\"'"));
196 EXPECT_EQ(kOpusProbably, CanPlay("'audio/webm; codecs=\"opus\"'")); 286 EXPECT_EQ(kOpusProbably, CanPlay("'audio/webm; codecs=\"opus\"'"));
197 EXPECT_EQ(kOpusProbably, CanPlay("'audio/webm; codecs=\"opus, vorbis\"'")); 287 EXPECT_EQ(kOpusProbably, CanPlay("'audio/webm; codecs=\"opus, vorbis\"'"));
198 288
199 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8\"'")); 289 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8\"'"));
200 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0\"'")); 290 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0\"'"));
201 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8, vorbis\"'")); 291 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8, vorbis\"'"));
202 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0, vorbis\"'")); 292 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0, vorbis\"'"));
203 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8, opus\"'")); 293 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8, opus\"'"));
204 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0, opus\"'")); 294 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp8.0, opus\"'"));
205 295
206 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9\"'")); 296 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9\"'"));
207 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0\"'")); 297 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0\"'"));
208 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9, vorbis\"'")); 298 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9, vorbis\"'"));
209 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0, vorbis\"'")); 299 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0, vorbis\"'"));
210 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9, opus\"'")); 300 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9, opus\"'"));
211 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0, opus\"'")); 301 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vp9.0, opus\"'"));
212 302
213 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"1\"'")); 303 TestWEBMUnacceptableCombinations("audio/webm");
214 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"1, opus\"'"));
215 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"1, vorbis\"'"));
216 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"vorbis, mp4a\"'"));
217
218 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"avc1\"'"));
219 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"avc3\"'"));
220 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"mp4a\"'"));
221 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"avc1.4D401E\"'"));
222 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"avc3.64001F\"'"));
223 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"mp4a.40.2\"'"));
224
225 EXPECT_EQ(kNot, CanPlay("'audio/webm; codecs=\"unknown\"'"));
226 } 304 }
227 305
228 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_ogg) { 306 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_ogg) {
229 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg'")); 307 EXPECT_EQ(kOggVideoMaybe, CanPlay("'video/ogg'"));
230 EXPECT_EQ(kOggVideoProbably, CanPlay("'video/ogg; codecs=\"theora\"'")); 308 EXPECT_EQ(kOggVideoProbably, CanPlay("'video/ogg; codecs=\"theora\"'"));
231 EXPECT_EQ(kOggVideoProbably, 309 EXPECT_EQ(kOggVideoProbably,
232 CanPlay("'video/ogg; codecs=\"theora, vorbis\"'")); 310 CanPlay("'video/ogg; codecs=\"theora, vorbis\"'"));
233 EXPECT_EQ(kOggVideoProbably, 311 EXPECT_EQ(kOggVideoProbably,
234 CanPlay("'video/ogg; codecs=\"theora, opus\"'")); 312 CanPlay("'video/ogg; codecs=\"theora, opus\"'"));
235 EXPECT_EQ(kOggVideoProbably, 313 EXPECT_EQ(kOggVideoProbably,
236 CanPlay("'video/ogg; codecs=\"opus, vorbis\"'")); 314 CanPlay("'video/ogg; codecs=\"opus, vorbis\"'"));
237 315
238 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"vp8\"'")); 316 TestOGGUnacceptableCombinations("video/ogg");
239 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"vp8.0\"'"));
240 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"vp9\"'"));
241 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"vp9.0\"'"));
242
243 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc1\"'"));
244 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc3\"'"));
245 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"mp4a\"'"));
246 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc1, mp4a\"'"));
247 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc1, vorbis\"'"));
248 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc3, mp4a\"'"));
249 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc3, vorbis\"'"));
250 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc1, vp8\"'"));
251 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc3, vp9\"'"));
252 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc1, avc3\"'"));
253
254 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc1.4D401E\"'"));
255 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc3.64001F\"'"));
256 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"mp4a.4.02\"'"));
257 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
258 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc3.64001F, mp4a.40.2\"'"));
259 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc1.4D401E, vorbis\"'"));
260 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"avc3.64001F, vorbis\"'"));
261
262 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"Theora\"'"));
263 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"Opus\"'"));
264 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"Vorbis\"'"));
265 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"Theora, Opus\"'"));
266 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"Theora, Vorbis\"'"));
267
268 EXPECT_EQ(kNot, CanPlay("'video/ogg; codecs=\"unknown\"'"));
269 317
270 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg'")); 318 EXPECT_EQ(kMaybe, CanPlay("'audio/ogg'"));
271 EXPECT_EQ(kProbably, CanPlay("'audio/ogg; codecs=\"vorbis\"'")); 319 EXPECT_EQ(kProbably, CanPlay("'audio/ogg; codecs=\"vorbis\"'"));
272 EXPECT_EQ(kOpusProbably, CanPlay("'audio/ogg; codecs=\"opus\"'")); 320 EXPECT_EQ(kOpusProbably, CanPlay("'audio/ogg; codecs=\"opus\"'"));
273 EXPECT_EQ(kOpusProbably, CanPlay("'audio/ogg; codecs=\"vorbis, opus\"'")); 321 EXPECT_EQ(kOpusProbably, CanPlay("'audio/ogg; codecs=\"vorbis, opus\"'"));
274 322
275 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"theora\"'")); 323 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"theora\"'"));
324 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"theora, opus\"'"));
276 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"theora, vorbis\"'")); 325 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"theora, vorbis\"'"));
277 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"theora, opus\"'"));
278 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"opus, 1\"'"));
279 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"vorbis, 1\"'"));
280 326
281 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"vp8\"'")); 327 TestOGGUnacceptableCombinations("audio/ogg");
282 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"vp8.0\"'"));
283 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"vp9\"'"));
284 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"vp9.0\"'"));
285
286 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"avc1\"'"));
287 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"avc3\"'"));
288 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"mp4a\"'"));
289 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"avc1.4D401E\"'"));
290 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"avc3.64001F\"'"));
291 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"mp4a.40.2\"'"));
292
293 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"Theora\"'"));
294 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"Opus\"'"));
295 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"Vorbis\"'"));
296 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"Theora, Vorbis\"'"));
297 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"Theora, Opus\"'"));
298
299 EXPECT_EQ(kNot, CanPlay("'audio/ogg; codecs=\"unknown\"'"));
300 328
301 EXPECT_EQ(kMaybe, CanPlay("'application/ogg'")); 329 EXPECT_EQ(kMaybe, CanPlay("'application/ogg'"));
302 EXPECT_EQ(kProbably, CanPlay("'application/ogg; codecs=\"vorbis\"'")); 330 EXPECT_EQ(kProbably, CanPlay("'application/ogg; codecs=\"vorbis\"'"));
303 EXPECT_EQ(kTheoraProbably, CanPlay("'application/ogg; codecs=\"theora\"'")); 331 EXPECT_EQ(kTheoraProbably, CanPlay("'application/ogg; codecs=\"theora\"'"));
304 EXPECT_EQ(kOpusProbably, CanPlay("'application/ogg; codecs=\"opus\"'")); 332 EXPECT_EQ(kOpusProbably, CanPlay("'application/ogg; codecs=\"opus\"'"));
305 EXPECT_EQ(kTheoraProbably, 333 EXPECT_EQ(kTheoraProbably,
306 CanPlay("'application/ogg; codecs=\"theora, vorbis\"'")); 334 CanPlay("'application/ogg; codecs=\"theora, vorbis\"'"));
307 EXPECT_EQ(kTheoraProbably, 335 EXPECT_EQ(kTheoraProbably,
308 CanPlay("'application/ogg; codecs=\"theora, opus\"'")); 336 CanPlay("'application/ogg; codecs=\"theora, opus\"'"));
309 EXPECT_EQ(kOpusProbably, 337 EXPECT_EQ(kOpusProbably,
310 CanPlay("'application/ogg; codecs=\"opus, vorbis\"'")); 338 CanPlay("'application/ogg; codecs=\"opus, vorbis\"'"));
311 339
312 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"vp8\"'")); 340 TestOGGUnacceptableCombinations("application/ogg");
313 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"vp8.0\"'"));
314 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"vp9\"'"));
315 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"vp9.0\"'"));
316
317 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc1\"'"));
318 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc3\"'"));
319 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"mp4a\"'"));
320 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc1, mp4a\"'"));
321 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc1, vorbis\"'"));
322 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc3, mp4a\"'"));
323 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc3, vorbis\"'"));
324 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc1, vp8\"'"));
325 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc3, vp9\"'"));
326 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc1, avc3\"'"));
327
328 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc1.4D401E\"'"));
329 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc3.64001F\"'"));
330 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"mp4a.40.2\"'"));
331 EXPECT_EQ(kNot,
332 CanPlay("'application/ogg; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
333 EXPECT_EQ(kNot,
334 CanPlay("'application/ogg; codecs=\"avc3.64001F, mp4a.40.2\"'"));
335 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc1.4D401E, vorbis\"'"));
336 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"avc3.64001F, vorbis\"'"));
337
338 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"Theora\"'"));
339 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"Vorbis\"'"));
340 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"Opus\"'"));
341 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"Theora, Vorbis\"'"));
342 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"Theora, Opus\"'"));
343
344 EXPECT_EQ(kNot, CanPlay("'application/ogg; codecs=\"unknown\"'"));
345 } 341 }
346 342
347 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_mp3) { 343 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_mp3) {
348 EXPECT_EQ(kNot, CanPlay("'video/mp3'")); 344 EXPECT_EQ(kNot, CanPlay("'video/mp3'"));
349 EXPECT_EQ(kNot, CanPlay("'video/mpeg'")); 345 EXPECT_EQ(kNot, CanPlay("'video/mpeg'"));
350 EXPECT_EQ(kNot, CanPlay("'video/x-mp3'")); 346 EXPECT_EQ(kNot, CanPlay("'video/x-mp3'"));
351 347
352 // audio/mpeg does not allow any codecs parameter 348 // audio/mpeg does not allow any codecs parameter
353 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg'")); 349 EXPECT_EQ(kPropProbably, CanPlay("'audio/mpeg'"));
354 350
355 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc1\"'")); 351 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc1\"'"));
356 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc3\"'")); 352 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc3\"'"));
357 353
358 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc1.4D401E\"'")); 354 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc1.4D401E\"'"));
359 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc3.64001F\"'")); 355 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc3.64001F\"'"));
360 356
361 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"mp4a\"'")); 357 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"mp4a\"'"));
362 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"mp4a.40.2\"'")); 358 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"mp4a.40.2\"'"));
363 359
364 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc1.unknown\"'")); 360 TestMPEGUnacceptableCombinations("audio/mpeg");
365 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc3.unknown\"'"));
366 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"mp4a.unknown\"'"));
367
368 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc1.\"'"));
369 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc3.\"'"));
370 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"mp4a.\"'"));
371
372 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"vorbis\"'"));
373 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"opus\"'"));
374 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"theora\"'"));
375 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"vp8\"'"));
376 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"vp8.0\"'"));
377 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"vp9\"'"));
378 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"vp9.0\"'"));
379
380 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"AVC1\"'"));
381 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"AVC1.4d401e\"'"));
382 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"AVC3\"'"));
383 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"AVC3.64001f\"'"));
384 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"MP4A\"'"));
385 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"MP4A.40.2\"'"));
386 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"AVC1, MP4\"'"));
387 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"AVC3, MP4\"'"));
388 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
389 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\", AVC3.64001F, MP4.40.2\"'"));
390
391 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc2\"'"));
392 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc4\"'"));
393
394 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc1x\"'"));
395 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"avc3x\"'"));
396 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"mp4ax\"'"));
397
398 EXPECT_EQ(kNot, CanPlay("'audio/mpeg; codecs=\"unknown\"'"));
399 361
400 // audio/mp3 does not allow any codecs parameter 362 // audio/mp3 does not allow any codecs parameter
401 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3'")); 363 EXPECT_EQ(kPropProbably, CanPlay("'audio/mp3'"));
402 364
403 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc1\"'")); 365 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc1\"'"));
404 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc3\"'")); 366 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc3\"'"));
405 367
406 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc1.4D401E\"'")); 368 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc1.4D401E\"'"));
407 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc3.64001F\"'")); 369 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc3.64001F\"'"));
408 370
409 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"mp4a\"'")); 371 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"mp4a\"'"));
410 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"mp4a.40.2\"'")); 372 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"mp4a.40.2\"'"));
411 373
412 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc1.unknown\"'")); 374 TestMPEGUnacceptableCombinations("audio/mp3");
413 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc3.unknown\"'"));
414 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"mp4a.unknown\"'"));
415
416 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc1.\"'"));
417 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc3.\"'"));
418 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"mp4a.\"'"));
419
420 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"vorbis\"'"));
421 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"opus\"'"));
422 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"theora\"'"));
423 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"vp8\"'"));
424 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"vp8.0\"'"));
425 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"vp9\"'"));
426 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"vp9.0\"'"));
427
428 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"AVC1\"'"));
429 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"AVC1.4d401e\"'"));
430 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"AVC3\"'"));
431 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"AVC3.64001f\"'"));
432 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"MP4A\"'"));
433 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"MP4A.40.2\"'"));
434 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"AVC1, MP4\"'"));
435 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"AVC3, MP4\"'"));
436 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
437 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\", AVC3.64001F, MP4.40.2\"'"));
438
439 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc2\"'"));
440 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc4\"'"));
441
442 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc1x\"'"));
443 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"avc3x\"'"));
444 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"mp4ax\"'"));
445
446 EXPECT_EQ(kNot, CanPlay("'audio/mp3; codecs=\"unknown\"'"));
447 375
448 // audio/x-mp3 does not allow any codecs parameter 376 // audio/x-mp3 does not allow any codecs parameter
449 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3'")); 377 EXPECT_EQ(kPropProbably, CanPlay("'audio/x-mp3'"));
450 378
451 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc1\"'")); 379 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc1\"'"));
452 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc3\"'")); 380 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc3\"'"));
453 381
454 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc1.4D401E\"'")); 382 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc1.4D401E\"'"));
455 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc3.64001F\"'")); 383 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc3.64001F\"'"));
456 384
457 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"mp4a\"'")); 385 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"mp4a\"'"));
458 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"mp4a.40.2\"'")); 386 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"mp4a.40.2\"'"));
459 387
460 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc1.unknown\"'")); 388 TestMPEGUnacceptableCombinations("audio/x-mp3");
461 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc3.unknown\"'"));
462 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"mp4a.unknown\"'"));
463
464 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"vorbis\"'"));
465 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"opus\"'"));
466 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"theora\"'"));
467 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"vp8\"'"));
468 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"vp8.0\"'"));
469 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"vp9\"'"));
470 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"vp9.0\"'"));
471
472 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"AVC1\"'"));
473 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"AVC1.4d401e\"'"));
474 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"AVC3\"'"));
475 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"AVC3.64001f\"'"));
476 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"MP4A\"'"));
477 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"MP4A.40.2\"'"));
478 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"AVC1, MP4\"'"));
479 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"AVC3, MP4\"'"));
480 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
481 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\", AVC3.64001F, MP4.40.2\"'"));
482
483 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc2\"'"));
484 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc4\"'"));
485
486 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc1x\"'"));
487 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"avc3x\"'"));
488 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"mp4ax\"'"));
489
490 EXPECT_EQ(kNot, CanPlay("'audio/x-mp3; codecs=\"unknown\"'"));
491 } 389 }
492 390
493 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_mp4) { 391 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_mp4) {
494 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4'")); 392 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4'"));
495 393
496 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1\"'")); 394 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1\"'"));
497 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3\"'")); 395 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3\"'"));
498 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"mp4a.40\"'")); 396 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"mp4a.40\"'"));
499 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1, mp4a.40\"'")); 397 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1, mp4a.40\"'"));
500 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3, mp4a.40\"'")); 398 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3, mp4a.40\"'"));
501 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1, avc3\"'")); 399 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1, avc3\"'"));
502 400
503 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.4D401E\"'")); 401 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.4D401E\"'"));
504 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.64001F\"'")); 402 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.64001F\"'"));
505 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"mp4a.40.2\"'")); 403 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"mp4a.40.2\"'"));
506 EXPECT_EQ(kPropMaybe, 404 EXPECT_EQ(kPropMaybe,
507 CanPlay("'video/mp4; codecs=\"avc1.4D401E, mp4a.40.2\"'")); 405 CanPlay("'video/mp4; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
508 EXPECT_EQ(kPropMaybe, 406 EXPECT_EQ(kPropMaybe,
509 CanPlay("'video/mp4; codecs=\"avc3.64001F, mp4a.40.5\"'")); 407 CanPlay("'video/mp4; codecs=\"avc3.64001F, mp4a.40.5\"'"));
510 408
511 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc1.unknown\"'")); 409 TestMPEGUnacceptableCombinations("video/mp4");
512 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc3.unknown\"'"));
513 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"mp4a.unknown\"'"));
514
515 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc1.\"'"));
516 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc3.\"'"));
517 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"mp4a\"'"));
518 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"mp4a.\"'"));
519 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"mp4a.40.\"'"));
520
521 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"vp8\"'"));
522 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"vp9\"'"));
523
524 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"vorbis\"'"));
525 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc1, vorbis\"'"));
526 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc3, vorbis\"'"));
527 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc1.4D401E, vorbis\"'"));
528 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc3.64001F, vorbis\"'"));
529
530 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"opus\"'"));
531 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"vp8, opus\"'"));
532 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"vp9, opus\"'"));
533
534 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"theora\"'"));
535 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"theora, vorbis\"'"));
536 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"theora, mp4a\"'"));
537 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"theora, mp4a.40.2\"'"));
538 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"theora, avc1\"'"));
539 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"theora, avc3\"'"));
540 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"theora, avc1.4D401E\"'"));
541 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"theora, avc3.64001F\"'"));
542
543 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"AVC1\"'"));
544 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"AVC1.4d401e\"'"));
545 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"AVC3\"'"));
546 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"AVC3.64001f\"'"));
547 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"MP4A\"'"));
548 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"MP4A.40.2\"'"));
549 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"AVC1, MP4\"'"));
550 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"AVC3, MP4\"'"));
551 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
552 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\", AVC3.64001F, MP4.40.2\"'"));
553
554 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc2\"'"));
555 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc4\"'"));
556
557 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc1x\"'"));
558 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"avc3x\"'"));
559 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"mp4ax\"'"));
560
561 EXPECT_EQ(kNot, CanPlay("'video/mp4; codecs=\"unknown\"'"));
562 410
563 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v'")); 411 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v'"));
564 412
565 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1\"'")); 413 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1\"'"));
566 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc3\"'")); 414 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc3\"'"));
567 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"mp4a.40\"'")); 415 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"mp4a.40\"'"));
568 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1, mp4a.40\"'")); 416 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1, mp4a.40\"'"));
569 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc3, mp4a.40\"'")); 417 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc3, mp4a.40\"'"));
570 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1, avc3\"'")); 418 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1, avc3\"'"));
571 419
572 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1.4D401E\"'")); 420 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc1.4D401E\"'"));
573 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc3.64001F\"'")); 421 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"avc3.64001F\"'"));
574 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"mp4a.40.2\"'")); 422 EXPECT_EQ(kPropMaybe, CanPlay("'video/x-m4v; codecs=\"mp4a.40.2\"'"));
575 EXPECT_EQ(kPropMaybe, 423 EXPECT_EQ(kPropMaybe,
576 CanPlay("'video/x-m4v; codecs=\"avc1.4D401E, mp4a.40.2\"'")); 424 CanPlay("'video/x-m4v; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
577 EXPECT_EQ(kPropMaybe, 425 EXPECT_EQ(kPropMaybe,
578 CanPlay("'video/x-m4v; codecs=\"avc3.64001F, mp4a.40.5\"'")); 426 CanPlay("'video/x-m4v; codecs=\"avc3.64001F, mp4a.40.5\"'"));
579 427
580 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc1.unknown\"'")); 428 TestMPEGUnacceptableCombinations("video/x-m4v");
581 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc3.unknown\"'"));
582 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"mp4a.unknown\"'"));
583
584 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc1.\"'"));
585 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc3.\"'"));
586 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"mp4a\"'"));
587 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"mp4a.\"'"));
588 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"mp4a.40.\"'"));
589
590 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"vp8\"'"));
591 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"vp9\"'"));
592
593 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"vorbis\"'"));
594 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc1, vorbis\"'"));
595 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc3, vorbis\"'"));
596 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc1.4D401E, vorbis\"'"));
597 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc3.64001F, vorbis\"'"));
598
599 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"opus\"'"));
600 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"vp8, opus\"'"));
601 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"vp9, opus\"'"));
602
603 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"theora\"'"));
604 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"theora, vorbis\"'"));
605 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"theora, mp4a\"'"));
606 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"theora, mp4a.40.2\"'"));
607 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"theora, avc1\"'"));
608 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"theora, avc3\"'"));
609 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"theora, avc1.4D401E\"'"));
610 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"theora, avc3.64001F\"'"));
611
612 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"AVC1\"'"));
613 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"AVC1.4d401e\"'"));
614 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"AVC3\"'"));
615 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"AVC3.64001f\"'"));
616 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"MP4A\"'"));
617 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"MP4A.40.2\"'"));
618 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"AVC1, MP4\"'"));
619 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"AVC3, MP4\"'"));
620 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
621 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\", AVC3.64001F, MP4.40.2\"'"));
622
623 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc2\"'"));
624 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc4\"'"));
625
626 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc1x\"'"));
627 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"avc3x\"'"));
628 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"mp4ax\"'"));
629
630 EXPECT_EQ(kNot, CanPlay("'video/x-m4v; codecs=\"unknown\"'"));
631 429
632 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4'")); 430 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4'"));
633 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"mp4a.40\"'")); 431 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"mp4a.40\"'"));
634 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"mp4a.40.2\"'")); 432 EXPECT_EQ(kPropMaybe, CanPlay("'audio/mp4; codecs=\"mp4a.40.2\"'"));
635 433
636 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1\"'")); 434 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1\"'"));
637 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3\"'")); 435 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3\"'"));
638 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1, mp4a.40\"'")); 436 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1, mp4a.40\"'"));
639 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3, mp4a.40\"'")); 437 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3, mp4a.40\"'"));
640 438
641 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1.4D401E\"'")); 439 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1.4D401E\"'"));
642 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3.64001F\"'")); 440 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3.64001F\"'"));
643 441
644 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1.unknown\"'")); 442 TestMPEGUnacceptableCombinations("audio/mp4");
645 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3.unknown\"'"));
646 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"mp4a.unknown\"'"));
647
648 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1.\"'"));
649 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3.\"'"));
650 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"mp4a\"'"));
651 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"mp4a.\"'"));
652 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"mp4a.40.\"'"));
653
654 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
655 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3.64001F mp4a.40.2\"'"));
656 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"mp4a, vorbis\"'"));
657 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"mp4a.40.2, vorbis\"'"));
658
659 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"vorbis\"'"));
660
661 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"vp8\"'"));
662 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"vp8.0\"'"));
663 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"vp9\"'"));
664 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"vp9.0\"'"));
665
666 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"opus\"'"));
667 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"mp4a, opus\"'"));
668 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"vorbis, opus\"'"));
669 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"vp8, opus\"'"));
670 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"vp9, opus\"'"));
671
672 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"theora\"'"));
673 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"theora, vorbis\"'"));
674 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"theora, mp4a\"'"));
675 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1, vorbis\"'"));
676
677 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"AVC1\"'"));
678 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"AVC1.4d401e\"'"));
679 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"AVC3\"'"));
680 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"AVC3.64001f\"'"));
681 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"MP4A\"'"));
682 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"MP4A.40.2\"'"));
683 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"AVC1, MP4\"'"));
684 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"AVC3, MP4\"'"));
685 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
686 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\", AVC3.64001F, MP4.40.2\"'"));
687
688 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc2\"'"));
689 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc4\"'"));
690
691 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc1x\"'"));
692 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"avc3x\"'"));
693 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"mp4ax\"'"));
694
695 EXPECT_EQ(kNot, CanPlay("'audio/mp4; codecs=\"unknown\"'"));
696 443
697 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a'")); 444 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a'"));
698 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"mp4a.40\"'")); 445 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"mp4a.40\"'"));
699 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"mp4a.40.2\"'")); 446 EXPECT_EQ(kPropMaybe, CanPlay("'audio/x-m4a; codecs=\"mp4a.40.2\"'"));
700 447
701 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1\"'")); 448 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1\"'"));
702 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3\"'")); 449 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3\"'"));
703 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1, mp4a\"'")); 450 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1, mp4a\"'"));
704 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3, mp4a\"'")); 451 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3, mp4a\"'"));
705 452
706 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1.4D401E\"'")); 453 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1.4D401E\"'"));
707 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3.64001F\"'")); 454 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3.64001F\"'"));
708 455
709 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1.unknown\"'")); 456 TestMPEGUnacceptableCombinations("audio/x-m4a");
710 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3.unknown\"'"));
711 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"mp4a.unknown\"'"));
712
713 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1.\"'"));
714 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3.\"'"));
715 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"mp4a\"'"));
716 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"mp4a.\"'"));
717 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"mp4a.40.\"'"));
718
719 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
720 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3.64001F mp4a.40.2\"'"));
721 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"mp4a, vorbis\"'"));
722 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"mp4a.40.2, vorbis\"'"));
723
724 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"vorbis\"'"));
725
726 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"vp8\"'"));
727 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"vp8.0\"'"));
728 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"vp9\"'"));
729 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"vp9.0\"'"));
730
731 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"opus\"'"));
732 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"mp4a, opus\"'"));
733 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"vorbis, opus\"'"));
734 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"vp8, opus\"'"));
735 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"vp9, opus\"'"));
736
737 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"theora\"'"));
738 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"theora, vorbis\"'"));
739 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"theora, mp4a\"'"));
740 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1, vorbis\"'"));
741
742 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"AVC1\"'"));
743 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"AVC1.4d401e\"'"));
744 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"AVC3\"'"));
745 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"AVC3.64001f\"'"));
746 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"MP4A\"'"));
747 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"MP4A.40.2\"'"));
748 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"AVC1, MP4\"'"));
749 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"AVC3, MP4\"'"));
750 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
751 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\", AVC3.64001F, MP4.40.2\"'"));
752
753 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc2\"'"));
754 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc4\"'"));
755
756 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc1x\"'"));
757 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"avc3x\"'"));
758 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"mp4ax\"'"));
759
760 EXPECT_EQ(kNot, CanPlay("'audio/x-m4a; codecs=\"unknown\"'"));
761 } 457 }
762 458
763 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_HLS) { 459 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_HLS) {
764 // HLS are supported only on Android IceCreamSandwich and above (API level 14) 460 // HLS are supported only on Android IceCreamSandwich and above (API level 14)
765 std::string canPlayHLS = kNot; 461 std::string canPlayHLS = kNot;
766 #if defined(OS_ANDROID) 462 #if defined(OS_ANDROID)
767 if (base::android::BuildInfo::GetInstance()->sdk_int() > 13) 463 if (base::android::BuildInfo::GetInstance()->sdk_int() > 13)
768 canPlayHLS = kMaybe; 464 canPlayHLS = kMaybe;
769 #endif 465 #endif
770 EXPECT_EQ(canPlayHLS, CanPlay("'application/x-mpegurl'")); 466 EXPECT_EQ(canPlayHLS, CanPlay("'application/x-mpegurl'"));
(...skipping 10 matching lines...) Expand all
781 CanPlay("'application/x-mpegurl; codecs=\"avc1.4D401E\"'")); 477 CanPlay("'application/x-mpegurl; codecs=\"avc1.4D401E\"'"));
782 EXPECT_EQ(canPlayHLS, 478 EXPECT_EQ(canPlayHLS,
783 CanPlay("'application/x-mpegurl; codecs=\"avc3.64001F\"'")); 479 CanPlay("'application/x-mpegurl; codecs=\"avc3.64001F\"'"));
784 EXPECT_EQ(canPlayHLS, 480 EXPECT_EQ(canPlayHLS,
785 CanPlay("'application/x-mpegurl; codecs=\"mp4a.40.2\"'")); 481 CanPlay("'application/x-mpegurl; codecs=\"mp4a.40.2\"'"));
786 EXPECT_EQ(canPlayHLS, 482 EXPECT_EQ(canPlayHLS,
787 CanPlay("'application/x-mpegurl; codecs=\"avc1.4D401E, mp4a.40.2\"'")); 483 CanPlay("'application/x-mpegurl; codecs=\"avc1.4D401E, mp4a.40.2\"'"));
788 EXPECT_EQ(canPlayHLS, 484 EXPECT_EQ(canPlayHLS,
789 CanPlay("'application/x-mpegurl; codecs=\"avc3.64001F, mp4a.40.5\"'")); 485 CanPlay("'application/x-mpegurl; codecs=\"avc3.64001F, mp4a.40.5\"'"));
790 486
791 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc1.unknown\"'")); 487 TestMPEGUnacceptableCombinations("application/x-mpegurl");
792 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc3.unknown\"'"));
793 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"mp4a.unknown\"'"));
794
795 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc1.\"'"));
796 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc3.\"'"));
797 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"mp4a\"'"));
798 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"mp4a.\"'"));
799 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"mp4a.40.\"'"));
800
801 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"vp8\"'"));
802 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"vp9\"'"));
803 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"vorbis\"'"));
804
805 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc1, vorbis\"'"));
806 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc3, vorbis\"'"));
807 EXPECT_EQ(kNot,
808 CanPlay("'application/x-mpegurl; codecs=\"avc1.4D401E, vorbis\"'"));
809 EXPECT_EQ(kNot,
810 CanPlay("'application/x-mpegurl; codecs=\"avc3.64001F, vorbis\"'"));
811
812 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"opus\"'"));
813 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"vp8, opus\"'"));
814 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"vp9, opus\"'"));
815
816 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"theora\"'"));
817 EXPECT_EQ(kNot,
818 CanPlay("'application/x-mpegurl; codecs=\"theora, vorbis\"'"));
819 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"theora, mp4a\"'"));
820 EXPECT_EQ(kNot,
821 CanPlay("'application/x-mpegurl; codecs=\"theora, mp4a.40.2\"'"));
822
823 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"AVC1\"'"));
824 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"AVC1.4d401e\"'"));
825 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"AVC3\"'"));
826 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"AVC3.64001f\"'"));
827 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"MP4A\"'"));
828 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"MP4A.40.2\"'"));
829 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"AVC1, MP4\"'"));
830 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"AVC3, MP4\"'"));
831 EXPECT_EQ(kNot,
832 CanPlay("'application/x-mpegurl; codecs=\", AVC1.4D401E, MP4.40.2\"'"));
833 EXPECT_EQ(kNot,
834 CanPlay("'application/x-mpegurl; codecs=\", AVC3.64001F, MP4.40.2\"'"));
835
836 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc2\"'"));
837 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc4\"'"));
838
839 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc1x\"'"));
840 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"avc3x\"'"));
841 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"mp4ax\"'"));
842
843 EXPECT_EQ(kNot, CanPlay("'application/x-mpegurl; codecs=\"unknown\"'"));
844 488
845 EXPECT_EQ(canPlayHLS, CanPlay("'application/vnd.apple.mpegurl'")); 489 EXPECT_EQ(canPlayHLS, CanPlay("'application/vnd.apple.mpegurl'"));
846 490
847 EXPECT_EQ(canPlayHLS, 491 EXPECT_EQ(canPlayHLS,
848 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1\"'")); 492 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1\"'"));
849 EXPECT_EQ(canPlayHLS, 493 EXPECT_EQ(canPlayHLS,
850 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3\"'")); 494 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3\"'"));
851 EXPECT_EQ(canPlayHLS, 495 EXPECT_EQ(canPlayHLS,
852 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.40\"'")); 496 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.40\"'"));
853 EXPECT_EQ(canPlayHLS, 497 EXPECT_EQ(canPlayHLS,
854 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1, mp4a.40\"'")); 498 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1, mp4a.40\"'"));
855 EXPECT_EQ(canPlayHLS, 499 EXPECT_EQ(canPlayHLS,
856 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3, mp4a.40\"'")); 500 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3, mp4a.40\"'"));
857 501
858 EXPECT_EQ(canPlayHLS, 502 EXPECT_EQ(canPlayHLS,
859 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1.4D401E\"'")); 503 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1.4D401E\"'"));
860 EXPECT_EQ(canPlayHLS, 504 EXPECT_EQ(canPlayHLS,
861 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3.64001F\"'")); 505 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3.64001F\"'"));
862 EXPECT_EQ(canPlayHLS, 506 EXPECT_EQ(canPlayHLS,
863 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.40.2\"'")); 507 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.40.2\"'"));
864 508
865 EXPECT_EQ(kNot, 509 TestMPEGUnacceptableCombinations("application/vnd.apple.mpegurl");
866 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1.unknown\"'"));
867 EXPECT_EQ(kNot,
868 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3.unknown\"'"));
869 EXPECT_EQ(kNot,
870 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.unknown\"'"));
871
872 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1.\"'"));
873 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3.\"'"));
874 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a\"'"));
875 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.\"'"));
876 EXPECT_EQ(kNot,
877 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4a.40.\"'"));
878
879 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"vp8\"'"));
880 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"vp9\"'"));
881 EXPECT_EQ(kNot,
882 CanPlay("'application/vnd.apple.mpegurl; codecs=\"vorbis\"'"));
883
884 EXPECT_EQ(kNot,
885 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1, vorbis\"'"));
886 EXPECT_EQ(kNot,
887 CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3, vorbis\"'"));
888 EXPECT_EQ(kNot,
889 CanPlay(
890 "'application/vnd.apple.mpegurl; codecs=\"avc1.4D401E, vorbis\"'"));
891 EXPECT_EQ(kNot,
892 CanPlay(
893 "'application/vnd.apple.mpegurl; codecs=\"avc3.64001F, vorbis\"'"));
894
895 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"opus\"'"));
896 EXPECT_EQ(kNot,
897 CanPlay("'application/vnd.apple.mpegurl; codecs=\"vp8, opus\"'"));
898 EXPECT_EQ(kNot,
899 CanPlay("'application/vnd.apple.mpegurl; codecs=\"vp9, opus\"'"));
900
901 EXPECT_EQ(kNot,
902 CanPlay("'application/vnd.apple.mpegurl; codecs=\"theora\"'"));
903 EXPECT_EQ(kNot,
904 CanPlay("'application/vnd.apple.mpegurl; codecs=\"theora, vorbis\"'"));
905 EXPECT_EQ(kNot,
906 CanPlay("'application/vnd.apple.mpegurl; codecs=\"theora, mp4a\"'"));
907 EXPECT_EQ(kNot,
908 CanPlay("'application/vnd.apple.mpegurl; codecs=\"theora, mp4a.40.2\"'"));
909
910 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC1\"'"));
911 EXPECT_EQ(kNot,
912 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC1.4d401e\"'"));
913 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC3\"'"));
914 EXPECT_EQ(kNot,
915 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC3.64001f\"'"));
916 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"MP4A\"'"));
917 EXPECT_EQ(kNot,
918 CanPlay("'application/vnd.apple.mpegurl; codecs=\"MP4A.40.2\"'"));
919 EXPECT_EQ(kNot,
920 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC1, MP4\"'"));
921 EXPECT_EQ(kNot,
922 CanPlay("'application/vnd.apple.mpegurl; codecs=\"AVC3, MP4\"'"));
923 EXPECT_EQ(kNot,
924 CanPlay(
925 "'application/vnd.apple.mpegurl; "
926 "codecs=\", AVC1.4D401E, MP4.40.2\"'"));
927 EXPECT_EQ(kNot,
928 CanPlay(
929 "'application/vnd.apple.mpegurl; "
930 "codecs=\", AVC3.64001F, MP4.40.2\"'"));
931
932 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc2\"'"));
933 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc4\"'"));
934
935 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc1x\"'"));
936 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"avc3x\"'"));
937 EXPECT_EQ(kNot, CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4ax\"'"));
938
939 EXPECT_EQ(kNot,
940 CanPlay("'application/vnd.apple.mpegurl; codecs=\"unknown\"'"));
941 } 510 }
942 511
943 } // namespace content 512 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698