[gst-devel] saving rtsp stream tracks

Wim Taymans wim.taymans at gmail.com
Tue Dec 22 09:24:26 CET 2009


On Mon, 2009-12-21 at 22:54 -0800, gather bzbz wrote:
> Hi, Aurelien,
> 
> Thanks for the hint. Really appreciate it. 
> 
> I ran the said pipeline, it failed with the following errors
> 
> *****************************************************************
> 
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter2: caps = application/x-rtp, media=(string)audio
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter3: caps = application/x-rtp, media=(string)video
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter3.GstPad:src: caps = application/x-rtp, media=(string)video, payload=(int)97, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(string)1, profile-level-id=(string)41
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter3.GstPad:sink: caps = application/x-rtp, media=(string)video, payload=(int)97, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(string)1, profile-level-id=(string)1
> /GstPipeline:pipeline0/GstRTSPSrc:S.GstGhostPad:recv_rtp_src_1_3488930930_97: caps = application/x-rtp, media=(string)video, payload=(int)97, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(string)1, profile-l1
> /GstPipeline:pipeline0/GstRTSPSrc:S.GstGhostPad:recv_rtp_src_1_3488930930_97.GstProxyPad:proxypad7: caps = application/x-rtp, media=(string)video, payload=(int)97, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mod1
> /GstPipeline:pipeline0/GstRTSPSrc:S.GstGhostPad:recv_rtp_src_1_3488930930_97: caps = application/x-rtp, media=(string)video, payload=(int)97, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(string)1, profile-l1
> /GstPipeline:pipeline0/GstRTSPSrc:S/GstRtpBin:rtpbin0.GstGhostPad:recv_rtp_src_1_3488930930_97: caps = application/x-rtp, media=(string)video, payload=(int)97, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(s1
> /GstPipeline:pipeline0/GstRTSPSrc:S/GstRtpBin:rtpbin0.GstGhostPad:recv_rtp_src_1_3488930930_97.GstProxyPad:proxypad6: caps = application/x-rtp, media=(string)video, payload=(int)97, clock-rate=(int)90000, encoding-name=(string)H264,1
> /GstPipeline:pipeline0/GstFakeSink:fakesink1.GstPad:sink: caps = application/x-rtp, media=(string)video, payload=(int)97, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(string)1, profile-level-id=(string)42801
> New clock: GstSystemClock
> /GstPipeline:pipeline0/GstCapsFilter:capsfilter4: caps = application/x-rtp, media=(string)audio
> /GstPipeline:pipeline0/GstRTSPSrc:S.GstGhostPad:recv_rtp_src_1_520794757_14: caps = application/x-rtp, media=(string)video, payload=(int)14, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(string)1, profile-le1
> /GstPipeline:pipeline0/GstRTSPSrc:S.GstGhostPad:recv_rtp_src_1_520794757_14.GstProxyPad:proxypad9: caps = application/x-rtp, media=(string)video, payload=(int)14, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode1
> /GstPipeline:pipeline0/GstRTSPSrc:S.GstGhostPad:recv_rtp_src_1_520794757_14: caps = application/x-rtp, media=(string)video, payload=(int)14, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(string)1, profile-le1
> /GstPipeline:pipeline0/GstRTSPSrc:S/GstRtpBin:rtpbin0.GstGhostPad:recv_rtp_src_1_520794757_14: caps = application/x-rtp, media=(string)video, payload=(int)14, clock-rate=(int)90000, encoding-name=(string)H264, packetization-mode=(st1
> /GstPipeline:pipeline0/GstRTSPSrc:S/GstRtpBin:rtpbin0.GstGhostPad:recv_rtp_src_1_520794757_14.GstProxyPad:proxypad8: caps = application/x-rtp, media=(string)video, payload=(int)14, clock-rate=(int)90000, encoding-name=(string)H264, 1
> 0:00:02.744148481  1885    0xba050 WARN               basesrc gstbasesrc.c:2334:gst_base_src_loop:<udpsrc4> error: Internal data flow error.
> 0:00:03.073260000  1885    0xba050 WARN               basesrc gstbasesrc.c:2334:gst_base_src_loop:<udpsrc4> error: streaming task paused, reason not-linked (-1)
> 
> *****************************************************************
> 
> The strange thing is that, after rtspsrc, the track with payload 14 (according to the rtsp SDP media session) is supposed to have "media=audio", but somehow the rtsp pipe thinks it is "media=video payload=14 encoding-name=H.264). Thus, I think the whole capfilter things are messed up. I am totally lost here. Any pads here for rtspsrc? Please help!.

gst-launch is not smart enough to link this pipeline because it
negotiates a format after creating the pad. You'll have to write an
application.

Wim

> 
> --- On Mon, 12/21/09, Aurelien Grimaud <gstelzz at yahoo.fr> wrote:
> 
> > From: Aurelien Grimaud <gstelzz at yahoo.fr>
> > Subject: Re: [gst-devel] saving rtsp stream tracks
> > To: "Discussion of the development of GStreamer" <gstreamer-devel at lists.sourceforge.net>
> > Date: Monday, December 21, 2009, 12:53 PM
> > Hi,
> > 
> > Le 21/12/2009 08:02, gather bzbz a écrit :
> > > Hi, I try to use gstreamer to receive rtsp stream to
> > files. The stream contains a track1 for audio and track2 for
> > video. VLC works very well with the stream. When I use the
> > following command pipeline
> > > " gst-launch rtspsrc location=rtsp://<ip> 
> > debug=true ! fakesink ", I can see that gstreamer actually
> > gets the SDP part right. See following info.
> > >
> > >    
> > Try gst-launch -v rtspsrc name=src src. !
> > application/x-rtp, media=audio 
> > ! fakesink src. ! application/x-rtp, media=video !
> > fakesink
> > 
> > Aurelien
> > > *************************************************
> > >   medias:
> > >    media 0:
> > >     media:   
> >    'audio'
> > >     port:     
> >   '0'
> > > 
> >    num_ports:   '4294967295'
> > >     proto:   
> >    'RTP/AVP'
> > >     formats:
> > >      format  '14'
> > >     information: '(NULL)'
> > >     connections:
> > >      nettype:      'IN'
> > >      addrtype: 
> >    'IP4'
> > >      address:     
> > '0.0.0.0'
> > >      ttl:       
> >   '0'
> > >      addr_number:  '0'
> > >     key:
> > >      type:   
> >    '(NULL)'
> > >      data:   
> >    '(NULL)'
> > >     attributes:
> > >      attribute 'control' : 'track1'
> > >    media 1:
> > >     media:   
> >    'video'
> > >     port:     
> >   '0'
> > > 
> >    num_ports:   '4294967295'
> > >     proto:   
> >    'RTP/AVP'
> > >     formats:
> > >      format  '97'
> > >     information: '(NULL)'
> > >     connections:
> > >      nettype:      'IN'
> > >      addrtype: 
> >    'IP4'
> > >      address:     
> > '0.0.0.0'
> > >      ttl:       
> >   '0'
> > >      addr_number:  '0'
> > >     key:
> > >      type:   
> >    '(NULL)'
> > >      data:   
> >    '(NULL)'
> > >     attributes:
> > >      attribute 'rtpmap' : '97
> > H264/90000'
> > >      attribute 'fmtp' : '97
> > packetization-mode=1;profile-level-id=<num>;sprop-parameter-sets=<str>'
> > >      attribute 'control' : 'track2'
> > >
> > > *************************************************
> > > How can I save the audio track1 to a file and video
> > track2 to another so I can do some post-processings? Thanks
> > a lot for your help!!!
> > >
> > >
> > >
> > >
> > >
> > ------------------------------------------------------------------------------
> > > This SF.Net email is sponsored by the Verizon
> > Developer Community
> > > Take advantage of Verizon's best-in-class app
> > development support
> > > A streamlined, 14 day to market process makes app
> > distribution fast and easy
> > > Join now and get one step closer to millions of
> > Verizon customers
> > > http://p.sf.net/sfu/verizon-dev2dev
> > > _______________________________________________
> > > gstreamer-devel mailing list
> > > gstreamer-devel at lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> > >
> > >    
> > 
> > 
> > ------------------------------------------------------------------------------
> > This SF.Net email is sponsored by the Verizon Developer
> > Community
> > Take advantage of Verizon's best-in-class app development
> > support
> > A streamlined, 14 day to market process makes app
> > distribution fast and easy
> > Join now and get one step closer to millions of Verizon
> > customers
> > http://p.sf.net/sfu/verizon-dev2dev 
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
> > 
> 
> 
>       
> 
> ------------------------------------------------------------------------------
> This SF.Net email is sponsored by the Verizon Developer Community
> Take advantage of Verizon's best-in-class app development support
> A streamlined, 14 day to market process makes app distribution fast and easy
> Join now and get one step closer to millions of Verizon customers
> http://p.sf.net/sfu/verizon-dev2dev 
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel






More information about the gstreamer-devel mailing list