H.264 Streaming - Error when changing resolution
Chuck Crisler
ccrisler at mutualink.net
Mon Jul 8 06:59:33 PDT 2013
How and when do you change the resolution to generate the error?
On Sat, Jul 6, 2013 at 5:04 PM, ftvfev <ftv.dev at gmail.com> wrote:
> I am using gstreamer to stream a video. So I am using the 2 scripts:
>
> Client side :
>
> DEST=10.2.2.30
>
> # this adjusts the latency in the receiver
> LATENCY=0
>
>
>
>
> VIDEO_CAPS="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264"
>
>
> AUDIO_CAPS="application/x-rtp,media=(string)audio,clock-rate=(int)8000,encoding-name=(string)PCMA"
>
> VIDEO_DEC="rtph264depay ! avdec_h264"
>
> VIDEO_SINK="videoconvert ! autovideosink"
>
> gst-launch-1.0 -v rtpbin name=rtpbin latency=$LATENCY
> \
> udpsrc caps=$VIDEO_CAPS port=5000 ! rtpbin.recv_rtp_sink_0
> \
> rtpbin. ! $VIDEO_DEC ! $VIDEO_SINK
> \
> udpsrc port=5001 ! rtpbin.recv_rtcp_sink_0
> \
> rtpbin.send_rtcp_src_0 ! udpsink port=5005 host=$DEST
> sync=false async=false
>
> Server side:
>
> DEST=10.2.2.42
>
> # tuning parameters to make the sender send the streams out of sync.
> Can
> be used
> # ot test the client RTCP synchronisation.
> #VOFFSET=900000000
> VOFFSET=0
> AOFFSET=0
>
> # H264 encode from the source
> # VELEM="v4l2src device=/dev/video0"
> VELEM="filesrc location=big_buck_bunny_1080p_stereo.ogg ! queue !
> decodebin"
>
> VCAPS="video/x-raw,width=1920,height=1080,framerate=60/1"
> VSOURCE="$VELEM ! queue ! videoscale ! videorate ! $VCAPS"
> VENC="x264enc subme=7 ref=3 bframes=4 me=hex tune=zerolatency
> byte-stream=true ! rtph264pay"
>
> VRTPSINK="udpsink port=5000 host=$DEST ts-offset=$VOFFSET
> name=vrtpsink"
> VRTCPSINK="udpsink port=5001 host=$DEST sync=false async=false
> name=vrtcpsink"
> VRTCPSRC="udpsrc port=5005 name=vrtpsrc"
>
> gst-launch-1.0 -v rtpbin name=rtpbin \
> $VSOURCE ! $VENC ! rtpbin.send_rtp_sink_0
> \
> rtpbin.send_rtp_src_0 ! $VRTPSINK
> \
> rtpbin.send_rtcp_src_0 ! $VRTCPSINK
> \
> $VRTCPSRC ! rtpbin.recv_rtcp_sink_0
>
> It works perfectly. However, when I change the resolution for example to
> this 640x480. I get the following error on the client side :
>
> /GstPipeline:pipeline0/avdec_h264:avdec_h264-0.GstPad:src: caps =
> video/x-raw, format=(string)I420, width=(int)640, height=(int)480,
> pixel-aspect-ratio=(fraction)4/3, interlace-mode=(string)progressive,
> colorimetry=(string)bt601, framerate=(fraction)0/1
> ERROR: from element /GstPipeline:pipeline0/GstUDPSrc:udpsrc0: Internal
> data flow error.
> Additional debug info:
> gstbasesrc.c(2812): gst_base_src_loop ():
> /GstPipeline:pipeline0/GstUDPSrc:udpsrc0:
> streaming task paused, reason not-negotiated (-4)
> Execution ended after 2217228820 ns.
> Setting pipeline to PAUSED ...
> Setting pipeline to READY ...
> Setting pipeline to NULL ...
> Freeing pipeline ...
>
> So what is the reason of this problem and how can I fix it ?
>
>
>
> --
> View this message in context:
> http://gstreamer-devel.966125.n4.nabble.com/H-264-Streaming-Error-when-changing-resolution-tp4660922.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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20130708/13bba657/attachment.html>
More information about the gstreamer-devel
mailing list