OLD | NEW |
---|---|
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" |
11 | 11 |
12 #if defined(OS_ANDROID) | |
13 #include "base/android/build_info.h" | |
14 #endif | |
15 | |
12 const char* kProbably = "probably"; | 16 const char* kProbably = "probably"; |
xhwang
2014/04/10 23:35:56
These (l.16-l.60) should all be "using const char
| |
13 const char* kMaybe = "maybe"; | 17 const char* kMaybe = "maybe"; |
14 const char* kNot = ""; | 18 const char* kNot = ""; |
15 | 19 |
16 #if defined(USE_PROPRIETARY_CODECS) | 20 #if defined(USE_PROPRIETARY_CODECS) |
17 const char* kPropProbably = "probably"; | 21 const char* kPropProbably = "probably"; |
18 const char* kPropMaybe = "maybe"; | 22 const char* kPropMaybe = "maybe"; |
19 const char* kPropProbablyElseMaybe = "probably"; | 23 const char* kPropProbablyElseMaybe = "probably"; |
20 #else | 24 #else |
21 const char* kPropProbably = ""; | 25 const char* kPropProbably = ""; |
22 const char* kPropMaybe = ""; | 26 const char* kPropMaybe = ""; |
23 const char* kPropProbablyElseMaybe = "maybe"; | 27 const char* kPropProbablyElseMaybe = "maybe"; |
24 #endif // USE_PROPRIETARY_CODECS | 28 #endif // USE_PROPRIETARY_CODECS |
25 | 29 |
30 const char* kVP9Probably = "probably"; | |
31 | |
26 // TODO(amogh.bihani): Change the opus tests when opus is on | 32 // TODO(amogh.bihani): Change the opus tests when opus is on |
27 // Android. (http://crbug.com/318436). | 33 // Android. (http://crbug.com/318436). |
28 #if !defined(OS_ANDROID) | 34 #if !defined(OS_ANDROID) |
29 const char* kOggVideoProbably = "probably"; | 35 const char* kOggVideoProbably = "probably"; |
30 const char* kOggVideoMaybe = "maybe"; | 36 const char* kOggVideoMaybe = "maybe"; |
31 const char* kTheoraProbably = "probably"; | 37 const char* kTheoraProbably = "probably"; |
32 const char* kOpusProbably = "probably"; | 38 const char* kOpusProbably = "probably"; |
33 const char* kOpusProbablyElseMaybe = "probably"; | 39 const char* kOpusProbablyElseMaybe = "probably"; |
34 const char* kHLSProbably = ""; | 40 const char* kHLSProbably = ""; |
35 const char* kHLSMaybe = ""; | 41 const char* kHLSMaybe = ""; |
42 const char* kVP9AndOpusProbably = "probably"; | |
36 #if defined(USE_PROPRIETARY_CODECS) | 43 #if defined(USE_PROPRIETARY_CODECS) |
37 const char* kTheoraAndPropProbably = "probably"; | 44 const char* kTheoraAndPropProbably = "probably"; |
38 const char* kOpusAndPropProbably = "probably"; | 45 const char* kOpusAndPropProbably = "probably"; |
39 #else | 46 #else |
40 const char* kTheoraAndPropProbably = ""; | 47 const char* kTheoraAndPropProbably = ""; |
41 const char* kOpusAndPropProbably = ""; | 48 const char* kOpusAndPropProbably = ""; |
42 #endif // USE_PROPRIETARY_CODECS | 49 #endif // USE_PROPRIETARY_CODECS |
43 #else | 50 #else |
44 const char* kOggVideoProbably = ""; | 51 const char* kOggVideoProbably = ""; |
45 const char* kOggVideoMaybe = ""; | 52 const char* kOggVideoMaybe = ""; |
46 const char* kTheoraProbably = "maybe"; | 53 const char* kTheoraProbably = "maybe"; |
47 const char* kOpusProbably = ""; | 54 const char* kOpusProbably = ""; |
48 const char* kOpusProbablyElseMaybe = "maybe"; | 55 const char* kOpusProbablyElseMaybe = "maybe"; |
49 const char* kTheoraAndPropProbably = "maybe"; | 56 const char* kTheoraAndPropProbably = "maybe"; |
50 const char* kOpusAndPropProbably = "maybe"; | 57 const char* kOpusAndPropProbably = "maybe"; |
51 const char* kHLSProbably = "probably"; | 58 const char* kHLSProbably = "probably"; |
52 const char* kHLSMaybe = "maybe"; | 59 const char* kHLSMaybe = "maybe"; |
60 const char* kVP9AndOpusProbably = ""; | |
53 #endif // !OS_ANDROID | 61 #endif // !OS_ANDROID |
54 | 62 |
55 namespace content { | 63 namespace content { |
56 | 64 |
65 #if defined(OS_ANDROID) | |
66 static void PlatformConfig() { | |
67 if (base::android::BuildInfo::GetInstance()->sdk_int() < 14) { | |
68 kHLSProbably = ""; | |
69 kHLSMaybe = ""; | |
70 } | |
71 if (base::android::BuildInfo::GetInstance()->sdk_int() < 19) | |
72 kVP9Probably = ""; | |
xhwang
2014/04/10 23:35:56
kFoo means it's a const value; changing the pointe
amogh.bihani
2014/04/11 10:43:18
Oh Ok!
I'll change the type and create local funct
| |
73 } | |
74 #endif // OS_ANDROID | |
75 | |
57 class MediaCanPlayTypeTest : public MediaBrowserTest { | 76 class MediaCanPlayTypeTest : public MediaBrowserTest { |
58 public: | 77 public: |
59 MediaCanPlayTypeTest() : url_("about:blank") { } | 78 MediaCanPlayTypeTest() : url_("about:blank") { |
79 #if defined(OS_ANDROID) | |
80 PlatformConfig(); | |
81 #endif // OS_ANDROID | |
82 } | |
60 | 83 |
61 virtual void SetUpOnMainThread() OVERRIDE { | 84 virtual void SetUpOnMainThread() OVERRIDE { |
62 NavigateToURL(shell(), url_); | 85 NavigateToURL(shell(), url_); |
63 } | 86 } |
64 | 87 |
65 std::string CanPlay(const std::string& type) { | 88 std::string CanPlay(const std::string& type) { |
66 std::string command("document.createElement('video').canPlayType("); | 89 std::string command("document.createElement('video').canPlayType("); |
67 command.append(type); | 90 command.append(type); |
68 command.append(")"); | 91 command.append(")"); |
69 | 92 |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
146 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_webm) { | 169 IN_PROC_BROWSER_TEST_F(MediaCanPlayTypeTest, CodecSupportTest_webm) { |
147 EXPECT_EQ(kMaybe, CanPlay("'video/webm'")); | 170 EXPECT_EQ(kMaybe, CanPlay("'video/webm'")); |
148 | 171 |
149 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8\"'")); | 172 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8\"'")); |
150 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8.0\"'")); | 173 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8.0\"'")); |
151 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8, vorbis\"'")); | 174 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8, vorbis\"'")); |
152 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8.0, vorbis\"'")); | 175 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8.0, vorbis\"'")); |
153 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp8, opus\"'")); | 176 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp8, opus\"'")); |
154 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp8.0, opus\"'")); | 177 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp8.0, opus\"'")); |
155 | 178 |
156 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp9\"'")); | 179 EXPECT_EQ(kVP9Probably, CanPlay("'video/webm; codecs=\"vp9\"'")); |
157 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp9.0\"'")); | 180 EXPECT_EQ(kVP9Probably, CanPlay("'video/webm; codecs=\"vp9.0\"'")); |
158 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp9, vorbis\"'")); | 181 EXPECT_EQ(kVP9Probably, CanPlay("'video/webm; codecs=\"vp9, vorbis\"'")); |
159 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp9.0, vorbis\"'")); | 182 EXPECT_EQ(kVP9Probably, CanPlay("'video/webm; codecs=\"vp9.0, vorbis\"'")); |
160 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp9, opus\"'")); | 183 EXPECT_EQ(kVP9AndOpusProbably, CanPlay("'video/webm; codecs=\"vp9, opus\"'")); |
161 EXPECT_EQ(kOpusProbably, CanPlay("'video/webm; codecs=\"vp9.0, opus\"'")); | 184 EXPECT_EQ(kVP9AndOpusProbably, |
185 CanPlay("'video/webm; codecs=\"vp9.0, opus\"'")); | |
162 | 186 |
163 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8, vp9\"'")); | 187 EXPECT_EQ(kVP9Probably, CanPlay("'video/webm; codecs=\"vp8, vp9\"'")); |
164 EXPECT_EQ(kProbably, CanPlay("'video/webm; codecs=\"vp8.0, vp9.0\"'")); | 188 EXPECT_EQ(kVP9Probably, CanPlay("'video/webm; codecs=\"vp8.0, vp9.0\"'")); |
165 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, theora\"'")); | 189 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, theora\"'")); |
166 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, avc1\"'")); | 190 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, avc1\"'")); |
167 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, avc3\"'")); | 191 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, avc3\"'")); |
168 | 192 |
169 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, 1\"'")); | 193 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, 1\"'")); |
170 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8.0, 1\"'")); | 194 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8.0, 1\"'")); |
171 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, mp4a.40.2\"'")); | 195 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8, mp4a.40.2\"'")); |
172 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8.0, mp4a.40.2\"'")); | 196 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp8.0, mp4a.40.2\"'")); |
173 | 197 |
174 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, 1\"'")); | 198 EXPECT_EQ(kNot, CanPlay("'video/webm; codecs=\"vp9, 1\"'")); |
(...skipping 865 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
1040 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4ax\"'")); | 1064 CanPlay("'application/vnd.apple.mpegurl; codecs=\"mp4ax\"'")); |
1041 | 1065 |
1042 EXPECT_EQ(kHLSMaybe, | 1066 EXPECT_EQ(kHLSMaybe, |
1043 CanPlay("'application/vnd.apple.mpegurl; codecs=\"unknown\"'")); | 1067 CanPlay("'application/vnd.apple.mpegurl; codecs=\"unknown\"'")); |
1044 // --------------------------------------------------------------------------- | 1068 // --------------------------------------------------------------------------- |
1045 } | 1069 } |
1046 | 1070 |
1047 #endif // !OS_ANDROID | 1071 #endif // !OS_ANDROID |
1048 | 1072 |
1049 } // namespace content | 1073 } // namespace content |
OLD | NEW |