rtspsrc with ip camera LTV

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

rtspsrc with ip camera LTV

KnightUS
i start testing new version of ltv cams. for test i use simple gst-play (1.9.2).
gst-play rtsp://admin:123456@192.168.37.245:554/profile1/ working fine, but if i start second stream (again start gst-play and have 2 connections) i get error : Error (400): Bad Request

i try to start gst-launch with debug=true
gst-launch-1.0 rtspsrc location="rtsp://admin:123456@192.168.37.245:554/profile1/" debug=true

output:
........skip.......
sdp packet 0x7f8b4c019490:
 version:       '0'
 origin:
  username:     '-'
  sess_id:      '1463353216773351'
  sess_version: '1'
  nettype:      'IN'
  addrtype:     'IP4'
  addr:         '192.168.37.245'
 session_name:  '\profile1'
 information:   '(NULL)'
 uri:           'http:///'
 emails:
  email 'admin@'
 connection:
  nettype:      '(NULL)'
  addrtype:     '(NULL)'
  address:      '(NULL)'
  ttl:          '0'
  addr_number:  '0'
 key:
  type:         '(NULL)'
  data:         '(NULL)'
 attributes:
  attribute 'control' : '*'
  attribute 'range' : 'npt=00.000- '
 medias:
  media 0:
   media:       'video'
   port:        '0'
   num_ports:   '0'
   proto:       'RTP/AVP'
   formats:
    format  '96'
   information: '(NULL)'
   key:
    type:       '(NULL)'
    data:       '(NULL)'
   attributes:
    attribute 'control' : 'track1'
    attribute 'rtpmap' : '96 H264/90000'
    attribute 'fmtp' : '96 profile-level-id=674200; sprop-parameter-sets=Z0IAIJWoFACBkA==,aM48gA==; packetization-mode=1'
  media 1:
   media:       'audio'
   port:        '0'
   num_ports:   '0'
   proto:       'RTP/AVP'
   formats:
    format  '8'
   information: '(NULL)'
   key:
    type:       '(NULL)'
    data:       '(NULL)'
   attributes:
    attribute 'control' : 'track2'
    attribute 'rtpmap' : '8 pcma/8000'
    attribute 'ptime' : '40'
  media 2:
   media:       'application'
   port:        '0'
   num_ports:   '0'
   proto:       'RTP/AVP'
   formats:
    format  '8'
   information: '(NULL)'
   key:
    type:       '(NULL)'
    data:       '(NULL)'
   attributes:
    attribute 'control' : 'track3'
    attribute 'rtpmap' : '8 pcma/8000'
    attribute 'recvonly' : ''
RTSP request message 0x7f8b524a2a50
 request line:
   method: 'SETUP'
   uri:    'rtsp://192.168.37.245:554/profile1/track1'
   version: '1.0'
 headers:
   key: 'User-Agent', value: 'GStreamer/1.9.2'
   key: 'Transport', value: 'RTP/AVP;unicast;client_port=32834-32835'
 body:
Ход выполнения: (request) SETUP stream 0
RTSP response message 0x7f8b524a2ab0
 status line:
   code:   '200'
   reason: 'OK'
   version: '1.0'
 headers:
   key: 'Server', value: 'TVT RTSP Server/1.0.0'
   key: 'CSeq', value: '3'
   key: 'Last-Modified', value: 'Tue Jan 27 09:58:45 2015 GMT'
   key: 'Cache-Control', value: 'must-revalidate'
   key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
   key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
   key: 'Transport', value: 'RTP/AVP;unicast;destination=192.168.21.112;source=192.168.37.245;client_port=32834-32835;server_port=20210-20211;ssrc=372ce429'
   key: 'Session', value: '616916849174063;timeout=60'
 body: length 0
RTSP request message 0x7f8b524a2a50
 request line:
   method: 'SETUP'
   uri:    'rtsp://192.168.37.245:554/profile1/track2'
   version: '1.0'
 headers:
   key: 'User-Agent', value: 'GStreamer/1.9.2'
   key: 'Transport', value: 'RTP/AVP;unicast;client_port=34586-34587'
 body:
