Some systems produce files which don't work with the EAR currently, but could be made to work fairly easily.
We could add a a compatibility flag that enables some tweaks to the ADM before rendering. The same code/interface can be used in the renderer command and the ear-utils regenerate tool.
When the flag is used in the renderer, it should warn about non-compatibility and suggest using the regenerate tool.
The interface could be something like --compatibility=timing,dolby_speakerLabels, with a list of fix names to apply separated by commas. We should also add aliases which apply multiple fixes, and an all mode which does everything.
Proposed fixes:
timing: same as --enable-block-duration-fix
dolbyspeakerLabels: apply a mapping to speakerLabels to turn RC* to ITU labels
extra_pack_ref: remove audioStreamFormat to audioPackFormat references to fix audioStreamFormat x has a reference to both an audioPackFormat and an audioChannelFormat error
dolby: all 3 above fixes
It would be good to collect more information about how this should work:
What speaker labels can exist, and what ITU labels should they be mapped to? I've used this before:
RC_L: M+030
RC_R: M-030
RC_C: M+000
RC_LFE: LFE1
RC_Lss: M+090
RC_Rss: M-090
RC_Lrs: M+135
RC_Rrs: M-135
RC_Lts: U+090
RC_Rts: U-090
What fixes are required for different software? I don't have great visibility into this -- I seem to remember the pack reference thing not being required previously, but is for nuendo 11 files.
Some systems produce files which don't work with the EAR currently, but could be made to work fairly easily.
We could add a a compatibility flag that enables some tweaks to the ADM before rendering. The same code/interface can be used in the renderer command and the
ear-utils regenerate
tool.When the flag is used in the renderer, it should warn about non-compatibility and suggest using the regenerate tool.
The interface could be something like
--compatibility=timing,dolby_speakerLabels
, with a list of fix names to apply separated by commas. We should also add aliases which apply multiple fixes, and anall
mode which does everything.Proposed fixes:
--enable-block-duration-fix
audioStreamFormat x has a reference to both an audioPackFormat and an audioChannelFormat
errorIt would be good to collect more information about how this should work:
What speaker labels can exist, and what ITU labels should they be mapped to? I've used this before:
RC_L: M+030 RC_R: M-030 RC_C: M+000
RC_LFE: LFE1
RC_Lss: M+090 RC_Rss: M-090
RC_Lrs: M+135 RC_Rrs: M-135
RC_Lts: U+090 RC_Rts: U-090
What fixes are required for different software? I don't have great visibility into this -- I seem to remember the pack reference thing not being required previously, but is for nuendo 11 files.