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

add support for regular layouts and HOA output #57

Draft
wants to merge 31 commits into
base: master
Choose a base branch
from

Conversation

tomjnixon
Copy link
Member

@tomjnixon tomjnixon commented Dec 14, 2022

Regular layouts

These currently have to be added to ear/core/data/2051_layouts.yaml -- see this for example.

I don't want to add these to the repository as I don't think there's a standard channel format, but i'd consider adding a CLI option to read them from a file.

HOA output

This should work well for DirectSpeakers, HOA and Objects input, provided extent and diffuse parameters are not used. These are implemented, but I need to look again at the decorrelation filters and extent behavior

HOA output can be enabled by passing something like -s ambix_2 for 2nd order ambix output -- see ear-render --help for details.

Todo:

  • remove quadpy dependency! This was developed against the GPL3 version, but this is no longer easy to install.
  • add channel orders other than ACN? i don't really want to encourage this though
  • check decorrelation filters
    • check overall level
    • check that it's right for different normalisations
    • document and discuss the design
  • add tests for new HOA components
  • build existing components in tests from new singledispatch functions
  • add to changelog

@tomjnixon tomjnixon changed the title add support for egular layouts and HOA output add support for regular layouts and HOA output Dec 15, 2022
this was more complicated than it needed to be for the current usage, and
makes it difficult to make structures where the set of options is more
dynamic

all the options should be the same; the only API change is the removal
of the actual options structures
layout-like objects may not have a use for a list of channels, so this
is easier to generalise
just the ones needed; converting all uses would be a lot of pointless
changes
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

Successfully merging this pull request may close these issues.

1 participant