Number of channels... 1=mono, 2=stereo (default), etc.
A combination of these flags (BASSFlag
|BASS_SAMPLE_8BITS||The samples's resolution is 8-bit. If neither this or the BASS_SAMPLE_FLOAT flags are present, then the sample's resolution is 16-bit.|
|BASS_SAMPLE_FLOAT||The samples's resolution is 32-bit floating-point.|
|BASS_SAMPLE_3D||The sample has 3D functionality enabled.|
|BASS_SAMPLE_MUTEMAX ||Mute the sample when it is at (or beyond) it's max distance (3D samples only).|
|BASS_SAMPLE_SOFTWARE||The sample is not using hardware mixing... it is being mixed in software by DirectSound.|
|BASS_SAMPLE_VAM||DX7 voice allocation and management features are enabled (see below).|
|BASS_SAMPLE_OVER_VOL||Override: the channel with the lowest volume is overriden.|
|BASS_SAMPLE_OVER_POS||Override: the longest playing channel is overriden.|
|BASS_SAMPLE_OVER_DIST||Override: the channel furthest away (from the listener) is overriden (3D samples only).|
Default playback rate (set to 44100 by default).
The angle of the inside projection cone in degrees... 0 (no cone, default) - 360 (sphere).
The length in bytes.
Maximum number of simultaneous playbacks (defaulted to 1).
The maximum distance (default 0). The sample's volume stops decreasing when the listener is beyond this distance.
The minimum distance (default 0). The sample's volume is at maximum when the listener is within this distance.
Minimum time gap in milliseconds between creating channels using BASS_SampleGetChannel(Int32, Boolean)
This can be used to prevent flanging effects caused by playing a sample multiple times very close to eachother.
The default setting, when loading/creating a sample, is 0 (disabled).
The 3D processing mode... one of these flags (see BASS3DMode
|BASS_3DMODE_NORMAL||Normal 3D processing (default).|
|BASS_3DMODE_RELATIVE||The sample's 3D position (position/velocity/orientation) is relative to the listener. When the listener's position/velocity/orientation is changed with BASS_Set3DPosition(BASS_3DVECTOR, BASS_3DVECTOR, BASS_3DVECTOR, BASS_3DVECTOR), the sample's position relative to the listener does not change.|
|BASS_3DMODE_OFF||Turn off 3D processing on the sample, the sound will be played in the center.|
The angle of the outside projection cone in degrees... 0 (no cone, default) - 360 (sphere).
The original resolution (bits per sample)... 0 = undefined (default).
The delta-volume outside the outer projection cone... 0 (silent) to 1 (full, default) - same as inside the cone.
Default panning position -1 (full left) to +1 (full right) - defaulted to 0 = centre.
Priority, used with the BASS_VAM_TERM_PRIO flag... 0 (min, default) - 0xFFFFFFFF (max)
The following are the sample's DX7 voice allocation/management settings (if VAM is enabled)...a combination of these (BASSVam
|BASS_VAM_HARDWARE||Play the sample in hardware (default). If no hardware voices are available then the play call will fail.|
|BASS_VAM_SOFTWARE||Play the sample in software (ie. non-accelerated). No other VAM flags may be used together with this flag.|
The following flags enable hardware resource stealing... if the hardware has no available voices, a currently playing buffer will be stopped to make room for the new buffer. Only samples with VAM enabled are considered for termination:
|BASS_VAM_TERM_TIME||If there are no free hardware voices, the buffer to be terminated will be the one with the least time left to play.|
|BASS_VAM_TERM_DIST||If there are no free hardware voices, the buffer to be terminated will be one that was loaded/created with the BASS_SAMPLE_MUTEMAX flag and is beyond it's max distance (maxdist). If there are no buffers that match this criteria, then the play call will fail.|
|BASS_VAM_TERM_PRIO||If there are no free hardware voices, the buffer to be terminated will be the one with the lowest priority. This flag may be used with the TERM_TIME or TERM_DIST flag, if multiple voices have the same priority then the time or distance is used to decide which to terminate.|
Default volume... 0 (silent) to 1 (full, default).