Commit cb7d3ba0 authored by Olivier Crête's avatar Olivier Crête

Revert "Create a netbuffer directly instead of using gst_pad_buffer_alloc"

This reverts commit c8cd93a9.
parent 0671c485
...@@ -82,7 +82,6 @@ AS_IF([test "$with_gstreamer" != no], [ ...@@ -82,7 +82,6 @@ AS_IF([test "$with_gstreamer" != no], [
PKG_CHECK_MODULES(GST, [ PKG_CHECK_MODULES(GST, [
gstreamer-0.10 >= 0.10.0 gstreamer-0.10 >= 0.10.0
gstreamer-base-0.10 >= 0.10.0 gstreamer-base-0.10 >= 0.10.0
gstreamer-netbuffer-0.10 >= 0.10.0
], ],
[ [
with_gstreamer=yes with_gstreamer=yes
......
...@@ -195,18 +195,15 @@ gst_nice_src_read_callback (NiceAgent *agent, ...@@ -195,18 +195,15 @@ gst_nice_src_read_callback (NiceAgent *agent,
{ {
GstBaseSrc *basesrc = GST_BASE_SRC (data); GstBaseSrc *basesrc = GST_BASE_SRC (data);
GstNiceSrc *nicesrc = GST_NICE_SRC (basesrc); GstNiceSrc *nicesrc = GST_NICE_SRC (basesrc);
GstNetBuffer *mybuf;
GST_LOG_OBJECT (agent, "Got buffer, getting out of the main loop"); GST_LOG_OBJECT (agent, "Got buffer, getting out of the main loop");
mybuf = gst_netbuffer_new (); nicesrc->flow_ret = gst_pad_alloc_buffer (basesrc->srcpad, nicesrc->offset,
GST_BUFFER_MALLOCDATA (mybuf) = g_memdup (buf, len); len, GST_PAD_CAPS (basesrc->srcpad), &nicesrc->outbuf);
GST_BUFFER_SIZE (mybuf) = len; if (nicesrc->flow_ret == GST_FLOW_OK) {
GST_BUFFER_DATA (mybuf) = GST_BUFFER_MALLOCDATA (mybuf); memcpy (nicesrc->outbuf->data, buf, len);
if (GST_PAD_CAPS (basesrc->srcpad)) nicesrc->outbuf->size = len;
GST_BUFFER_CAPS (mybuf) = gst_caps_ref (GST_PAD_CAPS (basesrc->srcpad)); }
nicesrc->outbuf = GST_BUFFER_CAST (mybuf);
g_main_loop_quit (nicesrc->mainloop); g_main_loop_quit (nicesrc->mainloop);
} }
...@@ -270,6 +267,7 @@ gst_nice_src_create ( ...@@ -270,6 +267,7 @@ gst_nice_src_create (
GST_LOG_OBJECT (nicesrc, "create called"); GST_LOG_OBJECT (nicesrc, "create called");
nicesrc->outbuf = NULL; nicesrc->outbuf = NULL;
nicesrc->offset = offset;
GST_OBJECT_LOCK (basesrc); GST_OBJECT_LOCK (basesrc);
if (nicesrc->unlocked) { if (nicesrc->unlocked) {
...@@ -284,13 +282,12 @@ gst_nice_src_create ( ...@@ -284,13 +282,12 @@ gst_nice_src_create (
GST_LOG_OBJECT (nicesrc, "Got buffer, pushing"); GST_LOG_OBJECT (nicesrc, "Got buffer, pushing");
*buffer = nicesrc->outbuf; *buffer = nicesrc->outbuf;
GST_BUFFER_OFFSET (*buffer) = offset; return nicesrc->flow_ret;
return GST_FLOW_OK;
} else { } else {
GST_LOG_OBJECT (nicesrc, "Got interrupting, returning wrong-state"); GST_LOG_OBJECT (nicesrc, "Got interrupting, returning wrong-state");
return GST_FLOW_WRONG_STATE; return GST_FLOW_WRONG_STATE;
} }
} }
static void static void
......
...@@ -40,7 +40,6 @@ ...@@ -40,7 +40,6 @@
#include <gst/gst.h> #include <gst/gst.h>
#include <gst/base/gstbasesrc.h> #include <gst/base/gstbasesrc.h>
#include <gst/netbuffer/gstnetbuffer.h>
#include <nice/nice.h> #include <nice/nice.h>
...@@ -67,6 +66,8 @@ struct _GstNiceSrc ...@@ -67,6 +66,8 @@ struct _GstNiceSrc
guint stream_id; guint stream_id;
guint component_id; guint component_id;
GMainLoop *mainloop; GMainLoop *mainloop;
guint64 offset;
GstFlowReturn flow_ret;
GstBuffer *outbuf; GstBuffer *outbuf;
gboolean unlocked; gboolean unlocked;
GSource *idle_source; GSource *idle_source;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment