LAVFilters
LAVFilters copied to clipboard
Add limited support for AAC 22.2
This changes input decode mask to uint64_t so we can feed that to downmixing. Output is still DWORD as no output > 8 is allowed anyway. Mostly focused on AAC 22.2 files to let them play, even if only downmixed to "saner" output.
Can you link to such a sample for testing?
@kasper93 Apparently now it support up to 64 channel, is this PR still needed?
The sanity check is changed, but still channel mask, will be destroyed when truncating to DWORD.
Its been a bit slow going because I planned to get rid of the single-integer channel mask internally entirely, and swap to the new AVChannelLayout structure internally in LAV Audio as well. With ffmpeg in LAV finally being updated i'll hopefully manage to re-work this soon.
Should be implemented in 2461adb9fd63b1c389ceee8ea23e047a39d1eb3. Instead of forcing mixing to be enabled, LAV will now automatically offer a secondary downmixed media type, and use it when needed. This allows audio renderers to also receive the full undownmixed variant, if they support it.