GstRtpbin and RTCP sender reports

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

GstRtpbin and RTCP sender reports

Lassi Väätämöinen

Hi,

I was wondering whether the Gstrtpbin is capable of sending RTCP SR packets? I
managed to build a pipeline using the gstrtpbin and gst-launch, but only RR
packets were sent from the sender.

Another alternative would be to use Rtpbin, but I am not sure how to use this,
so an example would be nice.

Best regards,
-Lassi

--
Lassi Väätämöinen
M.Sc., Researcher
Tampere University of Technology / Department of Communications Engineering
Room TH209, tel. 03-3115 5124

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: GstRtpbin and RTCP sender reports

Wim Taymans
On Mon, 2008-09-01 at 11:24 +0300, Lassi Väätämöinen wrote:
> Hi,
>
> I was wondering whether the Gstrtpbin is capable of sending RTCP SR packets? I
> managed to build a pipeline using the gstrtpbin and gst-launch, but only RR
> packets were sent from the sender.
>

When gstrtpbin is sending data (using the send_rtp_sink_%d request pad)
and when a send_rtcp_src_%d request pad is requested from gstrtpbin, it
will send SR reports on the send_rtcp_src_%d pad. You need to request
these pads with the same number filled in for the %d in the above
padtemplate names.

> Another alternative would be to use Rtpbin, but I am not sure how to use this,
> so an example would be nice.

don't use this element, it's deprecated and does not work correctly.

Wim
>
> Best regards,
> -Lassi
>


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: GstRtpbin and RTCP sender reports

Lassi Väätämöinen
In reply to this post by Lassi Väätämöinen

2008/9/1 Wim Taymans <[hidden email]>

> On Mon, 2008-09-01 at 11:24 +0300, Lassi Väätämöinen wrote:
> > Hi,
> >
> > I was wondering whether the Gstrtpbin is capable of sending RTCP SR
> > packets? I managed to build a pipeline using the gstrtpbin and
> > gst-launch, but only RR packets were sent from the sender.
>
> When gstrtpbin is sending data (using the send_rtp_sink_%d request pad)
> and when a send_rtcp_src_%d request pad is requested from gstrtpbin, it
> will send SR reports on the send_rtcp_src_%d pad. You need to request
> these pads with the same number filled in for the %d in the above
> padtemplate names.

I think I have these already, but I'm not sure if I am using them properly.
Here is my pipeline:

#!/bin/sh


VPORT=8234
APORT=8236
HOST=${1:-130.230.52.193}

gst-launch-0.10 gstrtpbin name=rtpbin \
gconfv4l2src ! \
video/x-raw-yuv,width=176,height=144,framerate=\(fraction\15/1 ! \
hantro4200enc stream-type=1 profile-and-level=1001 ! \  
video/x-h263,framerate=\(fraction\)15/1 ! \
        rtph263ppay mtu=1438 ! \
                rtpbin.send_rtp_sink_0 \
                rtpbin.send_rtp_src_0 ! udpsink host=$HOST port=$VPORT \
                rtpbin.send_rtcp_src_0 ! \
        udpsink host=$HOST port=8235 sync=false async=false   \
        udpsrc port=8239 ! rtpbin.recv_rtcp_sink_0                           \
        dsppcmsrc ! queue ! \
        audio/x-raw-int,channels=1,rate=8000 ! mulawenc ! rtppcmupay mtu=1438 ! \
                rtpbin.send_rtp_sink_1 \
                rtpbin.send_rtp_src_1 ! udpsink host=$HOST port=$APORT  \
                rtpbin.send_rtcp_src_1 ! udpsink host=$HOST port=8237 \
                sync=false async=false    \
                udpsrc port=8241 ! rtpbin.recv_rtcp_sink_1


I apologize for the poor formatting :) Oh, and this is used on N800, so that's
why the hantro encoder :)

-Lassi

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: GstRtpbin and RTCP sender reports

Farkas Levente
In reply to this post by Wim Taymans
Wim Taymans wrote:
>> Another alternative would be to use Rtpbin, but I am not sure how to use this,
>> so an example would be nice.
>
> don't use this element, it's deprecated and does not work correctly.

