-
Notifications
You must be signed in to change notification settings - Fork 238
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
Feature: Channel bitmasks #657
base: master
Are you sure you want to change the base?
Conversation
For defining the channel format and layout of a source
SourceChannelBitmask trait, some typos, a lot more documentation
…/rodio into feature-channelbitmask
Might need an example since I do not completely get how this will work. Is the idea that decoders are going to implement the new trait? In that case: https://docs.rs/symphonia-core/0.5.4/symphonia_core/codecs/struct.CodecParameters.html#structfield.channel_layout might be relevant. This matches the order assumed by channelcountconverter. I do not know what the other decoders do... |
Oh good, I was looking for a file source that made this information available. Wave files should make this available if they have > 2 channels, and the channel bitmaps are based on what Wave uses, but Hound doesn't seem to make this information available. I see what struct would have it and they just don't have a slot for it. |
In fact this works almost exactly like symphonia's |
Channel name mapping (name->channel_number) can be part of the stream format (it's metadata), so filters can use it if they need. We may require that filters pass it through. Just saying... |
I'd see this PR as "transitional" but yes |
I'm okay with that, is there a default implementation you could give |
Create a channel bitmask mechanism to allow sources to tell their consumers how their channels may map to speakers.