OpenShot Audio Library | OpenShotAudio: juce::AudioChannelSet Class Reference

OpenShot Audio Library | OpenShotAudio 1.0.0

Loading...
Searching...
No Matches
juce::AudioChannelSet Class Reference

`#include <juce_AudioChannelSet.h>`

## Public Types
enum | ChannelType { unknown = 0 , left = 1 , right = 2 , centre = 3 , LFE = 4 , leftSurround = 5 , rightSurround = 6 , leftCentre = 7 , rightCentre = 8 , centreSurround = 9 , surround = centreSurround , leftSurroundSide = 10 , rightSurroundSide = 11 , topMiddle = 12 , topFrontLeft = 13 , topFrontCentre = 14 , topFrontRight = 15 , topRearLeft = 16 , topRearCentre = 17 , topRearRight = 18 , LFE2 = 19 , leftSurroundRear = 20 , rightSurroundRear = 21 , wideLeft = 22 , wideRight = 23 , topSideLeft = 28 , topSideRight = 29 , ambisonicACN0 = 24 , ambisonicACN1 = 25 , ambisonicACN2 = 26 , ambisonicACN3 = 27 , ambisonicACN4 = 30 , ambisonicACN5 = 31 , ambisonicACN6 = 32 , ambisonicACN7 = 33 , ambisonicACN8 = 34 , ambisonicACN9 = 35 , ambisonicACN10 = 36 , ambisonicACN11 = 37 , ambisonicACN12 = 38 , ambisonicACN13 = 39 , ambisonicACN14 = 40 , ambisonicACN15 = 41 , ambisonicACN16 = 42 , ambisonicACN17 = 43 , ambisonicACN18 = 44 , ambisonicACN19 = 45 , ambisonicACN20 = 46 , ambisonicACN21 = 47 , ambisonicACN22 = 48 , ambisonicACN23 = 49 , ambisonicACN24 = 50 , ambisonicACN25 = 51 , ambisonicACN26 = 52 , ambisonicACN27 = 53 , ambisonicACN28 = 54 , ambisonicACN29 = 55 , ambisonicACN30 = 56 , ambisonicACN31 = 57 , ambisonicACN32 = 58 , ambisonicACN33 = 59 , ambisonicACN34 = 60 , ambisonicACN35 = 61 , ambisonicW = ambisonicACN0 , ambisonicX = ambisonicACN3 , ambisonicY = ambisonicACN1 , ambisonicZ = ambisonicACN2 , bottomFrontLeft = 62 , bottomFrontCentre = 63 , bottomFrontRight = 64 , proximityLeft = 65 , proximityRight = 66 , bottomSideLeft = 67 , bottomSideRight = 68 , bottomRearLeft = 69 , bottomRearCentre = 70 , bottomRearRight = 71 , ambisonicACN36 = 72 , ambisonicACN37 = 73 , ambisonicACN38 = 74 , ambisonicACN39 = 75 , ambisonicACN40 = 76 , ambisonicACN41 = 77 , ambisonicACN42 = 78 , ambisonicACN43 = 79 , ambisonicACN44 = 80 , ambisonicACN45 = 81 , ambisonicACN46 = 82 , ambisonicACN47 = 83 , ambisonicACN48 = 84 , ambisonicACN49 = 85 , ambisonicACN50 = 86 , ambisonicACN51 = 87 , ambisonicACN52 = 88 , ambisonicACN53 = 89 , ambisonicACN54 = 90 , ambisonicACN55 = 91 , ambisonicACN56 = 92 , ambisonicACN57 = 93 , ambisonicACN58 = 94 , ambisonicACN59 = 95 , ambisonicACN60 = 96 , ambisonicACN61 = 97 , ambisonicACN62 = 98 , ambisonicACN63 = 99 , discreteChannel0 = 128 }
enum | { maxChannelsOfNamedLayout = 64 }

## Public Member Functions
| AudioChannelSet ()=default
int | getAmbisonicOrder () const
void | addChannel (ChannelType newChannelType)
void | removeChannel (ChannelType newChannelType)
int | size () const noexcept
bool | isDisabled () const noexcept
Array< ChannelType > | getChannelTypes () const
ChannelType | getTypeOfChannel (int channelIndex) const noexcept
int | getChannelIndexForType (ChannelType type) const noexcept
String | getSpeakerArrangementAsString () const
String | getDescription () const
bool | isDiscreteLayout () const noexcept
void | intersect (const AudioChannelSet &other)
int32 | getWaveChannelMask () const noexcept
bool | operator== (const AudioChannelSet &) const noexcept
bool | operator!= (const AudioChannelSet &) const noexcept
bool | operator< (const AudioChannelSet &) const noexcept

## Static Public Member Functions
static AudioChannelSet JUCE_CALLTYPE | disabled ()
static AudioChannelSet JUCE_CALLTYPE | mono ()
static AudioChannelSet JUCE_CALLTYPE | stereo ()
static AudioChannelSet JUCE_CALLTYPE | createLCR ()
static AudioChannelSet JUCE_CALLTYPE | createLRS ()
static AudioChannelSet JUCE_CALLTYPE | createLCRS ()
static AudioChannelSet JUCE_CALLTYPE | create5point0 ()
static AudioChannelSet JUCE_CALLTYPE | create5point1 ()
static AudioChannelSet JUCE_CALLTYPE | create6point0 ()
static AudioChannelSet JUCE_CALLTYPE | create6point1 ()
static AudioChannelSet JUCE_CALLTYPE | create6point0Music ()
static AudioChannelSet JUCE_CALLTYPE | create6point1Music ()
static AudioChannelSet JUCE_CALLTYPE | create7point0 ()
static AudioChannelSet JUCE_CALLTYPE | create7point0SDDS ()
static AudioChannelSet JUCE_CALLTYPE | create7point1 ()
static AudioChannelSet JUCE_CALLTYPE | create7point1SDDS ()
static AudioChannelSet JUCE_CALLTYPE | create5point0point2 ()
static AudioChannelSet JUCE_CALLTYPE | create5point1point2 ()
static AudioChannelSet JUCE_CALLTYPE | create5point0point4 ()
static AudioChannelSet JUCE_CALLTYPE | create5point1point4 ()
static AudioChannelSet JUCE_CALLTYPE | create7point0point2 ()
static AudioChannelSet JUCE_CALLTYPE | create7point1point2 ()
static AudioChannelSet JUCE_CALLTYPE | create7point0point4 ()
static AudioChannelSet JUCE_CALLTYPE | create7point1point4 ()
static AudioChannelSet JUCE_CALLTYPE | create7point0point6 ()
static AudioChannelSet JUCE_CALLTYPE | create7point1point6 ()
static AudioChannelSet JUCE_CALLTYPE | create9point0point4 ()
static AudioChannelSet JUCE_CALLTYPE | create9point1point4 ()
static AudioChannelSet JUCE_CALLTYPE | create9point0point6 ()
static AudioChannelSet JUCE_CALLTYPE | create9point1point6 ()
static AudioChannelSet JUCE_CALLTYPE | quadraphonic ()
static AudioChannelSet JUCE_CALLTYPE | pentagonal ()
static AudioChannelSet JUCE_CALLTYPE | hexagonal ()
static AudioChannelSet JUCE_CALLTYPE | octagonal ()
static AudioChannelSet JUCE_CALLTYPE | ambisonic (int order=1)
static AudioChannelSet JUCE_CALLTYPE | discreteChannels (int numChannels)
static AudioChannelSet JUCE_CALLTYPE | canonicalChannelSet (int numChannels)
static AudioChannelSet JUCE_CALLTYPE | namedChannelSet (int numChannels)
static Array< AudioChannelSet > JUCE_CALLTYPE | channelSetsWithNumberOfChannels (int numChannels)
static String JUCE_CALLTYPE | getChannelTypeName (ChannelType)
static String JUCE_CALLTYPE | getAbbreviatedChannelTypeName (ChannelType)
static ChannelType JUCE_CALLTYPE | getChannelTypeFromAbbreviation (const String &abbreviation)
static AudioChannelSet | fromAbbreviatedString (const String &set)
static AudioChannelSet JUCE_CALLTYPE | channelSetWithChannels (const Array< ChannelType > &)
static AudioChannelSet JUCE_CALLTYPE | fromWaveChannelMask (int32 dwChannelMask)
static int | getAmbisonicOrderForNumChannels (int numChannels, int maxOrderToCheck=7)

## Detailed Description

Represents a set of audio channel types.

For example, you might have a set of left + right channels, which is a stereo channel set. It is a collection of values from the AudioChannelSet::ChannelType enum, where each type may only occur once within the set.

The documentation below lists which AudioChannelSet corresponds to which native layouts used by AAX, VST2/VST3 and CoreAudio/AU. The layout tags in CoreAudio are particularly confusing. For example, the layout which is labeled as "7.1 SDDS" in Logic Pro, corresponds to CoreAudio/AU's kAudioChannelLayoutTag_DTS_7_0 tag, whereas AAX's DTS 7.1 Layout corresponds to CoreAudio/AU's kAudioChannelLayoutTag_MPEG_7_1_A format, etc. Please do not use the CoreAudio tag as an indication to the actual layout of the speakers.

See also
  Bus

Definition at line 46 of file juce_AudioChannelSet.h.

## Member Enumeration Documentation

## ◆ anonymous enum

anonymous enum

Definition at line 506 of file juce_AudioChannelSet.h.

## ◆ ChannelType

enum juce::AudioChannelSet::ChannelType

Represents different audio channel types.

