mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-09 23:34:20 +00:00
VST3: Add support for new wide/Atmos speaker layouts
This commit is contained in:
parent
34e454e3f1
commit
a42a498f5e
4 changed files with 158 additions and 35 deletions
|
|
@ -268,33 +268,51 @@ public:
|
|||
*/
|
||||
static AudioChannelSet JUCE_CALLTYPE create7point1point6();
|
||||
|
||||
/** Creates a set for a 9.0.4 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, wideLeft, wideRight, topFrontLeft, topFrontRight, topRearLeft, topRearRight).
|
||||
/** Creates a set for a 9.0.4 Atmos surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, wideLeft, wideRight, topFrontLeft, topFrontRight, topRearLeft, topRearRight).
|
||||
|
||||
Is equivalent to: k90_4 (VST3), AAX_eStemFormat_9_0_4 (AAX).
|
||||
Is equivalent to: k90_4_W (VST3), AAX_eStemFormat_9_0_4 (AAX).
|
||||
|
||||
@see create9point0point4ITU()
|
||||
*/
|
||||
static AudioChannelSet JUCE_CALLTYPE create9point0point4();
|
||||
|
||||
/** Creates a set for a 9.1.4 surround setup (left, right, centre, LFE, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, wideLeft, wideRight, topFrontLeft, topFrontRight, topRearLeft, topRearRight).
|
||||
/** Creates a set for a 9.1.4 Atmos surround setup (left, right, centre, LFE, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, wideLeft, wideRight, topFrontLeft, topFrontRight, topRearLeft, topRearRight).
|
||||
|
||||
Is equivalent to: k91_4 (VST3), AAX_eStemFormat_9_1_4 (AAX).
|
||||
Is equivalent to: k91_4_W (VST3), AAX_eStemFormat_9_1_4 (AAX).
|
||||
|
||||
@see create9point1point4ITU()
|
||||
*/
|
||||
static AudioChannelSet JUCE_CALLTYPE create9point1point4();
|
||||
|
||||
/** Creates a set for a 9.0.6 surround setup (left, right, centre, LFE, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, wideLeft, wideRight, topFrontLeft, topFrontRight, topSideLeft, topSideRight, topRearLeft, topRearRight).
|
||||
/** Creates a set for a 9.0.6 Atmos surround setup (left, right, centre, LFE, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, wideLeft, wideRight, topFrontLeft, topFrontRight, topSideLeft, topSideRight, topRearLeft, topRearRight).
|
||||
|
||||
Is equivalent to: k90_6 (VST3), AAX_eStemFormat_9_0_6 (AAX).
|
||||
Is equivalent to: k90_6_W (VST3), AAX_eStemFormat_9_0_6 (AAX).
|
||||
|
||||
@see create9point0point6ITU()
|
||||
*/
|
||||
static AudioChannelSet JUCE_CALLTYPE create9point0point6();
|
||||
|
||||
/** Creates a set for a 9.1.6 surround setup (left, right, centre, LFE, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, wideLeft, wideRight, topFrontLeft, topFrontRight, topSideLeft, topSideRight, topRearLeft, topRearRight).
|
||||
/** Creates a set for a 9.1.6 Atmos surround setup (left, right, centre, LFE, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, wideLeft, wideRight, topFrontLeft, topFrontRight, topSideLeft, topSideRight, topRearLeft, topRearRight).
|
||||
|
||||
Note that the VST3 layout arranges the front speakers "L Lc C Rc R", but the JUCE layout
|
||||
uses the arrangement "wideLeft left centre right wideRight". To maintain the relative
|
||||
positions of the speakers, the channels will be remapped accordingly. This means that the
|
||||
VST3 host's "L" channel will be received on a JUCE plugin's "wideLeft" channel, the
|
||||
"Lc" channel will be received on a JUCE plugin's "left" channel, and so on.
|
||||
Older versions of the VST3 SDK only supported ITU versions of the 9.0.4, 9.1.4, 9.0.6, and
|
||||
9.1.6 layouts, which have the front-channel ordering "L Lc C Rc R".
|
||||
To maintain the correct relative channel ordering, JUCE would perform the following mapping:
|
||||
L -> wideLeft, Lc -> left, Rc -> right, R -> wideRight
|
||||
|
||||
Is equivalent to: k91_6 (VST3), kAudioChannelLayoutTag_Atmos_9_1_6 (CoreAudio).
|
||||
The version of the VST3 SDK bundled with JUCE now supports Atmos versions of the above
|
||||
layouts, which have the front-channel ordering "Lw L C R Rw". This order matches the
|
||||
JUCE ordering, so no remapping is required.
|
||||
|
||||
create9point0point4(), create9point1point4(), create9point0point6(), and
|
||||
create9point1point6() now correspond to the VST3 k90_4_W, k91_4_W, k90_6_W, and k91_6_W
|
||||
Atmos layouts respectively.
|
||||
|
||||
If you need to support the old ITU layouts, use create9point0point4ITU(),
|
||||
create9point1point4ITU(), create9point0point6ITU(), and create9point1point6ITU() instead.
|
||||
|
||||
Is equivalent to: k91_6_W (VST3), kAudioChannelLayoutTag_Atmos_9_1_6 (CoreAudio).
|
||||
|
||||
@see create9point1point6ITU()
|
||||
*/
|
||||
static AudioChannelSet JUCE_CALLTYPE create9point1point6();
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue