[gst-devel] Converting AYUV to YUV - gst-launch pipeline?
Matt Veenstra
matt at tribalmedia.com
Sat Aug 22 18:25:26 CEST 2009
Thanks dave, but unfortunately videoparser does not support AYUV. See Below.
On Fri, Aug 21, 2009 at 9:42 PM, David Schleef<ds at entropywave.com> wrote:
> On Fri, Aug 21, 2009 at 07:41:48PM -0700, Matt Veenstra wrote:
>> My problem is then creating a pipeline to take that output and convert
>> it back to yuv to pass to ffmpeg and other standard tools. I have
>> tried many many attempts. Here is the basic pipeline I have been
>> trying.
>>
>> gst-launch filesrc location="$perf".ayuv !
>> 'video/x-raw-yuv,format=(fourcc)AYUV,width=640,height=480' !
>> ffmpegcolorspace ! 'video/x-raw-yuv,width=640,height=480' ! filesink
>> location="$perf".yuv
>
> You're looking for something like:
>
> gst-launch filesrc location=ack.ayuv ! videoparse width=640 \
> height=240 format=ayuv ! ...
>
The supported formats of rawparse/videoparse are
GST_VIDEO_PARSE_FORMAT_I420,
GST_VIDEO_PARSE_FORMAT_YV12,
GST_VIDEO_PARSE_FORMAT_YUY2,
GST_VIDEO_PARSE_FORMAT_UYVY,
GST_VIDEO_PARSE_FORMAT_v210,
GST_VIDEO_PARSE_FORMAT_RGB = 10,
GST_VIDEO_PARSE_FORMAT_GRAY
Since this is only to validate output, I updated by gst-launch to do
the conversion w 2 ffmpegcolorspace elements as shown below.
This fails...where gstreamer converts first to AYUV then to I420. The
file size is proper. But the outputted data cannot be converted as
the single pass can do. Is there something I am missing in the
pipeline?
________________
gst-launch filesrc location="$perf" ! decodebin name=nDecode nDecode.
! ffmpegcolorspace name=nColor1 ! \
'video/x-raw-yuv,format=(fourcc)AYUV,width=640,height=480' !
ffmpegcolorspace name=nColor2 ! \
'video/x-raw-yuv,format=(fourcc)I420,width=640,height=480' ! filesink
location="$perf".yuv.ffmpegcolor
ffmpeg -r 15.0 -s 640x480 -i "$perf".yuv.ffmpegcolor ...
This works...where gstreamer takes the source and converts directly to I420
________________
gst-launch filesrc location="$perf" ! decodebin name=nDecode nDecode.
! ffmpegcolorspace name=nColor1 ! \
'video/x-raw-yuv,format=(fourcc)I420,width=640,height=480' ! filesink
location="$perf".yuv
ffmpeg -r 15.0 -s 640x480 -i "$perf".yuv \
Thanks for any other ideas.
Matt
More information about the gstreamer-devel
mailing list