Enumerator
unknown | Unknown channel type.
left | L channel.
right | R channel.
centre | C channel. (Sometimes M for mono)
LFE | LFE channel.
leftSurround | Ls channel.
rightSurround | Rs channel.
leftCentre | Lc (AAX/VST), Lc used as Lss in AU for most layouts.
rightCentre | Rc (AAX/VST), Rc used as Rss in AU for most layouts.
centreSurround | Cs/S channel.
surround | Same as Centre Surround channel.
leftSurroundSide | Lss (AXX), Side Left "Sl" (VST), Left Centre "LC" (AU) channel.
rightSurroundSide | Rss (AXX), Side right "Sr" (VST), Right Centre "Rc" (AU) channel.
topMiddle | Top Middle channel.
topFrontLeft | Top Front Left channel.
topFrontCentre | Top Front Centre channel.
topFrontRight | Top Front Right channel.
topRearLeft | Top Rear Left channel.
topRearCentre | Top Rear Centre channel.
topRearRight | Top Rear Right channel.
LFE2 | Second LFE channel.
leftSurroundRear | Lsr (AAX), Lcs (VST), Rls (AU) channel.
rightSurroundRear | Rsr (AAX), Rcs (VST), Rrs (AU) channel.
wideLeft | Wide Left channel.
wideRight | Wide Right channel.
topSideLeft | Lts (AAX), Tsl (VST), Ltm (AU) channel for Dolby Atmos.
topSideRight | Rts (AAX), Tsr (VST), Rtm (AU) channel for Dolby Atmos.
ambisonicACN0 | Zero-th ambisonic channel number 0.
ambisonicACN1 | First-order ambisonic channel number 1.
ambisonicACN2 | First-order ambisonic channel number 2.
ambisonicACN3 | First-order ambisonic channel number 3.
ambisonicACN4 | Second-order ambisonic channel number 4.
ambisonicACN5 | Second-order ambisonic channel number 5.
ambisonicACN6 | Second-order ambisonic channel number 6.
ambisonicACN7 | Second-order ambisonic channel number 7.
ambisonicACN8 | Second-order ambisonic channel number 8.
ambisonicACN9 | Third-order ambisonic channel number 9.
ambisonicACN10 | Third-order ambisonic channel number 10.
ambisonicACN11 | Third-order ambisonic channel number 11.
ambisonicACN12 | Third-order ambisonic channel number 12.
ambisonicACN13 | Third-order ambisonic channel number 13.
ambisonicACN14 | Third-order ambisonic channel number 14.
ambisonicACN15 | Third-order ambisonic channel number 15.
ambisonicACN16 | Fourth-order ambisonic channel number 16.
ambisonicACN17 | Fourth-order ambisonic channel number 17.
ambisonicACN18 | Fourth-order ambisonic channel number 18.
ambisonicACN19 | Fourth-order ambisonic channel number 19.
ambisonicACN20 | Fourth-order ambisonic channel number 20.
ambisonicACN21 | Fourth-order ambisonic channel number 21.
ambisonicACN22 | Fourth-order ambisonic channel number 22.
ambisonicACN23 | Fourth-order ambisonic channel number 23.
ambisonicACN24 | Fourth-order ambisonic channel number 24.
ambisonicACN25 | Fifth-order ambisonic channel number 25.
ambisonicACN26 | Fifth-order ambisonic channel number 26.
ambisonicACN27 | Fifth-order ambisonic channel number 27.
ambisonicACN28 | Fifth-order ambisonic channel number 28.
ambisonicACN29 | Fifth-order ambisonic channel number 29.
ambisonicACN30 | Fifth-order ambisonic channel number 30.
ambisonicACN31 | Fifth-order ambisonic channel number 31.
ambisonicACN32 | Fifth-order ambisonic channel number 32.
ambisonicACN33 | Fifth-order ambisonic channel number 33.
ambisonicACN34 | Fifth-order ambisonic channel number 34.
ambisonicACN35 | Fifth-order ambisonic channel number 35.
ambisonicW | Same as zero-th ambisonic channel number 0.
ambisonicX | Same as first-order ambisonic channel number 3.
ambisonicY | Same as first-order ambisonic channel number 1.
ambisonicZ | Same as first-order ambisonic channel number 2.
bottomFrontLeft | Bottom Front Left (Bfl)
bottomFrontCentre | Bottom Front Centre (Bfc)
bottomFrontRight | Bottom Front Right (Bfr)
proximityLeft | Proximity Left (Pl)
proximityRight | Proximity Right (Pr)
bottomSideLeft | Bottom Side Left (Bsl)
bottomSideRight | Bottom Side Right (Bsr)
bottomRearLeft | Bottom Rear Left (Brl)
bottomRearCentre | Bottom Rear Center (Brc)
bottomRearRight | Bottom Rear Right (Brr)
ambisonicACN36 | Sixth-order ambisonic channel number 36.
ambisonicACN37 | Sixth-order ambisonic channel number 37.
ambisonicACN38 | Sixth-order ambisonic channel number 38.
ambisonicACN39 | Sixth-order ambisonic channel number 39.
ambisonicACN40 | Sixth-order ambisonic channel number 40.
ambisonicACN41 | Sixth-order ambisonic channel number 41.
ambisonicACN42 | Sixth-order ambisonic channel number 42.
ambisonicACN43 | Sixth-order ambisonic channel number 43.
ambisonicACN44 | Sixth-order ambisonic channel number 44.
ambisonicACN45 | Sixth-order ambisonic channel number 45.
ambisonicACN46 | Sixth-order ambisonic channel number 46.
ambisonicACN47 | Sixth-order ambisonic channel number 47.
ambisonicACN48 | Sixth-order ambisonic channel number 48.
ambisonicACN49 | Seventh-order ambisonic channel number 49.
ambisonicACN50 | Seventh-order ambisonic channel number 50.
ambisonicACN51 | Seventh-order ambisonic channel number 51.
ambisonicACN52 | Seventh-order ambisonic channel number 52.
ambisonicACN53 | Seventh-order ambisonic channel number 53.
ambisonicACN54 | Seventh-order ambisonic channel number 54.
ambisonicACN55 | Seventh-order ambisonic channel number 55.
ambisonicACN56 | Seventh-order ambisonic channel number 56.
ambisonicACN57 | Seventh-order ambisonic channel number 57.
ambisonicACN58 | Seventh-order ambisonic channel number 58.
ambisonicACN59 | Seventh-order ambisonic channel number 59.
ambisonicACN60 | Seventh-order ambisonic channel number 60.
ambisonicACN61 | Seventh-order ambisonic channel number 61.
ambisonicACN62 | Seventh-order ambisonic channel number 62.
ambisonicACN63 | Seventh-order ambisonic channel number 63.
discreteChannel0 | Non-typed individual channels are indexed upwards from this value.

Definition at line 352 of file juce_AudioChannelSet.h.

