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

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

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

Gottfried Haider
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".

Any idea what's going on?

Thanks
Gottfried

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

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

Matthew Waters
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


_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (495 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

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

Gottfried Haider
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 <[hidden email]> 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
>
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

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

Matthew Waters
On 13/11/16 01:47, Gottfried Haider wrote:

> 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
These pipelines don't have texture-target=2D set on the capsfilter
before fakesink.  glcolorconvert will output rectangle in that case.

Could you show a pipeline where you set texture-target=2D please?

Does the file play with gst-play-1.0?  (It does here on a mac (10.11.4)
with 1.9.90).

Cheers
-Matt

> On Sat, Nov 12, 2016 at 3:03 PM, Matthew Waters <[hidden email]> 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

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (495 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

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

Gottfried Haider
Hi Matt,

How embarrassing: I must have edited the wrong codepath when I first tried. Did it again and it all works now.

Thanks for your help
Gottfried

On Sun, Nov 13, 2016 at 3:29 AM, Matthew Waters <[hidden email]> wrote:
On 13/11/16 01:47, Gottfried Haider wrote:
> 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

These pipelines don't have texture-target=2D set on the capsfilter
before fakesink.  glcolorconvert will output rectangle in that case.

Could you show a pipeline where you set texture-target=2D please?

Does the file play with gst-play-1.0?  (It does here on a mac (10.11.4)
with 1.9.90).

Cheers
-Matt

> On Sat, Nov 12, 2016 at 3:03 PM, Matthew Waters <[hidden email]> 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



_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel