GL: texture-target: rectangle vs texture-target: 2D

Gottfried Haider gottfried.haider at gmail.com
Sat Nov 12 14:47:24 UTC 2016


Thanks for your message, Matt!

My pipeline already has a glcolorconvert after the glupload, followed
by a capsfilter element. But when I add "texture-target=2D" to the
capsfilter, the final (negotiated) caps for the file still look like
this:
"video/x-raw(memory:GLMemory), format=(string)RGBA, width=(int)640,
height=(int)359, interlace-mode=(string)progressive,
pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)5000/167,
texture-target=(string)rectangle"

Any ideas what to try?

I've uploaded the pipeline plot [1][2] when attempting to play that
particular file, as well as the file itself [3]. This is macOS w/
GStreamer 1.8.3.

Cheers
Gottfried

[1] https://sukzessiv.net/~gohai/gstreamer/boulez.png
[2] https://sukzessiv.net/~gohai/gstreamer/boulez.dot
[3] https://sukzessiv.net/~gohai/gstreamer/boulez.mov

On Sat, Nov 12, 2016 at 3:03 PM, Matthew Waters <ystreet00 at gmail.com> wrote:
> On 12/11/16 08:27, Gottfried Haider wrote:
>> I have a video file that doesn't seem to play in Processing's glvideo
>> library. (framebuffer errors, no display)
>>
>> It has a MOV file extension rather than the MP4 I normally test with,
>> but there is little (if any) difference when I compare the actual
>> stream parameters in VLC. The only major difference that I see: For
>> this file, the final, negotiated caps list "texture-target:
>> rectangle", while normally I see "texture-target: 2D".
>
> If this is on OS X, then the zerocopy path with the VideoToolbox
> decoders will output textures with target=rectangle.  That's just what
> VideoToolbox provides and you need to deal with that yourself or force a
> conversion with glcolorconvert ! texture-target=2D.
>
> Cheers
> -Matt
>
>> Any idea what's going on?
>>
>> Thanks
>> Gottfried
>


More information about the gstreamer-devel mailing list