François Laignel
5903496e5b
regenerate all
2020-11-05 18:29:47 +01:00
Sebastian Dröge
b91123d298
Simplify IsSubclassable::override_vfunc() implementations
2020-11-05 17:12:06 +00:00
Sebastian Dröge
99fbbc32cb
Use glib::Class instead of glib::object::Class
2020-11-05 17:12:06 +00:00
Sebastian Dröge
027de84349
Update for class struct handling changes in the glib bindings
...
See https://github.com/gtk-rs/gtk-rs/pull/10
2020-11-05 16:41:48 +02:00
François Laignel
5d2fe6d069
gstreamer-base: regenerate
2020-11-05 12:36:47 +01:00
Sebastian Dröge
67f5c0767a
Regenerate everything with latest gir
2020-11-01 09:48:40 +02:00
Sebastian Dröge
501934a29b
Allow unused imports in autogenerated code
...
These should not be there to begin with but they're hard to prevent.
2020-10-17 13:09:45 +03:00
Sebastian Dröge
55efe30258
Regenerate everything
2020-09-08 15:42:28 +03:00
Marijn Suijten
beaa22fabb
base_transform: Reset unused vfuncs on consecutive configure calls
...
If a user ends up changing the configured mode later on previously
registered vfuncs are not reset meaning the object is effectively stuck
in mode `Both`.
2020-09-02 00:39:38 +02:00
Sebastian Dröge
23174629b6
base/aggregator: "samples-selected" signal handler only has to be Send, not Sync
...
It can only be emitted from the aggregate thread.
2020-08-17 10:39:55 +03:00
Sebastian Dröge
dfe87cf5c9
Add various new 1.18 APIs
2020-08-11 12:54:32 +03:00
Sebastian Dröge
70fd572a46
Regenerate everything
2020-08-11 12:53:27 +03:00
Sebastian Dröge
4f5b2f5060
Update for removal of ObjectImpl::get_type_data()
2020-07-26 18:02:05 +03:00
Sebastian Dröge
448c1e10a0
Regenerate
2020-07-06 13:01:57 +03:00
Sebastian Dröge
9cc99b27e0
gstreamer/element: Let post_message() and post_error_message() take ownership of the message
...
This is more in line with the C API and simplifies callers in Rust.
2020-06-30 23:55:02 +03:00
Sebastian Dröge
71b83b7c84
base/aggregator: Mark new 1.18 vfuncs as only available from the version onwards
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/272
2020-06-30 23:46:51 +03:00
Sebastian Dröge
9911de6591
base/baseparse: Add support for overriding stop vfunc
2020-06-30 23:46:51 +03:00
Sebastian Dröge
cc866b53d0
Call the parent impl of various vfuncs if not overridden
...
This was forgotten for a few types and would require each subclass to
implement them, even if a parent class already provided an
implementation.
2020-06-30 23:46:51 +03:00
Sebastian Dröge
911bb34dc2
Don't generate LAST/NONE variants of flags types
...
Those are automatically provided already.
2020-06-30 11:35:49 +03:00
Sebastian Dröge
45402b5e95
Add specific version configurations for various enum/flags values
...
gobject-introspection does not support this yet so we have to do that
manually.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/271
2020-06-30 11:23:37 +03:00
Sebastian Dröge
af01f1bc67
gstreamer: Simplify MiniObject bindings by removing one layer of abstraction
...
And instead directly implementing this via the macro on the target
types.
2020-06-30 11:06:02 +03:00
Sebastian Dröge
8dfbc9e811
Regenerate
2020-06-19 13:09:11 +03:00
Guillaume Desmottes
7b2fe31cc1
update gir generator and regenerate
2020-06-11 12:33:49 +02:00
Guillaume Desmottes
6cd711cfdf
subclass: clean up subclassing prelude/re-exports
...
Use re-export pattern from glib.
Fix #255
2020-06-09 14:36:37 +02:00
Guillaume Desmottes
1b0a20e52f
regenerate
2020-06-03 20:04:18 +03:00
Sebastian Dröge
781c5785b1
Regenerate
2020-05-05 17:29:14 +00:00
Vivia Nikolaidou
ec4a43be89
Regenerate
2020-05-03 16:48:35 +03:00
Sebastian Dröge
90a4918f92
gstreamer-base/aggregator: Add subclassing support for new 1.18 virtual methods
2020-05-03 16:48:35 +03:00
Vivia Nikolaidou
0aeccc27ff
gstreamer-base/aggregator: Implement update_segment manually
2020-05-03 16:48:35 +03:00
Vivia Nikolaidou
118c7d4ad9
Regenerate
2020-04-30 17:16:23 +03:00
Guillaume Desmottes
872024c372
fix option_as_ref_deref clippy warnings
2020-04-21 09:00:35 +02:00
Sebastian Dröge
185eb188ca
Fix various signal handler trampoline usages
2020-04-13 19:24:04 +03:00
Sebastian Dröge
5021994237
Regenerate everything
2020-04-13 19:11:33 +03:00
Sebastian Dröge
76a0410d41
Replace unneeded transmute calls with a safer alternative
2020-04-12 19:47:49 +03:00
Sebastian Dröge
d1665b8114
Regenerate with latest gir
2020-04-12 18:55:06 +03:00
Guillaume Gomez
c07fe14191
gstreamer*: Add missing init checks
2020-04-12 17:25:54 +03:00
Sebastian Dröge
019afd54f9
Update for new from_glib_borrow signature
...
See https://github.com/gtk-rs/glib/pull/605
2020-04-05 18:48:48 +03:00
Sebastian Dröge
d3e93f172f
gstreamer-base/basetransform: Rename PreparedOutputBuffer and GeneratedOutput enums
...
PrepareOutputBufferSuccess and GenerateOutputSuccess is more consistent
with what we do elsewhere.
2020-04-02 19:58:47 +03:00
Sebastian Dröge
2006bd51cc
gstreamer-base: Add pushsrc subclassing bindings
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/244
2020-04-02 19:58:42 +03:00
Sebastian Dröge
13411b7461
gstreamer-base: Add basesrc alloc() vfunc
2020-04-02 19:58:42 +03:00
Sebastian Dröge
68332e854e
gstreamer-base: Add get_allocator() functions to aggregator, basesrc and basetransform base classes
2020-04-02 19:58:42 +03:00
Sebastian Dröge
0b0544da63
gstreamer-base/basesrc: Add support for filling the passed in buffer in the create function
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/242
2020-04-02 19:58:42 +03:00
Sebastian Dröge
b21f576430
Add #[must_use] attribute to mutex guards / stream lock
...
It's usually a mistake if creating one of these and immediately dropping
them again as that would immediately unlock the mutex again.
2020-02-28 16:29:48 +02:00
Sebastian Dröge
98ecef7153
Make sure to hold MutexGuard for the remainder of the function in various places
...
Not assigning it to a variable would cause it to be dropped immediately
and the lock to be released again immediately.
2020-02-27 12:10:14 +02:00
Sebastian Dröge
e0a71563ba
gstreamer/base_transform: Add support for implementing prepare_output_buffer()
...
This requires some acrobatics due to inconsistent ownership handling of
the buffers on the C side.
2020-02-22 18:55:56 +02:00
Sebastian Dröge
870978e286
base/base_transform: Fix minor clippy warning
...
warning: called `map(f)` on an Option value where `f` is a unit closure
--> gstreamer-base/src/subclass/base_transform.rs:683:13
|
683 | / (*parent_class)
684 | | .before_transform
685 | | .map(|f| f(element.to_glib_none().0, inbuf.as_ptr() as *mut _));
| |_______________________________________________________________________________^
|
= note: `#[warn(clippy::option_map_unit_fn)]` on by default
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_map_unit_fn
2020-02-09 21:22:04 +02:00
Sebastian Dröge
09212add47
base/base_transform: Add before_transform/copy_metadata/transform_meta support for subclasses
2020-02-09 20:45:29 +02:00
Sebastian Dröge
e63e8b81ff
base/base_transform: Add submit_input_buffer/generate_output support for subclasses
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/155
2020-02-09 20:22:54 +02:00
Sebastian Dröge
420150a4e3
base/flow_combiner: UniqueFlowCombiner::clear() should take &mut self
...
It's modifying the state of the combiner and requires a unique, mutable
reference.
2020-02-09 18:22:45 +02:00
Sebastian Dröge
196a9891cb
Regenerate with latest gir
...
This switches the RTP constant strings over to once_cell::Lazy
2020-01-22 19:57:41 +02:00
Sebastian Dröge
12416a4031
gstreamer-base: Require &mut self for BaseParseFrame functions that modify it
...
And add non-mutable getters for input/output buffer
2019-12-18 18:38:29 +02:00
Sebastian Dröge
2ba5105b80
Implement Sync/Send for more types and don't implement Send for TypeFind
...
They can actually be shared with multiple threads at the same time
safely as all functions requiring an immutable reference are
thread-safe.
OTOH TypeFind can't be shared safely between different threads as not
all implementations of the TypeFind struct are thread-safe.
2019-12-18 18:37:44 +02:00
Hans Ole Hatzel
14a55dc73d
gstreamer-base/basesink: Provide default implementation for render
...
We need some classes derived from `BaseSink` to not enforce render being
implemented.
An example of this is AudioSink which only requires the user to
implement `write` but not `render`, so the default implementation
of render needs to be called.
2019-12-18 15:14:35 +02:00
Sebastian Dröge
be3c378f28
Use Results instead of Options where they signal an error instead of just a missing value
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/216
2019-12-17 22:21:28 +02:00
Tony Jinwoo Ahn
62c0b689a6
gstreamer-base/{adapter,functions}, gstreamer-video/video_info: Change functions from returning Option to Result
...
Partial work for:
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/216
2019-12-16 11:29:51 +00:00
Sebastian Dröge
eaafbd14f7
Regenerate
2019-12-15 12:19:33 +02:00
Sebastian Dröge
90854eb047
base/basesrc: Add bindings for BaseSrc::get_times()
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/228
2019-12-10 19:49:36 +02:00
Sebastian Dröge
f417d68820
Remove usage of glib_floating_reference_guard!()
...
It's not needed anymore.
2019-12-07 23:05:14 +02:00
Sebastian Dröge
175863668d
Regenerate everything with latest gir
2019-11-21 09:52:51 +02:00
Sebastian Dröge
a783280dcf
base/basetransform: Update BaseTransformImpl::set_caps() return type for consistency
...
In all other base classes it is a Result instead of a bool, so do the
same here.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/225
2019-11-21 00:02:23 +02:00
Guillaume Gomez
9e30687d8e
Fix glib reexports
2019-11-11 11:34:09 +01:00
Guillaume Gomez
457ac9118b
Regenerate with latest gir
2019-11-11 11:34:09 +01:00
Sebastian Dröge
2d2459ed52
Export traits from the crate level and ensure that all traits are in the preludes
2019-10-17 13:30:35 +03:00
Sebastian Dröge
991f2e1576
Update and regenerate everything with latest gir
2019-10-05 00:03:57 +03:00
Sebastian Dröge
52509b4b95
Remove subclassing feature and make it the default
2019-09-09 11:51:07 +03:00
Sebastian Dröge
85d01e853e
baseparse/transform/aggregator: Add constants for custom flow returns
2019-08-14 20:26:22 +03:00
François Laignel
514a05accd
Manual update for new Value::get
signature
2019-08-13 10:57:32 +02:00
François Laignel
5d012945df
Regen
2019-08-11 10:43:30 +02:00
Sebastian Dröge
d8325212f4
Fix various clippy warnings
2019-07-11 22:02:01 +03:00
Sebastian Dröge
3a8d05075d
Switch everything from mem::uninitialized() to MaybeUninit or mem::zeroed()
...
And also fix a few cases where mem::uninitialized() was simply wrong to
use.
2019-07-11 17:56:50 +03:00
Sebastian Dröge
bde6a04780
Regenerate everything with latest gir
2019-07-10 11:21:28 +03:00
Sebastian Dröge
47f0940b44
Regenerate everything with latest gir
2019-06-24 20:52:03 +03:00
Sebastian Dröge
b87ffa17bb
Run rustfmt also over all the generated code
2019-06-18 13:12:00 +03:00
Sebastian Dröge
e5aa6f59f9
Regenerate everything
2019-06-18 13:10:46 +03:00
Guillaume Desmottes
c774bd8114
base: add bindings for GstBaseParse
...
Fix #157
2019-06-01 13:04:12 +05:30
Sebastian Dröge
86e969d964
Remove various Into<Option<_>> trait bounds from functions
...
In autogenerated code these were already replaced but some manual code
still kept them.
2019-05-24 10:04:16 +00:00
Sebastian Dröge
6cef32a4dd
Change various mini object references to references to the refcounted object
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/204
2019-05-24 10:04:16 +00:00
Sebastian Dröge
a986914bad
Use Option<&T> instead of &Option<T> everywhere
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/203
2019-05-22 23:27:13 +03:00
Sebastian Dröge
88dcb82c8d
Regenerate everything for 1.16.0
2019-04-23 19:15:53 +03:00
Sebastian Dröge
5c32a0d1d3
Update manual code and configuration for 1.16
2019-04-23 19:15:53 +03:00
Sebastian Dröge
e7898c1b24
Update manual code
2019-04-15 19:19:19 +03:00
Sebastian Dröge
24305a19e8
Regenerate everything with latest gir
2019-04-15 18:38:05 +03:00
Sebastian Dröge
86a31b4139
Silence/fix various clippy warnings
2019-03-07 14:05:35 +02:00
Sebastian Dröge
8c39da4e5b
Update to Rust 1.31 linter-specific attributes
2019-03-04 15:16:01 +02:00
Sebastian Dröge
8754e4220e
Regenerate everything with latest gir
2019-02-22 11:55:16 +02:00
François Laignel
e24efa7259
gstreamer-base: subclassing: move parent fn in dedicated trait ( !231 )
2019-02-13 11:53:14 +00:00
François Laignel
37b717c020
gstreamer-base: add parent_xxx impl for all vfunc
2019-02-03 08:41:20 +00:00
François Laignel
ac00608b7e
gstreamer-base: fix parent vfunc invocations when needed
...
Fixes #180
2019-02-03 08:41:20 +00:00
Sebastian Dröge
00cbd49923
Regenerate with latest gir
2019-01-29 16:28:51 +02:00
François Laignel
7cb1dc9cb4
gstreamer-base: update signatures to Result<(), glib::BoolError>
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/175
2019-01-27 09:36:56 +00:00
François Laignel
c65214b207
gstreamer-base: update signatures to Result<(), ErrorMessage>
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/175
2019-01-27 09:36:56 +00:00
François Laignel
5d1a839558
gstreamer-base: update signatures to Result<(), LoggableError>
...
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/175
2019-01-27 09:36:56 +00:00
Sebastian Dröge
bd0cbe99b3
Add more Debug impls to everything possible
2019-01-22 17:46:08 +02:00
Sebastian Dröge
ad24ab9638
Regenerate everything with latest gir
2019-01-21 22:00:48 +02:00
Sebastian Dröge
bfcdec782e
Switch to stable rustfmt and add skip annotations for the generated code to the lib.rs
2019-01-16 17:10:01 +02:00
Sebastian Dröge
43ec33a1db
Remove some code that is nowadays generated by the glib_wrapper! macro
2019-01-16 15:23:53 +02:00
Sebastian Dröge
58ccf666a6
Change some const raw pointers to mutable
...
We cast them to a mutable pointer of another type right afterwards
anyway.
2019-01-16 13:52:56 +02:00
Sebastian Dröge
931c485150
Update manual code for glib API changes
2019-01-16 13:52:56 +02:00
Sebastian Dröge
6da0a9d169
Regenerate everything with latest gir
2019-01-16 13:32:39 +02:00
François Laignel
948fb2ae4b
Replace XXXReturn with Result<XXXSuccess, XXXError>
...
... in function signatures.
These breaking changes aim at improving usability by allowing users
to take advantage of Rust error management features sur as `ok_or`,
`map_err`, `expect` and the `?` operator. See the `examples` and
`tutorials` to get an idea of the impacts.
2019-01-11 18:33:04 +01:00