| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 <stddef.h> | 5 #include <stddef.h> |
| 6 | 6 |
| 7 #include "base/macros.h" | 7 #include "base/macros.h" |
| 8 #include "base/strings/string_split.h" | 8 #include "base/strings/string_split.h" |
| 9 #include "base/strings/stringprintf.h" | 9 #include "base/strings/stringprintf.h" |
| 10 #include "build/build_config.h" | 10 #include "build/build_config.h" |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 104 #if defined(OS_ANDROID) | 104 #if defined(OS_ANDROID) |
| 105 return base::android::BuildInfo::GetInstance()->sdk_int() >= 21; | 105 return base::android::BuildInfo::GetInstance()->sdk_int() >= 21; |
| 106 #else | 106 #else |
| 107 return true; | 107 return true; |
| 108 #endif // defined(OS_ANDROID) | 108 #endif // defined(OS_ANDROID) |
| 109 #else | 109 #else |
| 110 return false; | 110 return false; |
| 111 #endif // BUILDFLAG(ENABLE_HEVC_DEMUXING) | 111 #endif // BUILDFLAG(ENABLE_HEVC_DEMUXING) |
| 112 } | 112 } |
| 113 | 113 |
| 114 // This is to validate MimeUtil::IsCodecSupportedOnPlatform(), which is used |
| 115 // only on Android platform. |
| 116 static bool HasDolbyVisionSupport() { |
| 117 return false; |
| 118 } |
| 119 |
| 114 TEST(MimeUtilTest, CommonMediaMimeType) { | 120 TEST(MimeUtilTest, CommonMediaMimeType) { |
| 115 EXPECT_TRUE(IsSupportedMediaMimeType("audio/webm")); | 121 EXPECT_TRUE(IsSupportedMediaMimeType("audio/webm")); |
| 116 EXPECT_TRUE(IsSupportedMediaMimeType("video/webm")); | 122 EXPECT_TRUE(IsSupportedMediaMimeType("video/webm")); |
| 117 | 123 |
| 118 EXPECT_TRUE(IsSupportedMediaMimeType("audio/wav")); | 124 EXPECT_TRUE(IsSupportedMediaMimeType("audio/wav")); |
| 119 EXPECT_TRUE(IsSupportedMediaMimeType("audio/x-wav")); | 125 EXPECT_TRUE(IsSupportedMediaMimeType("audio/x-wav")); |
| 120 | 126 |
| 121 EXPECT_TRUE(IsSupportedMediaMimeType("audio/flac")); | 127 EXPECT_TRUE(IsSupportedMediaMimeType("audio/flac")); |
| 122 | 128 |
| 123 EXPECT_TRUE(IsSupportedMediaMimeType("audio/ogg")); | 129 EXPECT_TRUE(IsSupportedMediaMimeType("audio/ogg")); |
| (...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 277 EXPECT_EQ(info.has_platform_vp8_decoder, result); | 283 EXPECT_EQ(info.has_platform_vp8_decoder, result); |
| 278 break; | 284 break; |
| 279 | 285 |
| 280 case MimeUtil::VP9: | 286 case MimeUtil::VP9: |
| 281 EXPECT_EQ(info.has_platform_vp9_decoder, result); | 287 EXPECT_EQ(info.has_platform_vp9_decoder, result); |
| 282 break; | 288 break; |
| 283 | 289 |
| 284 case MimeUtil::HEVC: | 290 case MimeUtil::HEVC: |
| 285 EXPECT_EQ(HasHevcSupport(), result); | 291 EXPECT_EQ(HasHevcSupport(), result); |
| 286 break; | 292 break; |
| 293 |
| 294 case MimeUtil::DolbyVision: |
| 295 EXPECT_EQ(HasDolbyVisionSupport(), result); |
| 296 break; |
| 287 } | 297 } |
| 288 }); | 298 }); |
| 289 } | 299 } |
| 290 | 300 |
| 291 TEST(IsCodecSupportedOnPlatformTest, ClearCodecBehavior) { | 301 TEST(IsCodecSupportedOnPlatformTest, ClearCodecBehavior) { |
| 292 MimeUtil::PlatformInfo states_to_vary = VaryAllFields(); | 302 MimeUtil::PlatformInfo states_to_vary = VaryAllFields(); |
| 293 | 303 |
| 294 MimeUtil::PlatformInfo test_states; | 304 MimeUtil::PlatformInfo test_states; |
| 295 | 305 |
| 296 RunCodecSupportTest( | 306 RunCodecSupportTest( |
| (...skipping 24 matching lines...) Expand all Loading... |
| 321 break; | 331 break; |
| 322 | 332 |
| 323 // These codecs are only supported if platform decoders are supported. | 333 // These codecs are only supported if platform decoders are supported. |
| 324 case MimeUtil::H264: | 334 case MimeUtil::H264: |
| 325 EXPECT_EQ(info.has_platform_decoders, result); | 335 EXPECT_EQ(info.has_platform_decoders, result); |
| 326 break; | 336 break; |
| 327 | 337 |
| 328 case MimeUtil::HEVC: | 338 case MimeUtil::HEVC: |
| 329 EXPECT_EQ(HasHevcSupport() && info.has_platform_decoders, result); | 339 EXPECT_EQ(HasHevcSupport() && info.has_platform_decoders, result); |
| 330 break; | 340 break; |
| 341 |
| 342 case MimeUtil::DolbyVision: |
| 343 EXPECT_EQ(HasDolbyVisionSupport(), result); |
| 344 break; |
| 331 } | 345 } |
| 332 }); | 346 }); |
| 333 } | 347 } |
| 334 | 348 |
| 335 TEST(IsCodecSupportedOnPlatformTest, OpusOggSupport) { | 349 TEST(IsCodecSupportedOnPlatformTest, OpusOggSupport) { |
| 336 // Vary all parameters; thus use default initial state. | 350 // Vary all parameters; thus use default initial state. |
| 337 MimeUtil::PlatformInfo states_to_vary = VaryAllFields(); | 351 MimeUtil::PlatformInfo states_to_vary = VaryAllFields(); |
| 338 MimeUtil::PlatformInfo test_states; | 352 MimeUtil::PlatformInfo test_states; |
| 339 | 353 |
| 340 RunCodecSupportTest( | 354 RunCodecSupportTest( |
| (...skipping 18 matching lines...) Expand all Loading... |
| 359 MimeUtil::MPEG2_AAC, "application/vnd.apple.mpegurl", false, info)); | 373 MimeUtil::MPEG2_AAC, "application/vnd.apple.mpegurl", false, info)); |
| 360 EXPECT_FALSE(MimeUtil::IsCodecSupportedOnPlatform( | 374 EXPECT_FALSE(MimeUtil::IsCodecSupportedOnPlatform( |
| 361 MimeUtil::MPEG2_AAC, "audio/mpegurl", false, info)); | 375 MimeUtil::MPEG2_AAC, "audio/mpegurl", false, info)); |
| 362 EXPECT_FALSE(MimeUtil::IsCodecSupportedOnPlatform( | 376 EXPECT_FALSE(MimeUtil::IsCodecSupportedOnPlatform( |
| 363 MimeUtil::MPEG2_AAC, "audio/x-mpegurl", false, info)); | 377 MimeUtil::MPEG2_AAC, "audio/x-mpegurl", false, info)); |
| 364 }); | 378 }); |
| 365 } | 379 } |
| 366 | 380 |
| 367 } // namespace internal | 381 } // namespace internal |
| 368 } // namespace media | 382 } // namespace media |
| OLD | NEW |