## Constructor & Destructor Documentation

## ◆ AudioChannelSet()

juce::AudioChannelSet::AudioChannelSet | ( |  | ) |
| default

Creates an empty channel set. You can call addChannel to add channels to the set.

Referenced by ambisonic(), AudioChannelSet(), canonicalChannelSet(), channelSetWithChannels(), create5point0(), create5point0point2(), create5point0point4(), create5point1(), create5point1point2(), create5point1point4(), create6point0(), create6point0Music(), create6point1(), create6point1Music(), create7point0(), create7point0point2(), create7point0point4(), create7point0point6(), create7point0SDDS(), create7point1(), create7point1point2(), create7point1point4(), create7point1point6(), create7point1SDDS(), create9point0point4(), create9point0point6(), create9point1point4(), create9point1point6(), createLCR(), createLCRS(), createLRS(), disabled(), discreteChannels(), fromAbbreviatedString(), fromWaveChannelMask(), hexagonal(), intersect(), mono(), namedChannelSet(), octagonal(), pentagonal(), quadraphonic(), and stereo().

## Member Function Documentation

## ◆ addChannel()

void juce::AudioChannelSet::addChannel | ( | ChannelType | newChannelType | ) |

Adds a channel to the set.

Definition at line 523 of file juce_AudioChannelSet.cpp.

Referenced by addChannel(), channelSetWithChannels(), and fromAbbreviatedString().

## ◆ ambisonic()

AudioChannelSet juce::AudioChannelSet::ambisonic | ( | int | order = 1 | ) |
| static

Creates a set for ACN, SN3D normalised ambisonic surround setups with a given order.

Is equivalent to: kAmbiXXXOrderACN (VST), AAX_eStemFormat_Ambi_XXX_ACN (AAX), kAudioChannelLayoutTag_HOA_ACN_SN3D (CoreAudio)

Definition at line 572 of file juce_AudioChannelSet.cpp.

Referenced by ambisonic(), AudioChannelSet(), channelSetsWithNumberOfChannels(), and getAmbisonicOrder().

## ◆ canonicalChannelSet()

AudioChannelSet juce::AudioChannelSet::canonicalChannelSet | ( | int | numChannels | ) |
| static

Create a canonical channel set for a given number of channels. For example, numChannels = 1 will return mono, numChannels = 2 will return stereo, etc.

Definition at line 616 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), and juce::AudioFormatReader::getChannelLayout().

## ◆ channelSetsWithNumberOfChannels()

Array< AudioChannelSet > juce::AudioChannelSet::channelSetsWithNumberOfChannels | ( | int | numChannels | ) |
| static

Return an array of channel sets which have a given number of channels

Definition at line 644 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), and channelSetsWithNumberOfChannels().

## ◆ channelSetWithChannels()

AudioChannelSet JUCE_CALLTYPE juce::AudioChannelSet::channelSetWithChannels | ( | const Array< ChannelType > & | channelArray | ) |
| static

Creates a channel set for a list of channel types. This function will assert if you supply a duplicate channel.

Note that this method ignores the order in which the channels are given, i.e. two arrays with the same elements but in a different order will still result in the same channel set.

Definition at line 710 of file juce_AudioChannelSet.cpp.

Referenced by channelSetWithChannels().

## ◆ create5point0()

AudioChannelSet juce::AudioChannelSet::create5point0 | ( |  | ) |
| static

Creates a set for a 5.0 surround setup (left, right, centre, leftSurround, rightSurround).

Is equivalent to: k50 (VST), AAX_eStemFormat_5_0 (AAX), kAudioChannelLayoutTag_MPEG_5_0_A (CoreAudio)

This format is referred to as "5.0" in Cubase. This format is referred to as "5.0" in Pro Tools.

Definition at line 543 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), create5point0(), getDescription(), and namedChannelSet().

## ◆ create5point0point2()

AudioChannelSet juce::AudioChannelSet::create5point0point2 | ( |  | ) |
| static

Creates a set for a 5.0.2 surround setup (left, right, centre, leftSurround, rightSurround, topSideLeft, topSideRight).

Is equivalent to: AAX_eStemFormat_5_0_2 (AAX).

Definition at line 557 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), create5point0point2(), and getDescription().

## ◆ create5point0point4()

AudioChannelSet juce::AudioChannelSet::create5point0point4 | ( |  | ) |
| static

Creates a set for a 5.0.4 surround setup (left, right, centre, leftSurround, rightSurround, topFrontLeft, topFrontRight, topRearLeft, topRearRight).

Is equivalent to: AAX_eStemFormat_5_0_4 (AAX).

Definition at line 559 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), create5point0point4(), and getDescription().

## ◆ create5point1()

AudioChannelSet juce::AudioChannelSet::create5point1 | ( |  | ) |
| static

Creates a set for a 5.1 surround setup (left, right, centre, leftSurround, rightSurround, LFE).

Is equivalent to: k51 (VST), AAX_eStemFormat_5_1 (AAX), kAudioChannelLayoutTag_MPEG_5_1_A (CoreAudio)

This format is referred to as "5.1 (ITU 775)" in Logic Pro. This format is referred to as "5.1" in Cubase. This format is referred to as "5.1" in Pro Tools.

Definition at line 544 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), create5point1(), getDescription(), and namedChannelSet().

## ◆ create5point1point2()

AudioChannelSet juce::AudioChannelSet::create5point1point2 | ( |  | ) |
| static

Creates a set for a 5.1.2 surround setup (left, right, centre, LFE, leftSurround, rightSurround, topSideLeft, topSideRight).

