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

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

Issue 1292703005: Remove constraint_set_flag checks from ParseH264CodecID(). (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 4 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 | media/base/mime_util.cc » ('j') | 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 576 matching lines...) Expand 10 before | Expand all | Expand 10 after
587 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.42e01e\"'")); 587 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.42e01e\"'"));
588 588
589 // From a YouTube DASH MSE test manifest. 589 // From a YouTube DASH MSE test manifest.
590 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4d401f\"'")); 590 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4d401f\"'"));
591 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4d401e\"'")); 591 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4d401e\"'"));
592 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4d4015\"'")); 592 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4d4015\"'"));
593 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.640028\"'")); 593 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.640028\"'"));
594 594
595 // 595 //
596 // Baseline Profile (66 == 0x42). 596 // Baseline Profile (66 == 0x42).
597 // The first two digits must be 42. The second two must be valid hex, but 597 // The first two digits must be 42. The third digit (constraint_set_flags)
598 // constraint_set_flags are ignored. The last two digits must be any valid 598 // must be valid hex but it otherwise is ignored. The fourth digit (reserved)
599 // level. 599 // must be 0. The last two digits must be any valid level.
600 // 600 //
601 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.42001E\"'")); 601 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.42001E\"'"));
602 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.42401E\"'"));
603 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.42801E\"'"));
602 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.42E00A\"'")); 604 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.42E00A\"'"));
603 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.42G01E\"'")); 605 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.42G01E\"'"));
604 606
605 // The fourth digit must be 0. 607 // The fourth digit must be 0.
606 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.42E11E\"'")); 608 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.42E11E\"'"));
607 609
608 // 610 //
609 // Main Profile (77 == 0x4D). 611 // Main Profile (77 == 0x4D).
610 // The first four digits must be 4D40. 612 // The first two digits must be 4D. The third digit (constraint_set_flags)
611 // The last two digits must be any valid level. 613 // must be valid hex but it otherwise is ignored. The fourth digit (reserved)
614 // must be 0. The last two digits must be any valid level.
612 // 615 //
616 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4D001E\"'"));
613 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4D400A\"'")); 617 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4D400A\"'"));
614 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4D401E\"'")); 618 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4D800A\"'"));
619 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.4DE00A\"'"));
620 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.4DG01E\"'"));
615 621
616 // Other values are not allowed for the third and fourth digits. 622 // The fourth digit must be 0.
617 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.4D301E\"'")); 623 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.4DE11E\"'"));
618 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.4D501E\"'"));
619 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.4D411E\"'"));
620 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.4D4F1E\"'"));
621 624
622 // 625 //
623 // High Profile (100 == 0x64). 626 // High Profile (100 == 0x64).
624 // The first four digits must be 6400. 627 // The first two digits must be 64. The third digit (constraint_set_flags)
625 // The last two digits must be any valid level. 628 // must be valid hex but it otherwise is ignored. The fourth digit (reserved)
629 // must be 0. The last two digits must be any valid level.
626 // 630 //
627 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.64000A\"'"));
628 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.64001E\"'")); 631 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.64001E\"'"));
629 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.64001F\"'")); 632 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.64400A\"'"));
633 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.64800A\"'"));
634 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc1.64E00A\"'"));
635 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.64G01E\"'"));
630 636
631 // Other values are not allowed for the third and fourth digits. 637 // The fourth digit must be 0.
632 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.64101E\"'")); 638 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.64E11E\"'"));
633 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.64f01E\"'"));
634 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.64011E\"'"));
635 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.640F1E\"'"));
636 639
637 // 640 //
638 // Other profiles are not known to be supported. 641 // Other profiles are not known to be supported.
639 // 642 //
640 643
641 // Extended Profile (88 == 0x58). 644 // Extended Profile (88 == 0x58).
642 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.58A01E\"'")); 645 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc1.58A01E\"'"));
643 } 646 }
644 647
645 // When modifying this test, also change CodecSupportTest_Avc1Variants. 648 // When modifying this test, also change CodecSupportTest_Avc1Variants.
(...skipping 13 matching lines...) Expand all
659 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.42e01e\"'")); 662 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.42e01e\"'"));
660 663
661 // From a YouTube DASH MSE test manifest. 664 // From a YouTube DASH MSE test manifest.
662 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4d401f\"'")); 665 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4d401f\"'"));
663 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4d401e\"'")); 666 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4d401e\"'"));
664 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4d4015\"'")); 667 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4d4015\"'"));
665 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.640028\"'")); 668 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.640028\"'"));
666 669
667 // 670 //
668 // Baseline Profile (66 == 0x42). 671 // Baseline Profile (66 == 0x42).
669 // The first two digits must be 42. The second two must be valid hex, but 672 // The first two digits must be 42. The third digit (constraint_set_flags)
670 // constraint_set_flags are ignored. The last two digits must be any valid 673 // must be valid hex but it otherwise is ignored. The fourth digit (reserved)
671 // level. 674 // must be 0. The last two digits must be any valid level.
672 // 675 //
673 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.42001E\"'")); 676 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.42001E\"'"));
677 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.42400A\"'"));
678 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.42800A\"'"));
674 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.42E00A\"'")); 679 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.42E00A\"'"));
675 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.42G01E\"'")); 680 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.42G01E\"'"));
676 681
677 // The fourth digit must be 0. 682 // The fourth digit must be 0.
678 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.42E11E\"'")); 683 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.42E11E\"'"));
679 684
680 // 685 //
681 // Main Profile (77 == 0x4D). 686 // Main Profile (77 == 0x4D).
682 // The first four digits must be 4D40. 687 // The first two digits must be 4D. The third digit (constraint_set_flags)
683 // The last two digits must be any valid level. 688 // must be valid hex but it otherwise is ignored. The fourth digit (reserved)
689 // must be 0. The last two digits must be any valid level.
684 // 690 //
691 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4D001E\"'"));
685 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4D400A\"'")); 692 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4D400A\"'"));
686 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4D401E\"'")); 693 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4D800A\"'"));
694 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.4DE00A\"'"));
695 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.4DG01E\"'"));
687 696
688 // Other values are not allowed for the third and fourth digits. 697 // The fourth digit must be 0.
689 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.4D301E\"'")); 698 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.4DE11E\"'"));
690 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.4D501E\"'"));
691 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.4D411E\"'"));
692 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.4D4F1E\"'"));
693 699
694 // 700 //
695 // High Profile (100 == 0x64). 701 // High Profile (100 == 0x64).
696 // The first four digits must be 6400. 702 // The first two digits must be 64. The third digit (constraint_set_flags)
697 // The last two digits must be any valid level. 703 // must be valid hex but it otherwise is ignored. The fourth digit (reserved)
704 // must be 0. The last two digits must be any valid level.
698 // 705 //
699 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.64000A\"'"));
700 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.64001E\"'")); 706 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.64001E\"'"));
701 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.64001F\"'")); 707 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.64400A\"'"));
708 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.64800A\"'"));
709 EXPECT_EQ(kPropProbably, CanPlay("'video/mp4; codecs=\"avc3.64E00A\"'"));
710 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.64G01E\"'"));
702 711
703 // Other values are not allowed for the third and fourth digits. 712 // The fourth digit must be 0.
704 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.64101E\"'")); 713 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.64E11E\"'"));
705 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.64f01E\"'"));
706 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.64011E\"'"));
707 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.640F1E\"'"));
708 714
709 // 715 //
710 // Other profiles are not known to be supported. 716 // Other profiles are not known to be supported.
711 // 717 //
712 718
713 // Extended Profile (88 == 0x58). 719 // Extended Profile (88 == 0x58).
714 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.58A01E\"'")); 720 EXPECT_EQ(kPropMaybe, CanPlay("'video/mp4; codecs=\"avc3.58A01E\"'"));
715 } 721 }
716 722
717 // Tests AVC levels using AVC1 Baseline (0x42E0zz). 723 // Tests AVC levels using AVC1 Baseline (0x42E0zz).
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after
1003 CanPlay("'application/vnd.apple.mpegurl; " 1009 CanPlay("'application/vnd.apple.mpegurl; "
1004 "codecs=\"avc1.42E01E, mp4a.40\"'")); 1010 "codecs=\"avc1.42E01E, mp4a.40\"'"));
1005 EXPECT_EQ(maybeCanPlayHLS, 1011 EXPECT_EQ(maybeCanPlayHLS,
1006 CanPlay("'application/vnd.apple.mpegurl; " 1012 CanPlay("'application/vnd.apple.mpegurl; "
1007 "codecs=\"avc3.42E01E, mp4a.40\"'")); 1013 "codecs=\"avc3.42E01E, mp4a.40\"'"));
1008 1014
1009 TestMPEGUnacceptableCombinations("application/vnd.apple.mpegurl"); 1015 TestMPEGUnacceptableCombinations("application/vnd.apple.mpegurl");
1010 } 1016 }
1011 1017
1012 } // namespace content 1018 } // namespace content
OLDNEW
« no previous file with comments | « no previous file | media/base/mime_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698