recording uncompressed rgb avi

Tim-Philipp Müller t.i.m at zen.co.uk
Wed Apr 17 08:12:37 PDT 2013


On Wed, 2013-04-17 at 10:17 -0400, Frédéric Drolet wrote:

Hi,

> Has anybody found a solution to this? I’m pretty new to gstreamer (3
> intensive days!) and I’m trying to change the scale and the color
> space of an avi video for which I use demux, queues, dynamic addpads,
> etc.
>   
> I was working in C++ to handle windows and other stuff but since I hit
> a wall to change the color space I've tried using gst-launch directly
> to see what's happening. So far, I can change the scale of the video
> using this command line:
>   
>         gst-launch.exe filesrc name=filesource
>         location=C:/folder/file.avi ! avidemux name=demux
>         demux.audio_00 ! queue ! decodebin2 ! audioconvert !
>         autoaudiosink demux.video_00 ! queue ! decodebin2 !
>         videoscale ! video/x-raw-yuv,width=320,height=240 !
>         autovideosink
>  
> However, if I want to change the color space aftewards, it doesn't
> work to simply add something like this right after the output of
> videoscale:
>  
>         ! ffmpegcolorspace ! video/x-raw-grey,width=320,height=240
>          
>         or
>          
>         ! ffmpegcolorspace ! video/x-raw-yuv,format=(fourcc)GREY

This works for me:

gst-launch-0.10 uridecodebin
uri=file:///big_buck_bunny_720p_MPEG4_MP3_25fps_3300K.AVI name=d  \
  d. ! queue ! ffmpegcolorspace ! videoscale !
video/x-raw-gray,width=320,height=240 ! ffmpegcolorspace ! ximagesink \
  d. ! queue ! audioconvert ! audioresample ! autoaudiosink


But it depends a bit on what you want to do exactly. If you just want to
*process* black and white and not display it, then the default yuv I420
output might just be fine - just ignore the chroma planes.

Cheers
 -Tim



More information about the gstreamer-devel mailing list