Is equivalent to: kAudioChannelLayoutTag_Atmos_5_1_2 (CoreAudio).

Definition at line 558 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create5point1point2(), and getDescription().

## ◆ create5point1point4()

AudioChannelSet juce::AudioChannelSet::create5point1point4 | ( |  | ) |
| static

Creates a set for a 5.1.4 surround setup (left, right, centre, LFE, leftSurround, rightSurround, topFrontLeft, topFrontRight, topRearLeft, topRearRight).

Is equivalent to: kAudioChannelLayoutTag_Atmos_5_1_4 (CoreAudio).

Definition at line 560 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create5point1point4(), and getDescription().

## ◆ create6point0()

AudioChannelSet juce::AudioChannelSet::create6point0 | ( |  | ) |
| static

Creates a set for a 6.0 Cine surround setup (left, right, centre, leftSurround, rightSurround, centreSurround).

Is equivalent to: k60Cine (VST), AAX_eStemFormat_6_0 (AAX), kAudioChannelLayoutTag_AudioUnit_6_0 (CoreAudio)

Logic Pro incorrectly uses this for the surround format labeled "6.1 (ES/EX)". This format is referred to as "6.0 Cine" in Cubase. This format is referred to as "6.0" in Pro Tools.

Definition at line 545 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create6point0(), and getDescription().

## ◆ create6point0Music()

AudioChannelSet juce::AudioChannelSet::create6point0Music | ( |  | ) |
| static

Creates a set for a 6.0 Music surround setup (left, right, leftSurround, rightSurround, leftSurroundSide, rightSurroundSide).

Is equivalent to: k60Music (VST), n/a (AAX), kAudioChannelLayoutTag_DTS_6_0_A (CoreAudio)

This format is referred to as "6.0 Music" in Cubase.

Definition at line 547 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create6point0Music(), and getDescription().

## ◆ create6point1()

AudioChannelSet juce::AudioChannelSet::create6point1 | ( |  | ) |
| static

Creates a set for a 6.1 Cine surround setup (left, right, centre, leftSurround, rightSurround, centreSurround, LFE).

Is equivalent to: k61Cine (VST), AAX_eStemFormat_6_1 (AAX), kAudioChannelLayoutTag_MPEG_6_1_A (CoreAudio)

This format is referred to as "6.1" in Pro Tools.

Definition at line 546 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create6point1(), and getDescription().

## ◆ create6point1Music()

AudioChannelSet juce::AudioChannelSet::create6point1Music | ( |  | ) |
| static

Creates a set for a 6.0 Music surround setup (left, right, leftSurround, rightSurround, leftSurroundSide, rightSurroundSide, LFE).

Is equivalent to: k61Music (VST), n/a (AAX), kAudioChannelLayoutTag_DTS_6_1_A (CoreAudio)

Definition at line 548 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create6point1Music(), and getDescription().

## ◆ create7point0()

AudioChannelSet juce::AudioChannelSet::create7point0 | ( |  | ) |
| static

Creates a set for a DTS 7.0 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear).

Is equivalent to: k70Music (VST), AAX_eStemFormat_7_0_DTS (AAX), kAudioChannelLayoutTag_AudioUnit_7_0 (CoreAudio)

This format is referred to as "7.0" in Pro Tools.

Definition at line 549 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), create7point0(), getDescription(), and namedChannelSet().

## ◆ create7point0point2()

AudioChannelSet juce::AudioChannelSet::create7point0point2 | ( |  | ) |
| static

Creates a set for Dolby Atmos 7.0.2 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, topSideLeft, topSideRight).

Is equivalent to: n/a (VST), AAX_eStemFormat_7_0_2 (AAX), n/a (CoreAudio)

Definition at line 561 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create7point0point2(), and getDescription().

## ◆ create7point0point4()

AudioChannelSet juce::AudioChannelSet::create7point0point4 | ( |  | ) |
| static

Creates a set for Dolby Atmos 7.0.4 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, topFrontLeft, topFrontRight, topRearLeft, topRearRight).

Is equivalent to: n/a (VST), n/a (AAX), n/a (CoreAudio)

Definition at line 563 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create7point0point4(), and getDescription().

## ◆ create7point0point6()

AudioChannelSet juce::AudioChannelSet::create7point0point6 | ( |  | ) |
| static

Creates a set for 7.0.6 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, topFrontLeft, topFrontRight, topSideLeft, topSideRight, topRearLeft, topRearRight).

Is equivalent to: AAX_eStemFormat_7_0_6 (AAX).

Definition at line 565 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), create7point0point6(), and getDescription().

## ◆ create7point0SDDS()

AudioChannelSet juce::AudioChannelSet::create7point0SDDS | ( |  | ) |
| static

Creates a set for a SDDS 7.0 surround setup (left, right, centre, leftSurround, rightSurround, leftCentre, rightCentre).

Is equivalent to: k70Cine (VST), AAX_eStemFormat_7_0_SDDS (AAX), kAudioChannelLayoutTag_AudioUnit_7_0_Front (CoreAudio)

This format is referred to as "7.0 SDDS" in Pro Tools.

Definition at line 550 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create7point0SDDS(), and getDescription().

## ◆ create7point1()

AudioChannelSet juce::AudioChannelSet::create7point1 | ( |  | ) |
| static

Creates a set for a DTS 7.1 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, LFE).

Is equivalent to: k71CineSideFill (VST), AAX_eStemFormat_7_1_DTS (AAX), kAudioChannelLayoutTag_MPEG_7_1_C/kAudioChannelLayoutTag_ITU_3_4_1 (CoreAudio)

This format is referred to as "7.1 (3/4.1)" in Logic Pro. This format is referred to as "7.1" in Pro Tools.

Definition at line 551 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), create7point1(), getDescription(), and namedChannelSet().

## ◆ create7point1point2()

AudioChannelSet juce::AudioChannelSet::create7point1point2 | ( |  | ) |
| static

Creates a set for Dolby Atmos 7.1.2 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, LFE, topSideLeft, topSideRight).

Is equivalent to: k71_2 (VST), AAX_eStemFormat_7_1_2 (AAX), kAudioChannelLayoutTag_Atmos_7_1_2 (CoreAudio)

Definition at line 562 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create7point1point2(), and getDescription().

## ◆ create7point1point4()

AudioChannelSet juce::AudioChannelSet::create7point1point4 | ( |  | ) |
| static

Creates a set for Dolby Atmos 7.1.4 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, LFE, topFrontLeft, topFrontRight, topRearLeft, topRearRight).

Is equivalent to: k71_4 (VST), n/a (AAX), kAudioChannelLayoutTag_Atmos_7_1_4 (CoreAudio)

Definition at line 564 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create7point1point4(), and getDescription().

## ◆ create7point1point6()

AudioChannelSet juce::AudioChannelSet::create7point1point6 | ( |  | ) |
| static

Creates a set for Dolby Atmos 7.1.6 surround setup (left, right, centre, leftSurroundSide, rightSurroundSide, leftSurroundRear, rightSurroundRear, LFE, topFrontLeft, topFrontRight, topSideLeft, topSideRight, topRearLeft, topRearRight).

Is equivalent to: k71_6 (VST), n/a (AAX), n/a (CoreAudio)

Definition at line 566 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create7point1point6(), and getDescription().

## ◆ create7point1SDDS()

AudioChannelSet juce::AudioChannelSet::create7point1SDDS | ( |  | ) |
| static

Creates a set for a 7.1 surround setup (left, right, centre, leftSurround, rightSurround, leftCentre, rightCentre, LFE).

Is equivalent to: k71Cine (VST), AAX_eStemFormat_7_1_SDDS (AAX), kAudioChannelLayoutTag_MPEG_7_1_A (CoreAudio)

This format is referred to as "7.1 (SDDS)" in Logic Pro. This format is referred to as "7.1 SDDS" in Pro Tools.

Definition at line 552 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create7point1SDDS(), and getDescription().

## ◆ create9point0point4()

AudioChannelSet juce::AudioChannelSet::create9point0point4 | ( |  | ) |
| static

Creates a set for a 9.0.4 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).

Definition at line 567 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), create9point0point4(), and getDescription().

## ◆ create9point0point6()

AudioChannelSet juce::AudioChannelSet::create9point0point6 | ( |  | ) |
| static

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).

Is equivalent to: k90_6 (VST3), AAX_eStemFormat_9_0_6 (AAX).

Definition at line 569 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), create9point0point6(), and getDescription().

## ◆ create9point1point4()

AudioChannelSet juce::AudioChannelSet::create9point1point4 | ( |  | ) |
| static

Creates a set for a 9.1.4 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).

Definition at line 568 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), create9point1point4(), and getDescription().

## ◆ create9point1point6()

AudioChannelSet juce::AudioChannelSet::create9point1point6 | ( |  | ) |
| static

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).

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.

Is equivalent to: k91_6 (VST3), kAudioChannelLayoutTag_Atmos_9_1_6 (CoreAudio).

Definition at line 570 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), create9point1point6(), and getDescription().

## ◆ createLCR()

AudioChannelSet juce::AudioChannelSet::createLCR | ( |  | ) |
| static

Creates a set containing an LCR set (left, right, centre).

Is equivalent to: k30Cine (VST), AAX_eStemFormat_LCR (AAX), kAudioChannelLayoutTag_MPEG_3_0_A (CoreAudio)

This format is referred to as "LRC" in Cubase. This format is referred to as "LCR" in Pro Tools.

Definition at line 540 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), createLCR(), getDescription(), and namedChannelSet().

## ◆ createLCRS()

AudioChannelSet juce::AudioChannelSet::createLCRS | ( |  | ) |
| static

Creates a set containing an LCRS set (left, right, centre, surround).

Is equivalent to: k40Cine (VST), AAX_eStemFormat_LCRS (AAX), kAudioChannelLayoutTag_MPEG_4_0_A (CoreAudio)

This format is referred to as "LCRS (Pro Logic)" in Logic Pro. This format is referred to as "LRCS" in Cubase. This format is referred to as "LCRS" in Pro Tools.

Definition at line 542 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), createLCRS(), and getDescription().

## ◆ createLRS()

AudioChannelSet juce::AudioChannelSet::createLRS | ( |  | ) |
| static

Creates a set containing an LRS set (left, right, surround).

Is equivalent to: k30Music (VST), n/a (AAX), kAudioChannelLayoutTag_ITU_2_1 (CoreAudio)

This format is referred to as "LRS" in Cubase.

Definition at line 541 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), createLRS(), and getDescription().

## ◆ disabled()

AudioChannelSet juce::AudioChannelSet::disabled | ( |  | ) |
| static

Creates a zero-channel set which can be used to indicate that a bus is disabled.

Definition at line 537 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), disabled(), and getDescription().

## ◆ discreteChannels()

