OLD | NEW |
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 "media/base/test_data_util.h" | 5 #include "media/base/test_data_util.h" |
6 #include "media/formats/common/stream_parser_test_base.h" | 6 #include "media/formats/common/stream_parser_test_base.h" |
7 #include "media/formats/mpeg/mp3_stream_parser.h" | 7 #include "media/formats/mpeg/mp3_stream_parser.h" |
8 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
9 | 9 |
10 namespace media { | 10 namespace media { |
(...skipping 22 matching lines...) Expand all Loading... |
33 "NewSegment" | 33 "NewSegment" |
34 "{ 0K }" | 34 "{ 0K }" |
35 "{ 0K }" | 35 "{ 0K }" |
36 "{ 0K }" | 36 "{ 0K }" |
37 "EndOfSegment" | 37 "EndOfSegment" |
38 "NewSegment" | 38 "NewSegment" |
39 "{ 0K }" | 39 "{ 0K }" |
40 "{ 0K }" | 40 "{ 0K }" |
41 "EndOfSegment"; | 41 "EndOfSegment"; |
42 EXPECT_EQ(expected, ParseFile("sfx.mp3", 17)); | 42 EXPECT_EQ(expected, ParseFile("sfx.mp3", 17)); |
43 EXPECT_GT(last_audio_config().codec_delay(), 0); | |
44 } | 43 } |
45 | 44 |
46 // Test parsing with a larger piece size to verify that multiple buffers | 45 // Test parsing with a larger piece size to verify that multiple buffers |
47 // are passed to |new_buffer_cb_|. | 46 // are passed to |new_buffer_cb_|. |
48 TEST_F(MP3StreamParserTest, UnalignedAppend512) { | 47 TEST_F(MP3StreamParserTest, UnalignedAppend512) { |
49 const std::string expected = | 48 const std::string expected = |
50 "NewSegment" | 49 "NewSegment" |
51 "{ 0K 26K 52K 78K }" | 50 "{ 0K 26K 52K 78K }" |
52 "EndOfSegment" | 51 "EndOfSegment" |
53 "NewSegment" | 52 "NewSegment" |
54 "{ 0K 26K 52K }" | 53 "{ 0K 26K 52K }" |
55 "{ 0K 26K 52K 78K }" | 54 "{ 0K 26K 52K 78K }" |
56 "{ 0K }" | 55 "{ 0K }" |
57 "EndOfSegment"; | 56 "EndOfSegment"; |
58 EXPECT_EQ(expected, ParseFile("sfx.mp3", 512)); | 57 EXPECT_EQ(expected, ParseFile("sfx.mp3", 512)); |
59 EXPECT_GT(last_audio_config().codec_delay(), 0); | |
60 } | 58 } |
61 | 59 |
62 TEST_F(MP3StreamParserTest, MetadataParsing) { | 60 TEST_F(MP3StreamParserTest, MetadataParsing) { |
63 scoped_refptr<DecoderBuffer> buffer = ReadTestDataFile("sfx.mp3"); | 61 scoped_refptr<DecoderBuffer> buffer = ReadTestDataFile("sfx.mp3"); |
64 const uint8_t* buffer_ptr = buffer->data(); | 62 const uint8_t* buffer_ptr = buffer->data(); |
65 | 63 |
66 // The first 32 bytes of sfx.mp3 are an ID3 tag, so no segments should be | 64 // The first 32 bytes of sfx.mp3 are an ID3 tag, so no segments should be |
67 // extracted after appending those bytes. | 65 // extracted after appending those bytes. |
68 const int kId3TagSize = 32; | 66 const int kId3TagSize = 32; |
69 EXPECT_EQ("", ParseData(buffer_ptr, kId3TagSize)); | 67 EXPECT_EQ("", ParseData(buffer_ptr, kId3TagSize)); |
(...skipping 16 matching lines...) Expand all Loading... |
86 buffer_ptr += kXingRemainingSize; | 84 buffer_ptr += kXingRemainingSize; |
87 | 85 |
88 // Append the first real frame and ensure we get a segment. | 86 // Append the first real frame and ensure we get a segment. |
89 const int kFirstRealFrameSize = 182; | 87 const int kFirstRealFrameSize = 182; |
90 EXPECT_EQ("NewSegment{ 0K }EndOfSegment", | 88 EXPECT_EQ("NewSegment{ 0K }EndOfSegment", |
91 ParseData(buffer_ptr, kFirstRealFrameSize)); | 89 ParseData(buffer_ptr, kFirstRealFrameSize)); |
92 EXPECT_TRUE(last_audio_config().IsValidConfig()); | 90 EXPECT_TRUE(last_audio_config().IsValidConfig()); |
93 } | 91 } |
94 | 92 |
95 } // namespace media | 93 } // namespace media |
OLD | NEW |