diff --git a/ChangeLog b/ChangeLog index 93989dda39..ef99ff47f2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2004-01-02 Ronald Bultje + + * sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_init): + * sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_init): + * sys/v4l/gstv4lsrc.c: (gst_v4lsrc_base_init), (gst_v4lsrc_init): + Fix pad template stuff. + 2004-01-02 Ronald Bultje * gst/matroska/ebml-read.c: (gst_ebml_read_sint): diff --git a/sys/v4l/gstv4lmjpegsink.c b/sys/v4l/gstv4lmjpegsink.c index 308e259327..3bde5e1575 100644 --- a/sys/v4l/gstv4lmjpegsink.c +++ b/sys/v4l/gstv4lmjpegsink.c @@ -73,8 +73,6 @@ static GstElementStateReturn gst_v4lmjpegsink_change_state (GstElement static void gst_v4lmjpegsink_set_clock (GstElement *element, GstClock *clock); -static GstPadTemplate *sink_template; - static GstElementClass *parent_class = NULL; static guint gst_v4lmjpegsink_signals[LAST_SIGNAL] = { 0 }; @@ -168,7 +166,10 @@ gst_v4lmjpegsink_class_init (GstV4lMjpegSinkClass *klass) static void gst_v4lmjpegsink_init (GstV4lMjpegSink *v4lmjpegsink) { - v4lmjpegsink->sinkpad = gst_pad_new_from_template (sink_template, "sink"); + GstElementClass *klass = GST_ELEMENT_GET_CLASS (v4lmjpegsink); + + v4lmjpegsink->sinkpad = gst_pad_new_from_template ( + gst_element_class_get_pad_template (klass, "sink"), "sink"); gst_element_add_pad (GST_ELEMENT (v4lmjpegsink), v4lmjpegsink->sinkpad); gst_pad_set_chain_function (v4lmjpegsink->sinkpad, gst_v4lmjpegsink_chain); diff --git a/sys/v4l/gstv4lmjpegsrc.c b/sys/v4l/gstv4lmjpegsrc.c index 08df6a2522..2eb4cd14c7 100644 --- a/sys/v4l/gstv4lmjpegsrc.c +++ b/sys/v4l/gstv4lmjpegsrc.c @@ -103,8 +103,6 @@ static void gst_v4lmjpegsrc_set_clock (GstElement *eleme static GstElementStateReturn gst_v4lmjpegsrc_change_state (GstElement *element); -static GstPadTemplate *src_template; - static GstElementClass *parent_class = NULL; static guint gst_v4lmjpegsrc_signals[LAST_SIGNAL] = { 0 }; @@ -230,9 +228,12 @@ gst_v4lmjpegsrc_class_init (GstV4lMjpegSrcClass *klass) static void gst_v4lmjpegsrc_init (GstV4lMjpegSrc *v4lmjpegsrc) { + GstElementClass *klass = GST_ELEMENT_GET_CLASS (v4lmjpegsrc); + GST_FLAG_SET(GST_ELEMENT(v4lmjpegsrc), GST_ELEMENT_THREAD_SUGGESTED); - v4lmjpegsrc->srcpad = gst_pad_new_from_template (src_template, "src"); + v4lmjpegsrc->srcpad = gst_pad_new_from_template ( + gst_element_class_get_pad_template (klass, "src"), "src"); gst_element_add_pad(GST_ELEMENT(v4lmjpegsrc), v4lmjpegsrc->srcpad); gst_pad_set_get_function (v4lmjpegsrc->srcpad, gst_v4lmjpegsrc_get); diff --git a/sys/v4l/gstv4lsrc.c b/sys/v4l/gstv4lsrc.c index 1805da2366..3ad6e02e88 100644 --- a/sys/v4l/gstv4lsrc.c +++ b/sys/v4l/gstv4lsrc.c @@ -95,8 +95,6 @@ static GstElementStateReturn gst_v4lsrc_change_state (GstElement *element); static void gst_v4lsrc_set_clock (GstElement *element, GstClock *clock); -static GstPadTemplate *src_template = NULL; - static GstElementClass *parent_class = NULL; static guint gst_v4lsrc_signals[LAST_SIGNAL] = { 0 }; @@ -127,6 +125,7 @@ gst_v4lsrc_get_type (void) static void gst_v4lsrc_base_init (gpointer g_class) { + GstPadTemplate *src_template; GstElementClass *gstelement_class = GST_ELEMENT_CLASS (g_class); gst_element_class_set_details (gstelement_class, &gst_v4lsrc_details); @@ -191,9 +190,12 @@ gst_v4lsrc_class_init (GstV4lSrcClass *klass) static void gst_v4lsrc_init (GstV4lSrc *v4lsrc) { + GstElementClass *klass = GST_ELEMENT_GET_CLASS (v4lsrc); + GST_FLAG_SET(GST_ELEMENT(v4lsrc), GST_ELEMENT_THREAD_SUGGESTED); - v4lsrc->srcpad = gst_pad_new_from_template (src_template, "src"); + v4lsrc->srcpad = gst_pad_new_from_template ( + gst_element_class_get_pad_template (klass, "src"), "src"); gst_element_add_pad(GST_ELEMENT(v4lsrc), v4lsrc->srcpad); gst_pad_set_get_function (v4lsrc->srcpad, gst_v4lsrc_get);