gst-plugins-rs/utils/togglerecord
2024-11-29 11:56:37 +00:00
..
examples Use let-else instead of match for weak reference upgrades 2023-10-30 11:34:35 +02:00
src togglerecord: implement Debug on Stream and StreamState 2024-11-29 11:56:37 +00:00
tests togglerecord: disable racy test_two_stream_close_open_nonlivein_liveout test 2024-03-12 16:21:52 +01:00
build.rs fix-getters-calls 0.3.0 pass 2021-04-20 18:19:58 +02:00
Cargo.toml Remove once_cell dependency 2024-10-21 17:53:18 +00:00
LICENSE-MPL-2.0 git: replace LICENSE file symlinks with copies 2023-04-04 14:26:37 +01:00
README.md togglerecord: Add support for non-live inputs 2023-06-14 15:58:04 +03:00

togglerecord

A multistream valve-like plugin that ensures multiple streams start/end at the same time.

It supports both live and non-live input and toggles recording via the record property. Live inputs will be dropped when not recording, while non-live inputs will be blocked.

Use cases

The is-live property refers to whether the output of the element will be live. So, based on whether the input is live and on whether the output is-live, we have these four behaviours:

  • Live input + is-live=false:

    • While not recording, drop input
    • When recording is started, offset to collapse the gap
  • Live input + is-live=true:

    • While not recording, drop input
    • Don't modify the offset
  • Non-live input + is-live=false:

    • While not recording, block input
    • Don't modify the offset
  • Non-live input + is-live=true:

    • While not recording, block input
    • When recording is started, offset to current running time