Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using adder as a mixing element won't allow for seamless loops #99

Open
ensonic opened this issue Mar 7, 2021 · 0 comments
Open

Using adder as a mixing element won't allow for seamless loops #99

ensonic opened this issue Mar 7, 2021 · 0 comments

Comments

@ensonic
Copy link
Member

ensonic commented Mar 7, 2021

We're using 'adder' as a mixing element. Using that for loops leads to a bunch of artifacts such as:

  • tracks going out of sync
  • gaps in loops

This is in particular noticeable when looping a bar. In git we now also have keyboard widgets for live-playback (and in the past one could use a midi controller). For this to work, the song need to be playing (or the pattern live playback needs to be active). The idea was to always have the audio-engine playing. Fixing adder is unlikely, so of the issues are rooted in the way it handles events and it will be quite tricky to fix that in a backwards compatible way.

We added experiment-flags to try the newer 'audiomixer' element, but this was lacking lots of feature and we got pushback on implementing them. The version of the 'audiomixer' that is in stable gstreamer at the time of writing this also has incompatible interface changes (caps property removed).

The remaining options are:

  1. Fork the audiomixer (resurrect my PRs). This will be quite some effort (needs changes on the base-classes too).
  2. Depart from normal pipeline scheduling and implement our own 'custom pipeline scheduler' as outline at the bottom of https://github.com/Buzztrax/buzztrax/blob/master/TODO#L598
  3. Anything else?
@ensonic ensonic added this to To Do in RELEASE_0_11 via automation Mar 28, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

1 participant