diff options
author | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-04 20:16:10 +0000 |
---|---|---|
committer | hclam@chromium.org <hclam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-06-04 20:16:10 +0000 |
commit | 80a609dc8bb5cdd53a0383f2f173d3e94257c5a6 (patch) | |
tree | e1ed6eec1977eceeda384bc49ebaf7fae64ba812 /media/base/data_buffer_unittest.cc | |
parent | e116a526fce847f7d19a0576d30b3e8de812d923 (diff) | |
download | chromium_src-80a609dc8bb5cdd53a0383f2f173d3e94257c5a6.zip chromium_src-80a609dc8bb5cdd53a0383f2f173d3e94257c5a6.tar.gz chromium_src-80a609dc8bb5cdd53a0383f2f173d3e94257c5a6.tar.bz2 |
Handle end of stream for media
When FFmpegDemuxer failed to decode a raw packet, the signal of
end of stream should bubble up to the renderers. It is done in
this CL by creating fake buffers.
This change also fixes a bug with video of only 1 frame.
Review URL: http://codereview.chromium.org/113611
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@17656 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/base/data_buffer_unittest.cc')
-rw-r--r-- | media/base/data_buffer_unittest.cc | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/media/base/data_buffer_unittest.cc b/media/base/data_buffer_unittest.cc index 21334f8..161e018 100644 --- a/media/base/data_buffer_unittest.cc +++ b/media/base/data_buffer_unittest.cc @@ -28,17 +28,14 @@ TEST(DataBufferTest, Basic) { buffer->SetDuration(kDurationA); EXPECT_TRUE(kTimestampA == buffer->GetTimestamp()); EXPECT_TRUE(kDurationA == buffer->GetDuration()); - EXPECT_FALSE(buffer->IsEndOfStream()); + EXPECT_TRUE(buffer->IsEndOfStream()); + EXPECT_FALSE(buffer->GetData()); EXPECT_FALSE(buffer->IsDiscontinuous()); buffer->SetTimestamp(kTimestampB); buffer->SetDuration(kDurationB); EXPECT_TRUE(kTimestampB == buffer->GetTimestamp()); EXPECT_TRUE(kDurationB == buffer->GetDuration()); - buffer->SetEndOfStream(true); - EXPECT_TRUE(buffer->IsEndOfStream()); - buffer->SetEndOfStream(false); - EXPECT_FALSE(buffer->IsEndOfStream()); buffer->SetDiscontinuous(true); EXPECT_TRUE(buffer->IsDiscontinuous()); buffer->SetDiscontinuous(false); @@ -53,6 +50,7 @@ TEST(DataBufferTest, Basic) { const uint8* read_only_data = buffer->GetData(); ASSERT_EQ(data, read_only_data); ASSERT_EQ(0, memcmp(read_only_data, kData, kDataSize)); + EXPECT_FALSE(buffer->IsEndOfStream()); data = buffer->GetWritableData(kNewDataSize + 10); ASSERT_TRUE(data); |