Commit graph

31 commits

Author SHA1 Message Date
Seungha Yang
084c9d1447 fallbackswitch,togglerecord: Don't apply clipped PTS to buffer DTS
Setting DTS on raw video buffers doesn't make sense and it's even wrong
in case of compressed video stream because PTS might be able to
go back when B frames are placed, but DTS is expected to be monotonically
increased.
2021-01-19 19:45:14 +09:00
Seungha Yang
2b7cebb02a togglerecord: Update recording state on EOS
If all input streams are in EOS state, update recording state
to Stopped and notify the change as well
2021-01-07 22:16:51 +09:00
Guillaume Desmottes
8bc2e5ebb8 use cargo-c to produce cdy and static libs
cargo-c will produce a pkg-config file making it easier to statically
link plugins.

Also add 'static' features for plugins depending on < 1.14 as this is the
minimal required version to use static linking because of ABI changes in
core.
2021-01-04 12:26:45 +01:00
Sebastian Dröge
c09dc96c2c togglerecord: Also check for flushing at the top of the chain function
It would return further down anyway but there's no point in doing
useless work if it can be avoided.
2020-12-31 12:06:18 +02:00
Sebastian Dröge
cdca6c9372 togglerecord: Check for flushing when the main stream waits for the other streams
Otherwise it would not wake up and return when shutting down the element.
2020-12-31 12:05:37 +02:00
Sebastian Dröge
3d617371af Update for macro renames 2020-12-20 20:43:45 +02:00
Sebastian Dröge
ea6c05e16c Update everything for glib macro renamings 2020-12-18 00:44:49 +02:00
Sebastian Dröge
767ed3afae utils: Update to 2018 edition 2020-11-23 10:28:34 +02:00
Sebastian Dröge
d56ae71e0e Update for ObjectImpl::get_property() being infallible now 2020-11-19 18:25:53 +02:00
Sebastian Dröge
df6a229f58 Fix or silence various clippy warnings 2020-11-19 15:31:50 +00:00
Guillaume Desmottes
b9f8ce9995 meson: add support for static build
There is no way to dynamically ask Cargo to build static or dynamic lib
so we have to build both and pick the one we care when doing the meson
processing.

Fix #88
2020-11-16 15:30:32 +01:00
Sebastian Dröge
b021a8bf10 utils: Update for subclassing API changes 2020-11-15 18:25:42 +02:00
Sebastian Dröge
1f446f6b64 Switch to the combined gtk-rs and gstreamer-rs repositories 2020-11-01 10:24:57 +02:00
François Laignel
7c3e69bb4a Fix ClockTime comparisons not being Ord and use saturating_sub
See:
https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/607
2020-10-20 23:45:01 +02:00
Sebastian Dröge
3b5d9b7392 examples: Update for glib API changes
Timeouts now use std::time::Duration instead of plain integers.
2020-09-14 16:47:27 +03:00
Sebastian Dröge
87025d7a02 Use glib::timeout_add_local() instead of removed gtk::timeout_add() 2020-08-27 09:50:33 +03:00
Sebastian Dröge
98b618cc9d utils/togglerecord: Fix timestamp tracking logic for partially overlapping timestamps
And various other cases. Also adjust one of the tests accordingly and
improve assertions to print more information about internal
inconsistencies.
2020-08-06 11:56:59 +00:00
Sebastian Dröge
0eb777cf5a Update for removal of ObjectImpl::get_type_data() 2020-07-26 18:46:32 +03:00
Sebastian Dröge
e9b61b733d Add LICENSE files to each individual crate 2020-07-10 13:06:28 +03:00
Sebastian Dröge
d03c6cb26a Update various dependencies 2020-06-30 10:49:27 +03:00
Sebastian Dröge
f62c11f851 Update for functions returning a Builder being renamed to builder() instead of new()
And new video event APIs.
2020-06-25 19:49:07 +03:00
François Laignel
e40267e95d event,message,query: update instantiation
See https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/532
2020-06-25 11:26:32 +02:00
Sebastian Dröge
9bb3e75fb9 Update to use the new pad builders for safely setting pad functions
Only two uses of unsafely setting the pad functions is left:
- fallbacksrc for overriding the chain function of the proxy pad of a
  ghost pad
- threadshare for overriding the pad functions after creationg, which
  probably needs some fixing at some point
2020-06-22 11:28:19 +03:00
Sebastian Dröge
60321edb8c Update for new_with_XXX/new_from_XXX function renaming 2020-06-16 11:56:48 +03:00
Guillaume Desmottes
e85799b9d6 use new constructor names 2020-06-11 13:07:01 +02:00
Sebastian Dröge
a4a0a669bd togglerecord: Set the DISCONT flag on the first buffer after recording starts
While continuous in time, each recording start will be a discontinuity
in audio/video content.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/merge_requests/336>
2020-05-08 22:39:05 +03:00
Sebastian Dröge
e1c3491915 togglerecord: Improve logging 2020-05-08 15:57:07 +03:00
Sebastian Dröge
36f032ef15 Configure crate-type to cdylib/rlib consistently in Cargo.toml
And not in the source code, it's a build decision.
2020-04-24 15:02:12 +03:00
Sebastian Dröge
5a7fcfad7f Fix various new clippy warnings with clippy 1.43 2020-04-24 13:55:01 +03:00
Guillaume Desmottes
bdb0e72cc7 fix LGPL-2.1+ license in Cargo.toml
The proper SPDX name is LGPL-2.1-or-later, see https://spdx.org/licenses/
2020-04-16 13:07:21 +02:00
Arun Raghavan
dc3c8fd049 Drop gst-plugin- prefix in plugin directory name 2020-04-05 19:10:47 +00:00