Commit graph

41 commits

Author SHA1 Message Date
Sebastian Dröge 064cc827a3 Fix video plugins build after gstreamer-rs!377
VideoInfo::from_caps() now returns a Result.
2019-12-15 10:53:11 +02:00
Philippe Normand 0f99994d9e Fix audio plugins build after gstreamer-rs!376
AudioInfo::from_caps() now returns a Result.
2019-12-14 15:26:20 +00:00
Sebastian Dröge 1ae57967ae Move debug categories from an instance member to lazy_static
Simplifies the code a bit and less state to carry around.
2019-10-31 23:35:11 +01:00
François Laignel 0e11ac87d3 Update for new {Value, StructureRef}::get signature
See https://github.com/gtk-rs/glib/pull/513
and https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/merge_requests/310
2019-08-13 15:29:28 +02:00
Sebastian Dröge f7fd1e3f99 togglerecord: Clip raw audio/video buffers to the segment/recording boundaries
And extend tests to actually check for this to work.
2019-07-11 11:20:35 +03:00
Sebastian Dröge 20c02c4b38 togglerecord: Calculate a fallback duration for audio/video buffers based on the caps if possible
I.e. based on the framerate for video and based on the buffer size,
sample size and sample rate for raw audio.
2019-07-11 10:47:30 +03:00
Sebastian Dröge d6f169866a togglerecord: Minor code cleanup 2019-07-03 18:44:25 +03:00
Sebastian Dröge ecbf7097de togglerecord: Don't hold any mutexes while adding/removing pads
Otherwise something might easily deadlock if the application is doing
something from the pad-added/pad-removed signals.
2019-07-03 18:43:58 +03:00
Guillaume Desmottes 53e530f7db port all plugins to new register API
Rank is now an enum rather than a u32
2019-06-04 14:35:10 +05:30
Sebastian Dröge 2fc89ced15 Fix various compiler warnings 2019-05-28 04:43:54 +02:00
Sebastian Dröge 9bccc50add Update for gstreamer-rs API changes 2019-05-24 13:09:32 +02:00
Sebastian Dröge 129f6a28b0 Update for gstreamer-rs/glib/etc API changes and add more explicit Some() 2019-04-16 10:10:16 +03:00
Sebastian Dröge 9db02cb55e Fixes for gstreamer-rs API changes
Creating pad templates can return None now.
2019-01-29 17:33:06 +02:00
François Laignel f5a398b21e Update gstreamer-rs/gstreamer bool to Result changes 2019-01-18 10:00:45 +02:00
François Laignel e930133bdf Update for gstreamer-rs MR 200
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/merge_requests/200
2019-01-12 18:00:04 +01:00
Sebastian Dröge f374d7fedf Remove unneeded ObjectSubclass::new() functions where not needed 2018-12-19 13:23:02 +02:00
Sebastian Dröge fb741f26f3 Update for glib property API changes 2018-12-18 11:23:45 +02:00
Sebastian Dröge 44da5074bd togglerecord: Don't call override_vfuncs()
It's called automatically for us already.
2018-12-13 12:02:38 +02:00
Sebastian Dröge 38ca1ef3cb Port gst-plugin-togglerecord to new subclassing API 2018-11-30 17:17:37 +02:00
Thijs Vermeir cee861f341 use BoolError for plugin registration 2018-11-04 20:24:20 +01:00
Sebastian Dröge ee3fc37f4c Switch to parking_lot Mutex/Condvar for lower overhead 2018-11-01 12:45:57 +02:00
Sebastian Dröge 628f5099eb Run everything through latest rustfmt 2018-10-11 13:49:48 +03:00
Sebastian Dröge f2deb2264b Fix various clippy warnings 2018-10-11 13:49:10 +03:00
Sebastian Dröge dcb3683232 Run everything through latest rustfmt 2018-07-27 13:35:58 +03:00
Sebastian Dröge 6e33313b78 Make use of downcast_ref() to prevent some clones 2018-07-12 08:35:09 +03:00
Sebastian Dröge b3089ca047 Use ObjectExt::notify() instead of the gobject-subclass variant 2018-07-11 16:12:10 +03:00
Sebastian Dröge 80793cd766 Move export/re-export cleanup 2018-05-01 17:43:52 +03:00
Sebastian Dröge 8bc3f12061 Run everything through rustfmt again 2018-05-01 17:16:12 +03:00
Sebastian Dröge c7103765db Run everything through rustfmt again 2018-04-05 11:36:10 +03:00
Sebastian Dröge 40f243dfc3 Move catch_panic_pad_function() into a generic place for all element subclasses 2018-04-05 11:34:57 +03:00
Sebastian Dröge da433f92af Run everything through latest rustfmt-nightly 2018-02-22 11:23:34 +01:00
Sebastian Dröge b7c06e0203 Fix build with improved Query API 2018-02-16 10:43:49 +02:00
Sebastian Dröge 22c5f93d3b Fix various clippy warnings 2017-12-20 21:36:50 +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 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 b25309a66a Add gst-plugin-togglerecord 2017-12-05 09:56:58 +02:00