summaryrefslogtreecommitdiffstats
path: root/media/cast/test
diff options
context:
space:
mode:
Diffstat (limited to 'media/cast/test')
-rw-r--r--media/cast/test/fake_media_source.cc12
1 files changed, 8 insertions, 4 deletions
diff --git a/media/cast/test/fake_media_source.cc b/media/cast/test/fake_media_source.cc
index 8e411bb..7d58a4c 100644
--- a/media/cast/test/fake_media_source.cc
+++ b/media/cast/test/fake_media_source.cc
@@ -557,10 +557,14 @@ void FakeMediaSource::DecodeVideo(ScopedAVPacket packet) {
video_first_pts_ = avframe->pkt_pts - adjustment_pts;
}
- video_frame_queue_.push(VideoFrame::WrapExternalYuvData(
- media::PIXEL_FORMAT_YV12, size, gfx::Rect(size), size,
- avframe->linesize[0], avframe->linesize[1], avframe->linesize[2],
- avframe->data[0], avframe->data[1], avframe->data[2], timestamp));
+ scoped_refptr<media::VideoFrame> video_frame =
+ VideoFrame::WrapExternalYuvData(
+ media::PIXEL_FORMAT_YV12, size, gfx::Rect(size), size,
+ avframe->linesize[0], avframe->linesize[1], avframe->linesize[2],
+ avframe->data[0], avframe->data[1], avframe->data[2], timestamp);
+ if (!video_frame)
+ return;
+ video_frame_queue_.push(video_frame);
video_frame_queue_.back()->AddDestructionObserver(
base::Bind(&AVFreeFrame, avframe));
last_video_frame_timestamp_ = timestamp;