[gst-devel] stride

Jan Schmidt thaytan at mad.scientist.com
Thu Jul 22 05:25:12 CEST 2004


<quote who="Thomas Vander Stichele">
> The problem I was having was that a video was being scaled to 1015x432. 
> Now when ximagesink was allocating buffers for this, the XShmCreateImage
> call gives you back a bytes_per_line property (which is video stride),
> and expecting it to be respected.  However, GStreamer was not feeding
> ximagesink data respecting the rowstride.

I ran into this same problem with gdkpixbuf last week - it decodes images
and tells you the rowstride it has used. I ended up putting a note about it
in ds' 0.9 changes file, because adding a rowstride means redefining our
video-frame buffers in an incompatible way - I think it's too incompatible a
change to make in 0.8

> - do we have an explicit or implicit definition of how data should be
> laid out in both RGB and YUV ?

At the moment, the exact (packed) layout is implicit in the rgb+width+etc/yuv+format caps settings.

> - videotestsrc implicitly seems to output data with rowstride in my
> particular test case.  Can we trust videotestsrc to be doing the correct
> thing or should I doublecheck it for all cases ?

I'm not sure what that means? Do you mean "with rowstride = width * bytes-per-pixel" ?

> - should rowstride be part of the caps (at least in cases where the
> rowstride is not the one that you would implicitly assume) ?

I think it should, but we need to think about which elements will transform
rowstride etc first.

> - is it ok for ximagesink at runtime to figure out the rowstride, add it
> to the caps, and renegotiate its link ?
> - If we add it to the caps, should we add 3 of them for YUV data ?

Don't know, and don't know.

> - Is it ok to make colorspace and videoscale elements to handle
> rowstride correctly ?

I don't think we should in 0.8

J.
-- 
Jan Schmidt                                  thaytan at mad.scientist.com

I came for the quality. I stayed for the freedom. -- Sean Neakums




More information about the gstreamer-devel mailing list