The WAVEFORM_ANALYZER_SETTINGS_2 structure describes the graphical settings applied to the Waveform Analyzer. The current settings can be retrieved through the WaveformAnalyzer.GetGraphicalSettings2 method and modified through the WaveformAnalyzer.SetGraphicalSettings2 method.

For details about the use of the Waveform Analyzer refer to the How to use the Waveform Analyzer section.

For further details about methods of the Waveform Analyzer refer to the WaveformAnalyzer object section.

Visual C++ definition

typedef struct

{

short     bAppearance3d;

OLE_COLOR colorWaveLine;

OLE_COLOR colorWaveBackground;

OLE_COLOR colorWavePositionLine;

OLE_COLOR colorWavePlaybackLine;

OLE_COLOR colorRulersBackground;

OLE_COLOR colorRulersLines;

OLE_COLOR colorRulersText;

OLE_COLOR colorScrollbarsBackground;

OLE_COLOR colorScrollbarsThumb;

short     bRulerTimeVisibleTop;

short     bRulerTimeVisibleBottom;

short     bScrollbarVisibleTop;

short     bScrollbarVisibleBottom;

long     nResolution;

float     fZoomFactor;

short     bWavePlaybackLineVisible;

float     fVerticalZoomFactor;

OLE_COLOR colorVolumeLevelLine;

OLE_COLOR colorTimeLine;

short     bUseHalfColorsForPeaks;

long     nScaleType;

short     bInvalidateAll;

} WAVEFORM_ANALYZER_SETTINGS_2;

This data structure is defined inside the AdjMmsEngDef.h header file which can be found inside the product's Include directory (default C:\Program Files\Active Sound Recorder\include).

Visual Basic definition

Public Type WAVEFORM_ANALYZER_SETTINGS_2

bAppearance3d As Boolean

colorWaveLine As OLE_COLOR

colorWaveBackground As OLE_COLOR

colorWavePositionLine As OLE_COLOR

colorWavePlaybackLine As OLE_COLOR

colorRulersBackground As OLE_COLOR

colorRulersLines As OLE_COLOR

colorRulersText As OLE_COLOR

colorScrollbarsBackground As OLE_COLOR

colorScrollbarsThumb As OLE_COLOR

bRulerAmplitudeVisibleLeft As Boolean

bRulerAmplitudeVisibleRight As Boolean

bRulerTimeVisibleTop As Boolean

bRulerTimeVisibleBottom As Boolean

bScrollbarVisibleTop As Boolean

bScrollbarVisibleBottom As Boolean

fZoomFactor As Single

bWavePlaybackLineVisible As Boolean

fVerticalZoomFactor As Single

colorVolumeLevelLine As OLE_COLOR

colorTimeLine As OLE_COLOR

bUseHalfColorsForPeaks As Boolean

bInvalidateAll As Boolean

End Type

This data structure is defined inside the Asrecdef.bas module file which can be found inside the product's Include directory (default C:\Program Files\Active Sound Recorder\include).

Picture A

Picture B

Picture C

Member

Description

bAppearance3d

Boolean value that specifies if the Waveform Analyzer is displayed with 3D borders.

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't display 3D borders True 1 Displays 3D borders

colorWaveLine

Color used for rendering the waveform's line (see Picture A above).

colorWaveBackground

Color used for rendering the waveform's background (see Picture A above).

colorWavePositionLine

Color used for rendering the line that indicates a selected position on the waveform (see Picture A above).

colorWavePlaybackLine

Color used for rendering the line that indicates the playback position on the waveform during a playback session (see Picture A above).

colorRulersBackground

Color used for rendering the rulers background (see Picture A above).

colorRulersLines

Color used for rendering the rulers lines (see Picture A above).

colorRulersText

Color used for rendering the rulers texts (see Picture A above).

colorScrollbarsBackground

Color used for rendering the scrollbars background (see Picture A above).

colorScrollbarsThumb

Color used for rendering the scrollbars thumb (see Picture A above).

bRulerAmplitudeVisibleLeft

Boolean value that specifies if the left sound's amplitude ruler is visible. (see Picture B above)

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't display the left sound's amplitude ruler True 1 Displays the left sound's amplitude ruler

bRulerAmplitudeVisibleRight

Boolean value that specifies if the right sound's amplitude ruler is visible. (see Picture B above)

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't display the right sound's amplitude ruler True 1 Displays the right sound's amplitude ruler

bRulerTimeVisibleTop

Boolean value that specifies if the if the top time ruler is visible (see Picture B above)

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't display the top time ruler True 1 Displays the top time ruler

