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

Convert graphs of different sample rates and block sizes #15

Open
ErikNatanael opened this issue Mar 7, 2023 · 2 comments
Open

Convert graphs of different sample rates and block sizes #15

ErikNatanael opened this issue Mar 7, 2023 · 2 comments

Comments

@ErikNatanael
Copy link
Owner

If a graph is within another graph and has a different sample rate and/or block size it should be converted to the parent's sample rate and block size. This will allow for small parts requiring sample-by-sample processing within a larger graph with a larger block size, and oversampling an entire or parts of a project.

@ErikNatanael
Copy link
Owner Author

Oversampling:

A GraphGen with oversampling will essentially run with a sample rate and block size multiplied by the oversampling factor. How will we handle one oversampling Graph within another oversampling Graph? The intuitive way seems to me to be to treat them as naturally compatible i.e. they don't need conversion. Another way would be to say that the inner Graph is oversampled compared to the parent, and if they should be compatible the inner Graph should have the extrapolated settings of the parent, i.e. sample rate * oversampling and block size * oversampling.

@ErikNatanael
Copy link
Owner Author

Partially implemented in #19
Still to do:

  • Upsampling inputs to an oversampled graph
  • Pass constant inputs through to the graph unfiltered (discontinuities are fine in parameter settings)
  • N times oversampling by stacking down/upsamplers
  • Convert between arbitrary sample rates

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant