summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordalecurtis@chromium.org <dalecurtis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-06 03:42:07 +0000
committerdalecurtis@chromium.org <dalecurtis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-06 03:42:07 +0000
commit024dcedc6d92974a6eaba0daa6a0a17a3c9c761f (patch)
treec1837ce187d9f2eba50cc9933fc1bf8719699cf8
parent06e4527aac32f9d2405905f7d19bdd10d1c9e092 (diff)
downloadchromium_src-024dcedc6d92974a6eaba0daa6a0a17a3c9c761f.zip
chromium_src-024dcedc6d92974a6eaba0daa6a0a17a3c9c761f.tar.gz
chromium_src-024dcedc6d92974a6eaba0daa6a0a17a3c9c761f.tar.bz2
Fix AudioBuffer verification tests.
The previous tests were not properly accounting for the removed segments in the AudioBus. The offset specified was not taken into consideration when determing the iteration end point. BUG=none TEST=manual inspection of tests. Review URL: https://codereview.chromium.org/261333002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@268401 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--media/base/audio_buffer_queue_unittest.cc6
-rw-r--r--media/base/audio_buffer_unittest.cc56
2 files changed, 43 insertions, 19 deletions
diff --git a/media/base/audio_buffer_queue_unittest.cc b/media/base/audio_buffer_queue_unittest.cc
index e6a148a..dfb2098 100644
--- a/media/base/audio_buffer_queue_unittest.cc
+++ b/media/base/audio_buffer_queue_unittest.cc
@@ -25,7 +25,7 @@ static void VerifyBus(AudioBus* bus,
float increment) {
for (int ch = 0; ch < bus->channels(); ++ch) {
const float v = start + ch * buffer_size * increment;
- for (int i = offset; i < frames; ++i) {
+ for (int i = offset; i < offset + frames; ++i) {
ASSERT_FLOAT_EQ(v + (i - offset) * increment, bus->channel(ch)[i])
<< "i=" << i << ", ch=" << ch;
}
@@ -274,8 +274,8 @@ TEST(AudioBufferQueueTest, ReadS16Planar) {
// Add 24 frames of data.
buffer.Append(
MakeTestBuffer<int16>(kSampleFormatPlanarS16, channel_layout, 1, 1, 4));
- buffer.Append(MakeTestBuffer<int16>(
- kSampleFormatPlanarS16, channel_layout, 100, 5, 20));
+ buffer.Append(
+ MakeTestBuffer<int16>(kSampleFormatPlanarS16, channel_layout, 5, 1, 20));
EXPECT_EQ(24, buffer.frames());
// Read 6 frames from the buffer.
diff --git a/media/base/audio_buffer_unittest.cc b/media/base/audio_buffer_unittest.cc
index c0fbf6b..039dc0a 100644
--- a/media/base/audio_buffer_unittest.cc
+++ b/media/base/audio_buffer_unittest.cc
@@ -11,15 +11,15 @@ namespace media {
static const int kSampleRate = 48000;
-
static void VerifyBusWithOffset(AudioBus* bus,
int offset,
int frames,
float start,
+ float start_offset,
float increment) {
for (int ch = 0; ch < bus->channels(); ++ch) {
- const float v = start + ch * bus->frames() * increment;
- for (int i = offset; i < frames; ++i) {
+ const float v = start_offset + start + ch * bus->frames() * increment;
+ for (int i = offset; i < offset + frames; ++i) {
ASSERT_FLOAT_EQ(v + i * increment, bus->channel(ch)[i]) << "i=" << i
<< ", ch=" << ch;
}
@@ -27,7 +27,7 @@ static void VerifyBusWithOffset(AudioBus* bus,
}
static void VerifyBus(AudioBus* bus, int frames, float start, float increment) {
- VerifyBusWithOffset(bus, 0, frames, start, increment);
+ VerifyBusWithOffset(bus, 0, frames, start, 0, increment);
}
static void TrimRangeTest(SampleFormat sample_format) {
@@ -65,8 +65,12 @@ static void TrimRangeTest(SampleFormat sample_format) {
bus->Zero();
buffer->ReadFrames(buffer->frame_count(), 0, 0, bus.get());
VerifyBus(bus.get(), trim_start, 0, 1);
- VerifyBusWithOffset(
- bus.get(), trim_start, buffer->frame_count() - trim_start, 0, 1);
+ VerifyBusWithOffset(bus.get(),
+ trim_start,
+ buffer->frame_count() - trim_start,
+ 0,
+ trim_length,
+ 1);
// Trim 10ms of frames from the start, which just adjusts the buffer's
// internal start offset.
@@ -78,8 +82,12 @@ static void TrimRangeTest(SampleFormat sample_format) {
bus->Zero();
buffer->ReadFrames(buffer->frame_count(), 0, 0, bus.get());
VerifyBus(bus.get(), trim_start, trim_length, 1);
- VerifyBusWithOffset(
- bus.get(), trim_start, buffer->frame_count() - trim_start, 0, 1);
+ VerifyBusWithOffset(bus.get(),
+ trim_start,
+ buffer->frame_count() - trim_start,
+ trim_length,
+ trim_length,
+ 1);
// Trim 10ms of frames from the end, which just adjusts the buffer's frame
// count.
@@ -90,8 +98,12 @@ static void TrimRangeTest(SampleFormat sample_format) {
bus->Zero();
buffer->ReadFrames(buffer->frame_count(), 0, 0, bus.get());
VerifyBus(bus.get(), trim_start, trim_length, 1);
- VerifyBusWithOffset(
- bus.get(), trim_start, buffer->frame_count() - trim_start, 0, 1);
+ VerifyBusWithOffset(bus.get(),
+ trim_start,
+ buffer->frame_count() - trim_start,
+ trim_length,
+ trim_length,
+ 1);
// Trim another 10ms from the inner portion of the buffer.
buffer->TrimRange(trim_start, trim_start + trim_length);
@@ -101,8 +113,12 @@ static void TrimRangeTest(SampleFormat sample_format) {
bus->Zero();
buffer->ReadFrames(buffer->frame_count(), 0, 0, bus.get());
VerifyBus(bus.get(), trim_start, trim_length, 1);
- VerifyBusWithOffset(
- bus.get(), trim_start, buffer->frame_count() - trim_start, 0, 1);
+ VerifyBusWithOffset(bus.get(),
+ trim_start,
+ buffer->frame_count() - trim_start,
+ trim_length,
+ trim_length * 2,
+ 1);
// Trim off the end using TrimRange() to ensure end index is exclusive.
buffer->TrimRange(buffer->frame_count() - trim_length, buffer->frame_count());
@@ -112,8 +128,12 @@ static void TrimRangeTest(SampleFormat sample_format) {
bus->Zero();
buffer->ReadFrames(buffer->frame_count(), 0, 0, bus.get());
VerifyBus(bus.get(), trim_start, trim_length, 1);
- VerifyBusWithOffset(
- bus.get(), trim_start, buffer->frame_count() - trim_start, 0, 1);
+ VerifyBusWithOffset(bus.get(),
+ trim_start,
+ buffer->frame_count() - trim_start,
+ trim_length,
+ trim_length * 2,
+ 1);
// Trim off the start using TrimRange() to ensure start index is inclusive.
buffer->TrimRange(0, trim_length);
@@ -124,8 +144,12 @@ static void TrimRangeTest(SampleFormat sample_format) {
bus->Zero();
buffer->ReadFrames(buffer->frame_count(), 0, 0, bus.get());
VerifyBus(bus.get(), trim_start, 2 * trim_length, 1);
- VerifyBusWithOffset(
- bus.get(), trim_start, buffer->frame_count() - trim_start, 0, 1);
+ VerifyBusWithOffset(bus.get(),
+ trim_start,
+ buffer->frame_count() - trim_start,
+ trim_length * 2,
+ trim_length * 2,
+ 1);
}
TEST(AudioBufferTest, CopyFrom) {