Index: webrtc/media/devices/gtkvideorenderer.cc |
diff --git a/webrtc/media/devices/gtkvideorenderer.cc b/webrtc/media/devices/gtkvideorenderer.cc |
index 8fad53d79452d7a95708eae6b6257b67307ea921..91fa933e0d62bf03856971d532e093e2fbc60cf7 100644 |
--- a/webrtc/media/devices/gtkvideorenderer.cc |
+++ b/webrtc/media/devices/gtkvideorenderer.cc |
@@ -16,7 +16,7 @@ |
#include <glib.h> |
#include <gtk/gtk.h> |
-#include "webrtc/media/base/videocommon.h" |
+#include "libyuv/convert_argb.h" |
#include "webrtc/media/engine/webrtcvideoframe.h" |
namespace cricket { |
@@ -92,11 +92,13 @@ void GtkVideoRenderer::OnFrame(const VideoFrame& video_frame) { |
} |
// convert I420 frame to ABGR format, which is accepted by GTK |
- frame.ConvertToRgbBuffer(cricket::FOURCC_ABGR, |
- image_.get(), |
- static_cast<size_t>(frame.width()) * |
- frame.height() * 4, |
- frame.width() * 4); |
+ rtc::scoped_refptr<webrtc::VideoFrameBuffer> buffer( |
+ frame.video_frame_buffer()); |
+ libyuv::I420ToARGB(buffer->DataY(), buffer->StrideY(), |
+ buffer->DataU(), buffer->StrideU(), |
+ buffer->DataV(), buffer->StrideV(), |
+ image_.get(), frame.width() * 4, |
+ buffer->width(), buffer->height()); |
ScopedGdkLock lock; |