François Laignel
49583597ed
manual code: fix-getters-def doc aliases
2021-05-03 20:46:57 +02:00
François Laignel
01b6d342a4
regen: prop alias + connect_*_notify signal + add fn doc alias
2021-05-03 20:46:56 +02:00
Marijn Suijten
a36fe2a3f5
base: Fix all clippy::use_self warnings
2021-04-30 10:02:55 +02:00
Marijn Suijten
980304ce36
Replace T::type_data with Self::type_data for clippy::use_self
2021-04-30 10:02:55 +02:00
Marijn Suijten
e52e4328b3
Allow clippy::use_self on auto module
2021-04-30 10:02:47 +02:00
Marijn Suijten
e8f340c60a
Update gir and regenerate with clippy::use_self fixes
...
`Self` is now used in more places, shortening the code and making it
more readable at the same time.
2021-04-30 10:02:44 +02:00
Marijn Suijten
f89e840d27
Remove redundant prelude imports
...
When importing the prelude of a crate like `gst` the `glib` prelude is
provided too. Shedding these imports saves quite a few lines and
adheres to keeping it simple; we're not reexporting base/parent preludes
for no reason :)
2021-04-29 12:05:13 +02:00
Marijn Suijten
e6a81edb3c
prelude: Remove redundant reexports already provided by other preludes
...
For cleanliness the prelude module only needs to reexport preludes from
direct, "top-most" crates, which themselves take care of reexporting
preludes from its dependencies again. This shaves off some code while
maintaining the same set of exports.
2021-04-29 11:44:35 +02:00
Bilal Elmoussaoui
890cd03632
manual renames of to_glib into into_glib
2021-04-27 19:44:41 +02:00
Bilal Elmoussaoui
060a7df448
regen with renamed ToGlib into IntoGlib
2021-04-27 19:14:52 +02:00
Marijn Suijten
da156e8ce7
Update gir and regenerate without unused glib::ToValue
imports
2021-04-27 10:14:19 +02:00
Sebastian Dröge
1d59ea91c5
Clean up various imports everywhere
2021-04-26 15:16:58 +03:00
Marijn Suijten
1a07bfc710
Update gir
and regenerate without trait reexports in crate root
2021-04-26 13:24:02 +02:00
Marijn Suijten
827ff99965
lib: Only export traits (Ext and ExtManual) from prelude
...
In gir it was brought up [1] that some traits (in particular
`*ExtManual`) are exported from the crate root in addition to the
prelude, cluttering the environment unnecessarily. This commit removes
all these reexports, leaving those in prelude (that were already there)
only.
After this commit everything matching `Ext(Manual)?\b` in `lib.rs` sits
within `pub mod prelude {};`.
[1]: https://github.com/gtk-rs/gir/pull/1111
2021-04-26 11:25:23 +02:00
Sebastian Dröge
eda1d3d4a7
Update for Value trait refactoring
2021-04-25 14:45:08 +03:00
Sebastian Dröge
0eb5845934
Regenerate with latest gir
2021-04-25 14:45:01 +03:00
Marijn Suijten
1b2b3a75bc
Update gir with generator.py included and regenerate
...
The `gir` repository now includes `generator.py` for easier sharing of
improvements with other projects like `gtk(4)-rs`.
2021-04-24 09:39:04 +02:00
Marijn Suijten
3f508963e7
gstreamer: Remove now-unused build.rs from "normal" crates
...
The `lgpl-docs` and documentation embedding step is now solely invoked
from `./gir/generator.py` in the CI, and does not need the embed/purge
build features anymore.
2021-04-24 09:39:04 +02:00
Marijn Suijten
e62558dde4
Remove docs/
crate and references to it
...
The `lgpl-docs` crate and all precompiled (easy to get outdated!)
docmentation files are removed in favour of being generated at runtime
by the improved generator, both during local development as well as in
the CI.
2021-04-24 09:39:02 +02:00
Marijn Suijten
7ede94fec8
Replace all girs_dir with girs_directories and add gst-gir-files dir
...
The previous commit reinstantiated `girs_dir`, and this commit applies
the rename to `girs_directories` and adds the new/missing
`gst-gir-files` directory where GStreamer-specific `.gir` files live.
2021-04-23 22:01:23 +02:00
Marijn Suijten
666ea908a5
Revert "Gir.toml: Drop unused/renamed girs_dir in favour of gir -d
"
...
This reverts commit 7f9fcb09e2
.
`generator.py` is in the process of being moved to a generic place in
the `gir` repository for reuse across crates. This means `-d` cannot be
passed for our GStreamer-specific `gst-gir-files` directory anymore, and
should be configured from `Gir.toml` instead.
2021-04-23 21:59:33 +02:00
François Laignel
6ab9164dca
fix-getters-calls 0.3.0 pass
2021-04-20 18:18:02 +02:00
François Laignel
e80a29372a
fix-getters-def 0.3.0 pass
2021-04-20 18:18:02 +02:00
François Laignel
b8b944b72b
subclass: remove get prefix where applicable
2021-04-20 18:18:02 +02:00
François Laignel
f7472c82e3
regen: relaxed get fn identification
2021-04-20 18:18:02 +02:00
François Laignel
172a4d47ab
regen: use type_ for glib macros
...
This also includes a new substitution for bool getters:
get_need_... -> needs_...
2021-04-20 18:18:02 +02: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
4804da1273
gstreamer-base/basesrc: Use the correct pointer for retrieving the allocated buffer in BaseSrc::alloc
2021-03-09 18:06:06 +02:00
Sebastian Dröge
ea239c587e
Store panic information not in a custom instance struct but in the instance data provided by the subclassing infrastructure
...
This scales better as there will only be only such data instead of two
or more when having deeper class hierarchies with multiple Rust
elements, and also makes it unnecessary to use a special instance struct
so the default works well.
2021-03-09 16:36:35 +02:00
Sebastian Dröge
6fa48890bc
Update for the subclassing glib bindings API changes
2021-03-09 16:04:32 +02:00
Sebastian Dröge
a311591310
Regenerate with latest gir
2021-03-08 12:25:37 +02:00
Sebastian Dröge
0803dd411e
Update for glib subclass API cleanup
2021-03-08 12:18:24 +02: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
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
fb55cdfeff
Remove allow(unused_imports)
from mod auto
...
gir has been fixed to omit all unnecessary imports from objects, enums
and flags which currently are the only offenders of this linter warning.
Hence disallow this warning from now on which is anyway not applied to
every crate - like gstreamer-gl - where such issues have been uncovered.
2021-01-30 15:49:49 +01: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
Sebastian Dröge
e11b12df7c
gstreamer: Provide class metadata, pad templates and basetransform configuration via trait methods
...
This is closer to how this works in Python and also how properties and
signals work now in the glib bindings.
class_init() only has to be implemented for more special uses now.
2021-01-25 13:56:55 +02:00
Marijn Suijten
3c610e12e5
gst,base,sdp: Use specific copy/free or (un)ref instead of g_boxed
...
SDPMessage, FlowCombiner and ParseContext have specific functions
available to perform copying, freeing and (un)ref'ing. Calling them
directly on versions where they are supported prevents us from going
through GType machinery and locks that end up the same functions in the
end.
2021-01-08 10:41:06 +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
Sebastian Dröge
53aae7ddba
Remove gst_ prefix from all macros except for the logging macros
...
The latter stay e.g. gst_debug! to be more clear and not conflict with
e.g. the debug! macro from the log crate.
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
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
15d8774e6b
Update gir to 1c1a8d7 and regenerate with associated enum/flag functions
2020-12-07 12:11:27 +01:00
Marijn Suijten
2447664df6
Replace Result<(), fmt::Error> with fmt::Result
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
Marijn Suijten
5afca49a7b
gstreamer: Propagate nullability changes into manual code
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
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
88a7c18746
gstreamer-base: Update manual code to 2018 edition
2020-11-22 19:15:20 +02:00
Sebastian Dröge
80b4cb590e
gstreamer-base: 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
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
145f0ed6f5
gstreamer-base: 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
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
4cd6e09f3d
Update documentation link of sys crates
2020-11-01 09:48:37 +02:00
Sebastian Dröge
ef120ce923
Update sys versions to 0.17.0
...
All crates have the same version now, which should cause less confusion
with matching them up.
2020-10-30 18:35:57 +02:00
Sebastian Dröge
35f19e17bf
Update repository URLs
2020-10-30 18:35:52 +02:00
Sebastian Dröge
c833e9ed69
Update dependency paths
2020-10-30 18:27:22 +02:00
Sebastian Dröge
b5c376d315
Move every gtk-rs dependency to the combined gtk-rs repository
2020-10-30 18:15:53 +02:00
Sebastian Dröge
109eac2b9a
Move sys crates into subdirectories of the non-sys crates
2020-10-30 18:06:07 +02:00
Sebastian Dröge
f657a56947
Move Gir.toml into the corresponding subdirectories
2020-10-30 18:06:01 +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
raytiley
a8ed2ac6e0
Update location of documentation.
2020-10-10 15:51:59 -04:00
Sebastian Dröge
dc9a9c4d78
Update CHANGELOG.md for 0.16.4
2020-10-09 13:41:11 +03:00
Sebastian Dröge
4f10eefe1e
Update CHANGELOG.md for 0.16.3
2020-09-08 22:02:31 +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
9cb40878f0
Update CHANGELOG.md for 0.16.2
2020-07-27 12:43:53 +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
0db75a5186
Update CHANGELOG.md for 0.16.1
2020-07-10 10:44:40 +03:00
Sebastian Dröge
f40821ba66
Update versions to 0.17.0
2020-07-06 15:22:55 +03:00
Sebastian Dröge
ca8b8f6a38
Update CHANGELOG.md for 0.16.0
2020-07-06 15:22:07 +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
801998c717
Generate documentation from the docs crate directly
2020-06-19 13:16:19 +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
Sebastian Dröge
a56b3cb5a0
Update CHANGELOG.md for 0.15.7
2020-06-08 13:29:06 +03:00
Guillaume Desmottes
1b0a20e52f
regenerate
2020-06-03 20:04:18 +03:00
Sebastian Dröge
e9317d0a48
Update CHANGELOG.md for 0.15.6
2020-05-28 15:51:43 +03:00
Sebastian Dröge
4097c15c96
Don't include LGPL docs in the docs if both embed-lgpl-docs and purge-lgpl-docs features are selected
...
This makes usage of RLS/rust-analyzer on the repository much faster and
less annoying as the docs don't have to be included and removed on every
change.
2020-05-14 10:44:58 +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
Vivia Nikolaidou
e986119df6
Update Cargo.toml to 1.18
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
Sebastian Dröge
3192d74389
Update CHANGELOG.md for 0.15.5
2020-05-03 10:17:18 +03:00
Vivia Nikolaidou
118c7d4ad9
Regenerate
2020-04-30 17:16:23 +03:00
Guillaume Desmottes
a6c20922ff
update documentation links
2020-04-28 11:17:24 +02: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
755ef9da33
Update CHANGELOG.md for 0.15.4
2020-03-10 10:57:33 +02: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
e585b37923
Update CHANGELOG.md for 0.15.3
2020-02-15 15:23:12 +01: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
5102bfd324
Update CHANGELOG.md for 0.15.2
2020-01-30 00:40:56 +02:00
Sebastian Dröge
0bd2903896
Update CHANGELOG.md for 0.15.1
2020-01-23 08:28:19 +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
d26ffc2c21
Update version to 0.16.0
2019-12-19 00:48:08 +02:00
Sebastian Dröge
bb321f7fa8
Update CHANGELOG.md for 0.15.0
2019-12-18 19:15:21 +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
Sebastian Dröge
8b687ab4a7
Remove header from the README.md about the move from github to gitlab
...
At this point everybody should've noticed.
2019-11-14 10:21:02 +00: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
132eb891ed
Fix dox feature and docs.rs Cargo.toml metadata
2019-10-05 00:13:29 +03:00
Sebastian Dröge
991f2e1576
Update and regenerate everything with latest gir
2019-10-05 00:03:57 +03:00
Sebastian Dröge
79d3888c3d
Update CHANGELOG.md for 0.14.5
2019-09-17 15:41:12 +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
f050750b5e
Update CHANGELOG.md for 0.14.4
2019-08-14 22:48:16 +03:00
Sebastian Dröge
85d01e853e
baseparse/transform/aggregator: Add constants for custom flow returns
2019-08-14 20:26:22 +03:00
Sebastian Dröge
1b860825ee
Update feature flags of all dependencies to include the same version as for the crate itself
...
This improves build times as it allows cargo to reuse more previous
build results when building crates separately.
Also remove the serde-pickle dependency. It was only used in a single
test and caused pulling in of quite a few dependencies.
2019-08-13 16:46:08 +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
eb59456ae3
Update CHANGELOG.md for 0.14.3
2019-07-16 12:47:15 +03:00
Sebastian Dröge
36b0cafc5e
Update CHANGELOG.md for 0.14.2
2019-07-15 20:03:48 +03: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
dcbf68e9e7
Update CHANGELOG.md for 0.14.1
2019-07-06 23:57:28 +03:00
Sebastian Dröge
28a24a4fc0
Update versions to 0.15.0
2019-06-24 20:53:05 +03:00
Sebastian Dröge
fa6cb789cd
Update CHANGELOG.md for 0.14.0
2019-06-24 20:52:03 +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
490004d9c5
Remove empty lines from CHANGELOG.md as that breaks the GitLab rendering
...
... if it's between items in a list.
2019-02-22 17:50:59 +02:00
Sebastian Dröge
32e961d418
Update versions to 0.14.0
2019-02-22 13:04:56 +02:00
Sebastian Dröge
0f6850d6a9
Update CHANGELOG.md for 0.13.0
2019-02-22 11:55:16 +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
3fcbf3fba4
Use default instead of default-features in Cargo.toml
2019-01-16 17:10:01 +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
François Laignel
3200574d31
Update to latest gir
...
See https://github.com/gtk-rs/gir/pull/687
2019-01-04 16:02:40 +01:00
Philippe Normand
9534416760
Regenerate and fix manual bindings for GString support
2019-01-03 22:01:41 +00:00
Sebastian Dröge
9665a89940
adapter: Add a UniqueAdapter wrapper
...
This implements Send/Sync and for allowing this safely it provides no
reference counting and requires a mutable reference for all mutable
operations.
It also provides safe access to the Adapter::map() function as without
reference counting we can ensure that nothing else is invalidating the
returned memory while it's still being accessed.
2019-01-03 11:24:52 +02:00
Sebastian Dröge
90c86e0031
flow_combiner: Add a UniqueFlowCombiner wrapper
...
This implements Send/Sync and for allowing this safely it provides no
reference counting and requires a mutable reference for all mutable
operations.
2019-01-03 11:11:48 +02:00
Sebastian Dröge
11db200dd6
Remove some historical cruft from the README.md
2018-12-13 19:46:57 +02:00
Sebastian Dröge
654d98b269
Update README.md to mention that this also allows writing GStreamer plugins
...
And clarify that gst-plugins-rs only contains various plugins.
2018-12-13 19:41:07 +02:00
Sebastian Dröge
6bba3d8518
Add 'static trait bound to all ExtManual traits and get rid of trait bounds for their impls
2018-12-08 14:58:14 +02:00
Sebastian Dröge
5c93e134a7
Regenerate everything with new version of gir
2018-12-08 14:58:14 +02:00
Sebastian Dröge
12c3d1e911
Update CHANGELOG.md for 0.12.2
2018-11-26 16:16:57 +01:00
Sebastian Dröge
8c9d1abe9d
Remove GitLab badge
...
It only works for gitlab.com currently
2018-11-26 16:16:26 +01:00
Sebastian Dröge
6629d1b3f6
Update documentation to GitLab pages
2018-11-26 16:15:53 +01:00
Sebastian Dröge
b41517234d
Various fixes for the README.md of the separate crates
2018-11-26 11:40:55 +01:00
Sebastian Dröge
5df964435c
Update README.md with changes from the main one
2018-11-26 11:36:48 +01:00
Sebastian Dröge
dad32c16c4
Update gst-plugin-rs link to gst-plugins-rs
2018-11-26 11:34:47 +01:00
Sebastian Dröge
8eb4b879fc
Port Aggregator subclassing
2018-11-21 17:03:59 +02:00
Sebastian Dröge
2bc6efa893
Port AggregatorPad subclassing
2018-11-21 17:03:59 +02:00
Sebastian Dröge
411319198a
Port BaseTransform subclassing
2018-11-21 17:03:59 +02:00
Sebastian Dröge
2f90961ef1
Port BaseSink subclassing
2018-11-21 16:14:06 +02:00
Sebastian Dröge
771defa377
Port BaseSrc subclassing
2018-11-21 16:14:06 +02:00
Sebastian Dröge
06d654760d
Implement glib::SendUnique on Adapter
...
It can be safely sent between threads as long as all references are in
the same thread.
2018-11-10 13:27:37 +02:00
Sebastian Dröge
f31827f194
Regenerate with latest gir
...
Gets rid of some unneeded property notification functions in GES
2018-11-05 11:18:31 +02:00
Sebastian Dröge
f4a6aa4481
Change all references from GitHub to freedesktop.org GitLab
2018-11-03 20:08:42 +02:00
Víctor Manuel Jáquez Leal
60c9cdfda1
Update autogenerated code with latest gir
2018-10-31 17:33:15 +02:00
Sebastian Dröge
8f71a81cb5
Regenerate with latest gir to get rid of unneeded notify signal connectors for construct-only properties
2018-10-03 13:57:07 +03:00
Sebastian Dröge
05b591c709
Update CHANGELOG.md for 0.12.1
2018-09-21 11:43:01 +03:00
Sebastian Dröge
0ddab16801
Update versions to 0.13.0
2018-09-10 01:54:25 +03:00
Sebastian Dröge
a2a7eac8a8
Update CHANGELOG.md for 0.12.0
2018-09-10 01:54:07 +03:00
Sebastian Dröge
2e139bd202
Update CHANGELOG.md for 0.11.6
2018-08-27 10:04:16 +03:00
Sebastian Dröge
3c900e6102
Regenerate with latest gir
2018-08-18 00:25:12 +03:00
Sebastian Dröge
9e90a1264f
Add getter for the aggregator pad segment
2018-08-01 19:24:54 +03:00
Sebastian Dröge
c7fa48984e
Aggregator is only available from gstreamer-base since 1.14
2018-07-31 00:05:40 +03:00
Sebastian Dröge
2d97d96874
Add bindings for basetransform/src get_buffer_pool()
2018-07-30 12:55:41 +03:00
Sebastian Dröge
5df360a983
Add bindings for aggregator and aggregagor pad
2018-07-30 12:55:41 +03:00
Sebastian Dröge
2240ef109f
Regenerate with latest GIR and update for the glib::Quark changes
2018-07-30 11:46:40 +03:00
Sebastian Dröge
33a6aab6d7
Run everything through latest rustfmt
2018-07-27 13:36:40 +03:00
Sebastian Dröge
26d9d304c4
Update CHANGELOG.md for 0.11.5
2018-07-24 15:55:07 +03:00
Sebastian Dröge
694bcaa697
Fix all clippy warnings
...
Or silence the ones we don't care about.
2018-07-20 10:28:20 +03:00
Sebastian Dröge
fc79b4c4c8
Update CHANGELOG.md for 0.11.4
2018-07-19 18:52:30 +03:00
Sebastian Dröge
e0972ae1e5
Get rid of manual usage of callback_guard!
2018-06-24 14:52:50 +03:00
Sebastian Dröge
2085d170be
Get rid of callback_guard! as unwinding through FFI is defined behaviour now and aborts
2018-06-24 14:42:11 +03:00
Sebastian Dröge
d2272fefa7
Update CHANGELOG.md for 0.11.3
2018-06-08 10:27:24 +03:00
Sebastian Dröge
1192a027b4
Regenerated with latest GIR and GIR files
2018-05-21 11:55:19 +03:00
Sebastian Dröge
7429138274
Update CHANGELOG.md for 0.11.2
2018-05-09 12:48:33 +03:00
Sebastian Dröge
2cefd9aea6
Re-run everything through rustfmt
2018-04-25 11:13:14 +03:00
Sebastian Dröge
46d27e3e75
Regenerate everything with latest GIR
2018-04-23 20:45:15 +03:00
Sebastian Dröge
5dd17d6248
Update CHANGELOG.md for 0.11.1
2018-04-07 20:32:28 +03:00
Sebastian Dröge
9a3ef2e9f1
Regenerate with latest GIR and update for the non-bitflags flags in -sys now
2018-04-04 10:47:12 +03:00
Sebastian Dröge
492c3d656c
Run everything through rustfmt again
2018-04-01 11:57:58 +03:00
Sebastian Dröge
15116d0f98
Update CHANGELOG.md for 0.11.0
2018-03-20 12:47:58 +02:00
Sebastian Dröge
6d5f7337fc
Update version to 0.12.0
2018-03-20 12:37:24 +02:00
Sebastian Dröge
68ba4d23bb
Update to using the master branch of gstreamer-sys again
2018-03-20 12:04:16 +02:00
Sebastian Dröge
a33fd41d02
Regenerate everything with latest gir
2018-03-20 11:52:29 +02:00
Sebastian Dröge
7f479b0e14
Use correct gstreamer-sys branch
2018-03-19 10:32:07 +02:00
Sebastian Dröge
99d4fe0925
Update gstreamer-base
2018-03-19 10:32:07 +02:00
Sebastian Dröge
a3b294f0f2
Add back callback guards
2018-03-02 21:34:29 +02:00
Sebastian Dröge
808ff293ec
Regenerate everything with latest gir
2018-03-02 21:34:29 +02:00
Sebastian Dröge
f92f0a99e8
Update CHANGELOG.md for 0.10.2
2018-02-18 23:25:11 +01:00
Sebastian Dröge
f1426c82ba
Remove callback guards
...
Since Rust 1.24 it is safe to let panics go to the FFI boundary
2018-02-17 19:58:41 +02:00
Sebastian Dröge
08dbde4c0e
Add getters for the BaseSrc/Sink/Transform configured segment
2018-02-12 10:44:44 +02:00
Sebastian Dröge
6d0d7a3df8
Regenerate everything with latest GIR
2018-02-06 16:42:34 +02:00
Sebastian Dröge
98290bcc55
Update CHANGELOG.md for 0.10.1
2018-01-03 17:08:46 +02:00
Sebastian Dröge
91d0723c1b
Fix documentation links for gstreamer-base/net
2017-12-22 15:35:11 +02:00
Sebastian Dröge
4a5987d03d
Update versions to 0.11.0
2017-12-22 15:06:06 +02:00
Sebastian Dröge
95562b8d22
Update CHANGELOG.md for 0.10.0
2017-12-22 14:44:24 +02:00
Sebastian Dröge
917255de89
Add typefind helper bindings
2017-12-18 10:05:42 +02:00
Sebastian Dröge
8a2e78e586
Regenerate with latest GIR to fix various issues with property getters
...
Get rid of unneeded transmutes and actually initialize flags/enum
GValues with the correct type instead of using integers.
2017-11-27 19:16:34 +02:00
Sebastian Dröge
80ebc86e94
Update CHANGELOG.md from 0.9.1
2017-11-26 20:42:53 +02:00
Sebastian Dröge
ea3d08d65a
Update CHANGELOG.md with 0.9.0
2017-11-26 19:49:56 +02:00
Sebastian Dröge
f1e095eb0e
Update versions to 0.10.0
2017-11-26 18:33:12 +02:00
Sebastian Dröge
a557a8d66e
Require the dox feature of dependant crates
2017-11-12 12:58:30 +01:00
Sebastian Dröge
c39c0c7264
Implement ClockTime as ClockTime(Option<u64>)
...
And also implement a FormatValue type that holds a value together with
its format to make usage of the positions/durations/seek positions/etc
more convenient and safe.
Fixes https://github.com/sdroege/gstreamer-rs/issues/3
2017-11-11 11:57:29 +01:00
Sebastian Dröge
5d266bf31b
Regenerate with latest GIR
...
Which gives us mappings between instance and class struct for now.
2017-11-09 13:33:40 +02:00