ebu / ebu_adm_renderer

The EBU ADM Renderer, written in Python, is the reference implementation of EBU Tech 3388
https://ear.readthedocs.io
BSD 3-Clause Clear License
80 stars 14 forks source link

Reduce dual pack + channel from error to warn #80

Open JohnnyMarnell opened 2 months ago

JohnnyMarnell commented 2 months ago

Hello and thanks for the great work here! I tried to render two Atmos BWF's, one created with Dolby Atmos Renderer and another with Fiedler Atmos Composer, both write axml with stream formats referencing both pack + channel formats.

Changing this to a warning instead allows the process to succeed and sounds correct / expected loudness.

tomjnixon commented 2 months ago

Hi, thanks for having a look at this.

My approach with this kind of thing has been that invalid ADM data should result in errors, and to provide tools to fix files that have common issues. This way, users can still render invalid files, but it needs to be clear that they are invalid and should be fixed before they are used in downstream processes.

The question then is whether this is valid or not; i think it's unclear:

For this particular issue the meaning is clear, but these files have other problems, some of which do cause incorrect rendering (e.g. un-labelsd LFE DirectSpeaker channels), and I'd like to fix all these at the same time to avoid people thinking that they work when they actually don't.

I've set out the approach I think we should take previously in https://github.com/ebu/ebu_adm_renderer/issues/39 . Hopefully I can find some time to work on this, but i'm not sure.

WernerBleisteiner commented 2 months ago

Maybe I get it wrong... This sounds to me related to the well-known issue with any 'Dolby ADM' (which is an 'special flavour' of BS.2076-0), regardless with which 'Dolby-ADM-compatible' tool it's created (DAW or DaVinci Resolve NLE). In a similar case we were able to solve the EAR rendering issue running the Dolby-ADM first through an EAT (EBU ADM Toolbox) which is available here: https://github.com/ebu/ebu-adm-toolbox, using the 'fix_dolby' process (c.f. https://ebu-adm-toolbox.readthedocs.io/en/latest/example_configs.html) Mind that after that the ADM won't be accepted neither by any Dolby ADM tools nor for re-importing in related DAW, NLE. Dolby has been informed about their 'ADM peculiarties' early on. However any concession or fix is pending.

JohnnyMarnell commented 2 months ago

Thanks for this tip, hadn't known about the toolbox @WernerBleisteiner . Are you perchance on a Mac, having the hardest time, granted the C world is not my forté. I created an issue: https://github.com/ebu/ebu-adm-toolbox/issues/12

WernerBleisteiner commented 2 months ago

Ah. Sorry @JohnnyMarnell. I'd forgotten that EAT runs not on Mac, although it's is my main tool, too. Accompanying ADM developments on various levels, I've delved into Linux as well, running it on VNC. But thanks for getting up an issue. Let's hope BBC R&D will keep their excellent ADM and audio staff in their current lay-offs.

JohnnyMarnell commented 2 months ago

Ah good to know, appreciate that @WernerBleisteiner, and seconded on lay-off sparing hopes. I was canned from Spotify in 2023. I have played with some cross compiling via Docker before, to some success. If I find time, I'll keep you (and EBU community) posted.