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

Side by Side Diff: media/mojo/services/media_type_converters_unittest.cc

Issue 1534273002: Switch to standard integer types in media/. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: more Created 5 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
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 "media/mojo/services/media_type_converters.h" 5 #include "media/mojo/services/media_type_converters.h"
6 6
7 #include <string.h> 7 #include <string.h>
8 8
9 #include "media/base/audio_buffer.h" 9 #include "media/base/audio_buffer.h"
10 #include "media/base/audio_decoder_config.h" 10 #include "media/base/audio_decoder_config.h"
11 #include "media/base/cdm_config.h" 11 #include "media/base/cdm_config.h"
12 #include "media/base/decoder_buffer.h" 12 #include "media/base/decoder_buffer.h"
13 #include "media/base/media_util.h" 13 #include "media/base/media_util.h"
14 #include "media/base/sample_format.h" 14 #include "media/base/sample_format.h"
15 #include "media/base/test_helpers.h" 15 #include "media/base/test_helpers.h"
16 #include "media/base/video_frame.h" 16 #include "media/base/video_frame.h"
17 #include "testing/gtest/include/gtest/gtest.h" 17 #include "testing/gtest/include/gtest/gtest.h"
18 18
19 namespace media { 19 namespace media {
20 20
21 namespace { 21 namespace {
22 22
23 void CompareBytes(uint8* original_data, uint8* result_data, size_t length) { 23 void CompareBytes(uint8_t* original_data, uint8_t* result_data, size_t length) {
24 EXPECT_GT(length, 0u); 24 EXPECT_GT(length, 0u);
25 EXPECT_EQ(memcmp(original_data, result_data, length), 0); 25 EXPECT_EQ(memcmp(original_data, result_data, length), 0);
26 } 26 }
27 27
28 void CompareAudioBuffers(SampleFormat sample_format, 28 void CompareAudioBuffers(SampleFormat sample_format,
29 const scoped_refptr<AudioBuffer>& original, 29 const scoped_refptr<AudioBuffer>& original,
30 const scoped_refptr<AudioBuffer>& result) { 30 const scoped_refptr<AudioBuffer>& result) {
31 EXPECT_EQ(original->frame_count(), result->frame_count()); 31 EXPECT_EQ(original->frame_count(), result->frame_count());
32 EXPECT_EQ(original->timestamp(), result->timestamp()); 32 EXPECT_EQ(original->timestamp(), result->timestamp());
33 EXPECT_EQ(original->duration(), result->duration()); 33 EXPECT_EQ(original->duration(), result->duration());
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
79 EXPECT_EQ(original->natural_size().width(), result->natural_size().width()); 79 EXPECT_EQ(original->natural_size().width(), result->natural_size().width());
80 80
81 CompareVideoPlane(media::VideoFrame::kYPlane, original, result); 81 CompareVideoPlane(media::VideoFrame::kYPlane, original, result);
82 CompareVideoPlane(media::VideoFrame::kUPlane, original, result); 82 CompareVideoPlane(media::VideoFrame::kUPlane, original, result);
83 CompareVideoPlane(media::VideoFrame::kVPlane, original, result); 83 CompareVideoPlane(media::VideoFrame::kVPlane, original, result);
84 } 84 }
85 85
86 } // namespace 86 } // namespace
87 87
88 TEST(MediaTypeConvertersTest, ConvertDecoderBuffer_Normal) { 88 TEST(MediaTypeConvertersTest, ConvertDecoderBuffer_Normal) {
89 const uint8 kData[] = "hello, world"; 89 const uint8_t kData[] = "hello, world";
90 const uint8 kSideData[] = "sideshow bob"; 90 const uint8_t kSideData[] = "sideshow bob";
91 const int kDataSize = arraysize(kData); 91 const int kDataSize = arraysize(kData);
92 const int kSideDataSize = arraysize(kSideData); 92 const int kSideDataSize = arraysize(kSideData);
93 93
94 // Original. 94 // Original.
95 scoped_refptr<DecoderBuffer> buffer(DecoderBuffer::CopyFrom( 95 scoped_refptr<DecoderBuffer> buffer(DecoderBuffer::CopyFrom(
96 reinterpret_cast<const uint8*>(&kData), kDataSize, 96 reinterpret_cast<const uint8_t*>(&kData), kDataSize,
97 reinterpret_cast<const uint8*>(&kSideData), kSideDataSize)); 97 reinterpret_cast<const uint8_t*>(&kSideData), kSideDataSize));
98 buffer->set_timestamp(base::TimeDelta::FromMilliseconds(123)); 98 buffer->set_timestamp(base::TimeDelta::FromMilliseconds(123));
99 buffer->set_duration(base::TimeDelta::FromMilliseconds(456)); 99 buffer->set_duration(base::TimeDelta::FromMilliseconds(456));
100 buffer->set_splice_timestamp(base::TimeDelta::FromMilliseconds(200)); 100 buffer->set_splice_timestamp(base::TimeDelta::FromMilliseconds(200));
101 buffer->set_discard_padding( 101 buffer->set_discard_padding(
102 DecoderBuffer::DiscardPadding(base::TimeDelta::FromMilliseconds(5), 102 DecoderBuffer::DiscardPadding(base::TimeDelta::FromMilliseconds(5),
103 base::TimeDelta::FromMilliseconds(6))); 103 base::TimeDelta::FromMilliseconds(6)));
104 104
105 // Convert from and back. 105 // Convert from and back.
106 interfaces::DecoderBufferPtr ptr(interfaces::DecoderBuffer::From(buffer)); 106 interfaces::DecoderBufferPtr ptr(interfaces::DecoderBuffer::From(buffer));
107 scoped_refptr<DecoderBuffer> result(ptr.To<scoped_refptr<DecoderBuffer>>()); 107 scoped_refptr<DecoderBuffer> result(ptr.To<scoped_refptr<DecoderBuffer>>());
(...skipping 21 matching lines...) Expand all
129 129
130 // Convert from and back. 130 // Convert from and back.
131 interfaces::DecoderBufferPtr ptr(interfaces::DecoderBuffer::From(buffer)); 131 interfaces::DecoderBufferPtr ptr(interfaces::DecoderBuffer::From(buffer));
132 scoped_refptr<DecoderBuffer> result(ptr.To<scoped_refptr<DecoderBuffer>>()); 132 scoped_refptr<DecoderBuffer> result(ptr.To<scoped_refptr<DecoderBuffer>>());
133 133
134 // Compare. 134 // Compare.
135 EXPECT_TRUE(result->end_of_stream()); 135 EXPECT_TRUE(result->end_of_stream());
136 } 136 }
137 137
138 TEST(MediaTypeConvertersTest, ConvertDecoderBuffer_KeyFrame) { 138 TEST(MediaTypeConvertersTest, ConvertDecoderBuffer_KeyFrame) {
139 const uint8 kData[] = "hello, world"; 139 const uint8_t kData[] = "hello, world";
140 const int kDataSize = arraysize(kData); 140 const int kDataSize = arraysize(kData);
141 141
142 // Original. 142 // Original.
143 scoped_refptr<DecoderBuffer> buffer(DecoderBuffer::CopyFrom( 143 scoped_refptr<DecoderBuffer> buffer(DecoderBuffer::CopyFrom(
144 reinterpret_cast<const uint8*>(&kData), kDataSize)); 144 reinterpret_cast<const uint8_t*>(&kData), kDataSize));
145 buffer->set_is_key_frame(true); 145 buffer->set_is_key_frame(true);
146 EXPECT_TRUE(buffer->is_key_frame()); 146 EXPECT_TRUE(buffer->is_key_frame());
147 147
148 // Convert from and back. 148 // Convert from and back.
149 interfaces::DecoderBufferPtr ptr(interfaces::DecoderBuffer::From(buffer)); 149 interfaces::DecoderBufferPtr ptr(interfaces::DecoderBuffer::From(buffer));
150 scoped_refptr<DecoderBuffer> result(ptr.To<scoped_refptr<DecoderBuffer>>()); 150 scoped_refptr<DecoderBuffer> result(ptr.To<scoped_refptr<DecoderBuffer>>());
151 151
152 // Compare. 152 // Compare.
153 // Note: We intentionally do not serialize the data section of the 153 // Note: We intentionally do not serialize the data section of the
154 // DecoderBuffer; no need to check the data here. 154 // DecoderBuffer; no need to check the data here.
155 EXPECT_EQ(kDataSize, result->data_size()); 155 EXPECT_EQ(kDataSize, result->data_size());
156 EXPECT_TRUE(result->is_key_frame()); 156 EXPECT_TRUE(result->is_key_frame());
157 } 157 }
158 158
159 TEST(MediaTypeConvertersTest, ConvertDecoderBuffer_EncryptedBuffer) { 159 TEST(MediaTypeConvertersTest, ConvertDecoderBuffer_EncryptedBuffer) {
160 const uint8 kData[] = "hello, world"; 160 const uint8_t kData[] = "hello, world";
161 const int kDataSize = arraysize(kData); 161 const int kDataSize = arraysize(kData);
162 const char kKeyId[] = "00112233445566778899aabbccddeeff"; 162 const char kKeyId[] = "00112233445566778899aabbccddeeff";
163 const char kIv[] = "0123456789abcdef"; 163 const char kIv[] = "0123456789abcdef";
164 164
165 std::vector<SubsampleEntry> subsamples; 165 std::vector<SubsampleEntry> subsamples;
166 subsamples.push_back(SubsampleEntry(10, 20)); 166 subsamples.push_back(SubsampleEntry(10, 20));
167 subsamples.push_back(SubsampleEntry(30, 40)); 167 subsamples.push_back(SubsampleEntry(30, 40));
168 subsamples.push_back(SubsampleEntry(50, 60)); 168 subsamples.push_back(SubsampleEntry(50, 60));
169 169
170 // Original. 170 // Original.
171 scoped_refptr<DecoderBuffer> buffer(DecoderBuffer::CopyFrom( 171 scoped_refptr<DecoderBuffer> buffer(DecoderBuffer::CopyFrom(
172 reinterpret_cast<const uint8*>(&kData), kDataSize)); 172 reinterpret_cast<const uint8_t*>(&kData), kDataSize));
173 buffer->set_decrypt_config( 173 buffer->set_decrypt_config(
174 make_scoped_ptr(new DecryptConfig(kKeyId, kIv, subsamples))); 174 make_scoped_ptr(new DecryptConfig(kKeyId, kIv, subsamples)));
175 175
176 // Convert from and back. 176 // Convert from and back.
177 interfaces::DecoderBufferPtr ptr(interfaces::DecoderBuffer::From(buffer)); 177 interfaces::DecoderBufferPtr ptr(interfaces::DecoderBuffer::From(buffer));
178 scoped_refptr<DecoderBuffer> result(ptr.To<scoped_refptr<DecoderBuffer>>()); 178 scoped_refptr<DecoderBuffer> result(ptr.To<scoped_refptr<DecoderBuffer>>());
179 179
180 // Compare. 180 // Compare.
181 // Note: We intentionally do not serialize the data section of the 181 // Note: We intentionally do not serialize the data section of the
182 // DecoderBuffer; no need to check the data here. 182 // DecoderBuffer; no need to check the data here.
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
254 scoped_refptr<AudioBuffer> result(ptr.To<scoped_refptr<AudioBuffer>>()); 254 scoped_refptr<AudioBuffer> result(ptr.To<scoped_refptr<AudioBuffer>>());
255 255
256 // Compare. 256 // Compare.
257 EXPECT_TRUE(result->end_of_stream()); 257 EXPECT_TRUE(result->end_of_stream());
258 } 258 }
259 259
260 TEST(MediaTypeConvertersTest, ConvertAudioBuffer_MONO) { 260 TEST(MediaTypeConvertersTest, ConvertAudioBuffer_MONO) {
261 // Original. 261 // Original.
262 const ChannelLayout kChannelLayout = CHANNEL_LAYOUT_MONO; 262 const ChannelLayout kChannelLayout = CHANNEL_LAYOUT_MONO;
263 const int kSampleRate = 48000; 263 const int kSampleRate = 48000;
264 scoped_refptr<AudioBuffer> buffer = MakeAudioBuffer<uint8>( 264 scoped_refptr<AudioBuffer> buffer = MakeAudioBuffer<uint8_t>(
265 kSampleFormatU8, kChannelLayout, 265 kSampleFormatU8, kChannelLayout,
266 ChannelLayoutToChannelCount(kChannelLayout), kSampleRate, 1, 1, 266 ChannelLayoutToChannelCount(kChannelLayout), kSampleRate, 1, 1,
267 kSampleRate / 100, base::TimeDelta()); 267 kSampleRate / 100, base::TimeDelta());
268 268
269 // Convert to and back. 269 // Convert to and back.
270 interfaces::AudioBufferPtr ptr(interfaces::AudioBuffer::From(buffer)); 270 interfaces::AudioBufferPtr ptr(interfaces::AudioBuffer::From(buffer));
271 scoped_refptr<AudioBuffer> result(ptr.To<scoped_refptr<AudioBuffer>>()); 271 scoped_refptr<AudioBuffer> result(ptr.To<scoped_refptr<AudioBuffer>>());
272 272
273 // Compare. 273 // Compare.
274 CompareAudioBuffers(kSampleFormatU8, buffer, result); 274 CompareAudioBuffers(kSampleFormatU8, buffer, result);
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
323 323
324 // Convert to and back. 324 // Convert to and back.
325 interfaces::VideoFramePtr ptr(interfaces::VideoFrame::From(buffer)); 325 interfaces::VideoFramePtr ptr(interfaces::VideoFrame::From(buffer));
326 scoped_refptr<VideoFrame> result(ptr.To<scoped_refptr<VideoFrame>>()); 326 scoped_refptr<VideoFrame> result(ptr.To<scoped_refptr<VideoFrame>>());
327 327
328 // Compare. 328 // Compare.
329 CompareVideoFrames(buffer, result); 329 CompareVideoFrames(buffer, result);
330 } 330 }
331 331
332 } // namespace media 332 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698