AudioChannelSet juce::AudioChannelSet::discreteChannels | ( | int | numChannels | ) |
| static

Creates a set of untyped discrete channels.

Definition at line 609 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), and discreteChannels().

## ◆ fromAbbreviatedString()

AudioChannelSet juce::AudioChannelSet::fromAbbreviatedString | ( | const String & | set | ) |
| static

Returns an AudioChannelSet from a string returned by getSpeakerArrangementAsString

See also
  getSpeakerArrangementAsString

Definition at line 395 of file juce_AudioChannelSet.cpp.

Referenced by fromAbbreviatedString().

## ◆ fromWaveChannelMask()

AudioChannelSet JUCE_CALLTYPE juce::AudioChannelSet::fromWaveChannelMask | ( | int32 | dwChannelMask | ) |
| static

Create an AudioChannelSet from a WAVEFORMATEXTENSIBLE channelMask (typically used in .wav files).

Definition at line 725 of file juce_AudioChannelSet.cpp.

Referenced by fromWaveChannelMask().

## ◆ getAbbreviatedChannelTypeName()

String juce::AudioChannelSet::getAbbreviatedChannelTypeName | ( | AudioChannelSet::ChannelType | type | ) |
| static

Returns the abbreviated name of a channel type. For example, this method may return "Ls".

Definition at line 156 of file juce_AudioChannelSet.cpp.

Referenced by getAbbreviatedChannelTypeName(), and getSpeakerArrangementAsString().

## ◆ getAmbisonicOrder()

int juce::AudioChannelSet::getAmbisonicOrder | ( |  | ) | const

Returns the order of the ambisonic layout represented by this AudioChannelSet. If the AudioChannelSet is not an ambisonic layout, then this method will return -1.

Definition at line 599 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), getAmbisonicOrder(), and getDescription().

## ◆ getAmbisonicOrderForNumChannels()

int juce::AudioChannelSet::getAmbisonicOrderForNumChannels | ( | int | numChannels,
|  | int | maxOrderToCheck = 7 )
| static

Returns the ambisonic order that includes exactly numChannels, or -1 if no supported ambisonic order contains exactly numChannels.

Definition at line 739 of file juce_AudioChannelSet.cpp.

Referenced by channelSetsWithNumberOfChannels(), getAmbisonicOrder(), and getAmbisonicOrderForNumChannels().

## ◆ getChannelIndexForType()

int juce::AudioChannelSet::getChannelIndexForType | ( | AudioChannelSet::ChannelType | type | ) | const
| noexcept

Returns the index for a particular channel-type. Will return -1 if the this set does not contain a channel of this type.

Definition at line 498 of file juce_AudioChannelSet.cpp.

Referenced by getChannelIndexForType().

## ◆ getChannelTypeFromAbbreviation()

AudioChannelSet::ChannelType juce::AudioChannelSet::getChannelTypeFromAbbreviation | ( | const String & | abbreviation | ) |
| static

Returns the channel type from an abbreviated name.

Definition at line 270 of file juce_AudioChannelSet.cpp.

Referenced by fromAbbreviatedString(), and getChannelTypeFromAbbreviation().

## ◆ getChannelTypeName()

String juce::AudioChannelSet::getChannelTypeName | ( | AudioChannelSet::ChannelType | type | ) |
| static

Returns the name of a given channel type. For example, this method may return "Surround Left".

Definition at line 42 of file juce_AudioChannelSet.cpp.

Referenced by getChannelTypeName().

## ◆ getChannelTypes()

Array< AudioChannelSet::ChannelType > juce::AudioChannelSet::getChannelTypes | ( |  | ) | const

Returns an array of all the types in this channel set.

Definition at line 513 of file juce_AudioChannelSet.cpp.

Referenced by getChannelTypes(), getSpeakerArrangementAsString(), juce::WavAudioFormat::isChannelLayoutSupported(), and isDiscreteLayout().

## ◆ getDescription()

String juce::AudioChannelSet::getDescription | ( |  | ) | const

Returns the description of the current layout. For example, this method may return "Quadraphonic". Note that the returned string may not be unique.

Definition at line 410 of file juce_AudioChannelSet.cpp.

Referenced by getDescription().

## ◆ getSpeakerArrangementAsString()

String juce::AudioChannelSet::getSpeakerArrangementAsString | ( |  | ) | const

Returns a string containing a whitespace-separated list of speaker types corresponding to each channel. For example in a 5.1 arrangement, the string may be "L R C Lfe Ls Rs". If the speaker arrangement is unknown, the returned string will be empty.

Definition at line 380 of file juce_AudioChannelSet.cpp.

Referenced by getSpeakerArrangementAsString().

## ◆ getTypeOfChannel()

AudioChannelSet::ChannelType juce::AudioChannelSet::getTypeOfChannel | ( | int | channelIndex | ) | const
| noexcept

Returns the type of one of the channels in the set, by index.

Definition at line 488 of file juce_AudioChannelSet.cpp.

Referenced by getTypeOfChannel().

## ◆ getWaveChannelMask()

int32 juce::AudioChannelSet::getWaveChannelMask | ( |  | ) | const
| noexcept

Returns a WAVEFORMATEXTENSIBLE channelMask representation (typically used in .wav files) of the receiver.

Returns -1 if the receiver cannot be represented in a WAVEFORMATEXTENSIBLE channelMask representation.

Definition at line 730 of file juce_AudioChannelSet.cpp.

Referenced by getWaveChannelMask().

## ◆ hexagonal()

AudioChannelSet juce::AudioChannelSet::hexagonal | ( |  | ) |
| static

