BASS.NET API for the Un4seen BASS Audio Library

DSP_SoftSaturation Class

BASS.NET API for the Un4seen BASS Audio Library
Soft Saturation DSP (a waveshaper).
Inheritance Hierarchy

SystemObject
  Un4seen.Bass.MiscBaseDSP
    Un4seen.Bass.MiscDSP_SoftSaturation

Namespace:  Un4seen.Bass.Misc
Assembly:  Bass.Net (in Bass.Net.dll) Version: 2.4.17.5
Syntax

[SerializableAttribute]
public sealed class DSP_SoftSaturation : BaseDSP

The DSP_SoftSaturation type exposes the following members.

Constructors

  NameDescription
Public methodDSP_SoftSaturation
Creates a new instance of the Soft Saturation DSP, not assigning the DSP yet.
Public methodDSP_SoftSaturation(Int32, Int32)
Creates a new instance of the Soft Saturation DSP, which already assigns the DSP (Start will be called automatically).
Top
Properties

  NameDescription
Public propertyChannelBitwidth
This property returns the actual bitwidth of the sample data of the channel (e.g. 8, 16, 32).
(Inherited from BaseDSP.)
Public propertyChannelHandle
Gets or Sets the channel that the DSP is being applied to.
(Inherited from BaseDSP.)
Public propertyChannelInfo
Gets the BASS_CHANNELINFO of the assigned ChannelHandle.
(Inherited from BaseDSP.)
Public propertyChannelNumChans
This property returns the actual number of channles of the sample data BASS is using with the channel (e.g. 1=mono, 2=stereo, etc.).
(Inherited from BaseDSP.)
Public propertyChannelSampleRate
This property returns the actual sample rate in Hz of the sample data BASS is using with the channel (e.g. 44100).
(Inherited from BaseDSP.)
Public propertyDepth
Gets or Sets the Depth between 0.0 and 1.0 (default is 0.5, 0.0=off).
Public propertyDitherFactor
Gets or Sets the dithering bitdepth of the triangular probability density function (TPDF) - default is 0.7.
Public propertyDSPHandle
Returns the actual DSP handle (or 0, if the DSP has not been assigned to the channel).
(Inherited from BaseDSP.)
Public propertyDSPPriority
Sets or reassigns the priority of the DSP, which determines it's position in the DSP chain - DSPs with higher priority are called before those with lower.
(Inherited from BaseDSP.)
Public propertyDSPProc
Returns the actual DSPPROC (callback delegate) which is used by the DSP.
(Inherited from BaseDSP.)
Public propertyFactor
Gets or Sets the Soft Saturation factor between 0.0 and 0.99998848714 (default is 0.5).
Public propertyFactor_dBV
Gets or Sets the Soft Saturation factor in dBV between NegativeInfinity and -0.0001 (default is -6 dB).
Public propertyIsAssigned
Is the DSP assigned to an active channel? (=assigned, =not assigned).
(Inherited from BaseDSP.)
Public propertyIsBypassed
Returns if the DSP is currently bypassed (=bypass).
(Inherited from BaseDSP.)
Public propertyUseDithering
Gets or Sets, if Dithering should be used (default is ).
Public propertyUser
Gets or Sets the value of the user instance data to pass to the callback function (see DSPCallback(Int32, Int32, IntPtr, Int32, IntPtr)).
(Inherited from BaseDSP.)
Top
Methods

  NameDescription
Public methodDispose
Implement IDisposable.
(Inherited from BaseDSP.)
Public methodDSPCallback
User defined DSP callback function which does the soft saturation wave sharping. Not for direct use in your application!
(Overrides BaseDSPDSPCallback(Int32, Int32, IntPtr, Int32, IntPtr).)
Protected methodFinalize
Finalization code.
(Inherited from BaseDSP.)
Public methodOnBypassChanged
This method will be called every time the SetBypass(Boolean) method had been called.
(Inherited from BaseDSP.)
Public methodOnChannelChanged
This method will be called every time the ChannelHandle changed.
(Inherited from BaseDSP.)
Public methodOnStarted
This method will be called every time the Start method had been called.
(Inherited from BaseDSP.)
Public methodOnStopped
This method will be called every time the Stop method had been called.
(Inherited from BaseDSP.)
Public methodRaiseNotification
Fires the Notification event.
(Inherited from BaseDSP.)
Public methodSetBypass
Sets the Bypass mode.
(Inherited from BaseDSP.)
Public methodStart
Assigns the DSP to the channel (actually starts using the DSP).
(Inherited from BaseDSP.)
Public methodStop
Stops (removes) the DSP from the channel.
(Inherited from BaseDSP.)
Public methodToString
Returns the name of the DSP.
(Overrides BaseDSPToString.)
Top
Events

  NameDescription
Public eventNotification
Event handler used to notify that the DSP has processed some data.
(Inherited from BaseDSP.)
Top
Remarks

A Soft Saturation DSP doing some wave sharping. Use the Factor property to play around with sharping effect. Basically it reduces/modifies the level signal, if above the Factor value. If the signal is below the Factor the signal will be left unchanged. The effect is a good combination with a gain effect to minimize distortion or clipping which might happen with loud signal peaks.

The DSP automatically handles 8-, 16- or 32-bit sample data accordingly. 8- and 16-bit sample data will be clipped if needed, 32-bit floating-point values will not be clipped.

Use Start to assign the DSP to the channel. Use Stop to remove the DSP (you can (re)assign the DSP at any time again by calling Start). Changing the DSPPriority when the DSP is already assigned will automatically reassign the DSP.

Use the ChannelHandle property to change the channel assignment at any time. If the DSP has already been assigned, the DSP will immediately be reassigned to the new channel.

NOTE: This DSP does NOT support the Notification event!

See Also

Reference