Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Dolby Atmos allows you to specify multiple channels together with spatial metadata. The Ambisonics support for opus is quite similar. The spec allows the encoder to specify an arbitrary matrix used for mixing of the audio. If you read Apple's blog post, it seems they use the Dolby Atmos format instead of their own homegrown solution.


Doing some reading just now, it seems Atmos is what's called an OBA (object-based audio) format. It's fundamentally lower-level than Ambisonics, which falls into the SBA (scene-based audio) category, so it should be possible to mix it down to Ambisonics. In fact I suspect the Atmos decoder does something like that on its way to creating signals for each speaker. OBA formats generally require more bandwidth than SBA formats. The benefit is that the end user can customize the mix (e.g. mute certain sources). In the case where there are many mutually-exclusive objects (e.g. dialog in different languages), the bandwidth advantage of SBA diminishes...


Maybe there is no first-class support in the main opus encoder for object based audio, but as I've said above you can encode arbitrary matrices, so you can encode arbitrary positions for channels. That's enough for stationary objects. Moving objects, I'm not sure if Atmos supports them, can't be encoded in a single opus stream, however one can chain multiple opus streams after another. I don't think you need high time resolution for moving objects, something like one stream per 100ms should be enough, 10 per second. So in theory, opus can get get very close to object based audio, even if the encoder right now only does ambisonics.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: