Hi Wim, As you said, I have edited the TIVidenc1 (mpeg4 encoder element) to include the missing headers. Now, the caps are properly set for the rtpmp4vpay and the udpsink, but I am still unable to see the video via UDP. For RTSP, I am able to see the first few frames only (Actually I see a constant image which corresponds to a frame for some time) and the output ends with a Bus error. I am also attaching a GST_DEBUG=2 output. Thanks in advance. Regards, Neel. Syntax 1: gst-launch-0.10 -v filesrc location=foreman_422_vga._swap.yuv ! TIVidenc1 codecName=mpeg4enc engineName=encode contiguousInputFrame=FALSE iColorSpace=UYVY resolution=640x480 ! rtpmp4vpay ! udpsink port=1234 Output 1: Setting pipeline to PAUSED ... Pipeline is PREROLLING ... /GstPipeline:pipeline0/GstTIVidenc1:tividenc10.GstPad:src: caps = video/mpeg, mpegversion=(int)4, framerate=(fraction)30000/1001, width=(int)640, height=(int)480 /GstPipeline:pipeline0/GstRtpMP4VPay:rtpmp4vpay0.GstPad:sink: caps = video/mpeg, mpegversion=(int)4, framerate=(fraction)30000/1001, width=(int)640, height=(int)480 /GstPipeline:pipeline0/GstRtpMP4VPay:rtpmp4vpay0.GstPad:src: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)0, config=(string)0000, payload=(int)96, ssrc=(guint)2630283029, clock-base=(guint)617364450, seqnum-base=(guint)22043 /GstPipeline:pipeline0/GstUDPSink:udpsink0.GstPad:sink: caps = application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)0, config=(string)0000, payload=(int)96, ssrc=(guint)2630283029, clock-base=(guint)617364450, seqnum-base=(guint)22043 Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstSystemClock Synatx 2: ./test-launch "( filesrc location=foreman_422_vga._swap.yuv ! TIVidenc1 codecName=mpeg4enc engineName=encode contiguousInputFrame=FALSE iColorSpace=UYVY resolution=640x480 ! rtpmp4vpay pt=96 name=pay0 )" OUTPUT 2: ** Message: listening on port 8554 ** Message: added new client 0x16cf0 ip 172.24.136.232:56584 ** Message: attaching to context 0x13e18 RTSP request message 0x8e24c request line: method: 'OPTIONS' uri: 'rtsp://172.24.190.32:8554/test' version: '1.0' headers: key: 'CSeq', value: '51' key: 'User-Agent', value: 'VLC media player (LIVE555 Streaming Media v2009.03.22)' body: ** Message: client 0x16cf0: received a request RTSP response message 0xbefff9e8 status line: code: '200' reason: 'OK' version: '1.0' headers: key: 'CSeq', value: '51' key: 'Public', value: 'OPTIONS, DESCRIBE, GET_PARAMETER, PAUSE, PLAY, SETUP, SET_PARAMETER, TEARDOWN' key: 'Server', value: 'GStreamer RTSP server' body: length 0 ** Message: client 0x16cf0: sent a message with cseq 51 RTSP request message 0x8e24c request line: method: 'DESCRIBE' uri: 'rtsp://172.24.190.32:8554/test' version: '1.0' headers: key: 'CSeq', value: '52' key: 'Accept', value: 'application/sdp' key: 'User-Agent', value: 'VLC media player (LIVE555 Streaming Media v2009.03.22)' body: ** Message: client 0x16cf0: received a request ** Message: found media 0x3e7c0 for url abspath /test ** Message: found stream 0 with payloader 0xce0d8 ** Message: constructed media 0xd1020 for url /test ** Message: preparing media 0xd1020 ** Message: enter mainloop ** Message: stream 0x2f0c8 received caps application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)0, config=(string)0000, ssrc=(guint)267390090, payload=(int)96, clock-base=(guint)3837273445, seqnum-base=(guint)21978 ** Message: stream 0x2f0c8 received caps application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)MP4V-ES, profile-level-id=(string)0, config=(string)0000, ssrc=(guint)267390090, payload=(int)96, clock-base=(guint)3837273445, seqnum-base=(guint)21978 ** Message: 0xd1020: got message type async-done ** Message: position query failed ** Message: duration query failed ** Message: stats: position 0:00:00.000000000, duration 99:99:99.999999999 ** Message: object 0xd1020 is prerolled RTSP response message 0xbefff9c8 status line: code: '200' reason: 'OK' version: '1.0' headers: key: 'CSeq', value: '52' key: 'Content-Type', value: 'application/sdp' key: 'Content-Base', value: 'rtsp://172.24.190.32:8554/test/' key: 'Server', value: 'GStreamer RTSP server' body: length 301 00000000 (0x10b400): 76 3d 30 0d 0a 6f 3d 2d 20 31 31 38 38 33 34 30 v=0..o=- 1188340 00000010 (0x10b410): 36 35 36 31 38 30 38 38 33 20 31 20 49 4e 20 49 656180883 1 IN I 00000020 (0x10b420): 50 34 20 31 32 37 2e 30 2e 30 2e 31 0d 0a 73 3d P4 127.0.0.1..s= 00000030 (0x10b430): 53 65 73 73 69 6f 6e 20 73 74 72 65 61 6d 65 64 Session streamed 00000040 (0x10b440): 20 77 69 74 68 20 47 53 74 72 65 61 6d 65 72 0d with GStreamer. 00000050 (0x10b450): 0a 69 3d 72 74 73 70 2d 73 65 72 76 65 72 0d 0a .i=rtsp-server.. 00000060 (0x10b460): 65 3d 4e 4f 4e 45 0d 0a 74 3d 30 20 30 0d 0a 61 e=NONE..t=0 0..a 00000070 (0x10b470): 3d 74 6f 6f 6c 3a 47 53 74 72 65 61 6d 65 72 0d =tool:GStreamer. 00000080 (0x10b480): 0a 61 3d 74 79 70 65 3a 62 72 6f 61 64 63 61 73 .a=type:broadcas 00000090 (0x10b490): 74 0d 0a 61 3d 72 61 6e 67 65 3a 6e 70 74 3d 30 t..a=range:npt=0 000000a0 (0x10b4a0): 2e 30 30 30 30 30 30 2d 0d 0a 6d 3d 76 69 64 65 .000000-..m=vide 000000b0 (0x10b4b0): 6f 20 30 20 52 54 50 2f 41 56 50 20 39 36 0d 0a o 0 RTP/AVP 96.. 000000c0 (0x10b4c0): 63 3d 49 4e 20 49 50 34 20 31 32 37 2e 30 2e 30 c=IN IP4 127.0.0 000000d0 (0x10b4d0): 2e 31 0d 0a 61 3d 72 74 70 6d 61 70 3a 39 36 20 .1..a=rtpmap:96 000000e0 (0x10b4e0): 4d 50 34 56 2d 45 53 2f 39 30 30 30 30 0d 0a 61 MP4V-ES/90000..a 000000f0 (0x10b4f0): 3d 63 6f 6e 74 72 6f 6c 3a 73 74 72 65 61 6d 3d =control:stream= 00000100 (0x10b500): 30 0d 0a 61 3d 66 6d 74 70 3a 39 36 20 70 72 6f 0..a=fmtp:96 pro 00000110 (0x10b510): 66 69 6c 65 2d 6c 65 76 65 6c 2d 69 64 3d 30 3b file-level-id=0; 00000120 (0x10b520): 63 6f 6e 66 69 67 3d 30 30 30 30 0d 0a config=0000.. ** Message: client 0x16cf0: sent a message with cseq 52 RTSP request message 0x8e24c request line: method: 'SETUP' uri: 'rtsp://172.24.190.32:8554/test/stream=0' version: '1.0' headers: key: 'CSeq', value: '53' key: 'Transport', value: 'RTP/AVP;unicast;client_port=2270-2271' key: 'User-Agent', value: 'VLC media player (LIVE555 Streaming Media v2009.03.22)' body: ** Message: client 0x16cf0: received a request ** Message: reusing cached media 0xd1020 ** Message: manage new media 0xd1020 in session 0x8e530 RTSP response message 0xbefff9a8 status line: code: '200' reason: 'OK' version: '1.0' headers: key: 'CSeq', value: '53' key: 'Transport', value: 'RTP/AVP;unicast;client_port=2270-2271;server_port=1026-1027;mode="PLAY"' key: 'Server', value: 'GStreamer RTSP server' key: 'Session', value: 'esmentsvelfkrobq' body: length 0 ** Message: client 0x16cf0: sent a message with cseq 53 RTSP request message 0x8e24c request line: method: 'PLAY' uri: 'rtsp://172.24.190.32:8554/test/' version: '1.0' headers: key: 'CSeq', value: '54' key: 'Session', value: 'esmentsvelfkrobq' key: 'Range', value: 'npt=0.000-' key: 'User-Agent', value: 'VLC media player (LIVE555 Streaming Media v2009.03.22)' body: ** Message: client 0x16cf0: received a request ** Message: watching session 0xf2cf0 ** Message: no seek needed RTSP response message 0xbefff988 status line: code: '200' reason: 'OK' version: '1.0' headers: key: 'CSeq', value: '54' key: 'RTP-Info', value: 'url=rtsp://172.24.190.32:8554/test/stream=0;seq=21978;rtptime=3837273445' key: 'Range', value: 'npt=0.000000-' key: 'Server', value: 'GStreamer RTSP server' key: 'Session', value: 'esmentsvelfkrobq' body: length 0 ** Message: going to state PLAYING media 0xd1020 ** Message: adding 172.24.136.232:2270-2271 ** Message: active 1 media 0xd1020 ** Message: state PLAYING media 0xd1020 ** Message: 0xd1020: got message type new-clock ** Message: client 0x16cf0: sent a message with cseq 54 ** Message: 0x2f0c8: new source 0xf4880 (lt-test-launch:1472): GLib-GObjAlignment trap: lt-test-launch (1490) PC=0x40170214 Instr=0xe593300c Address=0x0000000d FSR 0x001 ect-WARNING **: IA__g_object_get_valist: object class `RTPSource' has no property named `stats' Bus error -----Original Message----- From: Wim Taymans [mailto:wim.taymans at gmail.com] Sent: Wednesday, June 03, 2009 7:31 PM To: Mehta, Neel Cc: gstreamer-embedded at lists.sourceforge.net; Discussion of the development of GStreamer Subject: RE: transfer of video via udp/rtp/rtsp On Wed, 2009-06-03 at 19:28 +0530, Mehta, Neel wrote: > Hi Wim, > > Thanks for the reply. I will look into the TI encoder plugin and make the appropriate changes. > > Any suggestion for me to go ahead with the RTSP??? uh? if you fix the encoder/payloader the rtsp server will work as expected. Wim > > Sorry, I forgot to attach the files last time. > > Thanks. > > Regards, > Neel. > > -----Original Message----- > From: Wim Taymans [mailto:wim.taymans at gmail.com] > Sent: Wednesday, June 03, 2009 7:22 PM > To: Mehta, Neel > Cc: gstreamer-embedded at lists.sourceforge.net > Subject: RE: transfer of video via udp/rtp/rtsp > > On Wed, 2009-06-03 at 19:15 +0530, Mehta, Neel wrote: > > Hi Wim > > > > > > > > Thanks for the reply. > > > > > > > > 1. UDP: > > > > I executed the syntax you mentioned: > > > > > > > > gst-launch-0.10 -v filesrc location=foreman_422_vga._swap.yuv ! > > TIVidenc1 codecName=mpeg4enc engineName=encode > > contiguousInputFrame=FALSE iColorSpace=UYVY resolution=640x480 ! > > rtpmp4vpay ! udpsink > > > > > > > > The output is: > > > > > > > > Setting pipeline to PAUSED ... > > > > Pipeline is PREROLLING ... > > > > /GstPipeline:pipeline0/GstTIVidenc1:tividenc10.GstPad:src: caps = > > video/mpeg, mpegversion=(int)4, framerate=(fraction)30000/1001, > > width=(int)640, height=(int)480 > > > > /GstPipeline:pipeline0/GstRtpMP4VPay:rtpmp4vpay0.GstPad:sink: caps = > > video/mpeg, mpegversion=(int)4, framerate=(fraction)30000/1001, > > width=(int)640, height=(int)480 > > > > Pipeline is PREROLLED ... > > > > Setting pipeline to PLAYING ... > > > > New clock: GstSystemClock > > > > > > > > It seems to me that the problem lies with the rtpmp4vpay element. It > > seems it is unable to allocate proper caps for the source pad. > > > > The payloader needs to find the profile and config string, which is > usually provided by the encoder. It seems the TI encoder does not > provide this config string and thus the payloader can not create output > caps. > > We could probably fix the payloader to not output anything before the > config string was found. If you file a bug, I'll look into that. > > Wim > > > I have also attached the GST_DEBUG=3 output. > > > > I am currently using gst-plugins-good version 0.10.10. Should I > > upgrade it??? > > > > > > > > > > > > 2. RTSP: > > > > I used the updated version of gst-rtsp-server (with your today's > > patch), and I used the following syntax: > > > > > > > > ./test-launch "( filesrc location=foreman_422_vga._swap.yuv ! > > TIVidenc1 codecName=mpeg4enc engineName=encode > > contiguousInputFrame=FALSE iColorSpace=UYVY resolution=640x480 ! > > rtpmp4vpay pt=96 name=pay0 )" > > > > > > > > And I got this output (has errors): > > > > > > > > ** Message: listening on port 8554 > > > > ** Message: added new client 0x16cf0 ip 172.24.136.232:28426 > > > > ** Message: attaching to context 0x13e18 > > > > RTSP request message 0x8e2b4 > > > > request line: > > > > method: 'OPTIONS' > > > > uri: 'rtsp://172.24.190.40:8554/test' > > > > version: '1.0' > > > > headers: > > > > key: 'CSeq', value: '41' > > > > key: 'User-Agent', value: 'VLC media player (LIVE555 Streaming > > Media v2009.03.22)' > > > > body: > > > > ** Message: client 0x16cf0: received a request > > > > RTSP response message 0xbefff9f8 > > > > status line: > > > > code: '200' > > > > reason: 'OK' > > > > version: '1.0' > > > > headers: > > > > key: 'CSeq', value: '41' > > > > key: 'Public', value: 'OPTIONS, DESCRIBE, GET_PARAMETER, PAUSE, > > PLAY, SETUP, SET_PARAMETER, TEARDOWN' > > > > key: 'Server', value: 'GStreamer RTSP server' > > > > body: length 0 > > > > ** Message: client 0x16cf0: sent a message with cseq 41 > > > > RTSP request message 0x8e2b4 > > > > request line: > > > > method: 'DESCRIBE' > > > > uri: 'rtsp://172.24.190.40:8554/test' > > > > version: '1.0' > > > > headers: > > > > key: 'CSeq', value: '42' > > > > key: 'Accept', value: 'application/sdp' > > > > key: 'User-Agent', value: 'VLC media player (LIVE555 Streaming > > Media v2009.03.22)' > > > > body: > > > > ** Message: client 0x16cf0: received a request > > > > ** Message: found media 0x3e7c0 for url abspath /test > > > > ** Message: found stream 0 with payloader 0xce0d8 > > > > ** Message: constructed media 0xcd820 for url /test > > > > ** Message: preparing media 0xcd820 > > > > ** Message: enter mainloop > > > > ** Message: 0xcd820: got message type async-done > > > > ** Message: position query failed > > > > ** Message: duration query failed > > > > ** Message: stats: position 0:00:00.000000000, duration > > 99:99:99.999999999 > > > > ** Message: object 0xcd820 is prerolled > > > > > > > > ** (lt-test-launch:1173): WARNING **: ignoring stream 0 without media > > type > > > > RTSP response message 0xbefff9d8 > > > > status line: > > > > code: '200' > > > > reason: 'OK' > > > > version: '1.0' > > > > headers: > > > > key: 'CSeq', value: '42' > > > > key: 'Content-Type', value: 'application/sdp' > > > > key: 'Content-Base', value: 'rtsp://172.24.190.40:8554/test/' > > > > key: 'Server', value: 'GStreamer RTSP server' > > > > body: length 170 > > > > 00000000 (0x107858): 76 3d 30 0d 0a 6f 3d 2d 20 31 31 38 38 33 34 30 > > v=0..o=- 1188340 > > > > 00000010 (0x107868): 36 35 36 31 38 30 38 38 33 20 31 20 49 4e 20 49 > > 656180883 1 IN I > > > > 00000020 (0x107878): 50 34 20 31 32 37 2e 30 2e 30 2e 31 0d 0a 73 3d > > P4 127.0.0.1..s= > > > > 00000030 (0x107888): 53 65 73 73 69 6f 6e 20 73 74 72 65 61 6d 65 64 > > Session streamed > > > > 00000040 (0x107898): 20 77 69 74 68 20 47 53 74 72 65 61 6d 65 72 0d > > with GStreamer. > > > > 00000050 (0x1078a8): 0a 69 3d 72 74 73 70 2d 73 65 72 76 65 72 0d > > 0a .i=rtsp-server.. > > > > 00000060 (0x1078b8): 65 3d 4e 4f 4e 45 0d 0a 74 3d 30 20 30 0d 0a 61 > > e=NONE..t=0 0..a > > > > 00000070 (0x1078c8): 3d 74 6f 6f 6c 3a 47 53 74 72 65 61 6d 65 72 0d > > =tool:GStreamer. > > > > 00000080 (0x1078d8): 0a 61 3d 74 79 70 65 3a 62 72 6f 61 64 63 61 > > 73 .a=type:broadcas > > > > 00000090 (0x1078e8): 74 0d 0a 61 3d 72 61 6e 67 65 3a 6e 70 74 3d 30 > > t..a=range:npt=0 > > > > 000000a0 (0x1078f8): 2e 30 30 30 30 30 30 2d 0d > > 0a .000000-.. > > > > ** Message: client 0x16cf0: sent a message with cseq 42 > > > > ** Message: added new client 0xe9350 ip 172.24.136.232:29194 > > > > ** Message: attaching to context 0x13e18 > > > > ** Message: client 0x16cf0: connection closed > > > > ** Message: finalize client 0x16cf0 > > > > ** Message: finalize media 0xcd820 > > > > Segmentation fault > > > > > > > > I have also attached the output corresponding to GST_DEBUG=2 and > > GST_DEBUG=3. > > > > I think the error in both the case lies in the rtpmp4vpay. Am I > > right??? > > > > > > > > Thanks in advance. > > > > > > > > Regards, > > > > Neel. > > > > > > > > > > > > > > > > -----Original Message----- > > From: Wim Taymans [mailto:wim.taymans at gmail.com] > > Sent: Wednesday, June 03, 2009 3:49 PM > > To: Mehta, Neel > > Cc: gstreamer-embedded at lists.sourceforge.net > > Subject: Re: transfer of video via udp/rtp/rtsp > > > > > > > > On Wed, 2009-06-03 at 15:15 +0530, Mehta, Neel wrote: > > > > > Hi > > > > > > > > > > > > > > > > > > > > I want to transfer a mpeg4 video from my TI's dm355 evm (ARM) to my > > pc > > > > > (see on vlc). I have tried: > > > > > > > > > > > > > > > > > > > > 1. UDP: gst-launch-0.10 -v videotestsrc ! TIVidenc1 > > codecName=mpeg4enc > > > > > engineName=encode contiguousInputFrame=FALSE ! rtpmp4vpay ! udpsink > > > > > port=1234 > > > > > > > > > > > > > > > > > > > > The pipeline works perfectly, but I am unable to see any video via > > > > > vlc. > > > > > > > > > > > > > > > > > > > > 2. RTSP: ./test-launch --gst-debug-no-color --gst-debug=0 "( filesrc > > > > > location=foreman_422_vga._swap.yuv ! TIVidenc1 codecName=mpeg4enc > > > > > engineName=encode contiguousInputFrame=FALSE iColorSpace=UYVY > > > > > resolution=640x480 ! rtpmp4vpay pt=96 name=pay0 )" > > > > > > > > > > > > > It seems like rtpmp4vpay could not set caps on the output pad. This is > > > > likely because the encoder did not set proper caps on the output > > > > buffers. > > > > > > > > Check this: > > > > > > > > gst-launch-0.10 -v filesrc location=foreman_422_vga._swap.yuv ! > > > > TIVidenc1 codecName=mpeg4enc engineName=encode > > > > contiguousInputFrame=FALSE iColorSpace=UYVY resolution=640x480 ! > > > > rtpmp4vpay ! udpsink > > > > > > > > And see what caps (if any) are set on udpsink. > > > > > > > > also, I solved the warnings in the rtsp server by ignoring streams > > that > > > > don't have a correct type. > > > > > > > > Wim > > > > > > > > > > > > > > > > > > > It gives me the following error: > > > > > > > > > > ** Message: client 0x16cf0: received a request > > > > > > > > > > ** Message: found media 0x52dc0 for url abspath /test > > > > > > > > > > > > > > > > > > > > ** Message: constructed media 0x58c20 for url /test > > > > > > > > > > ** Message: preparing media 0x58c20 > > > > > > > > > > > > > > > > > > > > ** Message: enter mainloop > > > > > > > > > > > > > > > > > > > > (lt-test-launch:1615): GStreamer-CRITICAL **: gst_debug_log_valist: > > > > > assertion `category != NULL' failed > > > > > > > > > > > > > > > > > > > > (lt-test-launch:1615): GStreamer-CRITICAL **: gst_debug_log_valist: > > > > > assertion `category != NULL' failed > > > > > > > > > > ** Message: 0x58c20: got message type async-done > > > > > > > > > > ** Message: position query failed > > > > > > > > > > ** Message: duration query failed > > > > > > > > > > ** Message: stats: position 0:00:00.000000000, duration > > > > > 99:99:99.999999999 > > > > > > > > > > ** Message: object 0x58c20 is prerolled > > > > > > > > > > > > > > > > > > > > (lt-test-launch:1615): GStreamer-CRITICAL **: > > gst_caps_get_structure: > > > > > assertion `GST_IS_CAPS (caps)' failed > > > > > > > > > > > > > > > > > > > > (lt-test-launch:1615): GStreamer-CRITICAL **: > > > > > gst_structure_get_string: assertion `structure != NULL' failed > > > > > > > > > > > > > > > > > > > > (lt-test-launch:1615): GStreamer-CRITICAL **: gst_structure_get_int: > > > > > assertion `structure != NULL' failed > > > > > > > > > > > > > > > > > > > > (lt-test-launch:1615): GStreamer-CRITICAL **: gst_structure_get_int: > > > > > assertion `structure != NULL' failed > > > > > > > > > > > > > > > > > > > > (lt-test-launch:1615): GStreamer-CRITICAL **: > > > > > gst_structure_get_string: assertion `structure != NULL' failed > > > > > > > > > > > > > > > > > > > > (lt-test-launch:1615): GStreamer-CRITICAL **: > > > > > gst_structure_get_string: assertion `structure != NULL' failed > > > > > Segmentation fault > > > > > > > > > > > > > > > > > > > > Can anyone help me in debugging? Or suggest some other way to > > > > > implement the video transfer. My ultimate aim is to transfer the > > video > > > > > and see on vlc, irrespective of the protocols used. > > > > > > > > > > > > > > > > > > > > Thanks in advance. > > > > > > > > > > > > > > > > > > > > Regards, > > > > > > > > > > Neel. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------------ > > > > > OpenSolaris 2009.06 is a cutting edge operating system for > > enterprises > > > > > looking to deploy the next generation of Solaris that includes the > > latest > > > > > innovations from Sun and the OpenSource community. Download a copy > > and > > > > > enjoy capabilities such as Networking, Storage and Virtualization. > > > > > Go to: http://p.sf.net/sfu/opensolaris-get > > > > > _______________________________________________ Gstreamer-embedded > > mailing list Gstreamer-embedded at lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/gstreamer-embedded > > > > > > -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: RTSP GST_DEBUG=2.txt URL: <http://lists.freedesktop.org/archives/gstreamer-embedded/attachments/20090608/a6507dcd/attachment.txt>