| 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 235 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 246 RunCodecSupportTest( | 246 RunCodecSupportTest( |
| 247 states_to_vary, test_states, | 247 states_to_vary, test_states, |
| 248 [](const MimeUtil::PlatformInfo& info, MimeUtil::Codec codec) { | 248 [](const MimeUtil::PlatformInfo& info, MimeUtil::Codec codec) { |
| 249 const bool result = MimeUtil::IsCodecSupportedOnPlatform( | 249 const bool result = MimeUtil::IsCodecSupportedOnPlatform( |
| 250 codec, kTestMimeType, true, info); | 250 codec, kTestMimeType, true, info); |
| 251 switch (codec) { | 251 switch (codec) { |
| 252 // These codecs are never supported by the Android platform. | 252 // These codecs are never supported by the Android platform. |
| 253 case MimeUtil::INVALID_CODEC: | 253 case MimeUtil::INVALID_CODEC: |
| 254 case MimeUtil::AC3: | 254 case MimeUtil::AC3: |
| 255 case MimeUtil::EAC3: | 255 case MimeUtil::EAC3: |
| 256 case MimeUtil::MPEG2_AAC_LC: | 256 case MimeUtil::MPEG2_AAC: |
| 257 case MimeUtil::MPEG2_AAC_MAIN: | |
| 258 case MimeUtil::MPEG2_AAC_SSR: | |
| 259 case MimeUtil::THEORA: | 257 case MimeUtil::THEORA: |
| 260 EXPECT_FALSE(result); | 258 EXPECT_FALSE(result); |
| 261 break; | 259 break; |
| 262 | 260 |
| 263 // These codecs are always available with platform decoder support. | 261 // These codecs are always available with platform decoder support. |
| 264 case MimeUtil::PCM: | 262 case MimeUtil::PCM: |
| 265 case MimeUtil::MP3: | 263 case MimeUtil::MP3: |
| 266 case MimeUtil::MPEG4_AAC_LC: | 264 case MimeUtil::MPEG4_AAC: |
| 267 case MimeUtil::MPEG4_AAC_SBR_v1: | |
| 268 case MimeUtil::MPEG4_AAC_SBR_PS_v2: | |
| 269 case MimeUtil::VORBIS: | 265 case MimeUtil::VORBIS: |
| 270 case MimeUtil::H264: | 266 case MimeUtil::H264: |
| 271 EXPECT_TRUE(result); | 267 EXPECT_TRUE(result); |
| 272 break; | 268 break; |
| 273 | 269 |
| 274 // The remaining codecs are not available on all platforms even when | 270 // The remaining codecs are not available on all platforms even when |
| 275 // a platform decoder is available. | 271 // a platform decoder is available. |
| 276 case MimeUtil::OPUS: | 272 case MimeUtil::OPUS: |
| 277 EXPECT_EQ(info.supports_opus, result); | 273 EXPECT_EQ(info.supports_opus, result); |
| 278 break; | 274 break; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 304 RunCodecSupportTest( | 300 RunCodecSupportTest( |
| 305 states_to_vary, test_states, | 301 states_to_vary, test_states, |
| 306 [](const MimeUtil::PlatformInfo& info, MimeUtil::Codec codec) { | 302 [](const MimeUtil::PlatformInfo& info, MimeUtil::Codec codec) { |
| 307 const bool result = MimeUtil::IsCodecSupportedOnPlatform( | 303 const bool result = MimeUtil::IsCodecSupportedOnPlatform( |
| 308 codec, kTestMimeType, false, info); | 304 codec, kTestMimeType, false, info); |
| 309 switch (codec) { | 305 switch (codec) { |
| 310 // These codecs are never supported by the Android platform. | 306 // These codecs are never supported by the Android platform. |
| 311 case MimeUtil::INVALID_CODEC: | 307 case MimeUtil::INVALID_CODEC: |
| 312 case MimeUtil::AC3: | 308 case MimeUtil::AC3: |
| 313 case MimeUtil::EAC3: | 309 case MimeUtil::EAC3: |
| 314 case MimeUtil::MPEG2_AAC_LC: | 310 case MimeUtil::MPEG2_AAC: |
| 315 case MimeUtil::MPEG2_AAC_MAIN: | |
| 316 case MimeUtil::MPEG2_AAC_SSR: | |
| 317 case MimeUtil::THEORA: | 311 case MimeUtil::THEORA: |
| 318 EXPECT_FALSE(result); | 312 EXPECT_FALSE(result); |
| 319 break; | 313 break; |
| 320 | 314 |
| 321 // These codecs are always available via MediaPlayer. | 315 // These codecs are always available via MediaPlayer. |
| 322 case MimeUtil::PCM: | 316 case MimeUtil::PCM: |
| 323 case MimeUtil::MP3: | 317 case MimeUtil::MP3: |
| 324 case MimeUtil::MPEG4_AAC_LC: | 318 case MimeUtil::MPEG4_AAC: |
| 325 case MimeUtil::MPEG4_AAC_SBR_v1: | |
| 326 case MimeUtil::MPEG4_AAC_SBR_PS_v2: | |
| 327 case MimeUtil::VORBIS: | 319 case MimeUtil::VORBIS: |
| 328 case MimeUtil::H264: | 320 case MimeUtil::H264: |
| 329 case MimeUtil::VP8: | 321 case MimeUtil::VP8: |
| 330 EXPECT_TRUE(result); | 322 EXPECT_TRUE(result); |
| 331 break; | 323 break; |
| 332 | 324 |
| 333 // The remaining codecs depend on the platform version. | 325 // The remaining codecs depend on the platform version. |
| 334 case MimeUtil::OPUS: | 326 case MimeUtil::OPUS: |
| 335 EXPECT_EQ(info.supports_opus, result); | 327 EXPECT_EQ(info.supports_opus, result); |
| 336 break; | 328 break; |
| (...skipping 27 matching lines...) Expand all Loading... |
| 364 // These codecs are never supported by the Android platform. | 356 // These codecs are never supported by the Android platform. |
| 365 case MimeUtil::INVALID_CODEC: | 357 case MimeUtil::INVALID_CODEC: |
| 366 case MimeUtil::AC3: | 358 case MimeUtil::AC3: |
| 367 case MimeUtil::EAC3: | 359 case MimeUtil::EAC3: |
| 368 case MimeUtil::THEORA: | 360 case MimeUtil::THEORA: |
| 369 EXPECT_FALSE(result); | 361 EXPECT_FALSE(result); |
| 370 break; | 362 break; |
| 371 | 363 |
| 372 // These codecs are always supported with the unified pipeline. | 364 // These codecs are always supported with the unified pipeline. |
| 373 case MimeUtil::PCM: | 365 case MimeUtil::PCM: |
| 374 case MimeUtil::MPEG2_AAC_LC: | 366 case MimeUtil::MPEG2_AAC: |
| 375 case MimeUtil::MPEG2_AAC_MAIN: | |
| 376 case MimeUtil::MPEG2_AAC_SSR: | |
| 377 case MimeUtil::MP3: | 367 case MimeUtil::MP3: |
| 378 case MimeUtil::MPEG4_AAC_LC: | 368 case MimeUtil::MPEG4_AAC: |
| 379 case MimeUtil::MPEG4_AAC_SBR_v1: | |
| 380 case MimeUtil::MPEG4_AAC_SBR_PS_v2: | |
| 381 case MimeUtil::OPUS: | 369 case MimeUtil::OPUS: |
| 382 case MimeUtil::VORBIS: | 370 case MimeUtil::VORBIS: |
| 383 case MimeUtil::VP8: | 371 case MimeUtil::VP8: |
| 384 case MimeUtil::VP9: | 372 case MimeUtil::VP9: |
| 385 EXPECT_TRUE(result); | 373 EXPECT_TRUE(result); |
| 386 break; | 374 break; |
| 387 | 375 |
| 388 // These codecs are only supported if platform decoders are supported. | 376 // These codecs are only supported if platform decoders are supported. |
| 389 case MimeUtil::H264: | 377 case MimeUtil::H264: |
| 390 EXPECT_EQ(info.has_platform_decoders, result); | 378 EXPECT_EQ(info.has_platform_decoders, result); |
| (...skipping 15 matching lines...) Expand all Loading... |
| 406 states_to_vary, test_states, | 394 states_to_vary, test_states, |
| 407 [](const MimeUtil::PlatformInfo& info, MimeUtil::Codec codec) { | 395 [](const MimeUtil::PlatformInfo& info, MimeUtil::Codec codec) { |
| 408 EXPECT_EQ(info.is_unified_media_pipeline_enabled, | 396 EXPECT_EQ(info.is_unified_media_pipeline_enabled, |
| 409 MimeUtil::IsCodecSupportedOnPlatform( | 397 MimeUtil::IsCodecSupportedOnPlatform( |
| 410 MimeUtil::OPUS, "audio/ogg", false, info)); | 398 MimeUtil::OPUS, "audio/ogg", false, info)); |
| 411 }); | 399 }); |
| 412 } | 400 } |
| 413 | 401 |
| 414 } // namespace internal | 402 } // namespace internal |
| 415 } // namespace media | 403 } // namespace media |
| OLD | NEW |