diff options
author | Zeeshan Ali <zeenix@gmail.com> | 2002-11-08 01:29:11 +0000 |
---|---|---|
committer | Zeeshan Ali <zeenix@gmail.com> | 2002-11-08 01:29:11 +0000 |
commit | 7b3955e369d28b08a338b93ec8ed62631046e74e (patch) | |
tree | 1bd7d17cdb16692a41289dc2515ab4615ea351ce /gst/udp/gstudpsink.c | |
parent | 7da598dde5793000536a27b9f9aad537069c3ac6 (diff) |
Trying to make udp plugins work
Original commit message from CVS:
Trying to make udp plugins work
Diffstat (limited to 'gst/udp/gstudpsink.c')
-rw-r--r-- | gst/udp/gstudpsink.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/gst/udp/gstudpsink.c b/gst/udp/gstudpsink.c index 4273dda6..a9059032 100644 --- a/gst/udp/gstudpsink.c +++ b/gst/udp/gstudpsink.c @@ -165,6 +165,16 @@ gst_udpsink_sinkconnect (GstPad *pad, GstCaps *caps) } static void +gst_udpsink_set_clock (GstElement *element, GstClock *clock) +{ + GstUDPSink *udpsink; + + udpsink = GST_UDPSINK (element); + + udpsink->clock = clock; +} + +static void gst_udpsink_init (GstUDPSink *udpsink) { /* create the sink and src pads */ @@ -175,6 +185,10 @@ gst_udpsink_init (GstUDPSink *udpsink) udpsink->host = g_strdup (UDP_DEFAULT_HOST); udpsink->port = UDP_DEFAULT_PORT; + + udpsink->clock = NULL; + + GST_ELEMENT (udpsink)->setclockfunc = gst_udpsink_set_clock; } static void @@ -182,12 +196,18 @@ gst_udpsink_chain (GstPad *pad, GstBuffer *buf) { GstUDPSink *udpsink; int tolen; + GstClockTimeDiff *jitter = NULL; g_return_if_fail (pad != NULL); g_return_if_fail (GST_IS_PAD (pad)); g_return_if_fail (buf != NULL); udpsink = GST_UDPSINK (GST_OBJECT_PARENT (pad)); + + if (udpsink->clock) { + GST_DEBUG (0, "udpsink: clock wait: %llu\n", GST_BUFFER_TIMESTAMP (buf)); + gst_element_clock_wait (GST_ELEMENT (udpsink), udpsink->clock, GST_BUFFER_TIMESTAMP (buf), jitter); + } tolen = sizeof(udpsink->theiraddr); |