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

Dynamic channel order #694

Open
gavv opened this issue Feb 9, 2024 · 0 comments
Open

Dynamic channel order #694

gavv opened this issue Feb 9, 2024 · 0 comments

Comments

@gavv
Copy link
Member

gavv commented Feb 9, 2024

Currently channel order can be only one of the predefined orders (ChannelOrder enum).

In #693 we're going to support formats which support a lot of channel orders (like AIFF), and instead of explicitly supporting every possible channel order, it would be better to rely on libsndfile and just to query channel map from it in runtime.

To make it work, we can do the following:

  • Add new ChanOrder_Custom to ChannelOrder enum.
  • Add array of channel positions (ChannelPosition) to ChannelSet (of size ChanPos_Max elements).
  • If ChanOrder_Custom is used, allow to get/set this array in ChannelSet.
  • In ChannelMapperMatrix, when ChanOrder_Custom is used, use array from ChannelSet instead of ChannelOrderTable.
  • Add tests for ChannelSet and ChannelMapper.
@gavv gavv mentioned this issue Feb 10, 2024
18 tasks
@gavv gavv added this to Roc Toolkit Jul 6, 2024
@gavv gavv moved this to Frontlog in Roc Toolkit Jul 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Frontlog
Development

No branches or pull requests

1 participant