Commit graph

2289 commits

Author SHA1 Message Date
Marijn Suijten
604902ed7c audio,video: Ignore *Format::get_info
The result is not nullable, and this function call can be substituted by
*FormatInfo::from_format().
2020-12-07 12:09:39 +01:00
Marijn Suijten
18d6823dd8 gstreamer: Ignore Gst.Format::register; needs manual implementation 2020-12-07 12:09:39 +01:00
Marijn Suijten
c4e82ce7b9 gstreamer: Add EventTypeFlags to autogenerated 2020-12-07 12:09:39 +01:00
Marijn Suijten
8a309b39f2 gstreamer: Add Glib.Quark to manual list and sort 2020-12-07 12:09:39 +01:00
Marijn Suijten
f260fa4f8d gstreamer/event: Use autogenerated EventType::get_name 2020-12-07 12:09:39 +01:00
Marijn Suijten
c95bd4f47a video: Implement get_kr_kb manually to fix capitalization
Capitalization is wrong in function and parameter/variable names:

    warning: method `get_Kr_Kb` should have a snake case name
       --> gstreamer-video/src/auto/enums.rs:515:12
        |
    515 |     pub fn get_Kr_Kb(&self) -> Option<(f64, f64)> {
        |            ^^^^^^^^^ help: convert the identifier to snake case (notice the capitalization): `get_kr_kb`
        |
        = note: `#[warn(non_snake_case)]` on by default

    warning: variable `Kr` should have a snake case name
       --> gstreamer-video/src/auto/enums.rs:518:21
        |
    518 |             let mut Kr = mem::MaybeUninit::uninit();
        |                     ^^ help: convert the identifier to snake case (notice the capitalization): `kr`

    warning: variable `Kb` should have a snake case name
       --> gstreamer-video/src/auto/enums.rs:519:21
        |
    519 |             let mut Kb = mem::MaybeUninit::uninit();
        |                     ^^ help: convert the identifier to snake case (notice the capitalization): `kb`

    warning: variable `Kr` should have a snake case name
       --> gstreamer-video/src/auto/enums.rs:525:17
        |
    525 |             let Kr = Kr.assume_init();
        |                 ^^ help: convert the identifier to snake case (notice the capitalization): `kr`

    warning: variable `Kb` should have a snake case name
       --> gstreamer-video/src/auto/enums.rs:526:17
        |
    526 |             let Kb = Kb.assume_init();
        |                 ^^ help: convert the identifier to snake case (notice the capitalization): `kb`
2020-12-07 12:09:39 +01:00
Marijn Suijten
12c74d681b audio: Disable fn fill_silence with broken glib translation
This function is already manually defined in AudioFormatInfo and
shouldn't reside under AudioFormat.
2020-12-07 12:09:39 +01:00
Marijn Suijten
736f58a631 audio,video: Mark to_string functions on "unknown"-enum as manual 2020-12-07 12:09:39 +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
Marijn Suijten
d9769aeb6a audio/video: Add missing FromGlibPtrNone<*const> for FormatInfo 2020-12-07 12:09:39 +01:00
Marijn Suijten
0763d2645d video: Reuse Self::Err in from_str 2020-12-07 12:09:39 +01:00
Marijn Suijten
2447664df6 Replace Result<(), fmt::Error> with fmt::Result 2020-12-07 12:09:39 +01:00
Marijn Suijten
9f0befa033 gstreamer: macro_use is for use statements, not macro calls 2020-12-07 12:09:39 +01:00
Sebastian Dröge
f6700f1ff1 gstreamer-base/adapter: Replace various error cases with Rust assertions
These are assertions on the C side too and are programmer errors, not
something that can be handled gracefully.
2020-12-07 10:48:28 +02:00
Sebastian Dröge
1199e89dca gstreamer-base/adapter: Add error checking at the bindings level
Instead of running into (inconsistent even) assertions inside the C
code.

Also don't return uninitialized data and signed offsets from the
masked_scan() functions.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/298
2020-12-06 20:11:18 +02:00
Sebastian Dröge
15722ec5d2 gstreamer/datetime: Check invariants on the bindings side instead of asserting in the C code
Newer versions of GStreamer (1.20 and above) will not assert any longer
but handle it more gracefully, so let's do the same here for all
versions.

Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/297
2020-12-06 19:23:32 +02:00
Marijn Suijten
584a87163f video/video_meta: get_plane_size now takes a size-annotated array ptr 2020-12-04 19:37:10 +01:00
Marijn Suijten
5afca49a7b gstreamer: Propagate nullability changes into manual code 2020-12-04 19:37:07 +01:00
Marijn Suijten
88321a4d61 Gir.toml: Remove unnecessary non-nullable return annotations 2020-12-04 19:37:07 +01:00
Marijn Suijten
92df13eeb1 Regenerate with trusted nullability 2020-12-04 19:37:06 +01:00
Marijn Suijten
ceeaf97793 gst,base,check,net: Trust return value nullability 2020-12-04 19:36:22 +01:00
Marijn Suijten
47102b0e76 Regenerate with fresh gir files 2020-12-04 19:34:09 +01:00
Marijn Suijten
217dfdff10 gir-files: Import from gstreamer-bad 1.18.~2 at 2f2e8a93 2020-12-04 19:34:09 +01:00
Marijn Suijten
1c22ab66ee gir-files: Import from gstreamer-base 1.18.~2 at ee38a96c8 2020-12-04 19:34:09 +01:00
Marijn Suijten
59a4f06d17 gir-files: Import from gstreamer 1.18.~2 at 865cfb8ea
Includes fixed null annotations
2020-12-04 19:34:07 +01:00
Marijn Suijten
275425ae9f gir-files: Import from gstreamer-bad 1.18.1 at e5c3c106a 2020-12-03 19:38:26 +01:00
Marijn Suijten
5744d33ec7 gir-files: Import from gstreamer 1.18.1 at 29a8099d1
This complements an earlier import for gstreamer-base 1.18.1.
2020-12-03 19:38:26 +01:00
Guillaume Desmottes
8b9ef8b109 video: add alignment API to VideoMeta 2020-12-03 16:39:40 +01:00
Guillaume Desmottes
c529d4d4ae video: add VideoInfo::align_full() 2020-12-03 16:39:40 +01:00
Guillaume Desmottes
e404d4f213 video: VideoInfo::align(): return a Result 2020-12-03 16:39:40 +01:00
Guillaume Desmottes
7cc57f4164 video: implement Eq and PartialEq on VideoAlignment 2020-12-03 16:39:35 +01:00
Guillaume Desmottes
6fbe7a1739 video: add VideoMeta::get_plane_{height,size}
Fix #299
2020-12-03 12:15:51 +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
6fe1b26a10 CI: Gir_*.toml files have moved to <crate>/Gir.toml
See f657a56947
2020-11-28 11:15:22 +01:00
Marijn Suijten
b2f3363c8c CI: Update to restructured GL EGL/Wayland/X11 layout 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
75bcc8402d example/glupload: Update to separated GL windowing 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
Marijn Suijten
f66727297a Import gir-files from 1.18.1: minor annotation fixes 2020-11-28 11:08:10 +01:00
Marijn Suijten
e5dbd137bf Import gir-files from 1.18.0 with GL separated per API 2020-11-28 11:08:10 +01:00
Marijn Suijten
5b520d7c47 gir-files/fix: Update paths for GL EGL/Wayland/X11 gir files 2020-11-28 11:08:10 +01:00
Marijn Suijten
9577965782 sys/Gir.toml: Drop default target_path in current directory 2020-11-28 11:07:48 +01:00