Marijn Suijten
01f0988a48
gl/gir: Configure generation for GLFilter with miniobject quirks
...
GLMemory input/output objects cannot be passed as mutable:
to_glib_none_mut checks if the miniobject is writable, even though the
underlying implementation should really only care about whether the
_data_ owned by this miniobject is.
(This temporary GLMemory object references its parent buffer object
that is also referenced externally, resulting in two references making
the object itself immutable)
Furthermore take care of automatically calling `add_rgba_pad_templates`
in `class_init` if `ADD_RGBA_PAD_TEMPLATES` is set to `true` (the
default).
2021-04-17 07:54:40 +00:00
Marijn Suijten
0d338a003e
gl/gl_filter: Add GLFilterImpl with configurable filter/filter_texture
...
GLFilter should override either .filter() or .filter_texture(), not
both. This allows an implementer to pick at runtime what function is
overridden.
2021-04-17 07:54:40 +00:00
Marijn Suijten
2e85ebe789
gl/gl_base_filter: Implement GLBaseFilterImpl virtual functions
2021-04-17 07:54:40 +00:00
Marijn Suijten
34919c99d0
gl: Enable generation of GstGL.GLMemory
2021-04-17 07:54:40 +00:00
Marijn Suijten
39f8eb98ee
gl/framebuffer: Mark autogenerated fn attach() to unsafe
...
`attachment_point` is said to not be validated, or [existing validation]
is inadequate.
[existing validation]: 57a23786f3/gst-libs/gst/gl/gstglframebuffer.c (L456)
2021-04-17 07:54:40 +00:00
Marijn Suijten
4eddd377e1
gl/gl_base_memory: Provide manual GLBaseMemory miniobject implementation
...
Also enable all dependencies used by this type. Copying
AllocationParams is possible without borrowing the source mutable.
The offset and size parameters of `memcpy` are unchecked and may result
in out-of-bounds reads/writes, which is why this function is marked as
`unsafe`.
2021-04-17 07:54:40 +00:00
Marijn Suijten
d596ea45c5
gl/gir: Make GLBaseFilter always available with min_version
...
This class only contains two functions with a version requirement of at
least 1.16, but the class is used by GLFilter without any version
restrictions.
2021-04-17 07:54:40 +00:00
Marijn Suijten
eda46ac74d
gl/gir: Add external types used by GL to manual list
...
These types will be used by the newly generated GLFilter class and/or
its dependencies.
2021-04-17 07:54:40 +00:00
Marijn Suijten
d200a869bc
gl/gir: Add all used external parent classes as manual
...
As collected with:
xmlstarlet sel -t -v "//_:field[@name = \"parent_class\"]/_:type/@name" gir-files/GstGL-1.0.gir | uniq
This adds GstBase.BaseTransform for GLBaseFilter and GLFilter, and
Gst.Element for gst::panic_to_error.
2021-04-17 07:54:40 +00:00
François Laignel
53be8e5f58
fix-getters-{def,calls} pass
2021-04-13 17:54:40 +02:00
François Laignel
08545cbefc
regen - remove get prefix for getters
2021-04-13 17:54:38 +02:00
Marijn Suijten
6ec0e3ac4b
Update gir and regenerate with extended gir-dirs comments
...
Gir now prints all directories and their hashes in the version file and
comments; useful now that gstreamer-rs is being generated from both
gir-files/ and gst-gir-files/ submodules.
2021-04-01 15:58:41 +02:00
Marijn Suijten
7f9fcb09e2
Gir.toml: Drop unused/renamed girs_dir in favour of gir -d
...
We were already using `gir -d` and especially now that our files are
separated across two directories that are relative to the directory
containing Gir.toml this only becomes cumbersome. Besides `gir` lacks
functionality to normalize the path, leading to ie.
gstreamer-gl/egl/sys/../../../gir-files in the version comment as a
result.
2021-04-01 15:53:23 +02:00
Marijn Suijten
a38561fbcd
Update gir and regenerate with redundant #[cfg]/#[cfg_attr] removed
...
Also ignores `clippy::upper_case_acronyms` introduced with 1.51 which
can't be adhered to in bindings.
2021-04-01 15:53:18 +02:00
Sebastian Dröge
a311591310
Regenerate with latest gir
2021-03-08 12:25:37 +02:00
Marijn Suijten
c58f2b09d2
gl/sys/gir: New buffer/memory get_type functions are only in 1.20
...
G-IR cannot read or represent `Since:` annotations on get_type()-like
functions, despite these being available in the source. This adds the
type requirements manually following its implementation in [1],
considering it will not be backported to 1.18.x [2]. If `get_type` is
used in manual bindings after 1.20 releases this version requirement is
easily caught.
[1]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/999
[2]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1010
2021-03-02 10:20:11 +01:00
Sebastian Dröge
5822785191
Regenerate with latest gir
2021-02-28 18:30:54 +02:00
Sebastian Dröge
2b0b3910ee
Regenerate everything with latest gir
2021-02-22 17:13:45 +02:00
Sebastian Dröge
5f5218e1ab
Update CHANGELOG.md for 0.16.7
2021-02-13 14:04:37 +02:00
Sebastian Dröge
6487380021
Regenerate gstreamer-gl-{egl,wayland,x11} sys Cargo.toml
...
They were forgotten to be included in the previous commit.
2021-02-12 09:44:04 +02:00
Sebastian Dröge
3d076c05e1
Regenerate with gir to update system-deps dependency and get rid of clippy warning in the ABI tests
2021-02-10 13:11:49 +02:00
Vivia Nikolaidou
0a119cada6
gstreamer-audio: Add AudioConverterConfig
2021-02-09 19:13:30 +02:00
Sebastian Dröge
9d86cef2da
Regenerate everything with latest gir
2021-02-07 17:07:17 +02:00
Marijn Suijten
1ffa02fc1f
Update gir to c85699a with import cleanups; regenerate
...
Apply import cleanups from https://github.com/gtk-rs/gir/pull/1043 ,
omitting `use` statements where unnecessary or guarding them with
versioning constraints to prevent `unused_imports` warnings.
Removes unnecessary `mut_override` with
https://github.com/gtk-rs/gir/pull/1044 as well.
2021-01-30 15:49:38 +01:00
Guillaume Gomez
60a5ccc95d
Fix toml files indent
2020-12-23 14:38:33 +01:00
Sebastian Dröge
3428e5c0c7
Update CHANGELOG.md for 0.16.6
2020-12-20 20:50:51 +02:00
Sebastian Dröge
477b00cce8
Update CHANGELOG.md for 0.16.5
2020-12-20 20:50:48 +02:00
Sebastian Dröge
68839c0e79
Re-export all dependency crates and their preludes
...
This makes code in examples potentially simpler.
2020-12-20 19:40:34 +02:00
Guillaume Gomez
2f0e386037
Regen with more doc alias for enums and consts
2020-12-18 15:23:05 +01:00
Sebastian Dröge
ce1148b474
Update everything for glib macro renamings
2020-12-18 00:56:47 +02:00
Sebastian Dröge
d0b0006d27
Regenerate
2020-12-18 00:34:53 +02:00
Sebastian Dröge
38b94abc59
Add COPYRIGHT file as links into all crates and change LICENSE files to links too
2020-12-16 12:49:49 +02:00
Guillaume Gomez
ff5a36561a
Fix license header situation
2020-12-15 11:53:31 +01:00
Marijn Suijten
132477f51f
cargo.toml: Add v1_20 feature to all crates
2020-12-12 13:17:20 +01:00
Marijn Suijten
0ff16c589f
Regenerate sys Cargo.toml with 1.20 version
2020-12-12 13:17:03 +01:00
Marijn Suijten
1d726d6a1e
gir.toml: Add 1.20 to extra_versions
2020-12-12 13:15:11 +01:00
Guillaume Gomez
959568f124
regen
2020-12-08 14:00:17 +01:00
Marijn Suijten
15d8774e6b
Update gir to 1c1a8d7 and regenerate with associated enum/flag functions
2020-12-07 12:11:27 +01:00
Marijn Suijten
57bc1c7f42
audio,video,gl,webrtc: Mark manually-confirmed to_string fns as non-NULL
...
These functions have been checked to never return NULL. The overrides
can hopefully be gone again when C contains better annotations and
trust_return_value_nullability is enabled.
2020-12-07 12:09:39 +01:00
Sebastian Dröge
dd23ac7093
gstreamer-gl: Fix/extend cargo metadata and add README.md for new EGL/Wayland/X11 sub-crates
2020-11-29 11:42:24 +02:00
Marijn Suijten
506c19dab4
gl/egl,x11/sys: Regenerate with sys crate rename
...
Fixes: 4cc57723
("gl: Regenerate with separate EGL/Wayland/X11 -sys crates")
2020-11-28 11:55:27 +01:00
Marijn Suijten
f754860e32
gl/EGL,X11/sys: Split gl and egl,x11 with a hyphen
...
to_snake detects GLEGL and GLX11 as one word (contrary to GLWayland),
leading to no hyphen or underscore separating the two.
Fixes: 4cc57723
("gl: Regenerate with separate EGL/Wayland/X11 -sys crates")
2020-11-28 11:54:42 +01:00
Marijn Suijten
3cda842052
gl/-sys/Cargo: Only use EGL/Wayland/X11 library from v1.18 onwards
2020-11-28 11:15:22 +01:00
Marijn Suijten
22b0644579
gl: Regenerate with renamed EGL/Wayland/X11 crates
2020-11-28 11:15:22 +01:00
Marijn Suijten
d7dcf5ebcb
gl: Rename EGL/Wayland/X11 crates from gst- to gstreamer-
2020-11-28 11:15:22 +01:00
Marijn Suijten
1d3a522afb
gl/manual: Remove moved GST_GL_DISPLAY_EGL_NAME
2020-11-28 11:15:22 +01:00
Marijn Suijten
2ddec80b78
gl/-sys/Cargo: Remove link; fix dependency paths
2020-11-28 11:15:22 +01:00
Marijn Suijten
4cc5772361
gl: Regenerate with separate EGL/Wayland/X11 -sys crates
...
This moves the X11, EGL and Wayland parts of the GL bindings to separate
crates.
Co-authored-by: Sebastian Dröge <sebastian@centricular.com>
2020-11-28 11:15:22 +01:00
Marijn Suijten
efec7d4e31
gl: Move EGL/Wayland/X11 manual impls to their own module
...
And use the new -sys crates.
2020-11-28 11:15:22 +01:00
Marijn Suijten
55badab13d
gl: Add X11/EGL/Wayland API back based on separate -sys crates
...
Co-authored-by: Sebastian Dröge <sebastian@centricular.com>
2020-11-28 11:15:22 +01:00