RTP problem

Bkmz zzbkmzz at gmail.com
Wed Feb 22 07:09:23 PST 2012


On 22.02.2012 15:14, Bkmz wrote:
> On 21.02.2012 17:15, pfarmer wrote:
>> Which caps is it using in the case of your rtpvrawpay ?
>>
>> raw rgb streams can't be transmitted yet with rtpvrawpay; just yuv video
>> works. This could be the problem in your case.
>>
>> Here is a discussion about this:
>> http://gstreamer-devel.966125.n4.nabble.com/simple-raw-video-RTP-still-no-joy-tp2525125p3490213.html 
>>
>>
>> -- 
>> View this message in context: 
>> http://gstreamer-devel.966125.n4.nabble.com/RTP-problem-tp4406338p4406979.html
>> Sent from the GStreamer-devel mailing list archive at Nabble.com.
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> Hello, thank you for reply.
>
> I modify sender pipeline ike this (add ffmpegcolorspace to convert 
> from RGB to YUV):
>
> gst-launch -v rtspsrc 
> location=rtsp://root:kbcrj@10.10.10.12/axis-media/media.amp ! 
> rtph264depay ! decodebin ! video/x-raw-yuv,format=\(fourcc\)I420 ! 
> rtpvrawpay ! udpsink host=127.0.0.1 port=8812 | while read line ; do
>   if [[ $line =~ .*GstUDPSink.*caps.*video.* ]]
>   then
>      echo $line | sed -e 's/.*caps = //' | sed -e 's/ //g' > caps_12.txt
>   fi
>   echo $line
> done
>
>
> caps are taken from gst-launch output, and here they are:
>
> application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)RAW,sampling=(string)YCbCr-4:2:0,depth=(string)8,width=(string)1024,height=(string)768,colorimetry=(string)SMPTE240M,payload=(int)96,ssrc=(uint)2336795171,clock-base=(uint)865002936,seqnum-base=(uint)35252 
>
>
>
> but I have the same problem. tcpdump says, that packets are end from 
> sender, but receiver does not process them
I made the following:

sender:

gst-launch -v gstrtpbin name=r \
   rtspsrc location=rtsp://root:kbcrj@10.10.10.11/axis-media/media.amp ! 
rtph264depay ! decodebin ! \
   ffmpegcolorspace ! \
   videoscale ! 'video/x-raw-yuv,format=(fourcc)I420,width=320,height=240' \
   ! rtpvrawpay ! r.send_rtp_sink_0  \
   r.send_rtp_src_0 ! udpsink host=127.0.0.1 port=5000 \
   r.send_rtcp_src_0 ! udpsink host=127.0.0.1 port=5001 sync=false 
async=false \
   udpsrc port=5002 ! r.recv_rtcp_sink_0 | while read line ; do
   if [[ $line =~ .*GstUDPSink.*caps.*video.* ]]
   then
      echo $line | sed -e 's/.*caps = //' | sed -e 's/ //g' > caps_11.txt
   fi
   echo $line
done


receiver:

gst-launch gstrtpbin name=rtpbin \
   udpsrc caps=$CAPS port=5000 ! rtpbin.recv_rtp_sink_0  \
   rtpbin. ! rtpvrawdepay ! \
   clockoverlay halignment=1 text="`date +%d.%m.%y`" font-desc="Sans 28" ! \
   ffenc_flv ! ffmux_flv ! filesink async=false sync=false 
location=$FDIR/$FFNAME \
   udpsrc port=5001 ! rtpbin.recv_rtcp_sink_0  \
   rtpbin.send_rtcp_src_0 ! udpsink port=5002 sync=false async=false

and it works, but after I add format=(fourcc)I420 to the senders 
pipeline. Without this line nothing was received.


More information about the gstreamer-devel mailing list