목차

Wwise SDK 2018.1.11
ak.wwise.core.audioSourcePeaks.getMinMaxPeaksInTrimmedRegion


Get the min/max peak pairs in the entire trimmed region of an audio source, for each channel, as an array of binary strings (one per channel). The strings are base-64 encoded 16-bit signed int arrays, with min and max values being interleaved. If getCrossChannelPeaks is true, there will be only one binary string representing peaks across all channels globally.

Supported by

Graphical User Interface, Command-Line Interface.

Arguments

Name Type Description
object *   The ID (GUID), name, or path of the audio source.
numPeaks * integer The number of peaks that are required (minimum 1).
getCrossChannelPeaks boolean When true, peaks will be calculated globally across channels, instead of per channel.

(Required *)

Arguments Details


object

description : The ID (GUID), name, or path of the audio source.
Possibilities, one of the following :

1) type : string
pattern : ^(StateGroup|SwitchGroup|SoundBank|GameParameter|Event|Effect|AudioDevice|Trigger|Attenuation|DialogueEvent|Bus|AuxBus|Conversion|ModulatorLfo|ModulatorEnvelope|ModulatorTime|Platform|Language|AcousticTexture):[a-zA-Z_]+[a-zA-Z0-9_]*$
description : The name of the object qualified by its type in the form of type:name. Only object types that have globally-unique names are supported.

2) type : string
pattern : ^\{[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}\}$

3) type : string
pattern : ^\

numPeaks

type : integer
description : The number of peaks that are required (minimum 1).
minimum : 1
maximum : 4294967295

getCrossChannelPeaks

type : boolean
description : When true, peaks will be calculated globally across channels, instead of per channel.


Result

Name Type Description
peaksBinaryStrings array An array of binary strings. Each binary string represents one channel of min max peaks data. When getCrossChannelPeaks is true there will only be one binary string in this array, representing the min max peaks across all channels.
numChannels number The number of channels of peak data (i.e. the number of strings in peaksBinaryStrings). This will be 1 if getCrossChannelPeaks is true.
maxAbsValue number The maximum value that a peak can take. This can be used to normalize the peaks in the array (between -1, 1), by dividing each by this number.
peaksArrayLength number The number of peaks in the returned min max channel arrays. If peaksArrayLength is less than the numPeaks input argument, this indicates fewer samples were available than numPeaks requested. In this case, the arrays contain all of the sample values within the requested time window.
peaksDataSize number The size of the data in the peaks min max arrays. This can be used (in conjunction with peaksArrayLength) to decode the peaksBinaryStrings to 16 bit integer arrays

Result Details


peaksBinaryStrings

type : array

resultSchema / peaksBinaryStrings / ...

items

type : string
description : An array of binary strings. Each binary string represents one channel of min max peaks data. When getCrossChannelPeaks is true there will only be one binary string in this array, representing the min max peaks across all channels.

numChannels

type : number
description : The number of channels of peak data (i.e. the number of strings in peaksBinaryStrings). This will be 1 if getCrossChannelPeaks is true.

maxAbsValue

type : number
description : The maximum value that a peak can take. This can be used to normalize the peaks in the array (between -1, 1), by dividing each by this number.

peaksArrayLength

type : number
description : The number of peaks in the returned min max channel arrays. If peaksArrayLength is less than the numPeaks input argument, this indicates fewer samples were available than numPeaks requested. In this case, the arrays contain all of the sample values within the requested time window.

peaksDataSize

type : number
description : The size of the data in the peaks min max arrays. This can be used (in conjunction with peaksArrayLength) to decode the peaksBinaryStrings to 16 bit integer arrays


Examples :

Get peaks per channel

Get peaks for an audio source object (within the trimmed region).

Arguments:

{
"object": "{AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE}",
"numPeaks": 750,
"getCrossChannelPeaks": false
}

Result:

{
"peaksBinaryStrings": [
"longbase64string",
"longbase64string"
],
"numChannels": 2,
"maxAbsValue": 32767,
"peaksArrayLength": 750,
"peaksDataSize": 1000
}

Get peaks across channels

Get peaks for an audio source object (within the trimmed region).

Arguments:

{
"object": "{AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE}",
"numPeaks": 750,
"getCrossChannelPeaks": true
}

Result:

{
"peaksBinaryStrings": [
"longbase64string"
],
"numChannels": 1,
"maxAbsValue": 32767,
"peaksArrayLength": 750,
"peaksDataSize": 1000
}


Detailed JSON Schema


Arguments :

{
"type": "object",
"properties": {
"object": {
"description": "The ID (GUID), name, or path of the audio source.",
"anyOf": [
{
"type": "string",
"pattern": "^(StateGroup|SwitchGroup|SoundBank|GameParameter|Event|Effect|AudioDevice|Trigger|Attenuation|DialogueEvent|Bus|AuxBus|Conversion|ModulatorLfo|ModulatorEnvelope|ModulatorTime|Platform|Language|AcousticTexture):[a-zA-Z_]+[a-zA-Z0-9_]*$",
"description": "The name of the object qualified by its type in the form of type:name. Only object types that have globally-unique names are supported."
},
{
"type": "string",
"pattern": *Must be a valid GUID*
},
{
"type": "string",
"pattern": "^\\\\"
}
]
},
"numPeaks": {
"type": "integer",
"description": "The number of peaks that are required (minimum 1).",
"minimum": 1,
"maximum": 4294967295
},
"getCrossChannelPeaks": {
"type": "boolean",
"description": "When true, peaks will be calculated globally across channels, instead of per channel."
}
},
"required": [
"object",
"numPeaks"
],
"additionalProperties": false
}


Options :

{
"type": "object",
"properties": {},
"additionalProperties": false
}


Response :

{
"type": "object",
"properties": {
"peaksBinaryStrings": {
"type": "array",
"items": {
"type": "string"
},
"description": "An array of binary strings. Each binary string represents one channel of min max peaks data. When getCrossChannelPeaks is true there will only be one binary string in this array, representing the min max peaks across all channels."
},
"numChannels": {
"type": "number",
"description": "The number of channels of peak data (i.e. the number of strings in peaksBinaryStrings). This will be 1 if getCrossChannelPeaks is true."
},
"maxAbsValue": {
"type": "number",
"description": "The maximum value that a peak can take. This can be used to normalize the peaks in the array (between -1, 1), by dividing each by this number."
},
"peaksArrayLength": {
"type": "number",
"description": "The number of peaks in the returned min max channel arrays. If peaksArrayLength is less than the numPeaks input argument, this indicates fewer samples were available than numPeaks requested. In this case, the arrays contain all of the sample values within the requested time window."
},
"peaksDataSize": {
"type": "number",
"description": "The size of the data in the peaks min max arrays. This can be used (in conjunction with peaksArrayLength) to decode the peaksBinaryStrings to 16 bit integer arrays"
}
},
"additionalProperties": false
}

Document version : 1