Guillaume Desmottes
a12b51abd6
gstreamer: stream_collection: ignore new_ret_no_self clippy warning
2020-04-21 09:00:35 +02:00
Guillaume Desmottes
872024c372
fix option_as_ref_deref clippy warnings
2020-04-21 09:00:35 +02:00
Guillaume Desmottes
20b672eae3
ci: force git-fetch-with-cli
...
Workaround so fdo redirects actually work.
Fix https://gitlab.freedesktop.org/gstreamer/gst-ci/-/issues/71
2020-04-20 18:19:23 +02:00
Guillaume Desmottes
1295d9fc6a
ci: remove target/ as manual clean up
...
It seems that when a job is failing, target/ is not properly wiped out
from the ci container triggering later jobs to fail, see for example
https://gitlab.freedesktop.org/gdesmott/gstreamer-rs/-/jobs/2349943
Manually clean it up as after_script to hopefully workaround this
problem.
2020-04-20 18:04:55 +02:00
Guillaume Desmottes
932c940102
gstreamer: caps: add new_from_iter(_with_features)()
2020-04-20 17:12:24 +02:00
Guillaume Desmottes
97026d7f86
gstreamer: structure: add new_from_iter()
...
Allow to easily create a new Structure from an iterator.
Fix #250
2020-04-20 15:53:28 +02:00
Sebastian Dröge
caae679d6f
gstreamer: Add some API to calculate the next state convert state changes into their component states and back
2020-04-18 09:23:08 +03:00
Guillaume Desmottes
77af65634f
deny: ignore duplicated because of outdated glutin
2020-04-16 12:20:21 +02:00
Sebastian Dröge
47d839e58a
Switch from cargo-audit to cargo-deny
...
This provides a superset of the features, including license checks.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/issues/238
2020-04-16 12:12:45 +02:00
Guillaume Desmottes
99f91167af
ci: build GStreamer instead of importing tarball
...
Makes it much easier to update to a new gst version.
2020-04-16 09:47:15 +02:00
Guillaume Desmottes
23545fcf7d
ci: no need to fetch gtk-rs checker history
2020-04-16 09:46:59 +02:00
Guillaume Desmottes
429962bdd7
ci: use fdo ci template
...
Build our own images instead of manually installing everything we need
for each job. This should hopefully speed up our ci and make it more
robust.
2020-04-16 09:46:57 +02:00
Sebastian Dröge
ada06502b5
gstreamer: Remove redundant stream/stream collection property getters
...
There are also actual functions for these and we had both enabled
because the properties are missing the "Since: 1.10" markers.
2020-04-15 14:40:37 +03:00
Sebastian Dröge
aea43c428c
gstreamer: Add Stream::debug() and StreamCollection::debug()
...
These provide more helpful debug output than just the pointer when
printing.
2020-04-14 17:31:54 +00:00
Sebastian Dröge
2ef7d70ba3
gstreamer: Enforce that stream collections are immutable after creation by using the builder pattern
2020-04-14 17:31:54 +00:00
Sebastian Dröge
78a81e2c73
gstreamer-video: ValidVideoTimeCode::add_interval() is guaranteed to return a valid timecode again
...
So change the return type from VideoTimeCode to ValidVideoTimeCode.
2020-04-14 17:24:11 +03: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
ac27258478
Revert "gstreamer-editing-services: Move Asset::request_async method into manual code to add missing init assert"
...
This reverts commit 6db70eaa4b
. Not needed
anymore with latest gir.
2020-04-13 19:09:12 +03:00
Sebastian Dröge
adb6f66df2
Update gir
2020-04-13 19:06:24 +03:00
Guillaume Desmottes
5de8fa89c4
ci: allow outdated job to fail
...
glutin and winit updates are pending.
2020-04-13 11:03:19 +02:00
Sebastian Dröge
92faaeacdb
Update minimum supported Rust version to 1.40
2020-04-12 19:47:49 +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
Sebastian Dröge
83f2748eb9
Update gir
2020-04-12 18:42:57 +03:00
Guillaume Gomez
1ef3bf52d2
gstreamer: Add missing init calls in tests
2020-04-12 17:25:54 +03:00
Guillaume Gomez
6db70eaa4b
gstreamer-editing-services: Move Asset::request_async method into manual code to add missing init assert
...
See https://github.com/gtk-rs/gir/issues/898
2020-04-12 17:25:54 +03:00
Guillaume Gomez
c07fe14191
gstreamer*: Add missing init checks
2020-04-12 17:25:54 +03:00
Guillaume Gomez
2f72261360
gitlab-ci: Add checks for missing init asserts
2020-04-12 17:25:52 +03:00
Guillaume Gomez
bfb4ec25c5
gitlab-ci: Add manual traits check
2020-04-12 17:25:30 +03:00
Guillaume Gomez
18b36f2d69
gstreamer*: Add missing manual traits
2020-04-11 21:56:45 +00:00
Sebastian Dröge
62e9af58c6
Fix some clippy warnings
2020-04-11 21:18:18 +03:00
Sebastian Dröge
d7ed8d1e35
gstreamer: Add Element::get_current_clock_time() and ::get_current_running_time()
...
This was added in GStreamer 1.18 but we can easily implement it
ourselves here for the time being and for older versions.
2020-04-11 21:12:03 +03:00
Sebastian Dröge
94ace06883
Remove deprecated std::error::Error::description() impls
2020-04-11 19:39:04 +03:00
Sebastian Dröge
7c19318097
gstreamer-audio: Simplify audio clipping meta test a bit
2020-04-11 19:36:06 +03:00
Sebastian Dröge
d05f8cace8
gstreamer: Add bindings for Plugin::get_plugin_name()
...
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/issues/248
2020-04-11 19:33:34 +03:00
Sebastian Dröge
4866739342
gstreamer-audio: Follow-up commit for updating audio clipping meta tests
2020-04-10 23:40:39 +03:00
Andrew Eikum
0bdfa0ff78
gstreamer-audio: Add support for GstAudioClippingMeta
2020-04-10 23:35:10 +03:00
Guillaume Desmottes
669bf98128
ci: run 'cargo outdated' in scheduled jobs
...
Automatically detect if a crate we are directly using is outdated.
2020-04-10 12:27:38 +02:00
Sebastian Dröge
62c0f5ef42
Use mem::ManuallyDrop instead of mem::forget() everywhere
...
It makes the intentions clearer and potentially results in simpler
assembly, at least in debug builds.
2020-04-09 16:57:06 +03:00
Sebastian Dröge
9f96c5e573
gstreamer/buffer: Unmap memory in flush() of the Write impl of the buffer cursor
...
This makes sure that any remaining data is actually written out as part
of the unmapping, which might be necessary depending on the memory type.
2020-04-07 13:47:04 +03:00
Sebastian Dröge
2fbb10ec92
gstreamer/buffer: Only unmap memory in buffer cursor seek impl if we have to move to a different memory
...
Prevents some unnecessary unmaps.
2020-04-07 13:45:36 +03:00
Sebastian Dröge
35f7c910a9
gstreamer/buffer: Refactor buffer cursor implementation with macros to reduce code duplication
2020-04-07 13:45:36 +03:00
Sebastian Dröge
42d09c2834
gstreamer/buffer: Move BufferCursor/BufferRefCursor into its own module
...
It's quite a bit of code and can be kept nicely separate.
2020-04-07 12:59:24 +03:00
Sebastian Dröge
5fc68e252d
gstreamer: Add missing BufferCursorRef re-export
2020-04-06 21:00:42 +03:00
Sebastian Dröge
ee3a8caa7d
gstreamer/buffer: Add various tests for the BufferCursor / BufferCursorRef
2020-04-06 20:15:51 +03:00
Sebastian Dröge
a884a419db
gstreamer/buffer: Add a BufferCursor / BufferCursorRef helper structs
...
This implements Read/Seek or Write/Seek and allows to read/write/seek
into the buffer without merging the memories inside.
The writer also only maps the memory write-only as compared to all other
ways of accessing the buffer/memory data in a writable way, which have
to map it read-write.
See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/425
for a similar API proposal for GStreamer core.
2020-04-06 20:15:35 +03:00
Sebastian Dröge
9b782b4dfa
gstreamer/buffer: Add tests for various memory related buffer API
2020-04-06 19:29:19 +03:00
Sebastian Dröge
9e0c980a49
gstreamer/buffer: Add iterators for iterating over the memories inside a buffer
...
With immutable, mutable and owned variant.
2020-04-06 19:28:28 +03:00
Sebastian Dröge
2b70db3a9e
gstreamer/buffer: Add BufferRef::peek_memory_mut() function
...
This gives a mutable reference to the given memory and fails if the
memory is not actually writable.
2020-04-06 19:27:40 +03:00