Commit graph

1600 commits

Author SHA1 Message Date
Sebastian Dröge
3fe6e1ab18 Add support for adding signals/action-signals 2017-12-20 22:22:19 +02:00
Sebastian Dröge
c1ca7902f1 Don't panic when getting a property failed 2017-12-20 21:57:25 +02:00
Sebastian Dröge
bda421d218 Move more things into gst-plugin-simple 2017-12-20 21:53:43 +02:00
Sebastian Dröge
22c5f93d3b Fix various clippy warnings 2017-12-20 21:36:50 +02:00
Sebastian Dröge
07ce2d64b8 Use the Into trait instead of custom into_*() functions 2017-12-20 20:13:31 +02:00
Sebastian Dröge
80a2c5033f Use ErrorMessage from gstreamer bindings 2017-12-20 20:05:04 +02:00
Sebastian Dröge
cbfb30c7b5 Run everything through rustfmt again 2017-12-20 19:30:32 +02:00
Sebastian Dröge
8e1428c047 Implement Error/Display for AdapterError 2017-12-20 19:18:32 +02:00
Sebastian Dröge
a99522150b Remove unused utils module 2017-12-20 19:16:14 +02:00
Sebastian Dröge
8ef6a1830c Fix build of togglerecord unit test 2017-12-16 18:26:12 +02:00
Sebastian Dröge
2ec85ac0b0 Run everything through rustfmt again 2017-12-16 17:42:42 +02:00
Sebastian Dröge
841252c5f7 Fix compilation after gstreamer-rs API changes 2017-12-16 17:42:32 +02:00
Sebastian Dröge
607cd154b8 Update for simplified force-keyunit event API 2017-12-10 22:45:06 +02:00
Sebastian Dröge
73d0615f10 Send force-keyunit events later
We must not unlock the main stream's mutex until everything is handled
correctly, otherwise the other streams might continue in an inconsistent
state.

As a side-effect, this will only ever request a keyframe if there
currently isn't one.
2017-12-10 13:18:43 +02:00
Sebastian Dröge
86d1676a67 Request a keyframe whenever we're going to wait for a keyframe 2017-12-10 12:38:18 +02:00
Sebastian Dröge
9250ca4ccc Improve togglerecord example UI a bit 2017-12-10 12:38:18 +02:00
Sebastian Dröge
c6800e8a26 Fixes/simplifications for GStreamer API changes 2017-12-09 19:41:54 +02:00
Sebastian Dröge
63380e023a Add read-only "recording" property to togglerecord
This signals whether we are actually recording currently or not.
2017-12-06 14:21:12 +02:00
Sebastian Dröge
8873821340 Fix build after gstreamer-rs API changes 2017-12-05 23:34:01 +02:00
Sebastian Dröge
39b4d89790 The either crate is only a dependency for the togglerecord test 2017-12-05 19:30:23 +02:00
Sebastian Dröge
b25309a66a Add gst-plugin-togglerecord 2017-12-05 09:56:58 +02:00
Sebastian Dröge
cea5d4d03e Require fallback value in Element::catch_panic() to be given as closure 2017-12-04 21:49:27 +02:00
Sebastian Dröge
ac09ae7d73 Never fail downwards state changes
This causes bugs in GStreamer and leads to crashes and deadlocks
2017-12-04 21:45:03 +02:00
Sebastian Dröge
083371866a Add helper function that allows to catch panics and poison the element 2017-12-04 21:30:10 +02:00
Sebastian Dröge
b3725312c4 Update to lazy_static 1.0 2017-12-04 11:12:32 +02:00
Sebastian Dröge
2fb3952aa2 Element::request_new_pad() is (transfer none) in the return value
Which is effectively unsafe, but nothing we can do about that right now
without leaking all pads.

https://bugzilla.gnome.org/show_bug.cgi?id=791193
2017-12-04 11:08:16 +02:00
Sebastian Dröge
a271b18c09 Take ownership of any floating references in Bin::add/remove_element() 2017-11-27 17:26:43 +02:00
Sebastian Dröge
3f1eb96da9 Add support for creating Pipeline subclasses 2017-11-27 15:08:24 +02:00
Sebastian Dröge
b55a24c929 Add support for creating Bin subclasses 2017-11-27 15:08:24 +02:00
Sebastian Dröge
22ab56895d Remove Rs prefix from everything
We have proper namespaces in Rust
2017-11-20 13:23:30 +02:00
Sebastian Dröge
656dc990f8 Require a get_type() function for boxed/object properties
Otherwise storing the properties in a static array is not possible
2017-11-20 12:30:21 +02:00
Sebastian Dröge
323bf3ea08 Update to latest gstreamer-rs master API changes 2017-11-11 13:02:55 +01:00
Sebastian Dröge
768b68f94a Fix up Adapter's WouldBlock error message
With the correct values of requested and available bytes.
2017-11-06 23:25:09 +02:00
Thibault Saunier
9158c2c8e1 adapter: Implement the Read trait 2017-11-06 11:51:04 +02:00
Sebastian Dröge
bf360ebce8 Fix typo in crate/repo name 2017-10-30 10:51:56 +02:00
Sebastian Dröge
d4138cb566 Update to reqwest 0.8 2017-10-25 14:58:41 +02:00
Sebastian Dröge
d8dbe8414c Fixes for gstreamer-rs API changes 2017-10-21 10:06:28 +02:00
Sebastian Dröge
176e07bf0a Move properties code to a separate file 2017-10-19 11:06:19 +02:00
Sebastian Dröge
83388c8322 audioecho: Don't unnecessarily mark variable as mutable 2017-10-19 11:06:01 +02:00
Sebastian Dröge
443abffa73 Run everything through latest rustfmt-nightly 2017-10-17 12:21:53 +03:00
Sebastian Dröge
4b97d56949 Fix compilation after GstRc<T>::get_mut() API fixes in gstreamer-rs 2017-10-12 18:03:06 +03:00
Sebastian Dröge
393cd6236a Move simple Source/Sink/Demuxer traits to a separate crate
Fixes https://github.com/sdroege/gst-plugin-rs/issues/20
2017-10-11 13:32:44 +03:00
Sebastian Dröge
89b44e6081 Don't have to store the size of the slice twice 2017-10-07 13:14:18 +03:00
Sebastian Dröge
16b6d61e10 Improve release configuration a bit 2017-10-07 12:43:38 +03:00
Sebastian Dröge
7cf784a9fc Some more RingBufferIterator cleanup 2017-10-07 11:38:35 +03:00
Sebastian Dröge
20f1666bc9 Run everything through rustfmt again 2017-10-07 05:01:04 +03:00
Sebastian Dröge
97ad0c0bc2 Simplify audioecho code a bit 2017-10-07 05:01:04 +03:00
Sebastian Dröge
80341fd90e Add audiofx plugin with audioecho element 2017-10-07 01:04:33 +03:00
Sebastian Dröge
c241a65555 Add BaseTransform support 2017-10-05 18:08:15 +03:00
Sebastian Dröge
2c0388b06d Fix BaseSink::event() signature
The event's ownership is transfered to the function, not only borrowed.
In BaseSrc::event() it is borrowed.
2017-10-05 10:23:47 +02:00