Skip to content
GitLab
  • Menu
Projects Groups Snippets
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • gst-plugins-rs gst-plugins-rs
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 73
    • Issues 73
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 26
    • Merge requests 26
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • GStreamer
  • gst-plugins-rsgst-plugins-rs
  • Merge requests
  • !708

Add livesync plugin

  • Review changes

  • Download
  • Email patches
  • Plain diff
Open Jan Alexander Steffens requested to merge heftig/gst-plugins-rs:livesync into main Mar 30, 2022
  • Overview 68
  • Commits 24
  • Pipelines 10
  • Changes 11

It attempts to produce a (nearly) gapless live stream by synchronizing its output to the running time and forwarding the next input buffer if its start is (nearly) flush with the end of the last output buffer.

If the input buffer is missing or too far in the future, it duplicates the last output buffer with adjusted timestamps. If it is operating on a raw audio stream, it will fill duplicate buffers with silence.

If an input buffer arrives too late, it is thrown away. If the last input buffer was accepted too long ago (according to late-threshold), a late input buffer is accepted anyway, but immediately considered a duplicate. Due to the silence-filling, this has no effect on audio, but video gets a "slideshow" effect instead of freezing completely.

The "many-repeats" property will be notified when this element has recently duplicated a lot of buffers or recovered from such a state.

Edited Apr 08, 2022 by Jan Alexander Steffens
Assignee
Assign to
Reviewer
Request review from
Time tracking
Source branch: livesync