Revert "glupload: memcpy on raw data upload"

This reverts commit 82c0189b28.

https://bugzilla.gnome.org/show_bug.cgi?id=752937
This commit is contained in:
Nicolas Dufresne 2015-07-27 15:58:10 -04:00 committed by Nicolas Dufresne
parent a7751aa967
commit eb4d3c352a

View file

@ -760,6 +760,7 @@ static GstGLUploadReturn
_raw_data_upload_perform (gpointer impl, GstBuffer * buffer, _raw_data_upload_perform (gpointer impl, GstBuffer * buffer,
GstBuffer ** outbuf) GstBuffer ** outbuf)
{ {
GstGLMemory *in_tex[GST_GL_UPLOAD_MAX_PLANES] = { 0, };
struct RawUpload *raw = impl; struct RawUpload *raw = impl;
int i; int i;
GstVideoInfo *in_info = &raw->upload->priv->in_info; GstVideoInfo *in_info = &raw->upload->priv->in_info;
@ -770,22 +771,12 @@ _raw_data_upload_perform (gpointer impl, GstBuffer * buffer,
GST_VIDEO_MULTIVIEW_MODE_SEPARATED) GST_VIDEO_MULTIVIEW_MODE_SEPARATED)
max_planes *= GST_VIDEO_INFO_VIEWS (in_info); max_planes *= GST_VIDEO_INFO_VIEWS (in_info);
/* FIXME: buffer pool */ gst_gl_memory_setup_wrapped (raw->upload->context,
&raw->upload->priv->in_info, NULL, raw->in_frame.data, in_tex);
*outbuf = gst_buffer_new (); *outbuf = gst_buffer_new ();
gst_gl_memory_setup_buffer (raw->upload->context, NULL,
&raw->upload->priv->in_info, NULL, *outbuf);
for (i = 0; i < max_planes; i++) { for (i = 0; i < max_planes; i++) {
GstMemory *mem = gst_buffer_peek_memory (*outbuf, i); gst_buffer_append_memory (*outbuf, (GstMemory *) in_tex[i]);
GstMapInfo map_info;
gst_memory_map (mem, &map_info, GST_MAP_WRITE);
memcpy (map_info.data, raw->in_frame.data[i], map_info.size);
gst_memory_unmap (mem, &map_info);
gst_gl_memory_upload_transfer ((GstGLMemory *) mem);
} }
return GST_GL_UPLOAD_DONE; return GST_GL_UPLOAD_DONE;