How to distinguish between different session(audio and video)
Shu-Yu Fu
shuyufu at gmail.com
Sun Jul 31 22:07:35 PDT 2011
Hi,
May be you can get the pad caps to see it's audio or video pad.
static void on_pad_added (GstElement *element, GstPad *pad, gpointer data)
{
GstCaps *caps = NULL;
GstStructure *structure = NULL;
caps = gst_pad_get_caps (pad);
structure = gst_caps_get_structure (caps, 0);
media_type = g_strdup (gst_structure_get_string (structure, "media"));
structure = NULL;
gst_caps_unref (caps);
caps = NULL;
if (0 == g_strcmp0 ("audio", media_type))
{
// audio stuff
}
else if (0 == g_strcmp0 ("video", media_type))
{
// video stuff
}
else
{
// not supported media type
}
g_free (media_type);
}
2011/8/1 arpi d <reachtoarpi at gmail.com>
> I am writing client code which receives audio+video.
>
> When I am trying to connect rtpbin and depayloader how to know which
> session is this?
>
> Actually,I am writing the code in C and am trying to use g_signal_connect.
> So that I can use
> g_signal_connect (rtpbin, "pad-added", G_CALLBACK (pad_added_cb),
> videodepay);
>
> g_signal_connect (rtpbin, "pad-added", G_CALLBACK (pad_added_cb),
> audiodepay); using if -else condition but for that I need to find out the
> session how I can do?
>
>
> my client pipeline is:
>
> VIDEO_DEC="rtph264depay ! ffdec_h264"
> AUDIO_DEC="rtpmp4gdepay ! faad"
>
> VIDEO_SINK="ffmpegcolorspace ! autovideosink"
> AUDIO_SINK="autoaudiosink"
> DEST=127.0.0.1
>
> LATENCY=100
>
> gst-launch -v gstrtpbin name=rtpbin \
> udpsrc caps=$VIDEO_CAPS port=5000 ! rtpbin.recv_rtp_sink_0 \
> rtpbin. ! $VIDEO_DEC ! $VIDEO_SINK \
> udpsrc port=5001 ! rtpbin.recv_rtcp_sink_0 \
> rtpbin.send_rtcp_src_0 ! udpsink port=5005 host=$DEST sync=false
> async=false
> udpsrc caps=$AUDIO_CAPS port=5002 ! rtpbin.recv_rtp_sink_1 \
> rtpbin. ! $AUDIO_DEC ! $AUDIO_SINK \
> udpsrc port=5003 ! rtpbin.recv_rtcp_sink_1 \
> rtpbin.send_rtcp_src_1 ! udpsink port=5007 host=$DEST sync=false
> async=false
>
> Same thing in C language ,please reply.
> Please reply.
> If you know other way please do let me know.
> Thaks in advance.
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>
>
--
Sincerely,
Bobby
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20110801/03c527c8/attachment-0001.htm>
More information about the gstreamer-devel
mailing list