Creates a set for hexagonal surround setup (left, right, leftSurroundRear, rightSurroundRear, centre, surroundCentre).

Is equivalent to: n/a (VST), n/a (AAX), kAudioChannelLayoutTag_Hexagonal (CoreAudio)

Definition at line 555 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), getDescription(), and hexagonal().

## ◆ intersect()

void juce::AudioChannelSet::intersect | ( | const AudioChannelSet & | other | ) |
| inline

Intersect two channel layouts.

Definition at line 552 of file juce_AudioChannelSet.h.

Referenced by intersect().

## ◆ isDisabled()

bool juce::AudioChannelSet::isDisabled | ( |  | ) | const
| inlinenoexcept

Returns true if there are no channels in the set.

Definition at line 521 of file juce_AudioChannelSet.h.

Referenced by isDisabled().

## ◆ isDiscreteLayout()

bool juce::AudioChannelSet::isDiscreteLayout | ( |  | ) | const
| noexcept

Returns if this is a channel layout made-up of discrete channels.

Definition at line 474 of file juce_AudioChannelSet.cpp.

Referenced by getDescription(), juce::WavAudioFormat::isChannelLayoutSupported(), and isDiscreteLayout().

## ◆ mono()

AudioChannelSet juce::AudioChannelSet::mono | ( |  | ) |
| static

Creates a one-channel mono set (centre).

Is equivalent to: kMonoAAX (VST), AAX_eStemFormat_Mono (AAX), kAudioChannelLayoutTag_Mono (CoreAudio)

Definition at line 538 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), getDescription(), juce::AudioFormat::isChannelLayoutSupported(), mono(), and namedChannelSet().

## ◆ namedChannelSet()

AudioChannelSet juce::AudioChannelSet::namedChannelSet | ( | int | numChannels | ) |
| static

Create a channel set for a given number of channels which is non-discrete. If numChannels is larger than the number of channels of the surround format with the maximum amount of channels (currently 7.1 Surround), then this function returns an empty set.

Definition at line 630 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), and namedChannelSet().

## ◆ octagonal()

AudioChannelSet juce::AudioChannelSet::octagonal | ( |  | ) |
| static

Creates a set for octagonal surround setup (left, right, leftSurround, rightSurround, centre, centreSurround, wideLeft, wideRight).

Is equivalent to: n/a (VST), n/a (AAX), kAudioChannelLayoutTag_Octagonal (CoreAudio)

Definition at line 556 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), getDescription(), and octagonal().

## ◆ operator!=()

bool juce::AudioChannelSet::operator!= | ( | const AudioChannelSet & | other | ) | const
| noexcept

Definition at line 39 of file juce_AudioChannelSet.cpp.

## ◆ operator<()

bool juce::AudioChannelSet::operator< | ( | const AudioChannelSet & | other | ) | const
| noexcept

Definition at line 40 of file juce_AudioChannelSet.cpp.

## ◆ operator==()

bool juce::AudioChannelSet::operator== | ( | const AudioChannelSet & | other | ) | const
| noexcept

Definition at line 38 of file juce_AudioChannelSet.cpp.

## ◆ pentagonal()

AudioChannelSet juce::AudioChannelSet::pentagonal | ( |  | ) |
| static

Creates a set for pentagonal surround setup (left, right, centre, leftSurroundRear, rightSurroundRear).

Is equivalent to: n/a (VST), n/a (AAX), kAudioChannelLayoutTag_Pentagonal (CoreAudio)

Definition at line 554 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), channelSetsWithNumberOfChannels(), getDescription(), and pentagonal().

## ◆ quadraphonic()

AudioChannelSet juce::AudioChannelSet::quadraphonic | ( |  | ) |
| static

Creates a set for quadraphonic surround setup (left, right, leftSurround, rightSurround)

Is equivalent to: k40Music (VST), AAX_eStemFormat_Quad (AAX), kAudioChannelLayoutTag_Quadraphonic (CoreAudio)

This format is referred to as "Quadraphonic" in Logic Pro. This format is referred to as "Quadro" in Cubase. This format is referred to as "Quad" in Pro Tools.

Definition at line 553 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), getDescription(), namedChannelSet(), and quadraphonic().

## ◆ removeChannel()

void juce::AudioChannelSet::removeChannel | ( | ChannelType | newChannelType | ) |

Removes a channel from the set.

Definition at line 530 of file juce_AudioChannelSet.cpp.

Referenced by removeChannel().

## ◆ size()

int juce::AudioChannelSet::size | ( |  | ) | const
| noexcept

Returns the number of channels in the set.

Definition at line 483 of file juce_AudioChannelSet.cpp.

Referenced by juce::AudioFormat::createWriterFor(), getAmbisonicOrder(), getDescription(), isDisabled(), and size().

## ◆ stereo()

AudioChannelSet juce::AudioChannelSet::stereo | ( |  | ) |
| static

Creates a set containing a stereo set (left, right).

Is equivalent to: kStereo (VST), AAX_eStemFormat_Stereo (AAX), kAudioChannelLayoutTag_Stereo (CoreAudio)

Definition at line 539 of file juce_AudioChannelSet.cpp.

Referenced by AudioChannelSet(), canonicalChannelSet(), channelSetsWithNumberOfChannels(), getDescription(), juce::AudioFormat::isChannelLayoutSupported(), namedChannelSet(), and stereo().

The documentation for this class was generated from the following files:

- juce_AudioChannelSet.h
- juce_AudioChannelSet.cpp