Ход выполнения: (request) SETUP stream 1
RTSP response message 0x7f8b524a2ab0
 status line:
   code:   '200'
   reason: 'OK'
   version: '1.0'
 headers:
   key: 'Server', value: 'TVT RTSP Server/1.0.0'
   key: 'CSeq', value: '4'
   key: 'Last-Modified', value: 'Tue Jan 27 09:58:45 2015 GMT'
   key: 'Cache-Control', value: 'must-revalidate'
   key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
   key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
   key: 'Transport', value: 'RTP/AVP;unicast;destination=192.168.21.112;source=192.168.37.245;client_port=34586-34587;server_port=20212-20213;ssrc=53ff4d59'
   key: 'Session', value: '616916849174063;timeout=60'
 body: length 0
RTSP request message 0x7f8b524a2a50
 request line:
   method: 'SETUP'
   uri:    'rtsp://192.168.37.245:554/profile1/track3'
   version: '1.0'
Ход выполнения: (request) SETUP stream 2
 headers:
   key: 'User-Agent', value: 'GStreamer/1.9.2'
   key: 'Transport', value: 'RTP/AVP;unicast;client_port=35766-35767'
 body:
RTSP response message 0x7f8b524a2ab0
 status line:
   code:   '400'
   reason: 'Bad Request'
   version: '1.0'
 headers:
   key: 'Server', value: 'TVT RTSP Server/1.0.0'
   key: 'CSeq', value: '5'
   key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
   key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
   key: 'Allow', value: 'OPTIONS'
   key: 'Allow', value: 'DESCRIBE'
   key: 'Allow', value: 'SETUP'
   key: 'Allow', value: 'TEARDOWN'
   key: 'Allow', value: 'PLAY'
   key: 'Allow', value: 'GET_PARAMETER'
   key: 'Allow', value: 'SET_PARAMETER'
 body: length 0

.....skip.....
gstrtspsrc.c(6407): gst_rtspsrc_setup_streams (): /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0:
Error (400): Bad Request


profile1 have 3 tracks: video, audio and application.
track3 get SETUP error if i already connected to camera. if i close connection i get OK on SETUP track3 and rtsp start PLAY

vlc, mplayer and other skip this error and work fine.

How can i skip\disable connect to track3?
Reply | Threaded
Open this post in threaded view
|

Re: rtspsrc with ip camera LTV

Mailing List SVR
Il 04/10/2016 14:23, KnightUS ha scritto:

