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

Side by Side Diff: webrtc/modules/video_coding/BUILD.gn

Issue 3011043002: Add VideoProcessorIntegrationTest for MediaCodec implementations. (Closed)
Patch Set: asapersson comments 1. Created 3 years, 3 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
OLDNEW
1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 1 # Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
2 # 2 #
3 # Use of this source code is governed by a BSD-style license 3 # Use of this source code is governed by a BSD-style license
4 # that can be found in the LICENSE file in the root of the source 4 # that can be found in the LICENSE file in the root of the source
5 # tree. An additional intellectual property rights grant can be found 5 # tree. An additional intellectual property rights grant can be found
6 # in the file PATENTS. All contributing project authors may 6 # in the file PATENTS. All contributing project authors may
7 # be found in the AUTHORS file in the root of the source tree. 7 # be found in the AUTHORS file in the root of the source tree.
8 8
9 import("../../webrtc.gni") 9 import("../../webrtc.gni")
10 10
(...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after
359 "../../rtc_base:rtc_base_approved", 359 "../../rtc_base:rtc_base_approved",
360 "../../rtc_base:rtc_task_queue", 360 "../../rtc_base:rtc_task_queue",
361 "../../rtc_base:sequenced_task_checker", 361 "../../rtc_base:sequenced_task_checker",
362 "../../system_wrappers:system_wrappers", 362 "../../system_wrappers:system_wrappers",
363 "../../test:test_support", 363 "../../test:test_support",
364 "../../test:video_test_common", 364 "../../test:video_test_common",
365 "../../test:video_test_support", 365 "../../test:video_test_support",
366 ] 366 ]
367 } 367 }
368 368
369 rtc_source_set("video_coding_videoprocessor_integration_test") { 369 video_coding_modules_tests_resources = [
370 testonly = true 370 "../../../resources/foreman_128x96.yuv",
371 "../../../resources/foreman_160x120.yuv",
372 "../../../resources/foreman_176x144.yuv",
373 "../../../resources/foreman_320x240.yuv",
374 ]
371 375
372 sources = [ 376 if (is_ios || is_mac) {
373 "codecs/test/videoprocessor_integrationtest.cc", 377 bundle_data("video_coding_modules_tests_resources_bundle_data") {
374 "codecs/test/videoprocessor_integrationtest.h", 378 testonly = true
375 ] 379 sources = video_coding_modules_tests_resources
376 380 outputs = [
377 deps = [ 381 "{{bundle_resources_dir}}/{{source_file_part}}",
378 ":video_codecs_test_framework",
379 ":video_coding",
380 ":video_coding_utility",
381 ":webrtc_h264",
382 ":webrtc_vp8",
383 ":webrtc_vp9",
384 "../..:webrtc_common",
385 "../../media:rtc_media",
386 "../../rtc_base:rtc_base_approved",
387 "../../rtc_base:rtc_task_queue",
388 "../../system_wrappers:system_wrappers",
389 "../../test:test_support",
390 "../../test:video_test_common",
391 "../../test:video_test_support",
392 ]
393
394 if (is_android) {
395 sources += [
396 "codecs/test/android_test_initializer.cc",
397 "codecs/test/android_test_initializer.h",
398 ] 382 ]
399
400 deps += [
401 "../../rtc_base:rtc_base_approved",
402 "../../sdk/android:libjingle_peerconnection_jni",
403 "//base",
404 ]
405 }
406
407 if (is_ios || is_mac) {
408 deps += [
409 ":codec_test_objc",
410 "../../media:rtc_media_base",
411 "../../sdk:videotoolbox_objc",
412 ]
413 }
414
415 if (!build_with_chromium && is_clang) {
416 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
417 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
418 } 383 }
419 } 384 }
420 385
421 rtc_source_set("video_coding_modules_tests") { 386 rtc_source_set("video_coding_modules_tests") {
422 testonly = true 387 testonly = true
423 388
424 # Skip restricting visibility on mobile platforms since the tests on those 389 # Skip restricting visibility on mobile platforms since the tests on those
425 # gets additional generated targets which would require many lines here to 390 # gets additional generated targets which would require many lines here to
426 # cover (which would be confusing to read and hard to maintain). 391 # cover (which would be confusing to read and hard to maintain).
427 if (!is_android && !is_ios) { 392 if (!is_android && !is_ios) {
428 visibility = [ "..:modules_tests" ] 393 visibility = [ "..:modules_tests" ]
429 } 394 }
430 sources = [ 395 sources = [
431 "codecs/h264/test/h264_impl_unittest.cc", 396 "codecs/h264/test/h264_impl_unittest.cc",
397 "codecs/test/videoprocessor_integrationtest.cc",
398 "codecs/test/videoprocessor_integrationtest.h",
432 "codecs/test/videoprocessor_integrationtest_libvpx.cc", 399 "codecs/test/videoprocessor_integrationtest_libvpx.cc",
433 "codecs/test/videoprocessor_integrationtest_openh264.cc", 400 "codecs/test/videoprocessor_integrationtest_openh264.cc",
401 "codecs/test/videoprocessor_integrationtest_parameterized.cc",
434 "codecs/vp8/test/vp8_impl_unittest.cc", 402 "codecs/vp8/test/vp8_impl_unittest.cc",
435 "codecs/vp9/test/vp9_impl_unittest.cc", 403 "codecs/vp9/test/vp9_impl_unittest.cc",
436 ] 404 ]
437 405
438 deps = [ 406 deps = [
439 ":video_codecs_test_framework", 407 ":video_codecs_test_framework",
440 ":video_coding_videoprocessor_integration_test", 408 ":video_coding",
409 ":video_coding_utility",
441 ":webrtc_h264", 410 ":webrtc_h264",
442 ":webrtc_vp8", 411 ":webrtc_vp8",
443 ":webrtc_vp9", 412 ":webrtc_vp9",
413 "../..:webrtc_common",
444 "../../api:optional", 414 "../../api:optional",
445 "../../api:video_frame_api", 415 "../../api:video_frame_api",
446 "../../common_video:common_video", 416 "../../common_video",
417 "../../media:rtc_audio_video",
447 "../../rtc_base:rtc_base_approved", 418 "../../rtc_base:rtc_base_approved",
419 "../../system_wrappers",
448 "../../test:field_trial", 420 "../../test:field_trial",
449 "../../test:test_support", 421 "../../test:test_support",
450 "../../test:video_test_common", 422 "../../test:video_test_common",
423 "../../test:video_test_support",
451 "../video_capture", 424 "../video_capture",
452 ] 425 ]
453 426
427 data = video_coding_modules_tests_resources
428
429 if (is_android) {
430 sources += [
431 "codecs/test/android_test_initializer.cc",
432 "codecs/test/android_test_initializer.h",
433 "codecs/test/videoprocessor_integrationtest_mediacodec.cc",
434 ]
435
436 deps += [
437 "../../sdk/android:libjingle_peerconnection_jni",
438 "//base",
439 ]
440 }
441
454 if (is_ios || is_mac) { 442 if (is_ios || is_mac) {
455 deps += [ ":codec_test_objc" ] 443 deps += [
444 ":codec_test_objc",
445 ":video_coding_modules_tests_resources_bundle_data",
446 "../../media:rtc_media_base",
447 "../../sdk:videotoolbox_objc",
448 ]
456 } 449 }
457 450
458 if (rtc_use_h264) { 451 if (rtc_use_h264) {
459 defines = [ "WEBRTC_USE_H264" ] 452 defines = [ "WEBRTC_USE_H264" ]
460 } 453 }
461 454
462 if (!build_with_chromium && is_clang) { 455 if (!build_with_chromium && is_clang) {
463 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). 456 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
464 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
465 }
466 }
467
468 plot_videoprocessor_integrationtest_resources = [
469 "../../../resources/foreman_128x96.yuv",
470 "../../../resources/foreman_160x120.yuv",
471 "../../../resources/foreman_176x144.yuv",
472 "../../../resources/foreman_320x240.yuv",
473 "../../../resources/foreman_cif.yuv",
474 ]
475
476 if (is_ios || is_mac) {
477 bundle_data("plot_videoprocessor_integrationtest_bundle_data") {
478 testonly = true
479 sources = plot_videoprocessor_integrationtest_resources
480 outputs = [
481 "{{bundle_resources_dir}}/{{source_file_part}}",
482 ]
483 }
484 }
485
486 # This executable is meant for local codec perf testing and should not be run
487 # on the trybots/buildbots, hence the existence of this special build target.
488 rtc_test("plot_videoprocessor_integrationtest") {
489 testonly = true
490
491 sources = [
492 "codecs/test/plot_videoprocessor_integrationtest.cc",
493 ]
494
495 deps = [
496 ":video_coding_videoprocessor_integration_test",
497 "../../test:test_main",
498 "../../test:video_test_common",
499 "../video_capture",
500 ]
501
502 data = plot_videoprocessor_integrationtest_resources
503
504 if (is_android) {
505 deps += [
506 "../../rtc_base:rtc_base_approved",
507
508 # TODO(brandtr): Figure out if the java dep below could be moved into
509 # :video_coding_videoprocessor_integration_test, where it belongs.
510 # When that is done, support for Android HW codecs can be added to the
511 # modules_tests target as well.
512 "../../sdk/android:libjingle_peerconnection_java",
513 "../../sdk/android:libjingle_peerconnection_jni",
514 "//base",
515 "//testing/android/native_test:native_test_support",
516 ]
517
518 shard_timeout = 900
519 }
520
521 if (is_ios || is_mac) {
522 deps += [
523 ":codec_test_objc",
524 ":plot_videoprocessor_integrationtest_bundle_data",
525 ]
526 }
527
528 # TODO(brandtr): Remove this define when the modules_tests target properly
529 # loads the Java classes mentioned above.
530 defines = [ "WEBRTC_VIDEOPROCESSOR_INTEGRATIONTEST_HW_CODECS_ENABLED" ]
531
532 if (!build_with_chromium && is_clang) {
533 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
534 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] 457 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
535 } 458 }
536 } 459 }
537 460
538 rtc_source_set("video_coding_unittests") { 461 rtc_source_set("video_coding_unittests") {
539 testonly = true 462 testonly = true
540 463
541 # Skip restricting visibility on mobile platforms since the tests on those 464 # Skip restricting visibility on mobile platforms since the tests on those
542 # gets additional generated targets which would require many lines here to 465 # gets additional generated targets which would require many lines here to
543 # cover (which would be confusing to read and hard to maintain). 466 # cover (which would be confusing to read and hard to maintain).
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
622 } 545 }
623 546
624 # TODO(jschuh): bugs.webrtc.org/1348: fix this warning. 547 # TODO(jschuh): bugs.webrtc.org/1348: fix this warning.
625 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ] 548 configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]
626 if (!build_with_chromium && is_clang) { 549 if (!build_with_chromium && is_clang) {
627 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163). 550 # Suppress warnings from the Chromium Clang plugin (bugs.webrtc.org/163).
628 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ] 551 suppressed_configs += [ "//build/config/clang:find_bad_constructs" ]
629 } 552 }
630 } 553 }
631 } 554 }
OLDNEW
« no previous file with comments | « webrtc/modules/BUILD.gn ('k') | webrtc/modules/video_coding/codecs/test/plot_videoprocessor_integrationtest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698