bRulerTimeVisibleBottom

Boolean value that specifies if the if the bottom time ruler is visible (see Picture B above)

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't display the bottom time ruler True 1 Displays the bottom time ruler

bScrollbarVisibleTop

Boolean value that specifies if the if the top scrollbar is visible (see Picture B above)

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't display the top scrollbar True 1 Displays bottom the top scrollbar

bScrollbarVisibleBottom

Boolean value that specifies if the if the bottom scrollbar is visible (see Picture B above)

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't display the bottom scrollbar True 1 Displays bottom the bottom scrollbar

nResolution

Resolution used for waveform's analysis.

Supported values are the following:

 Mnemonic constant Value Meaning WAVEANALYZER_RES_MINIMUM 100 Minimum resolution, faster calculation time. Each line on the analyzer is the average for 256 PCM samples. WAVEANALYZER_RES_VERY_LOW 101 Very low resolution. Each line on the analyzer is the average for 128 PCM samples. WAVEANALYZER_RES_LOW 102 Low resolution. Each line on the analyzer is the average for 64 PCM samples. WAVEANALYZER_RES_MIDDLE 103 Middle resolution. Each line on the analyzer is the average for 32 PCM samples. WAVEANALYZER_RES_HIGH 104 High resolution. Each line on the analyzer is the average for 16 PCM samples. WAVEANALYZER_RES_VERY_HIGH 105 Very high resolution. Each line on the analyzer is the average for 8 PCM samples. WAVEANALYZER_RES_MAXIMUM 106 Maximum resolution, slower calculation time. Each line on the analyzer is the average for 4 PCM samples.

fZoomFactor

Floating point value indicating the factor applied to zooming operations: by default the zoom factor is 2.0

nStereoVisualizationMode

Visualization mode used for displaying stereo sounds

Supported values are the following:

 Mnemonic constant Value Meaning STEREO_MODE_CHANNELS_BOTH 0 Right and left channels are displayed separately on two different panes as seen on the pictures A and B above. STEREO_MODE_CHANNELS_LEFT 1 Only the left channel content is displayed on a single pane STEREO_MODE_CHANNELS_RIGHT 2 Only the right channel content is displayed on a single pane STEREO_MODE_CHANNELS_MIXED 3 Right and left channels contents are mixed together and displayed on a single pane

nWavePositionLineType

Line mode used for rendering the line that indicates a selected position on the waveform.

Supported values are the following:

 Mnemonic constant Value Meaning LINE_MODE_DOTTED 0 Dotted line LINE_MODE_DASHED 1 Dashed line LINE_MODE_SOLID 2 Solid line

nWavePlaybackLineType

Line mode used for rendering the line that indicates the playback position on the waveform during a playback session.

Supported values are the following:

 Mnemonic constant Value Meaning LINE_MODE_DOTTED 0 Dotted line LINE_MODE_DASHED 1 Dashed line LINE_MODE_SOLID 2 Solid line

bWavePlaybackLineVisible

Boolean value that determines if the line that indicates the playback position is visible during a playback session.

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't display the position line during playback True 1 Displays the position line during playback

fVerticalZoomFactor

Factor applied to vertical zooming operations. can assume values ranging from 0.5 to 5.

- Values smaller than 1 will vertically zoom-out the waveform, reducing its vertical size

- Value 1 will display the waveform without zooming

- Values higher than 1 will vertically zoom-in the waveform, increasing its vertical size

colorVolumeLevelLine

Color used for rendering horizontal lines related to the volume level (see Picture C above). If you don't want to display volume level lines you simply need to set this color to -1.

colorTimeLine

Color used for rendering vertical lines related to time (see Picture C above). If you don't want to display time lines you simply need to set this color to -1.

bUseHalfColorsForPeaks

Boolean value that determines if waveform peaks will have a half intensity color.

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Doesn't use half color for peaks True (default) 1 Uses half color for peaks

nScaleType

Scale mode used for vertical rulers.

Supported values are the following:

 Mnemonic constant Value Meaning SCALE_LINEAR 0 The scale is displayed in linear values: - for sound having 16 bits per sample the scale is from 32767 to -32768: the value 0 means that the sound level is totally silent. - for sound having 8 bits per sample the scale is from 0 to 255: the value 127 means that the sound level is totally silent. SCALE_LOG 1 The scale is displayed in dB

bInvalidateAll

Boolean value that determines if we need to invalidate the whole surface of the control or only the waveform area when performing actions with the mouse.

Supported values are the following:

 Mnemonic constant Value Meaning False 0 Invalidates the waveform area only True (default) 1 Invalidates the whole surface