Commit graph

389 commits

Author SHA1 Message Date
Marijn Suijten
85e46f39f3 video: Provide manual to_string and display for VideoChromaSite
This function was named wrong before 1.20, and its return transfer type
changed from none to full. To provide

Note that, when 1.20 Gir files are imported, this `version` override in
gstreamer-video/Gir.toml wil come into effect and create a Display trait
for us (without version constraint). At that point the manual Display
impl should be removed, but the manual to_string implementation remains.
2020-12-12 20:28:37 +01:00
Marijn Suijten
a215610167 audio/video: Update to v1.20 functions 2020-12-12 19:43:02 +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
fb56af8d84 Update from_glib calls and put them in unsafe blocks 2020-12-08 15:50:15 +01:00
Guillaume Gomez
959568f124 regen 2020-12-08 14:00:17 +01:00
Marijn Suijten
bb8e7c3e8f audio/video: Fix more unused imports
TODO: How about use glib::translate::*;?
2020-12-07 12:12:16 +01:00
Marijn Suijten
82b4726bb7 impl FromStr: Forward implementation to autogenerated from_string() 2020-12-07 12:12:16 +01:00
Marijn Suijten
a7348023a0 video: Add test cases for enum to_string 2020-12-07 12:12:16 +01:00
Marijn Suijten
040772ab61 audio,video: Manual enum to_string returns 'static; add NULL check 2020-12-07 12:12:16 +01:00
Marijn Suijten
9ff39bae6f audio,video: Use autogenerated Display impl 2020-12-07 12:12:16 +01:00
Marijn Suijten
c215acb7f9 audio,video: Delete manual implementations for now-autogenerated enum funcs 2020-12-07 12:12:16 +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
1b1a99b320 audio,video: Use manual implementations for fns using *Endianness
{Audio,Video}Endianness is an enumeration to represent the two possible
values in Rust but this enumeration does not exist as such in C, where
it is merely an integer with some constants defining possible values.
2020-12-07 12:09:39 +01:00
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
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
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
584a87163f video/video_meta: get_plane_size now takes a size-annotated array ptr 2020-12-04 19:37:10 +01:00
Marijn Suijten
47102b0e76 Regenerate with fresh gir files 2020-12-04 19:34:09 +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
Marijn Suijten
9577965782 sys/Gir.toml: Drop default target_path in current directory 2020-11-28 11:07:48 +01:00
Marijn Suijten
a87cc4c3a3 cargo: Update ffi crate paths to direct "./sys" subdirectory 2020-11-28 11:05:51 +01:00
Guillaume Gomez
8f9d76bb8c Revert "Remove unnecessary dox feature"
This reverts commit 9dd8bd9095.
2020-11-27 14:37:49 +01:00
Guillaume Gomez
2d87561193 Revert "Remove unnecessary dox feature in cargo files"
This reverts commit 128b3b251e.
2020-11-27 14:37:40 +01:00
Guillaume Gomez
7daac635c4 regen 2020-11-27 14:37:24 +01:00
Guillaume Gomez
128b3b251e Remove unnecessary dox feature in cargo files 2020-11-25 16:02:51 +01:00
Guillaume Gomez
9dd8bd9095 Remove unnecessary dox feature 2020-11-25 15:54:02 +01:00
Guillaume Gomez
28438d245a regen 2020-11-25 15:53:45 +01:00
Sebastian Dröge
7dc5a90b8a Remove unneeded extern crate 2020-11-22 19:15:21 +02:00
Sebastian Dröge
d31badf9ac gstreamer-video: Update manual code to 2018 edition 2020-11-22 19:15:20 +02:00
Sebastian Dröge
4bd7f7af1a gstreamer-video: Regenerate 2020-11-22 19:15:20 +02:00
Sebastian Dröge
9889bc990a sys: Update to Rust 2018 2020-11-22 19:15:20 +02:00
Sebastian Dröge
389fa306aa Regenerate with latest gir 2020-11-19 19:53:22 +02:00
Marijn Suijten
e88994a0b7 use cfg_if to refactor some #[cfg()] / #[cfg(not())] pairs 2020-11-19 16:39:31 +01:00
Marijn Suijten
aeb1b70581 Remove doc(cfg()) from expressions
warning: unused doc comment
       --> gstreamer-video/src/video_info.rs:655:37
        |
    655 |           #[cfg_attr(feature = "dox", doc(cfg(feature = "v1_12")))]
        |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^
    656 | /         {
    657 | |             VideoInfoBuilder {
    658 | |                 format,
    659 | |                 width,
    ...   |
    674 | |             }
    675 | |         }
        | |_________- rustdoc does not generate documentation for expressions

Also simplify some blocks into expressions which are allowed to have
attributes as well since Rust 1.43.
2020-11-19 16:39:31 +01:00
Marijn Suijten
bd75778fcb Add doc(cfg()) on all manual files 2020-11-19 16:39:31 +01:00
Marijn Suijten
9daa8d20a9 Regenerate with doc(cfg()) attribute on all symbols
This is enabled by a new version of gir, as updated in the previous
commit.
2020-11-19 16:39:31 +01:00
Marijn Suijten
3f373f623a Enable feature(doc_cfg) in all lib.rs
The next version of gir is going to generate doc(cfg()) attributes on
many symbols to show feature-dependence hints. While autogenerated sys
crates get this attribute in their own (generated) lib.rs file the safe
wrapper crates do not have such an autogenerated lib.rs file.
2020-11-19 16:39:31 +01:00
Sebastian Dröge
09f1a87dc9 video/timecode: Use stringify!($name) instead of "$name" in Debug impl
Otherwise it would output a literal "$name" string.
2020-11-16 13:21:57 +02:00
Sebastian Dröge
b861f724c4 gstreamer-video: Make virtual methods take wrapper of type, not parent 2020-11-14 19:39:27 +02:00
Sebastian Dröge
f6ace04caf Regenerate everything with latest gir 2020-11-07 12:17:25 +02:00