mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-21 22:58:16 +00:00
gst/videomixer/videomixer.c (gst_videomixer_pad_unlink)
Original commit message from CVS: 2005-10-31 Andy Wingo <wingo@pobox.com> * gst/videomixer/videomixer.c (gst_videomixer_pad_unlink) (gst_videomixer_pad_link): Kill some memleaks. (gst_videomixer_pad_get_property): Style fix. (gst_videomixer_pad_set_property): Style fix. (gst_videomixer_pad_init): Style fix. (gst_videomixer_update_queues): Kill memleak. (gst_videomixer_loop): Kill memleak. (gst_videomixer_collected): Kill memleak.
This commit is contained in:
parent
f8667dcaec
commit
2778e393c6
2 changed files with 21 additions and 18 deletions
11
ChangeLog
11
ChangeLog
|
@ -1,3 +1,14 @@
|
||||||
|
2005-10-31 Andy Wingo <wingo@pobox.com>
|
||||||
|
|
||||||
|
* gst/videomixer/videomixer.c (gst_videomixer_pad_unlink)
|
||||||
|
(gst_videomixer_pad_link): Kill some memleaks.
|
||||||
|
(gst_videomixer_pad_get_property): Style fix.
|
||||||
|
(gst_videomixer_pad_set_property): Style fix.
|
||||||
|
(gst_videomixer_pad_init): Style fix.
|
||||||
|
(gst_videomixer_update_queues): Kill memleak.
|
||||||
|
(gst_videomixer_loop): Kill memleak.
|
||||||
|
(gst_videomixer_collected): Kill memleak.
|
||||||
|
|
||||||
2005-10-31 Edgard Lima <edgard.lima@indt.org.br>
|
2005-10-31 Edgard Lima <edgard.lima@indt.org.br>
|
||||||
|
|
||||||
* gst/auparse/gstauparse.c: gst_auparse_init, gst_auparse_chain,
|
* gst/auparse/gstauparse.c: gst_auparse_init, gst_auparse_chain,
|
||||||
|
|
|
@ -173,11 +173,7 @@ static void
|
||||||
gst_videomixer_pad_get_property (GObject * object, guint prop_id,
|
gst_videomixer_pad_get_property (GObject * object, guint prop_id,
|
||||||
GValue * value, GParamSpec * pspec)
|
GValue * value, GParamSpec * pspec)
|
||||||
{
|
{
|
||||||
GstVideoMixerPad *pad;
|
GstVideoMixerPad *pad = GST_VIDEO_MIXER_PAD (object);
|
||||||
|
|
||||||
g_return_if_fail (GST_IS_VIDEO_MIXER_PAD (object));
|
|
||||||
|
|
||||||
pad = GST_VIDEO_MIXER_PAD (object);
|
|
||||||
|
|
||||||
switch (prop_id) {
|
switch (prop_id) {
|
||||||
case ARG_PAD_ZORDER:
|
case ARG_PAD_ZORDER:
|
||||||
|
@ -205,8 +201,6 @@ gst_videomixer_pad_set_property (GObject * object, guint prop_id,
|
||||||
GstVideoMixerPad *pad;
|
GstVideoMixerPad *pad;
|
||||||
GstVideoMixer *mix;
|
GstVideoMixer *mix;
|
||||||
|
|
||||||
g_return_if_fail (GST_IS_PAD (object));
|
|
||||||
|
|
||||||
pad = GST_VIDEO_MIXER_PAD (object);
|
pad = GST_VIDEO_MIXER_PAD (object);
|
||||||
mix = GST_VIDEO_MIXER (gst_pad_get_parent (GST_PAD (pad)));
|
mix = GST_VIDEO_MIXER (gst_pad_get_parent (GST_PAD (pad)));
|
||||||
|
|
||||||
|
@ -316,22 +310,22 @@ beach:
|
||||||
static void
|
static void
|
||||||
gst_videomixer_pad_link (GstPad * pad, GstPad * peer, gpointer data)
|
gst_videomixer_pad_link (GstPad * pad, GstPad * peer, gpointer data)
|
||||||
{
|
{
|
||||||
GST_DEBUG ("pad '%s' connected", gst_pad_get_name (pad));
|
GST_DEBUG_OBJECT (pad, "connected");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gst_videomixer_pad_unlink (GstPad * pad, GstPad * peer, gpointer data)
|
gst_videomixer_pad_unlink (GstPad * pad, GstPad * peer, gpointer data)
|
||||||
{
|
{
|
||||||
GST_DEBUG ("pad '%s' unlinked", gst_pad_get_name (pad));
|
GST_DEBUG_OBJECT (pad, "unlinked");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
gst_videomixer_pad_init (GstVideoMixerPad * mixerpad)
|
gst_videomixer_pad_init (GstVideoMixerPad * mixerpad)
|
||||||
{
|
{
|
||||||
g_signal_connect (mixerpad, "linked",
|
g_signal_connect (mixerpad, "linked",
|
||||||
G_CALLBACK (gst_videomixer_pad_link), (gpointer) mixerpad);
|
G_CALLBACK (gst_videomixer_pad_link), mixerpad);
|
||||||
g_signal_connect (mixerpad, "unlinked",
|
g_signal_connect (mixerpad, "unlinked",
|
||||||
G_CALLBACK (gst_videomixer_pad_unlink), (gpointer) mixerpad);
|
G_CALLBACK (gst_videomixer_pad_unlink), mixerpad);
|
||||||
|
|
||||||
/* setup some pad functions */
|
/* setup some pad functions */
|
||||||
gst_pad_set_setcaps_function (GST_PAD (mixerpad),
|
gst_pad_set_setcaps_function (GST_PAD (mixerpad),
|
||||||
|
@ -344,7 +338,6 @@ gst_videomixer_pad_init (GstVideoMixerPad * mixerpad)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* elementfactory information */
|
/* elementfactory information */
|
||||||
static GstElementDetails gst_videomixer_details =
|
static GstElementDetails gst_videomixer_details =
|
||||||
GST_ELEMENT_DETAILS ("video mixer",
|
GST_ELEMENT_DETAILS ("video mixer",
|
||||||
|
@ -981,8 +974,7 @@ gst_videomixer_update_queues (GstVideoMixer * mix)
|
||||||
|
|
||||||
if (mixcol->buffer != NULL && GST_CLOCK_TIME_IS_VALID (pad->queued)) {
|
if (mixcol->buffer != NULL && GST_CLOCK_TIME_IS_VALID (pad->queued)) {
|
||||||
pad->queued -= interval;
|
pad->queued -= interval;
|
||||||
GST_DEBUG ("queued now %s %lld", gst_pad_get_name (GST_PAD (pad)),
|
GST_DEBUG_OBJECT (pad, "queued now %lld", pad->queued);
|
||||||
pad->queued);
|
|
||||||
if (pad->queued == 0) {
|
if (pad->queued == 0) {
|
||||||
GST_DEBUG ("unreffing buffer");
|
GST_DEBUG ("unreffing buffer");
|
||||||
gst_buffer_unref (mixcol->buffer);
|
gst_buffer_unref (mixcol->buffer);
|
||||||
|
@ -1022,8 +1014,8 @@ gst_videomixer_loop (GstElement * element)
|
||||||
new_height != mix->out_height || !GST_PAD_CAPS (mix->srcpad)) {
|
new_height != mix->out_height || !GST_PAD_CAPS (mix->srcpad)) {
|
||||||
GstCaps *newcaps;
|
GstCaps *newcaps;
|
||||||
|
|
||||||
newcaps =
|
newcaps = gst_caps_make_writable (
|
||||||
gst_caps_copy (gst_pad_get_negotiated_caps (GST_PAD (mix->master)));
|
gst_pad_get_negotiated_caps (GST_PAD (mix->master)));
|
||||||
gst_caps_set_simple (newcaps, "format", GST_TYPE_FOURCC,
|
gst_caps_set_simple (newcaps, "format", GST_TYPE_FOURCC,
|
||||||
GST_STR_FOURCC ("AYUV"), "width", G_TYPE_INT, new_width, "height",
|
GST_STR_FOURCC ("AYUV"), "width", G_TYPE_INT, new_width, "height",
|
||||||
G_TYPE_INT, new_height, NULL);
|
G_TYPE_INT, new_height, NULL);
|
||||||
|
@ -1091,8 +1083,8 @@ gst_videomixer_collected (GstCollectPads * pads, GstVideoMixer * mix)
|
||||||
if (mix->in_width != mix->out_width || mix->in_height != mix->out_height) {
|
if (mix->in_width != mix->out_width || mix->in_height != mix->out_height) {
|
||||||
GstCaps *newcaps = NULL;
|
GstCaps *newcaps = NULL;
|
||||||
|
|
||||||
newcaps =
|
newcaps = gst_caps_make_writable
|
||||||
gst_caps_copy (gst_pad_get_negotiated_caps (GST_PAD (mix->master)));
|
(gst_pad_get_negotiated_caps (GST_PAD (mix->master)));
|
||||||
gst_caps_set_simple (newcaps,
|
gst_caps_set_simple (newcaps,
|
||||||
"format", GST_TYPE_FOURCC, GST_STR_FOURCC ("AYUV"),
|
"format", GST_TYPE_FOURCC, GST_STR_FOURCC ("AYUV"),
|
||||||
"width", G_TYPE_INT, mix->in_width,
|
"width", G_TYPE_INT, mix->in_width,
|
||||||
|
|
Loading…
Reference in a new issue