is something deprecated why not documented?
according to the page (which is come from the main documentation page):
http://gstreamer.freedesktop.org/documentation/rtp.html
"The RTP stack described below on this page is in place and works, but a
new and improved one is in development and you can find the latest
details on that on the Farsight Wiki page."
so for me it seems the farsight is the newer (what's more gstrtpbin is
in gst-plugins-bad) although you said it's deprecated.
it's very clear for this list that almost half of the mail is about rtp.
it can be two reason: it's very popular or it's not clear to most people
how to use it.
imho it'd be better to everyone to make these thinks cleaner...

--
  Levente                               "Si vis pacem para bellum!"

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: GstRtpbin and RTCP sender reports

Lassi Väätämöinen
In reply to this post by Lassi Väätämöinen
On Tuesday 02 September 2008 10:42:31 Lassi Väätämöinen wrote:

> 2008/9/1 Wim Taymans <[hidden email]>
>
> > On Mon, 2008-09-01 at 11:24 +0300, Lassi Väätämöinen wrote:
> > > Hi,
> > >
> > > I was wondering whether the Gstrtpbin is capable of sending RTCP SR
> > > packets? I managed to build a pipeline using the gstrtpbin and
> > > gst-launch, but only RR packets were sent from the sender.
> >
> > When gstrtpbin is sending data (using the send_rtp_sink_%d request pad)
> > and when a send_rtcp_src_%d request pad is requested from gstrtpbin, it
> > will send SR reports on the send_rtcp_src_%d pad. You need to request
> > these pads with the same number filled in for the %d in the above
> > padtemplate names.
>
> I think I have these already, but I'm not sure if I am using them properly.
> Here is my pipeline:
>
> #!/bin/sh
>
>
> VPORT=8234
> APORT=8236
> HOST=${1:-130.230.52.193}
>
> gst-launch-0.10 gstrtpbin name=rtpbin \
> gconfv4l2src ! \
> video/x-raw-yuv,width=176,height=144,framerate=\(fraction\15/1 ! \
> hantro4200enc stream-type=1 profile-and-level=1001 ! \
> video/x-h263,framerate=\(fraction\)15/1 ! \
> rtph263ppay mtu=1438 ! \
> rtpbin.send_rtp_sink_0 \
> rtpbin.send_rtp_src_0 ! udpsink host=$HOST port=$VPORT \
> rtpbin.send_rtcp_src_0 ! \
> udpsink host=$HOST port=8235 sync=false async=false   \
> udpsrc port=8239 ! rtpbin.recv_rtcp_sink_0                           \
> dsppcmsrc ! queue ! \
> audio/x-raw-int,channels=1,rate=8000 ! mulawenc ! rtppcmupay mtu=1438 ! \
> rtpbin.send_rtp_sink_1 \
>                 rtpbin.send_rtp_src_1 ! udpsink host=$HOST port=$APORT  \
>                 rtpbin.send_rtcp_src_1 ! udpsink host=$HOST port=8237 \
> sync=false async=false    \
>                 udpsrc port=8241 ! rtpbin.recv_rtcp_sink_1
>
>
> I apologize for the poor formatting :) Oh, and this is used on N800, so
> that's why the hantro encoder :)


OK, I managed to debug my problem to a point, where it seems that the version
of gstrtpbin is not completely bug-free on the N800 :)

I tried the example pipeline from

http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gst-plugins-bad-plugins/html/gst-plugins-bad-plugins-gstrtpbin.html

with slight modifications (ulaw encoder instead of amr-nb) on my desktop-PC,
and was able to capture SR packets. The PC version info shows me the
following:

Plugin Details:
  Name:                 gstrtpmanager
  Description:          RTP session management plugin library
  Filename:             /usr/lib/gstreamer-0.10/libgstrtpmanager.so
  Version:              0.10.6
  License:              LGPL
  Source module:        gst-plugins-bad
  Binary package:       GStreamer Bad Plugins (Ubuntu)
  Origin URL:          
https://launchpad.net/distros/ubuntu/+source/gst-plugins-bad0.10


On N800 the Version number is 1.0, instead of the format 0.10.X . So i assume
the bug is evident? :)

-Lassi

--
Lassi Väätämöinen
M.Sc., Researcher
Tampere University of Technology / Department of Communications Engineering
Room TH209, tel. 03-3115 5124

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel