Slides a channel's attribute from its current value to a new value.
BOOL BASS_ChannelSlideAttribute( DWORD handle, DWORD attrib, float value, DWORD time );
handle | The channel handle... a HCHANNEL, HSTREAM, HMUSIC, or HRECORD. | ||||||||||||||||||||||||
attrib | The attribute to slide the value of. One of the following, with optional flags.
| ||||||||||||||||||||||||
value | The new attribute value. See the attribute's documentation for details on the possible values. | ||||||||||||||||||||||||
time | The length of time (in milliseconds) that it should take for the attribute to reach the value. |
BASS_ERROR_HANDLE | handle is not a valid channel. |
BASS_ERROR_ILLTYPE | attrib is not valid. |
BASS_ERROR_ILLPARAM | The attribute's value cannot go from positive to negative or vice versa when the BASS_SLIDE_LOG flag is used. |
If an attribute is already sliding, then the old slide is stopped and replaced by the new one.
BASS_ChannelIsSliding can be used to check if an attribute is currently sliding. A BASS_SYNC_SLIDE sync can also be set via BASS_ChannelSetSync, to be triggered at the end of a slide. The sync will not be triggered in the case of an existing slide being replaced by a new one.
Attribute slides are unaffected by whether the channel is playing, paused or stopped; they carry on regardless.
BASS_ChannelSlideAttribute(channel, BASS_ATTRIB_VOL, 0, 1000);
Fadeout a channel's volume logarithmically over a period of 2 seconds.
BASS_ChannelSlideAttribute(channel, BASS_ATTRIB_VOL | BASS_SLIDE_LOG, 0, 2000);