Nicolas Dufresne
79ea87f256
opengl: Add NV12_4L4 conversion support
...
This format is produced notably by Hantro G1/G2 HW. Using a shader instead of
the Hantro embedded converter helps reduce drastrictly the memory usage at a
relatively small GPU overhead.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2190 >
2022-05-02 19:10:43 +00:00
Nicolas Dufresne
39615e4f3c
opengl: Add NV12_16L32S conversion support
...
This adds a first detiling shader with initial support for
NV12_16L32S as produced by Mediatek decoders.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2190 >
2022-05-02 19:10:43 +00:00
Nicolas Dufresne
77a88c4572
glsl: Enable GLSL 1.30 if we have OpenGL 3.0/3.1
...
As implemented, we only support OpenGL 3 API from version 3.2. Though, there
is no issue enabling GLSL 1.30 even if we are going to restrict our API usage
to 2. This allows using texelFetch() on OpenGL 3.0 and 3.1 drivers.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2190 >
2022-05-02 19:10:43 +00:00
Nicolas Dufresne
4b4d607f4c
opengl: Add low level support for tiled formats
...
This adds support for tiled format in stride and plane size
code.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2190 >
2022-05-02 19:10:43 +00:00
Nicolas Dufresne
04339c8df5
eglimage: Add missing NV21/61 support
...
Caps would allow that, but selecting this format would lead to
an "no reached" assertion in the code.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2190 >
2022-05-02 19:10:43 +00:00
Xavier Claessens
1a0eea3299
Meson: Fix deprecation warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1876 >
2022-04-23 00:33:00 +00:00
Xavier Claessens
b99ecc78ca
Replace gst-i18n-*.h with gi18n-lib.h
...
GLib guarantees libintl is always present, using proxy-libintl as
last resort. There is no need to mock gettex API any more.
This fix static build on Windows because G_INTL_STATIC_COMPILATION must
be defined before including libintl.h, and glib does it for us as part
as including glib.h.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2028 >
2022-04-19 18:01:06 +00:00
Thibault Saunier
c033f8fad2
cuda: Factor out a public GstCUDA library
...
So applications and elements implemented outside GStreamer can reuse
our infrastructure
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1472 >
2022-04-19 16:39:43 +00:00
Xabier Rodriguez Calvar
199b62570f
glcolorconvert: should copy metadatas from the incoming buffer
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2094 >
2022-04-01 13:07:46 +02:00
Stéphane Cerveau
8492dd4255
base:gl: add x11 deps to gstglx11_dep
...
On MacOS with homebrew the xlib-xcb.h is in
own cellar /opt/homebrew/Cellar/libx11/1.7.3.1/include
Need to add the windowing dependencies to gl tests
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2061 >
2022-04-01 00:43:54 +00:00
Stéphane Cerveau
4f970bb811
gl: cocoa: fix warnings of unused variables
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2026 >
2022-03-25 18:01:11 +00:00
Xavier Claessens
0fa7923937
Meson: Set install_tag on some files
...
Meson tries to guess the tag (runtime, devel, etc) for every installed
file, but it cannot guess them all. There is a list at the end of
meson-log.txt of files we need to tag manually.
See https://mesonbuild.com/Installing.html#installation-tags .
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1934 >
2022-03-14 08:56:54 -04:00
Seungha Yang
16f37f8b9c
gldisplay: Reorder GST_GL_WINDOW check for egl-device
...
"egl-device" should be checked before the "egl", otherwise unexpected egl will be picked
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1853 >
2022-03-04 13:34:34 +00:00
Sebastian Dröge
a10b35c011
gl: Mark GL memory GType functions as deprecated
...
They can't be used in any useful way. The type of every GstMemory is
always GST_TYPE_MEMORY and the subtyping relationship has to be
implemented on top of that via the associated allocator and mem_type
string.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1764 >
2022-02-21 21:26:43 +00:00
Sebastian Dröge
bd867aea4f
gl: Add #ifndef GST_REMOVE_DEPRECATED
for existing deprecated API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1764 >
2022-02-21 21:26:43 +00:00
Sebastian Dröge
5acb8ac559
gl: Add versioned Deprecated
marker to gst_gl_display_find_window
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1764 >
2022-02-21 21:26:43 +00:00
Sebastian Dröge
5d8705437d
gl: Replace existing G_DEPRECATED_FOR usage with GST_GL_DEPRECATED_FOR
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1764 >
2022-02-21 21:26:43 +00:00
Sebastian Dröge
6d83665d7a
gl: Add GST_GL_DEPRECATED
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1764 >
2022-02-21 21:26:43 +00:00
Seungha Yang
e1f0687b09
meson: Do hard build error for some MSVC warnings
...
Handle various MSVC warnings as errors for development version.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1006 >
2022-02-16 17:03:29 +00:00
Jordan Petridis
86a62d94ed
gstglutils: introspection annotations fixups
...
* gst_gl_ensure_element_data: specify the type for the element arg
* gst_gl_handle_set_context: correctly annotate the display and
gl_ctx as just (out) instead of (inout)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1501 >
2022-01-12 12:11:47 +00:00
Jiri Uncovsky
9abac91c96
glcontext/egl: add missing unref
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1328 >
2021-11-10 15:27:45 +00:00
Matthias Clasen
ffa363edf7
egl: handle configless contexts
...
With EGL_KHR_no_config_context, EGL contexts may just not
have an EGLConfig to give you. Deal with it.
Fixes : #858
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1289 >
2021-11-02 18:00:41 +00:00
Sebastian Dröge
ee18b8c0c0
base: Fix some annotations
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1281 >
2021-10-30 15:50:30 +03:00
Matthew Waters
d4c96bf923
gl/egl: install required egl.h header
...
Fixes build against using the gir.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1227 >
2021-10-22 17:56:41 +11:00
Tim-Philipp Müller
f1bb2c76c6
meson: update for dep.get_pkgconfig_variable() deprecation
...
... in favour of dep.get_variable('foo', ..) which in some
cases allows for further cleanups in future since we can
extract variables from pkg-config dependencies as well as
internal dependencies using this mechanism.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1183 >
2021-10-20 11:20:44 +00:00
Matthew Waters
d495154068
gl/eagl: fix eagl display creation
...
The GstGLDisplayType of the display was win32 instead of the required eagl.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1188 >
2021-10-19 09:34:43 +00:00
Tim-Philipp Müller
cf9be70946
gst-plugins-base: define G_LOG_DOMAIN for all libraries
...
Fixes #634
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1009 >
2021-10-19 00:12:25 +00:00
Thibault Saunier
08eac09c12
meson: Fix warning building GstGLEGL
...
We forgot to add the `GstGL` gir as a dependency which was properly
done for GstGLWayland and GstGLX11.
And document why we use a list for `all_libraries`
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1168 >
2021-10-16 01:24:45 +00:00
Thibault Saunier
6e79932ad9
meson: List libraries and their corresponding gir definition
...
Introduces a `libraries` variable that contains all libraries in a
list with the following format:
``` meson
libraries = [
[pkg_name, {
'lib': library_object
'gir': [ {full gir definition in a dict } ]
],
....
]
```
It therefore refactors the way we build the gir so that we can reuse the
same information to build them against 'gstreamer-full' in gst-build
when linking statically
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 19:27:30 -03:00
Thibault Saunier
e2dd28a753
meson: Mark files as files()
...
Making it more robust and future proof
And fix issues that it creates
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1093 >
2021-10-15 19:27:30 -03:00
Matthew Waters
ee1255079b
gl/dmabuf: add some debug logging about why things may fail to be uploaded
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1145 >
2021-10-14 07:41:44 +00:00
Olivier Crête
fdd7f9be23
glutils: Export affine transformation functions for gtkglsink
...
Also remove duplicated copy of those functions from the gl plugin
With contributions from Bastien Nocera
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1088 >
2021-10-12 20:27:34 +00:00
Thibault Saunier
2fd28195ca
Move files from gst-plugins-base into the "subprojects/gst-plugins-base/" subdir
2021-09-24 16:13:26 -03:00