> i start testing new version of ltv cams. for test i use simple gst-play
> (1.9.2).
> gst-play rtsp://admin:123456@192.168.37.245:554/profile1/ working fine, but
> if i start second stream (again start gst-play and have 2 connections) i get
> error : Error (400): Bad Request
>
> i try to start gst-launch with debug=true
> gst-launch-1.0 rtspsrc
> location="rtsp://admin:123456@192.168.37.245:554/profile1/" debug=true
>
> output:
> ........skip.......
> sdp packet 0x7f8b4c019490:
>   version:       '0'
>   origin:
>    username:     '-'
>    sess_id:      '1463353216773351'
>    sess_version: '1'
>    nettype:      'IN'
>    addrtype:     'IP4'
>    addr:         '192.168.37.245'
>   session_name:  '\profile1'
>   information:   '(NULL)'
>   uri:           'http:///'
>   emails:
>    email 'admin@'
>   connection:
>    nettype:      '(NULL)'
>    addrtype:     '(NULL)'
>    address:      '(NULL)'
>    ttl:          '0'
>    addr_number:  '0'
>   key:
>    type:         '(NULL)'
>    data:         '(NULL)'
>   attributes:
>    attribute 'control' : '*'
>    attribute 'range' : 'npt=00.000- '
>   medias:
>    media 0:
>     media:       'video'
>     port:        '0'
>     num_ports:   '0'
>     proto:       'RTP/AVP'
>     formats:
>      format  '96'
>     information: '(NULL)'
>     key:
>      type:       '(NULL)'
>      data:       '(NULL)'
>     attributes:
>      attribute 'control' : 'track1'
>      attribute 'rtpmap' : '96 H264/90000'
>      attribute 'fmtp' : '96 profile-level-id=674200;
> sprop-parameter-sets=Z0IAIJWoFACBkA==,aM48gA==; packetization-mode=1'
>    media 1:
>     media:       'audio'
>     port:        '0'
>     num_ports:   '0'
>     proto:       'RTP/AVP'
>     formats:
>      format  '8'
>     information: '(NULL)'
>     key:
>      type:       '(NULL)'
>      data:       '(NULL)'
>     attributes:
>      attribute 'control' : 'track2'
>      attribute 'rtpmap' : '8 pcma/8000'
>      attribute 'ptime' : '40'
>    media 2:
>     media:       'application'
>     port:        '0'
>     num_ports:   '0'
>     proto:       'RTP/AVP'
>     formats:
>      format  '8'
>     information: '(NULL)'
>     key:
>      type:       '(NULL)'
>      data:       '(NULL)'
>     attributes:
>      attribute 'control' : 'track3'
>      attribute 'rtpmap' : '8 pcma/8000'
>      attribute 'recvonly' : ''
> RTSP request message 0x7f8b524a2a50
>   request line:
>     method: 'SETUP'
>     uri:    'rtsp://192.168.37.245:554/profile1/track1'
>     version: '1.0'
>   headers:
>     key: 'User-Agent', value: 'GStreamer/1.9.2'
>     key: 'Transport', value: 'RTP/AVP;unicast;client_port=32834-32835'
>   body:
> Ход выполнения: (request) SETUP stream 0
> RTSP response message 0x7f8b524a2ab0
>   status line:
>     code:   '200'
>     reason: 'OK'
>     version: '1.0'
>   headers:
>     key: 'Server', value: 'TVT RTSP Server/1.0.0'
>     key: 'CSeq', value: '3'
>     key: 'Last-Modified', value: 'Tue Jan 27 09:58:45 2015 GMT'
>     key: 'Cache-Control', value: 'must-revalidate'
>     key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
>     key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
>     key: 'Transport', value:
> 'RTP/AVP;unicast;destination=192.168.21.112;source=192.168.37.245;client_port=32834-32835;server_port=20210-20211;ssrc=372ce429'
>     key: 'Session', value: '616916849174063;timeout=60'
>   body: length 0
> RTSP request message 0x7f8b524a2a50
>   request line:
>     method: 'SETUP'
>     uri:    'rtsp://192.168.37.245:554/profile1/track2'
>     version: '1.0'
>   headers:
>     key: 'User-Agent', value: 'GStreamer/1.9.2'
>     key: 'Transport', value: 'RTP/AVP;unicast;client_port=34586-34587'
>   body:
> Ход выполнения: (request) SETUP stream 1
> RTSP response message 0x7f8b524a2ab0
>   status line:
>     code:   '200'
>     reason: 'OK'
>     version: '1.0'
>   headers:
>     key: 'Server', value: 'TVT RTSP Server/1.0.0'
>     key: 'CSeq', value: '4'
>     key: 'Last-Modified', value: 'Tue Jan 27 09:58:45 2015 GMT'
>     key: 'Cache-Control', value: 'must-revalidate'
>     key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
>     key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
>     key: 'Transport', value:
> 'RTP/AVP;unicast;destination=192.168.21.112;source=192.168.37.245;client_port=34586-34587;server_port=20212-20213;ssrc=53ff4d59'
>     key: 'Session', value: '616916849174063;timeout=60'
>   body: length 0
> *RTSP request message 0x7f8b524a2a50
>   request line:
>     method: 'SETUP'
>     uri:    'rtsp://192.168.37.245:554/profile1/track3'
>     version: '1.0'
> Ход выполнения: (request) SETUP stream 2
>   headers:
>     key: 'User-Agent', value: 'GStreamer/1.9.2'
>     key: 'Transport', value: 'RTP/AVP;unicast;client_port=35766-35767'
>   body:
> RTSP response message 0x7f8b524a2ab0
>   status line:
>     code:   '400'
>     reason: 'Bad Request'
>     version: '1.0'
>   headers:
>     key: 'Server', value: 'TVT RTSP Server/1.0.0'
>     key: 'CSeq', value: '5'
>     key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
>     key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
>     key: 'Allow', value: 'OPTIONS'
>     key: 'Allow', value: 'DESCRIBE'
>     key: 'Allow', value: 'SETUP'
>     key: 'Allow', value: 'TEARDOWN'
>     key: 'Allow', value: 'PLAY'
>     key: 'Allow', value: 'GET_PARAMETER'
>     key: 'Allow', value: 'SET_PARAMETER'
>   body: length 0*
> .....skip.....
> gstrtspsrc.c(6407): gst_rtspsrc_setup_streams ():
> /GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0:
> Error (400): Bad Request
>
>
> profile1 have 3 tracks: video, audio and application.
> track3 get SETUP error if i already connected to camera. if i close
> connection i get OK on SETUP track3 and rtsp start PLAY
>
> vlc, mplayer and other skip this error and work fine.
>
> How can i skip\disable connect to track3?


Hi,

I think this is not possible without modify rtspsrc,

Nicola

>
>
>
>
> --
> View this message in context: http://gstreamer-devel.966125.n4.nabble.com/rtspsrc-with-ip-camera-LTV-tp4679927.html
> Sent from the GStreamer-devel mailing list archive at Nabble.com.
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: rtspsrc with ip camera LTV

Krutskikh Ivan
Hi.

I work a lot with ltv cams with no issues. The only hint I made for them is assign a specific stream handler for rtspsrc

 source.connect('select-stream',self.stream_handler)

Where stream handler is:

    def stream_handler(self,bus,num,caps):
        if caps.get_structure(0).get_value('media') == 'video':
            return True
        elif caps.get_structure(0).get_value('media') == 'audio':
            return True
        else:
            return False



Hope that helps

2016-10-04 16:44 GMT+03:00 Mailing List SVR <[hidden email]>:
Il 04/10/2016 14:23, KnightUS ha scritto:
i start testing new version of ltv cams. for test i use simple gst-play
(1.9.2).
gst-play rtsp://admin:123456@192.168.37.245:554/profile1/ working fine, but
if i start second stream (again start gst-play and have 2 connections) i get
error : Error (400): Bad Request

i try to start gst-launch with debug=true
gst-launch-1.0 rtspsrc
location="rtsp://admin:123456@192.168.37.245:554/profile1/" debug=true

output:
........skip.......
sdp packet 0x7f8b4c019490:
  version:       '0'
  origin:
   username:     '-'
   sess_id:      '1463353216773351'
   sess_version: '1'
   nettype:      'IN'
   addrtype:     'IP4'
   addr:         '192.168.37.245'
  session_name:  '\profile1'
  information:   '(NULL)'
  uri:           'http:///'
  emails:
   email 'admin@'
  connection:
   nettype:      '(NULL)'
   addrtype:     '(NULL)'
   address:      '(NULL)'
   ttl:          '0'
   addr_number:  '0'
  key:
   type:         '(NULL)'
   data:         '(NULL)'
  attributes:
   attribute 'control' : '*'
   attribute 'range' : 'npt=00.000- '
  medias:
   media 0:
    media:       'video'
    port:        '0'
    num_ports:   '0'
    proto:       'RTP/AVP'
    formats:
     format  '96'
    information: '(NULL)'
    key:
     type:       '(NULL)'
     data:       '(NULL)'
    attributes:
     attribute 'control' : 'track1'
     attribute 'rtpmap' : '96 H264/90000'
     attribute 'fmtp' : '96 profile-level-id=674200;
sprop-parameter-sets=Z0IAIJWoFACBkA==,aM48gA==; packetization-mode=1'
   media 1:
    media:       'audio'
    port:        '0'
    num_ports:   '0'
    proto:       'RTP/AVP'
    formats:
     format  '8'
    information: '(NULL)'
    key:
     type:       '(NULL)'
     data:       '(NULL)'
    attributes:
     attribute 'control' : 'track2'
     attribute 'rtpmap' : '8 pcma/8000'
     attribute 'ptime' : '40'
   media 2:
    media:       'application'
    port:        '0'
    num_ports:   '0'
    proto:       'RTP/AVP'
    formats:
     format  '8'
    information: '(NULL)'
    key:
     type:       '(NULL)'
     data:       '(NULL)'
    attributes:
     attribute 'control' : 'track3'
     attribute 'rtpmap' : '8 pcma/8000'
     attribute 'recvonly' : ''
RTSP request message 0x7f8b524a2a50
  request line:
    method: 'SETUP'
    uri:    'rtsp://192.168.37.245:554/profile1/track1'
    version: '1.0'
  headers:
    key: 'User-Agent', value: 'GStreamer/1.9.2'
    key: 'Transport', value: 'RTP/AVP;unicast;client_port=32834-32835'
  body:
Ход выполнения: (request) SETUP stream 0
RTSP response message 0x7f8b524a2ab0
  status line:
    code:   '200'
    reason: 'OK'
    version: '1.0'
  headers:
    key: 'Server', value: 'TVT RTSP Server/1.0.0'
    key: 'CSeq', value: '3'
    key: 'Last-Modified', value: 'Tue Jan 27 09:58:45 2015 GMT'
    key: 'Cache-Control', value: 'must-revalidate'
    key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
    key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
    key: 'Transport', value:
'RTP/AVP;unicast;destination=192.168.21.112;source=192.168.37.245;client_port=32834-32835;server_port=20210-20211;ssrc=372ce429'
    key: 'Session', value: '616916849174063;timeout=60'
  body: length 0
RTSP request message 0x7f8b524a2a50
  request line:
    method: 'SETUP'
    uri:    'rtsp://192.168.37.245:554/profile1/track2'
    version: '1.0'
  headers:
    key: 'User-Agent', value: 'GStreamer/1.9.2'
    key: 'Transport', value: 'RTP/AVP;unicast;client_port=34586-34587'
  body:
Ход выполнения: (request) SETUP stream 1
RTSP response message 0x7f8b524a2ab0
  status line:
    code:   '200'
    reason: 'OK'
    version: '1.0'
  headers:
    key: 'Server', value: 'TVT RTSP Server/1.0.0'
    key: 'CSeq', value: '4'
    key: 'Last-Modified', value: 'Tue Jan 27 09:58:45 2015 GMT'
    key: 'Cache-Control', value: 'must-revalidate'
    key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
    key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
    key: 'Transport', value:
'RTP/AVP;unicast;destination=192.168.21.112;source=192.168.37.245;client_port=34586-34587;server_port=20212-20213;ssrc=53ff4d59'
    key: 'Session', value: '616916849174063;timeout=60'
  body: length 0
*RTSP request message 0x7f8b524a2a50
  request line:
    method: 'SETUP'
    uri:    'rtsp://192.168.37.245:554/profile1/track3'
    version: '1.0'
Ход выполнения: (request) SETUP stream 2
  headers:
    key: 'User-Agent', value: 'GStreamer/1.9.2'
    key: 'Transport', value: 'RTP/AVP;unicast;client_port=35766-35767'
  body:
RTSP response message 0x7f8b524a2ab0
  status line:
    code:   '400'
    reason: 'Bad Request'
    version: '1.0'
  headers:
    key: 'Server', value: 'TVT RTSP Server/1.0.0'
    key: 'CSeq', value: '5'
    key: 'Date', value: 'Sun, May 15 2016 23:00:16 GMT'
    key: 'Expires', value: 'Sun, May 15 2016 23:00:16 GMT'
    key: 'Allow', value: 'OPTIONS'
    key: 'Allow', value: 'DESCRIBE'
    key: 'Allow', value: 'SETUP'
    key: 'Allow', value: 'TEARDOWN'
    key: 'Allow', value: 'PLAY'
    key: 'Allow', value: 'GET_PARAMETER'
    key: 'Allow', value: 'SET_PARAMETER'
  body: length 0*
.....skip.....
gstrtspsrc.c(6407): gst_rtspsrc_setup_streams ():
/GstPipeline:pipeline0/GstRTSPSrc:rtspsrc0:
Error (400): Bad Request


profile1 have 3 tracks: video, audio and application.
track3 get SETUP error if i already connected to camera. if i close
connection i get OK on SETUP track3 and rtsp start PLAY

vlc, mplayer and other skip this error and work fine.

How can i skip\disable connect to track3?


Hi,

I think this is not possible without modify rtspsrc,

Nicola





--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/rtspsrc-with-ip-camera-LTV-tp4679927.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: rtspsrc with ip camera LTV

KnightUS
This post was updated on .
It works! Thank you :)

......
g_signal_connect (m_rtspSrc, "select-stream", G_CALLBACK (rtspOnSelectStream), this); //privet Ivan
......

gboolean RtspClientPrivate::rtspOnSelectStream(GstElement* /*object*/, guint /*arg0*/, GstCaps* arg1, gpointer /*user_data*/)
{
    const QString ret(gst_structure_get_string (gst_caps_get_structure (arg1, 0), "media"));
    if (ret == "video" || ret == "audio")
       return true;
    return false;
}