Sebastian Dröge
67b8c29274
video: Add conversions between VideoInfo
and VideoInfoDmaDrm
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1286 >
2023-07-06 08:46:06 +03:00
Sebastian Dröge
c6015043f5
Regenerate with updated gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1286 >
2023-07-06 08:40:36 +03:00
Sebastian Dröge
e2c1dad0d5
Update to itertools 0.11
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1281 >
2023-06-26 13:59:47 +03:00
Sebastian Dröge
6ab34e1656
Regenerate with latest GStreamer gir files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1266 >
2023-05-22 12:15:07 +03:00
Sebastian Dröge
3699da7314
Remove dox feature and replace by docsrs configuration
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1256 >
2023-05-04 09:19:29 +03:00
Sebastian Dröge
40578ae7e9
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1256 >
2023-05-04 09:19:29 +03:00
Guillaume Desmottes
e75391139c
fix typos in comments
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1246 >
2023-04-07 17:09:48 +02:00
Sebastian Dröge
03d046daba
Regenerate with latest GStreamer gir files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1244 >
2023-04-06 21:31:39 +03:00
Sebastian Dröge
a11e5cfd75
Add manual changes for the new/changed 1.24 APIs
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1244 >
2023-04-06 21:31:39 +03:00
Sebastian Dröge
ca2fd54230
Add v1_24 feature flag everywhere
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1244 >
2023-04-06 21:08:51 +03:00
Sebastian Dröge
ce0ddc7be0
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1244 >
2023-04-06 21:08:51 +03:00
Sebastian Dröge
e584fdb17b
video: Don't store a copy of the VideoInfo
in VideoFrame
...
Instead just reference the one inside the FFI struct directly by making
sure that the memory representation of the FFI and Rust type are the
same.
This reduces the size of `VideoFrame` by about half.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1244 >
2023-04-06 21:08:51 +03:00
Thibault Saunier
68db910bc8
Update gir-files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1227 >
2023-04-04 11:50:49 -04:00
Sebastian Dröge
4b112a9bb8
video: Fix two new clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1228 >
2023-03-07 10:41:19 +02:00
François Laignel
58475f4a25
{Audio,Video}CapsBuilder: add for_encoding constructor
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1222 >
2023-02-20 09:05:51 +00:00
Sebastian Dröge
b6e253acbf
Update minimum supported Rust version to 1.66
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1223 >
2023-02-20 10:42:07 +02:00
Sebastian Dröge
f0bb4e5bef
video: Don't leak the gst::Buffer
when converting a VideoFrame
into an ffi::GstVideoFrame
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1219 >
2023-02-13 14:29:10 +02:00
Sebastian Dröge
6ffb1db482
video: Don't forget to unmap the VideoFrame
when converting into a gst::Buffer
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1219 >
2023-02-13 14:28:47 +02:00
Sebastian Dröge
6f06a26327
Add support for inline variable names in error/warning/info message creation macros
...
Simply by removing the special-casing of string literals, which doesn't
really bring any improvements here.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/442
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1216 >
2023-02-12 13:27:59 +02:00
Sebastian Dröge
13140d8b8a
Update versions to 0.21.0
2023-02-09 23:42:32 +02:00
Sebastian Dröge
f6f0465655
Remove various unnecessary clippy allow attributes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1214 >
2023-02-07 21:13:19 +02:00
Sebastian Dröge
9155d6eb7b
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1214 >
2023-02-07 21:00:46 +02:00
Sebastian Dröge
91eec7a33f
Migrate everything to object lock API instead of custom GMutex
handling
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1212 >
2023-02-06 10:50:33 +02:00
Sebastian Dröge
c62530e181
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1209 >
2023-01-31 10:49:39 +02:00
Sebastian Dröge
f24b38470b
Fix various new clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1203 >
2023-01-25 10:18:33 +02:00
Sebastian Dröge
7efc22ebc9
Require GStreamer 1.22.0 instead of 1.21.0 when selecting v1_22
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1201 >
2023-01-24 13:01:05 +02:00
Sebastian Dröge
ecfb10649a
Add 1.22 to extra_versions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1201 >
2023-01-24 13:00:53 +02:00
Sebastian Dröge
0f1c937465
Regenerate with latest gir files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1201 >
2023-01-24 12:50:26 +02:00
Sebastian Dröge
2c2a6c3871
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1200 >
2023-01-24 10:40:31 +02:00
Sebastian Dröge
dc5e408c2d
gstreamer: Add various convenience From
impls for Caps
, BufferList
, CapsFeatures
, Buffer
and VideoOverlayComposition
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1199 >
2023-01-23 13:06:54 +00:00
Sebastian Dröge
0f859b9029
Get README.md in sync again
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/437
2023-01-23 12:01:07 +02:00
Sebastian Dröge
64abf69987
Use glib::function_name!
instead of module_path!
macro in more places
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1191 >
2023-01-16 11:10:21 +02:00
Sebastian Dröge
003554876c
Update various APIs to use glib::GStr
...
Currently only covers what is needed to keep code compiling, plus
everything caps/structure/tags related.
This avoids unnecessary heap allocations for adding the NUL-terminator
of C strings, and especially makes caps/structure handling as efficient
as in C.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1190 >
2023-01-15 21:05:57 +02:00
Sebastian Dröge
ea136515cf
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1190 >
2023-01-15 20:17:11 +02:00
Sebastian Dröge
37bfb78fdc
Change some assertions to debug assertions
...
These assertions can only trigger because of bugs in the bindings
implementation or in the C code and not because of bugs in calling code,
so using debug assertions is perfectly fine for them and reduces the
number of assertions inlined everywhere in release builds.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1188 >
2023-01-14 17:13:46 +02:00
Sebastian Dröge
f235dc987d
Inline various trivial functions
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1177 >
2023-01-11 11:33:54 +02:00
Sebastian Dröge
f07727ee6d
Use uninitialized stack memory for out parameters instead of zeroed memory if applicable
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1187 >
2023-01-11 09:06:38 +00:00
Sebastian Dröge
1b022a6b7c
Get rid of unnecessary option wrapping
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1187 >
2023-01-11 09:06:38 +00:00
Christian Meissl
da2eb50dd3
gstreamer-video: implement VideoBufferPoolConfig for BufferPoolConfigRef
...
implementing VideoBufferPoolConfig for BufferPoolConfigRef
instead of BufferPoolConfig allows to retrieve the VideoAlignment
from within buffer pool set_config
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1185 >
2023-01-08 19:15:46 +01:00
Sebastian Dröge
ba1d8c5ce6
gstreamer: Move initialization panic into a separate function
...
This keeps the number of duplicated panics all over the codebase lower
and reduces generated code size.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1184 >
2023-01-05 21:33:14 +02:00
Sebastian Dröge
8d30bcbf4b
Use IntoGlibPtr
trait instead of to_glib_full()
where appropriate to reduce unnecessary refcounting/copying
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1183 >
2023-01-05 12:09:57 +02:00
Sebastian Dröge
5e852fa0ff
gstreamer-video: Autogenerate part of the VideoDecoder
subframe API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1183 >
2023-01-05 12:09:57 +02:00
Sebastian Dröge
a028e807df
gstreamer: Autogenerate some more API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1182 >
2023-01-04 13:25:17 +02:00
Sebastian Dröge
7490846309
Fix compilation due to changes in autogenerated code
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1182 >
2023-01-04 13:25:17 +02:00
Sebastian Dröge
567ce0a3bf
Group and merge imports in all manual code
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1182 >
2023-01-04 13:25:17 +02:00
Sebastian Dröge
45c145ad50
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1182 >
2023-01-04 13:25:17 +02:00
Sebastian Dröge
81bcf5c8dd
gstreamer-video: Implement VideoTimeCode
via glib::wrapper!
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1180 >
2023-01-03 10:41:35 +00:00
Sebastian Dröge
30838b6549
gstreamer-video: Implement VideoTimeCodeInterval
via glib::wrapper!
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1180 >
2023-01-03 10:41:35 +00:00
Sebastian Dröge
882513d33a
Make use of the new TransparentType
/ TransparentPtrType
traits
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1178 >
2023-01-02 19:07:24 +02:00
Sebastian Dröge
3d0f563111
Update minimum supported Rust version to 1.64
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1175 >
2022-12-25 14:54:38 +02:00
Sebastian Dröge
d6cc452cf3
Use PhantomData
as Stash::Storage
if nothing has to be stored except for a lifetime
...
This reduces the size of all stashes from two pointers to one.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1171 >
2022-12-20 17:07:39 +00:00
Sebastian Dröge
3764bf75f8
Regenerate with latest GStreamer gir files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1170 >
2022-12-16 22:09:29 +02:00
Sebastian Dröge
d7a292ec00
video: Update for NavigationModifierType
flags value rename
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1170 >
2022-12-16 22:09:29 +02:00
Sebastian Dröge
e3ad1918dc
Fix various new clippy warnings
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1164 >
2022-12-13 11:29:45 +02:00
Sebastian Dröge
7012fa638e
Regenerate with latest gir/gir-files/gst-gir-files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1159 >
2022-12-09 17:37:01 +02:00
Sebastian Dröge
ae4dd88f3d
Update for GLib Into<Value>
changes
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1156 >
2022-11-26 15:19:35 +02:00
Sebastian Dröge
0b013001b7
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1156 >
2022-11-26 15:01:10 +02:00
Sebastian Dröge
cbfc19ccfc
Regenerate with latest GStreamer gir files
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1153 >
2022-11-21 13:29:38 +02:00
Sebastian Dröge
1ee4845544
video: Remove gst_video_format_info_get_tile_sizes()
bindings and bind new VideoTileInfo
API
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1153 >
2022-11-21 13:29:38 +02:00
Sebastian Dröge
e763e4fdde
audio/video: Hide force-live
property of Audio/VideoAggregator
...
The base class already provides a getter/setter for this.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1153 >
2022-11-21 13:04:49 +02:00
Sebastian Dröge
fa5491e6b3
Use borrowed miniobject/structure types in more places
...
When the function does not keep around an additional reference of the
value this is correct and more flexible for callers.
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/420
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1152 >
2022-11-21 12:40:37 +02:00
Sebastian Dröge
1264eb10ac
gstreamer: Add PartialEq
impls between owned/borrowed miniobjects/structures
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1152 >
2022-11-21 12:40:37 +02:00
Sebastian Dröge
9ba448427d
Regenerate with latest gir
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1148 >
2022-11-12 17:40:16 +02:00
Sebastian Dröge
32c432655f
Regenerate with latest GStreamer gir files
2022-11-08 18:15:34 +02:00
Sebastian Dröge
01e24d2018
Fix various new clippy warnings
2022-11-01 11:10:57 +02:00
Sebastian Dröge
90b8ee2022
Move from imp.instance()
to imp.obj()
...
It's doing the same thing and is shorter.
2022-10-23 23:06:44 +03:00
Sebastian Dröge
031133c179
Update versions to 0.20.0
2022-10-22 20:27:42 +03:00
Sebastian Dröge
bf7c770457
Regenerate with latest gir files
2022-10-22 20:22:10 +03:00
Sebastian Dröge
67e3183922
Regenerate with latest gir and gir-files
2022-10-18 18:16:51 +03:00
Sebastian Dröge
19f7aaf413
Generate only a single versions file for sys crates too
2022-10-18 18:15:01 +03:00
Sebastian Dröge
9a9ce252a4
Fix usage of dox feature
2022-10-18 18:15:01 +03:00
Sebastian Dröge
d80227e566
Trust nullability annotations everywhere
2022-10-18 18:15:01 +03:00
Vivia Nikolaidou
b230d8aab6
examples, video: Use .into() instead of gst::Fraction::new()
...
Simplifies the code
2022-10-14 16:26:00 +03:00
Vivia Nikolaidou
6d4ad712c7
examples, audio, pbutils, video: Use AudioCapsBuilder and VideoCapsBuilder
...
Simplify caps creation code
2022-10-14 13:59:51 +03:00
Sebastian Dröge
7d10f9f4c8
Regenerate with latest gir/gir-files
2022-10-12 15:05:07 +03:00
François Laignel
8e2c621a9f
gst/lib: cleanup format re-exports
2022-10-10 15:10:10 +02:00
Sebastian Dröge
f17781e188
Change *Impl trait methods to only take &self and not Self::Type in addition
2022-10-10 15:01:07 +03:00
Sebastian Dröge
dcd53bd16e
Regenerate with latest gir
2022-10-07 20:30:24 +03:00
Sebastian Dröge
dec112d0a8
Regenerate with latest gir/gir-files/gst-gir-files
2022-09-13 12:13:07 +03:00
François Laignel
f014505e1c
regen: rename feature 'ser_de' as 'serde'
2022-09-12 19:36:32 +02:00
François Laignel
069c6a2c01
Rename feature 'ser_de' as 'serde'
...
When I introduced the 'ser_de' feature, I couldn't find a way to
name it 'serde' while also make it pull the optional 'serde'
crate together with the other related dependencies.
With rustc >= 1.60 we can use 'dep:serde' to refer to the 'serde'
dependency as part of the 'serde' feature.
2022-09-12 19:36:30 +02:00
Sebastian Dröge
efe13948cc
ci: Update gst-gir-files and bring autogenerated code in sync
2022-09-04 20:51:07 +03:00
Sebastian Dröge
35c6af424d
Update minimum supported Rust version to 1.63
2022-09-04 10:37:13 +03:00
Sebastian Dröge
44d899a0eb
Regenerate with latest gir / gir-files / gst-gir-files
2022-08-31 11:13:08 +03:00
Sebastian Dröge
f65d410fc5
gstreamer-video: Add bindings for VideoInfo::in_info() / out_info()
2022-08-19 19:45:30 +03:00
Sebastian Dröge
76f01516e3
Regenerate with latest GStreamer gir files
2022-08-19 19:42:05 +03:00
Sebastian Dröge
fbad0fd0bc
Regenerate with latest gir / gir-files / gst-gir-files
2022-08-14 14:02:50 +03:00
Guillaume Desmottes
2dcd5cf9eb
as_ptr() and as_mut_ptr() accessors are safe
...
Nothing unsafe about getting a pointer, deferencing it is unsafe.
2022-08-12 08:29:49 +02:00
Vivia Nikolaidou
7a9537c0fd
audio, video: Default values in caps builders
...
AudioCapsBuilder::new() will have the default values for
rate/channels/layout/format. Similarly, VideoCapsBuilder::new() will
have the default values for format/width/height/framerate.
2022-08-09 15:00:54 +03:00
Vivia Nikolaidou
751a5b4788
gstreamer-video: Add tests for previous/next fraction
2022-07-20 11:06:21 +00:00
Vivia Nikolaidou
32fbb04fa4
gstreamer-video: Add VideoCapsBuilder
2022-07-20 11:06:21 +00:00
Sebastian Dröge
8cb13ac752
video: Add new Colorimetry::is_equivalent()
2022-07-18 13:25:48 +03:00
Sebastian Dröge
b5920ee729
Regenerate with latest gir
2022-07-18 13:25:36 +03:00
Tomasz Andrzejak
2090452e3d
Update minimum supported rust version
2022-07-14 15:23:34 +02:00
François Laignel
fe319af598
Implement FormattedValue on any candidate type
...
The trait FormattedValue was only implemented on types which
could implement the full range of values for a Format. In order
to declare a function which could take both the intrinsic type
of any Format (e.g. `ClockTime`) as well the full range of values
(e.g. `Option<ClockTime>`), the argument was declared:
```rust
impl Into<GenericFormattedValue>,
```
This commit implements `FormattedValue` for any type representing
a format. E.g.: both `ClockTime` and `Option<ClockTime>` will now
implement `FormattedValue`. The trait `FormattedValueFullRange`
is implemented on types which can be built from any raw value.
These changes are intended to help for the implementation of a
means to enforce format conformity at compilation time for
functions with multiple formatted value arguments.
The following signatures were found to be incorrect and are fixed:
- `message::StepDone`: forced the type for `amount` and `duration`
to be of the same type, when `duration` is expected to be of the
`Time` format.
- `query::Convert::set`: the two arguments were forced to the same
type, so potentialy the same format, unless a
`GenericFormattedValue` was used.
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1059
2022-07-11 19:45:52 +02:00
Sebastian Dröge
4dade30f0d
Fix/silence a couple new clippy warnings
2022-06-30 13:08:33 +00:00
Sebastian Dröge
07562c592f
video: Add bindings for is_common_aspect_ratio()
2022-06-30 08:46:06 +03:00
Sebastian Dröge
90aaa32957
Regenerate
2022-06-30 08:46:06 +03:00
Sebastian Dröge
c9d07219c8
Store whether GStreamer was initialized in an AtomicBool
...
Avoids a function call in the normal case.
2022-06-27 10:28:28 +03:00
Sebastian Dröge
d4430ecc6a
Implement more iterator functions / traits in custom iterators for efficiency reasons
2022-05-22 12:42:42 +03:00
Philippe Renon
8f1c94f45d
Regenerate with latest gir
2022-05-20 17:48:40 +02:00
Guillaume Gomez
c1d3ed5eac
Use IntoGlibPtr trait instead of implementing into_ptr
2022-05-07 13:38:11 +02:00
Vivienne Watermeier
1b22be2e15
Add De/Serialization for most bitflag types
...
Represents combinations of flags with a '+' separated string of nicks,
or an empty string for no flags set.
Note that most flag types will ignore any flags using multiple bits when
serializing, since in most cases these flags cover all used bits.
2022-05-06 09:05:52 +00:00
Sebastian Dröge
a34bc85ca1
video: Don't change the VideoOverlayComposition
constructor API based on feature flags
...
Feature flags are additive and a higher feature might be enabled by some
other dependency, which then can cause code that assumes the other API
fail to compile.
Still implement the constructor separately per version to make it clear
to the compiler that the constructor can't fail at all in newer
versions.
2022-05-06 11:01:02 +03:00
Sebastian Dröge
a16c3888e5
Return base class pads by reference instead of strong reference
...
Avoids unnecessary reference counting and the caller can get a strong
reference easily by calling clone().
2022-05-05 14:18:03 +03:00
Mathieu Duponchelle
80b0b378fc
base classes: expose accessors for static pads
...
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/1023 >
2022-05-04 17:15:07 +02:00
Sebastian Dröge
b50a7993de
video: Add bindings for VideoFormatInfo::tile_sizes()
2022-05-03 15:41:54 +03:00
Sebastian Dröge
4a28a188d9
Regenerate with latest gir/gir-files
2022-05-03 15:37:25 +03:00
Vivienne Watermeier
61a3f5296c
video: Fix de/serialization for empty modifier states
...
Empty modifier states are now de/serialized from/to the empty string;
This also adds more thorough testing for deserializing.
2022-04-14 18:19:56 +02:00
Vivienne Watermeier
3b18f10342
video: Implement De/Serialization for NavigationModifierType
...
Modifier state is represented by a "+" separated list of lowercase flag
names, or "empty" for no flags.
2022-04-13 14:29:45 +02:00
Sebastian Dröge
4651c9db4d
Update minimum supported version to 1.14
...
This is the version that is available in Ubuntu 18.04.
2022-04-07 12:45:47 +03:00
Sebastian Dröge
5052a93ee3
Fix macOS instructions in other READMEs too
2022-04-07 11:35:40 +03:00
Sebastian Dröge
b36b63c60a
Regenerate with latest gir files
2022-04-06 09:38:34 +03:00
Vivienne Watermeier
d5e4705605
video: Add builders for navigation events
2022-04-05 19:49:05 +00:00
Vivienne Watermeier
1274a59472
video: update navigation API for recent changes
...
Add support for the new send_event_simple and event_get/set_coordinates
functions, as well as touchscreen events and modifier state. See:
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1633
https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2010
2022-04-05 19:49:05 +00:00
Sebastian Dröge
23e4d1efa8
Regenerate with latest GStreamer gir files
2022-04-05 19:49:05 +00:00
Sebastian Dröge
eed648831d
video: Add various VideoFormatInfo/VideoInfo/VideoFrame helper API
2022-04-04 15:50:09 +03:00
Sebastian Dröge
8908d4bc98
video: Add subclassing bindings for VideoAggregatorConvertPad
2022-04-01 11:04:08 +03:00
Jan Alexander Steffens (heftig)
44b2eba600
Update gir
2022-03-30 22:36:53 +02:00
Sebastian Dröge
c251ca5bc3
video: Add subclass bindings for VideoAggregator
2022-03-22 19:00:32 +02:00
Sebastian Dröge
fbe0728da5
video: Add bindings for VideoAggregator
2022-03-22 19:00:32 +02:00
Sebastian Dröge
215cdfd548
video: Allow converting a VideoFrame
into an FFI GstVideoFrame
2022-03-22 19:00:32 +02:00
Sebastian Dröge
609a744d6c
Regenerate autogenerated bindings
2022-03-17 18:05:13 +02:00
Sebastian Dröge
3fbe37a2ec
video: Add VideoFormatInfo::extrapolate_stride()
2022-03-17 18:05:13 +02:00
Sebastian Dröge
faa1311fcd
video: Add VideoFormatInfo::has_subtiles()
2022-03-17 11:06:26 +02:00
Sebastian Dröge
3080c37897
video: Ignore new navigation event constructors
...
And add doc aliases for the already existing manual implementations of
them.
2022-03-17 11:06:26 +02:00
Sebastian Dröge
54440e47df
Add v1_22 Cargo feature and map to the correct pkg-config version
2022-03-17 11:06:26 +02:00
Sebastian Dröge
4b3362039e
Use SPDX license format in Cargo.toml
2022-03-14 10:21:49 +02:00
Christian Meissl
240da14042
Drop extraneous extra_versions that already fall under min_cfg_version
2022-03-12 14:19:40 +00:00
Sebastian Dröge
bf660cf22a
Update minimum supported Rust version to 1.57
2022-02-22 00:00:39 +02:00
Marijn Suijten
2426d7ce8c
Revert "sys: Link all v1_20 sys crates against library 1.19" - use 1.20
...
This reverts commit 8226c94110
.
Now that GStreamer 1.20 is out, the v1_20 feature can and should link
directly to the stable release instead of the unstable 1.19 development
release.
2022-02-18 11:30:08 +01:00
Sebastian Dröge
0173b73170
Handle empty slices correctly
...
Passing `NULL` to `slice::from_raw_parts` is invalid.
2022-02-07 12:50:37 +02:00
Christian Meissl
8ae97b8c64
fix readme doc links
2022-02-04 14:22:17 +01:00
Sebastian Dröge
47ae1c8658
Regenerate with latest gir files
2022-02-04 12:35:01 +02:00
Sebastian Dröge
4956346b23
video: Allow getting an owned reference to the input buffer from a video codec frame
2022-02-02 00:54:06 +02:00
Sebastian Dröge
deced8b3b8
Regenerate with latest GStreamer gir files
2022-01-29 18:17:26 +02:00
Sebastian Dröge
60cd874db7
video: Add VideoOverlayComposition::add_rectangle()
to add new rectangles after construction
...
Usually it is more convenient to provide them all via an iterator during
construction but in some cases this might be nicer.
2022-01-26 13:04:08 +02:00
Sebastian Dröge
52e09fd83d
video: Implement Default
for VideoOverlayComposition
in 1.20
2022-01-26 13:04:08 +02:00
Sebastian Dröge
26f2ed30ae
Regenerate with latest gst-gir-files
2022-01-25 13:10:58 +02:00
Sebastian Dröge
06cf5de45f
Get rid of fragile dependency and use GLib API instead
2022-01-24 19:33:15 +02:00
Sebastian Dröge
13eb483444
Regenerate everything with latest gir
2022-01-24 19:29:18 +02:00
Sebastian Dröge
5e2249d368
message/query/event: Implement views in a more consistent way
...
Co-authored-by: Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
2022-01-19 13:29:59 +02:00
Sebastian Dröge
ee9157a239
video: Mark VideoTimeCode
as #[repr(transparent)]
2022-01-17 18:04:40 +00:00
Sebastian Dröge
971f35754c
Change default branch from master to main
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/364
2022-01-16 16:15:48 +02:00
Sebastian Dröge
7444975421
Update versions to 0.19.0
2022-01-15 20:21:53 +02:00
Sebastian Dröge
605c633579
Ignore clippy::non_send_fields_in_send_ty
lint
...
It's useless in its current shape and wrongly triggering on all types.
See https://github.com/rust-lang/rust-clippy/issues/8045
2022-01-13 23:38:11 +02:00
Sebastian Dröge
9eb479cf78
Regenerate everything
2022-01-12 15:40:36 +02:00
Sebastian Dröge
6d63180bfc
Update for glib::Quark API changes
2022-01-11 12:50:13 +02:00
Guillaume Gomez
27dd305cb4
Regen to get #[must_use] attributes generated
2022-01-04 19:02:58 +01:00
Thibault Saunier
1dae136ae3
navigation: Add a method to get the GstStructure from NavigationEvent
...
The `GstNavigationInterface` requires to pass a GstStructure to it
`send_event()` method, so it makes sense to allow getting that structure
without building the navigation event itself
2021-12-29 16:15:57 +00:00