Error in video scaling

Tim-Philipp Müller t.i.m at zen.co.uk
Fri Sep 27 15:13:57 PDT 2013


On Fri, 2013-09-27 at 14:30 +0200, JPM wrote:

Hi,

> The Android device (Samsung Galaxy mini 2, Android 2.3.6) is receiving
> a video stream H264 over RTP over UDP.
> The video resolution is 1024x768 but I want to downscaling it to
> 320x240 with this pipeline :
> 
> 
> data->pipeline = gst_parse_launch("udpsrc port=5001 !
> application/x-rtp, payload=96 ! rtph264depay ! ffdec_h264 !
> videoscale ! video/x-raw, width=320, height=240 ! autovideosink
> sync=false", &error);
> 
> 
> It does not work, there is the following error : Unable to build
> pipeline: could not link videoscale0 to autovideosink0

I'm guessing that you're using the old 0.10 version and not the new
official GStreamer 1.0 SDK packages from
http://gstreamer.freedesktop.org/pkg/android/

The format for raw audio/video caps was slightly different in 0.10. You
are using the 1.0-style caps here in your pipeline.

Try something like:

udpsrc port=5001 ! application/x-rtp, payload=96 ! rtph264depay !
ffdec_h264 ! videoscale ! video/x-raw-yuv,width=320,height=240 !
ffmpegcolorspace ! autovideosink sync=false

(in case you ever do want to show the stream with proper sync I would
suggest you also add a gstrtpjitterbuffer after the udpsrc).

Cheers
 -Tim




More information about the gstreamer-android mailing list