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

Side by Side Diff: media/filters/chunk_demuxer_unittest.cc

Issue 2572883002: Convert USE_PROPRIETARY_CODECS to a buildflag header. (Closed)
Patch Set: Merge Created 4 years 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 | « media/filters/audio_file_reader_unittest.cc ('k') | media/filters/ffmpeg_demuxer.h » ('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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "media/filters/chunk_demuxer.h" 5 #include "media/filters/chunk_demuxer.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 #include <algorithm> 9 #include <algorithm>
10 #include <utility> 10 #include <utility>
(...skipping 3046 matching lines...) Expand 10 before | Expand all | Expand 10 after
3057 demuxer_->StartWaitingForSeek(seek_time); 3057 demuxer_->StartWaitingForSeek(seek_time);
3058 demuxer_->Seek(seek_time, 3058 demuxer_->Seek(seek_time,
3059 NewExpectedStatusCB(PIPELINE_ERROR_ABORT)); 3059 NewExpectedStatusCB(PIPELINE_ERROR_ABORT));
3060 ExpectRead(DemuxerStream::AUDIO, 0); 3060 ExpectRead(DemuxerStream::AUDIO, 0);
3061 ExpectEndOfStream(DemuxerStream::VIDEO); 3061 ExpectEndOfStream(DemuxerStream::VIDEO);
3062 } 3062 }
3063 3063
3064 TEST_F(ChunkDemuxerTest, CodecPrefixMatching) { 3064 TEST_F(ChunkDemuxerTest, CodecPrefixMatching) {
3065 ChunkDemuxer::Status expected = ChunkDemuxer::kNotSupported; 3065 ChunkDemuxer::Status expected = ChunkDemuxer::kNotSupported;
3066 3066
3067 #if defined(USE_PROPRIETARY_CODECS) 3067 #if BUILDFLAG(USE_PROPRIETARY_CODECS)
3068 #if defined(OS_ANDROID) 3068 #if defined(OS_ANDROID)
3069 if (HasPlatformDecoderSupport()) 3069 if (HasPlatformDecoderSupport())
3070 expected = ChunkDemuxer::kOk; 3070 expected = ChunkDemuxer::kOk;
3071 #else 3071 #else
3072 expected = ChunkDemuxer::kOk; 3072 expected = ChunkDemuxer::kOk;
3073 #endif 3073 #endif
3074 #endif 3074 #endif
3075 3075
3076 EXPECT_EQ(demuxer_->AddId("source_id", "video/mp4", "avc1.4D4041"), expected); 3076 EXPECT_EQ(demuxer_->AddId("source_id", "video/mp4", "avc1.4D4041"), expected);
3077 } 3077 }
3078 3078
3079 // Test codec ID's that are not compliant with RFC6381, but have been 3079 // Test codec ID's that are not compliant with RFC6381, but have been
3080 // seen in the wild. 3080 // seen in the wild.
3081 TEST_F(ChunkDemuxerTest, CodecIDsThatAreNotRFC6381Compliant) { 3081 TEST_F(ChunkDemuxerTest, CodecIDsThatAreNotRFC6381Compliant) {
3082 ChunkDemuxer::Status expected = ChunkDemuxer::kNotSupported; 3082 ChunkDemuxer::Status expected = ChunkDemuxer::kNotSupported;
3083 3083
3084 #if defined(USE_PROPRIETARY_CODECS) 3084 #if BUILDFLAG(USE_PROPRIETARY_CODECS)
3085 expected = ChunkDemuxer::kOk; 3085 expected = ChunkDemuxer::kOk;
3086 #endif 3086 #endif
3087 const char* codec_ids[] = { 3087 const char* codec_ids[] = {
3088 // GPAC places leading zeros on the audio object type. 3088 // GPAC places leading zeros on the audio object type.
3089 "mp4a.40.02", 3089 "mp4a.40.02",
3090 "mp4a.40.05" 3090 "mp4a.40.05"
3091 }; 3091 };
3092 3092
3093 for (size_t i = 0; i < arraysize(codec_ids); ++i) { 3093 for (size_t i = 0; i < arraysize(codec_ids); ++i) {
3094 ChunkDemuxer::Status result = 3094 ChunkDemuxer::Status result =
(...skipping 290 matching lines...) Expand 10 before | Expand all | Expand 10 after
3385 demuxer_->ResetParserState(kSourceId, 3385 demuxer_->ResetParserState(kSourceId,
3386 append_window_start_for_next_append_, 3386 append_window_start_for_next_append_,
3387 append_window_end_for_next_append_, 3387 append_window_end_for_next_append_,
3388 &timestamp_offset_map_[kSourceId]); 3388 &timestamp_offset_map_[kSourceId]);
3389 3389
3390 // After ResetParserState(), parsing should no longer be in the middle of a 3390 // After ResetParserState(), parsing should no longer be in the middle of a
3391 // media segment. 3391 // media segment.
3392 ASSERT_FALSE(demuxer_->IsParsingMediaSegment(kSourceId)); 3392 ASSERT_FALSE(demuxer_->IsParsingMediaSegment(kSourceId));
3393 } 3393 }
3394 3394
3395 #if defined(USE_PROPRIETARY_CODECS) 3395 #if BUILDFLAG(USE_PROPRIETARY_CODECS)
3396 #if BUILDFLAG(ENABLE_MSE_MPEG2TS_STREAM_PARSER) 3396 #if BUILDFLAG(ENABLE_MSE_MPEG2TS_STREAM_PARSER)
3397 namespace { 3397 namespace {
3398 const char* kMp2tMimeType = "video/mp2t"; 3398 const char* kMp2tMimeType = "video/mp2t";
3399 const char* kMp2tCodecs = "mp4a.40.2,avc1.640028"; 3399 const char* kMp2tCodecs = "mp4a.40.2,avc1.640028";
3400 } 3400 }
3401 3401
3402 TEST_F(ChunkDemuxerTest, EmitBuffersDuringAbort) { 3402 TEST_F(ChunkDemuxerTest, EmitBuffersDuringAbort) {
3403 EXPECT_CALL(*this, DemuxerOpened()); 3403 EXPECT_CALL(*this, DemuxerOpened());
3404 EXPECT_MEDIA_LOG(FoundStream("audio")); 3404 EXPECT_MEDIA_LOG(FoundStream("audio"));
3405 EXPECT_MEDIA_LOG(CodecName("audio", "aac")); 3405 EXPECT_MEDIA_LOG(CodecName("audio", "aac"));
(...skipping 1353 matching lines...) Expand 10 before | Expand all | Expand 10 after
4759 if (enable_mp4_vp9_demuxing) { 4759 if (enable_mp4_vp9_demuxing) {
4760 base::CommandLine::ForCurrentProcess()->AppendSwitch( 4760 base::CommandLine::ForCurrentProcess()->AppendSwitch(
4761 switches::kEnableVp9InMp4); 4761 switches::kEnableVp9InMp4);
4762 } 4762 }
4763 } 4763 }
4764 }; 4764 };
4765 4765
4766 TEST_P(ChunkDemuxerMp4Vp9Test, CodecSupport) { 4766 TEST_P(ChunkDemuxerMp4Vp9Test, CodecSupport) {
4767 ChunkDemuxer::Status expected = ChunkDemuxer::kNotSupported; 4767 ChunkDemuxer::Status expected = ChunkDemuxer::kNotSupported;
4768 4768
4769 #if defined(USE_PROPRIETARY_CODECS) 4769 #if BUILDFLAG(USE_PROPRIETARY_CODECS)
4770 const bool enable_mp4_vp9_demuxing = GetParam(); 4770 const bool enable_mp4_vp9_demuxing = GetParam();
4771 if (enable_mp4_vp9_demuxing) { 4771 if (enable_mp4_vp9_demuxing) {
4772 expected = ChunkDemuxer::kOk; 4772 expected = ChunkDemuxer::kOk;
4773 } else { 4773 } else {
4774 EXPECT_MEDIA_LOG(HasSubstr( 4774 EXPECT_MEDIA_LOG(HasSubstr(
4775 "Codec 'vp09.00.01.08.02.01.01.00' is not supported for 'video/mp4'")); 4775 "Codec 'vp09.00.01.08.02.01.01.00' is not supported for 'video/mp4'"));
4776 } 4776 }
4777 #endif 4777 #endif
4778 4778
4779 EXPECT_EQ( 4779 EXPECT_EQ(
4780 demuxer_->AddId("source_id", "video/mp4", "vp09.00.01.08.02.01.01.00"), 4780 demuxer_->AddId("source_id", "video/mp4", "vp09.00.01.08.02.01.01.00"),
4781 expected); 4781 expected);
4782 } 4782 }
4783 4783
4784 INSTANTIATE_TEST_CASE_P(EnableDisableMp4Vp9Demuxing, 4784 INSTANTIATE_TEST_CASE_P(EnableDisableMp4Vp9Demuxing,
4785 ChunkDemuxerMp4Vp9Test, 4785 ChunkDemuxerMp4Vp9Test,
4786 ::testing::Bool()); 4786 ::testing::Bool());
4787 4787
4788 } // namespace media 4788 } // namespace media
OLDNEW
« no previous file with comments | « media/filters/audio_file_reader_unittest.cc ('k') | media/filters/ffmpeg_demuxer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698