BASS.NET API for the Un4seen BASS Audio Library

BassWasapi Class

BASS.NET API for the Un4seen BASS Audio Library
.NET API wrapper for BASSWASAPI.DLL

Requires: basswasapi.dll - Windows Audio Session API driver library - available @ www.un4seen.com.

Inheritance Hierarchy

SystemObject
  Un4seen.BassWasapiBassWasapi

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

public sealed class BassWasapi

The BassWasapi type exposes the following members.

Methods

  NameDescription
Public methodStatic memberBASS_WASAPI_CheckFormat(Int32, Int32, Int32, BASSWASAPIFormat)
Checks if a particular sample format is supported by a device (endpoint) in exclusive mode.
Public methodStatic memberBASS_WASAPI_CheckFormat(Int32, Int32, Int32, BASSWASAPIInit)
Checks if a particular sample format is supported by a device (endpoint).
Public methodStatic memberBASS_WASAPI_Free
Frees the Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_GetCPU
Retrieves the current CPU usage of BASSWASAPI.
Public methodStatic memberBASS_WASAPI_GetData(IntPtr, Int32)
Retrieves the immediate sample data (or an FFT representation of it) of the current Wasapi device/driver (endpoint). This overload uses an IntPtr to reference the buffer data.
Public methodStatic memberBASS_WASAPI_GetData(Single, Int32)
Retrieves the immediate sample data (or an FFT representation of it) of the current Wasapi device/driver (endpoint). This overload uses a managed float[] to reference the buffer data as 32-bit!
Public methodStatic memberBASS_WASAPI_GetDevice
Retrieves the Wasapi device setting in the current thread.
Public methodStatic memberBASS_WASAPI_GetDeviceCount
Returns the total number of available Wasapi devices (endpoints).
Public methodStatic memberCode exampleBASS_WASAPI_GetDeviceInfo(Int32)
Retrieves information on a Wasapi device (endpoint).
Public methodStatic memberCode exampleBASS_WASAPI_GetDeviceInfo(Int32, BASS_WASAPI_DEVICEINFO)
Retrieves information on a Wasapi device (endpoint).
Public methodStatic memberBASS_WASAPI_GetDeviceInfos
Returns all available Wasapi devices (endpoints).
Public methodStatic memberBASS_WASAPI_GetDeviceLevel
Gets the audio meter information of the current Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_GetInfo
Retrieves information on the Wasapi device being used.
Public methodStatic memberBASS_WASAPI_GetInfo(BASS_WASAPI_INFO)
Retrieves information on the Wasapi device being used.
Public methodStatic memberBASS_WASAPI_GetLevel
Retrieves the level (peak amplitude) of the current Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_GetLevel(Single, BASSLevel)
Retrieves the level of the current Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_GetLevel(Single, Single, BASSLevel)
Retrieves the level of the current Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_GetMute
Gets the mute status of the current Wasapi device/driver (endpoint).
Public methodStatic memberCode exampleBASS_WASAPI_GetVersion
Retrieves the version number of the basswasapi.dll that is loaded.
Public methodStatic memberCode exampleBASS_WASAPI_GetVersion(Int32)
Retrieves the version of the basswasapi.dll that is loaded.
Public methodStatic memberBASS_WASAPI_GetVolume
Retrieves the current volume level.
Public methodStatic memberBASS_WASAPI_Init(Int32, Int32, Int32, BASSWASAPIInit, Single, Single, WASAPIPROC, IntPtr)
Initializes a Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_Init(Int32, Int32, Int32, BASSWASAPIInit, BASSWASAPIFormat, Single, Single, WASAPIPROC, IntPtr)
Initializes a Wasapi device/driver (endpoint) in exclusive mode.
Public methodStatic memberBASS_WASAPI_IsStarted
Checks, if the current Wasapi device/driver (endpoint) has been already started (via BASS_WASAPI_Start).
Public methodStatic memberBASS_WASAPI_Lock
Locks the device to the current thread.
Public methodStatic memberBASS_WASAPI_PutData(IntPtr, Int32)
Adds sample data to an output device buffer ("push" device).
Public methodStatic memberBASS_WASAPI_PutData(Single, Int32)
Adds sample data to an output device buffer ("push" device).
Public methodStatic memberBASS_WASAPI_SetDevice
Sets the device to use for subsequent calls in the current thread.
Public methodStatic memberBASS_WASAPI_SetMute
Sets the mute status of the current Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_SetNotify
Sets a device change notification callback.
Public methodStatic memberBASS_WASAPI_SetVolume
Sets the volume of the current Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_Start
Starts processing the current Wasapi device/driver (endpoint).
Public methodStatic memberBASS_WASAPI_Stop
Stops the current Wasapi device/driver (endpoint).
Public methodStatic memberFreeMe
Unloads this library. This must be called when you have previously called LoadMe.
Public methodStatic memberCode exampleLoadMe
Loads this library into memory. The library will be search in the current application directory.
Public methodStatic memberCode exampleLoadMe(String)
Loads this library into memory. The library will be loaded from the given path.
Top
Fields

  NameDescription
Public fieldStatic memberBASSWASAPIVERSION
Current BASSWASAPI version (without minor revision).
Top
Remarks

BASSWASAPI is basically a wrapper for Windows Audio Session API drivers, with the addition of channel joining, format conversion and resampling.

BASSWASAPI requires a soundcard with a Windows Session API drivers installed (Vista or above). It also makes use of SSE2 and 3DNow optimizations, but is fully functional without them. BASS is not required by BASSWASAPI, but BASS can of course be used to decode, apply DSP/FX, etc.

See Also

Reference