Copyright © 2008-2018 MultiMedia Soft

SilencePositionsDetect method

Previous pageReturn to chapter overviewNext page



Detects positions of silent portions inside the loaded sound and store them inside a list.

The list of detected silent portions can be enumerated at a later time through the SilencePositionsNumGet and SilencePositionsGetRange methods.

Silence detection can be canceled at any time through the SilencePositionsCancelDetect method.


A successful call to this method will fire the SilencePosDetectionStarted event followed by a number of SilencePosDetectionPerc events and finally by the SilencePosDetectionDone and by the AudibleRangeDetected events.





[Visual Basic]

control.SilencePositionsDetect (

nSilenceThreshold as Integer,

nSilenceMinLength as Long,

bIgnoreInitAndFinal as enumBoolean

) as enumErrorCodes



short control.SilencePositionsDetect (

short nSilenceThreshold,

long nSilenceMinLength,

short bIgnoreInitAndFinal









Number representing the silence threshold referred to the volume level. Supported values are expressed with a linear volume in the range from 0 to 32767. If for example you should set a value of 800, any portion of sound having a volume level lower than 800 would be considered as silent.

In case you should need to set a threshold value expressed in dB, before setting this parameter you could convert the value in dB into a linear value through the following formula (C syntax):

ValueLinear = 32767 * pow (10, ValueInDB/20);


Number representing the minimal length of silence expressed in milliseconds. If for example you wish to consider as "silent" only those portions of sound whose duration is above one second, you would have to set this value to 1000.


Boolean flag that determines if silence available on the beginning and on the end of the file must be included in final results.

Supported values are the following:

Mnemonic Value



Include initial and final silent portions inside the list.


Ignore initial and final silent portions and exclude them from being listed.




Return value






Negative value

An error occurred, check the LastError property value in order to see the error code meaning

enumErrorCodes.ERR_NOERROR (0)

The method call was successful.