BASS.NET API for the Un4seen BASS Audio Library

BASS_INFO Class

BASS.NET API for the Un4seen BASS Audio Library
Used with BASS_GetInfo(BASS_INFO) to retrieve information on the current device.
Inheritance Hierarchy

SystemObject
  Un4seen.BassBASS_INFO

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

[SerializableAttribute]
[StructLayoutAttribute(LayoutKind.Sequential, CharSet = CharSet.Ansi)]
public sealed class BASS_INFO

The BASS_INFO type exposes the following members.

Constructors

  NameDescription
Public methodBASS_INFO
Default constructor.
Top
Properties

  NameDescription
Public propertyIsCertified
The device driver has been certified by Microsoft. Always true for WDM drivers.
Public propertySupports16BitSamples
16-bit samples are supported by hardware mixing.
Public propertySupports8BitSamples
8-bit samples are supported by hardware mixing.
Public propertySupportsContinuousRate
The device supports all sample rates between minrate and maxrate.
Public propertySupportsDirectSound
The device's drivers has DirectSound support
Public propertySupportsMonoSamples
Mono samples are supported by hardware mixing.
Public propertySupportsStereoSamples
Stereo samples are supported by hardware mixing.
Top
Methods

  NameDescription
Public methodToString
A description of the decive info object (speakers, rates, dx, eax).
(Overrides ObjectToString.)
Top
Fields

  NameDescription
Public fielddsver
DirectSound version.

9 = DX9/8/7/5 features are available, 8 = DX8/7/5 features are available, 7 = DX7/5 features are available, 5 = DX5 features are available. 0 = none of the DX9/8/7/5 features are available.

Public fieldeax
The device supports EAX and has it enabled?

The device's "Hardware acceleration" needs to be set to "Full" in it's "Advanced Properties" setup, else EAX is disabled.

This is always if BASS_DEVICE_3D was not used when BASS_Init(Int32, Int32, BASSInit, IntPtr, IntPtr) was called.

Public fieldflags
The device's capabilities. A combination of these flags (BASSInfo):
DSCAPS_CONTINUOUSRATEThe device supports all sample rates between minrate and maxrate.
DSCAPS_EMULDRIVERThe device's drivers do NOT have DirectSound support, so it is being emulated. Updated drivers should be installed.
DSCAPS_CERTIFIEDThe device driver has been certified by Microsoft. This flag is always set on WDM drivers.
DSCAPS_SECONDARYMONOMono samples are supported by hardware mixing.
DSCAPS_SECONDARYSTEREOStereo samples are supported by hardware mixing.
DSCAPS_SECONDARY8BIT8-bit samples are supported by hardware mixing.
DSCAPS_SECONDARY16BIT16-bit samples are supported by hardware mixing.
Public fieldfree3d
The number of free 3D sample slots in the hardware.
Public fieldfreesam
The number of free sample slots in the hardware.
Public fieldfreq
The device's current output sample rate. This is only available on Windows Vista and OSX.
Public fieldhwfree
The device's amount of free hardware memory.
Public fieldhwsize
The device's total amount of hardware memory.
Public fieldinitflags
The flags parameter of the BASS_Init(Int32, Int32, BASSInit, IntPtr, IntPtr) call (BASSInit).
Public fieldlatency
The delay (rounded up to the nearest millisecond) for playback of HSTREAM/HMUSIC channels to start and be heard.

Requires that BASS_DEVICE_LATENCY was used when BASS_Init(Int32, Int32, BASSInit, IntPtr, IntPtr) was called.

Public fieldmaxrate
The maximum sample rate supported by the hardware.
Public fieldminbuf
The minimum buffer length (rounded up to the nearest millisecond) recommended for use with the BASS_CONFIG_BUFFER config option (see BASS_GetConfig(BASSConfig) and BASS_SetConfig(BASSConfig, Int32)).

Requires that BASS_DEVICE_LATENCY was used when BASS_Init(Int32, Int32, BASSInit, IntPtr, IntPtr) was called.

Public fieldminrate
The minimum sample rate supported by the hardware.
Public fieldspeakers
The number of speakers the device/drivers supports... 2 means that there is no support for speaker assignment - this will always be the case with non-WDM drivers in Windows.

It's also possible that it could mistakenly be 2 with some devices/drivers, when the device in fact supports more speakers.

In that case the BASS_DEVICE_SPEAKERS or BASS_DEVICE_CPSPEAKERS flag can be used in the BASS_Init(Int32, Int32, BASSInit, IntPtr, IntPtr) call to force the enabling of speaker assignment.

Top
Remarks

The DSCAPS_SECONDARY flags only indicate which sample formats are supported by hardware mixing.

Platform-specific

On Windows, it is possible for speakers to mistakenly be 2 with some devices/drivers when the device in fact supports more speakers. In that case, the BASS_DEVICE_CPSPEAKERS flag can be used (with BASS_Init) to use the Windows control panel setting, or the BASS_DEVICE_SPEAKERS flag can be used to force the enabling of speaker assignment to up to 8 speakers, even though the device may not really support that many speakers. The result of assigning channels to nonexistent speakers is undefined; they may be heard on other speakers or not heard at all.

The flags, hwsize, hwfree, freesam, free3d, minrate, maxrate, eax, and dsver members are only used on Windows, as DirectSound and hardware mixing are only available there. The freq member is not available on Windows prior to Vista.

On Windows, the availability of the latency and minbuf values depends on the BASS_DEVICE_LATENCY flag being used when BASS_Init(Int32, Int32, BASSInit, IntPtr, IntPtr) was called.

See Also

Reference