After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 703345 - Add support for GstVideoGLTextureUploadMeta
Add support for GstVideoGLTextureUploadMeta
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-gl
git master
Other Linux
: Normal enhancement
: 1.2.0
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2013-06-30 12:25 UTC by Sebastian Dröge (slomo)
Modified: 2013-12-30 10:12 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
memory: provide copy_into_texture (3.73 KB, patch)
2013-11-14 04:31 UTC, Matthew Waters (ystreet00)
committed Details | Review
mixer: provide access to the sink pads at render time (10.47 KB, patch)
2013-11-14 04:31 UTC, Matthew Waters (ystreet00)
committed Details | Review
upload: add support for GstVideoGLTextureUploadMeta (36.84 KB, patch)
2013-11-14 04:32 UTC, Matthew Waters (ystreet00)
none Details | Review
upload: add support for GstVideoGLTextureUploadMeta (37.11 KB, patch)
2013-11-14 11:45 UTC, Matthew Waters (ystreet00)
needs-work Details | Review
filter: handle capsfeatures properly (1.53 KB, patch)
2013-11-16 12:36 UTC, Matthew Waters (ystreet00)
committed Details | Review
mixer: handle 0/1 famerate better in caps (1.55 KB, patch)
2013-11-16 12:39 UTC, Matthew Waters (ystreet00)
committed Details | Review
mixer: advertise GstVideoGLTextureUploadMeta (1.34 KB, patch)
2013-11-16 12:39 UTC, Matthew Waters (ystreet00)
needs-work Details | Review
upload: add support for GstVideoGLTextureUploadMeta (37.96 KB, patch)
2013-12-28 13:04 UTC, Matthew Waters (ystreet00)
committed Details | Review

Description Sebastian Dröge (slomo) 2013-06-30 12:25:34 UTC
See summary
Comment 1 Sebastian Dröge (slomo) 2013-06-30 12:25:50 UTC
Should be both consumer and producer of this meta
Comment 2 Matthew Waters (ystreet00) 2013-11-14 04:31:05 UTC
Created attachment 259780 [details] [review]
memory: provide copy_into_texture
Comment 3 Matthew Waters (ystreet00) 2013-11-14 04:31:36 UTC
Created attachment 259781 [details] [review]
mixer: provide access to the sink pads at render time
Comment 4 Matthew Waters (ystreet00) 2013-11-14 04:32:07 UTC
Created attachment 259782 [details] [review]
upload: add support for GstVideoGLTextureUploadMeta
Comment 5 Matthew Waters (ystreet00) 2013-11-14 11:45:36 UTC
Created attachment 259798 [details] [review]
upload: add support for GstVideoGLTextureUploadMeta

v2 that compiles
Comment 6 Matthew Waters (ystreet00) 2013-11-16 12:36:21 UTC
Created attachment 259959 [details] [review]
filter: handle capsfeatures properly

This allows negotiation to occur with the upload meta and thus the gl filters can be used with hw-decoded video.
Comment 7 Matthew Waters (ystreet00) 2013-11-16 12:39:02 UTC
Created attachment 259960 [details] [review]
mixer: handle 0/1 famerate better in caps

Apparently if a single zero framerate source is linked to glmixer, it complains about invalid caps.  Relax the restrictions a little bit.
Comment 8 Matthew Waters (ystreet00) 2013-11-16 12:39:50 UTC
Created attachment 259961 [details] [review]
mixer: advertise GstVideoGLTextureUploadMeta
Comment 9 Sebastian Dröge (slomo) 2013-12-27 10:22:40 UTC
Review of attachment 259798 [details] [review]:

::: gst-libs/gst/gl/gstglfilter.c
@@ +38,3 @@
+        GST_VIDEO_CAPS_MAKE_WITH_FEATURES
+        (GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META,
+            GST_GL_UPLOAD_FORMATS))

This is not correct as you only handle RGBA currently for the texture upload meta

::: gst-libs/gst/gl/gstglupload.c
@@ +579,3 @@
+  /* GstVideoGLTextureUploadMeta */
+  gl_tex_upload_meta = gst_buffer_get_video_gl_texture_upload_meta (buffer);
+  if (gl_tex_upload_meta) {

here you should also check the limitations of the meta support, i.e. one RGBA texture. And otherwise fall back to the normal code path
Comment 10 Sebastian Dröge (slomo) 2013-12-27 10:26:40 UTC
Review of attachment 259961 [details] [review]:

::: gst-libs/gst/gl/gstglmixer.c
@@ +517,3 @@
+        GST_VIDEO_CAPS_MAKE_WITH_FEATURES
+        (GST_CAPS_FEATURE_META_GST_VIDEO_GL_TEXTURE_UPLOAD_META,
+            GST_GL_UPLOAD_FORMATS))

You currently only handle RGBA here
Comment 11 Matthew Waters (ystreet00) 2013-12-28 13:04:25 UTC
Created attachment 264956 [details] [review]
upload: add support for GstVideoGLTextureUploadMeta

addresses previous issues
Comment 12 Sebastian Dröge (slomo) 2013-12-30 10:11:37 UTC
Comment on attachment 264956 [details] [review]
upload: add support for GstVideoGLTextureUploadMeta

All pushed