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
Sebastian Dröge
93dc69f3f3
Add generator.py from gstreamer-rs-sys
2019-06-18 13:10:24 +03:00
Sebastian Dröge
8f6196c629
Add gir submodule
2019-06-18 13:07:04 +03:00
Guillaume Desmottes
c3ccec67eb
video: turn VIDEO_MAX_PLANES to an usize
...
More convenient to use.
2019-06-18 13:30:59 +05:30
Guillaume Desmottes
840d1847a1
video: add VIDEO_MAX_PLANES constant
2019-06-18 10:57:58 +05:30
Guillaume Desmottes
491eaf3a73
video: VideoInfo: implement align()
2019-06-18 09:38:43 +05:30
Sebastian Dröge
4f024af7d6
gstreamer/serde: Fix compilation with serde feature enabled
2019-06-06 09:25:19 +03:00
Sebastian Dröge
d1e562b9f6
Explicitly add dyn
keyword to trait objects
...
Trait objects without are deprecated with the latest nightly and this
makes it more clear that we're doing dynamic dispatch anyway.
2019-06-06 09:09:34 +03:00
Guillaume Desmottes
7a69a1137c
gstreamer: plugin_feature: use Rank enum
2019-06-04 12:56:18 +03:00
Guillaume Desmottes
1cd733fb0b
gstreamer: allow to register using Rank enum directly
...
Prevent user to have to cast to a u32 manually.
2019-06-04 12:50:43 +03:00
Sebastian Dröge
2c31baaa0c
gstreamer: Implement Add<u32> for gst::TypeFindProbability and fix comparison
...
While the enum is a signed integer, all operations inside GStreamer
(especially comparison) is based on unsigned integers.
2019-06-04 12:45:56 +03:00
Sebastian Dröge
620a9b2a95
gstreamer: Implement Add<u32> for gst::Rank and fix comparison
...
While the enum is a signed integer, all operations inside GStreamer
(especially comparison) is based on unsigned integers.
2019-06-04 12:45:56 +03:00
Sebastian Dröge
d44c293753
Use TryFrom/TryInto traits where it makes sense instead of our previous ad-hoc solutions
2019-06-03 18:42:34 +03:00
Sebastian Dröge
fdb95f0033
gstreamer/format: Implement formatted value arithmetic with overflow checks
...
We have a value to represent invalid/overflow anyway, so let's make sure
that all operations are actually not overflowing and if they do we
assigned that value to the result.
2019-06-03 08:25:43 +00:00
Sebastian Dröge
fbcdf90386
gstreamer/format: Add various other arithmetic operation impls for the different formatted values
...
This includes gst::ClockTime.
2019-06-03 08:25:43 +00:00
Sebastian Dröge
b2ffe98d59
gstreamer/fraction: Add impls for various other arithmetic operations on fractions
...
Any arithmetic operation on plain values or references in any order
should be possible now, and on fractions with i32.
2019-06-03 08:25:43 +00:00
Guillaume Desmottes
c774bd8114
base: add bindings for GstBaseParse
...
Fix #157
2019-06-01 13:04:12 +05:30
Guillaume Desmottes
e9fbbc2b40
ci: bump minimum Rust version to 1.34
...
Needed for TryFrom.
2019-06-01 11:57:15 +05:30
Sebastian Dröge
e5d0afee02
video: Add pack/unpack func bindings
2019-05-28 09:26:44 +02:00
Sebastian Dröge
0147f03344
audio: Cast fewer points to *mut pointers in pack/unpack func bindings
2019-05-28 04:59:27 +02:00
Sebastian Dröge
1c1533d076
check: Fix compilation with v1_16 feature enabled
2019-05-28 04:46:41 +02:00
Sebastian Dröge
37071c9d60
gstreamer: Fix build with serde feature enabled
2019-05-28 04:35:12 +02:00
Sebastian Dröge
004ce5d392
gstreamer: Re-export the paste crate for the gst_plugin_define! macro
...
And only depend on the paste crate if the subclass feature is requested.
2019-05-27 22:46:26 +02:00
Sebastian Dröge
faa6467d7a
gstreamer: Export new 1.14+ plugin symbols if configured for 1.14+
...
This is also needed for static linking on Android to work correctly.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/154
2019-05-27 20:22:05 +00:00
Arun Raghavan
61b1822c95
gstreamer: Fix URIHander::set_uri annotation
...
We don't actually accept a NULL uri, so it doesn't need to be an Option,
and using &str instead of String is more efficient.
2019-05-25 19:12:42 +02:00
Sebastian Dröge
4798b4bcc9
video: Don't require the input buffers of the video codec frames to be writable
2019-05-25 14:13:06 +02:00
Sebastian Dröge
bc082ba56c
video: Don't unref video codec state in set_format()
2019-05-25 13:02:41 +02:00
Sebastian Dröge
be9434e029
video: Add finish() virtual function for video encoder/decoder
2019-05-25 11:25:56 +02:00
Sebastian Dröge
7a0bc76668
video: Add VideoEncoder bindings
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/160
2019-05-25 10:11:06 +02:00
Sebastian Dröge
4096869075
Update byte-slice-cast to 0.3
2019-05-24 13:26:49 +02:00
Vivia Nikolaidou
4a8e860a9e
gstreamer-video: Expose VideoBufferPool
...
Closes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/12
2019-05-24 10:32:57 +00:00
Vivia Nikolaidou
6461a3abaa
buffer_pool: Add {get,set}_allocator bindings
2019-05-24 10:32:57 +00:00
Vivia Nikolaidou
32e1d68d36
allocator: Expose GstAllocator
2019-05-24 10:32:57 +00:00
Vivia Nikolaidou
922af1d606
Add GstMemory bindings
...
Part of https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/12
2019-05-24 10:32:57 +00:00
Vivia Nikolaidou
044d931d01
flags: Expose GstMemoryFlags
2019-05-24 10:32:57 +00:00
Sebastian Dröge
059860c744
Allow clippy job to fail in the CI for now
2019-05-24 10:04:16 +00:00
Sebastian Dröge
b5dcbe3897
gstreamer/proxypad: Move default functions to extension trait
2019-05-24 10:04:16 +00:00
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
e6f65a5032
gstreamer/miniobject: ToOwned::to_owned() on references has to create a copy
...
Otherwise it's possible to create a new owned reference from a mutable
reference, and then there is a mutable and immutable reference to the
same data at the same time, which is simply not allowed.
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/204
2019-05-24 10:04:16 +00:00
Guillaume Desmottes
c766f16403
video: add GST_BUFFER_POOL_OPTION_VIDEO_*_META constants
2019-05-23 15:10:42 +02:00
Guillaume Desmottes
47121fe9d6
gstreamer-video: VideoDecoder bindings
...
The VideoCodecFrame and VideoCodecState is C API is unfortunatelly unsafe
by design. So we workarounded it by ensuring the decoder stream lock was
hold while user has a writable reference on those objects.
Based on previous work from Thibault Saunier and Philippe Normand.
Fixes #161
2019-05-22 20:40:57 +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
Víctor Manuel Jáquez Leal
32d7f42d67
Remove unused extern crates
...
Latest versions of nightly rust compiler can detect unused extern
crates, and this commit removes those marked as unused.
2019-05-17 09:34:46 +00:00
Jan Alexander Steffens (heftig)
5398a80a73
gstreamer/pad: Add a probe test
2019-05-16 18:17:15 +02:00
Jan Alexander Steffens (heftig)
d470881ac2
gstreamer/pad: Handle PadProbeReturn::Handled more correctly
...
If the probe returns Handled and the data was a Buffer we need to ensure
it was consumed. Queries need to be returned. The behavior of Handled
for other probes is not clear.
2019-05-16 16:55:02 +02:00
Jan Alexander Steffens (heftig)
d5317cccdd
gstreamer/pad: Expose the flow_ret value in PadProbeInfo
...
This is present since GStreamer 1.5.90 so no feature flags needed.
2019-05-16 16:55:02 +02:00
Jan Alexander Steffens (heftig)
061683af7b
gstreamer/pad: Assert post-probe data did not become None
...
GStreamer does not allow the probe to consume the reference here.
2019-05-16 16:55:02 +02:00
Jan Alexander Steffens (heftig)
706fb66f0b
gitignore: Ignore any target folder, not just in the root
2019-05-16 16:55:02 +02:00