BASS.NET API for the Un4seen BASS Audio Library

BASSWASAPIInit Enumeration

BASS.NET API for the Un4seen BASS Audio Library

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

public enum BASSWASAPIInit
Members

  Member nameValueDescription
BASS_WASAPI_SHARED0 Init the device (endpoint) in shared mode.
BASS_WASAPI_EXCLUSIVE1 Init the device (endpoint) in exclusive mode.
BASS_WASAPI_AUTOFORMAT2 Automatically choose another sample format if the specified format is not supported. If possible, a higher sample rate than freq will be used, rather than a lower one.
BASS_WASAPI_BUFFER4 Enable double buffering, for use by BASS_WASAPI_GetData(IntPtr, Int32) and BASS_WASAPI_GetLevel. This requires the BASS "no sound" device to have been initilized, via BASS_Init(Int32, Int32, BASSInit, IntPtr, IntPtr).

Internally, a BASS stream is used for that, so the usual BASS_DATA_xxx flags are supported.

BASS_WASAPI_EVENT16 Enables the event-driven WASAPI system.

It is only supported when a WASAPIPROC function is provided, ie. not when using BASS_WASAPI_PutData(IntPtr, Int32).

When used with shared mode, the user-provided 'buffer' and 'period' lengths are ignored and WASAPI decides what buffer to use (BASS_WASAPI_GetInfo(BASS_WASAPI_INFO) can be used to check that).

BASS_WASAPI_SAMPLES32 Allows 'buffer' and 'period' to be specified in samples instead of seconds in the BASS_WASAPI_Init(Int32, Int32, Int32, BASSWASAPIInit, Single, Single, WASAPIPROC, IntPtr) call.
BASS_WASAPI_DITHER64 Requests to apply dither to the output.

Dither is optional rather than automatic because it destroys bit-perfect output; you probably don't want to enable it unless you're applying DSP (including volume changes). When the output is floating-point (eg. in shared mode), the flag will have no effect.

BASS_WASAPI_RAW128 Requests raw output (sets the audio category RAW for the application).
BASS_WASAPI_CATEGORY_MASK61440 Flag: to mask the category flags.
BASS_WASAPI_CATEGORY_OTHER0 Flags: Requests the category uncategorized streams.
BASS_WASAPI_CATEGORY_FOREGROUNDONLYMEDIA4096 Flags: Requests the category foreground music.
BASS_WASAPI_CATEGORY_BACKGROUNDCAPABLEMEDIA8192 Flags: Requests the category background music.
BASS_WASAPI_CATEGORY_COMMUNICATIONS12288 Flags: Requests the category VoIP, real-time chat.
BASS_WASAPI_CATEGORY_ALERTS16384 Flags: Requests the category alarm, ring tone, notifications.
BASS_WASAPI_CATEGORY_SOUNDEFFECTS20480 Flags: Requests the category beeps, dings, etc.
BASS_WASAPI_CATEGORY_GAMEEFFECTS24576 Flags: Requests the category in-game balls bouncing, car engine sounds, bullets, etc.
BASS_WASAPI_CATEGORY_GAMEMEDIA28672 Flags: Requests the category in-game music.
BASS_WASAPI_CATEGORY_GAMECHAT32768 Flags: Requests the category in-game communication between users.
BASS_WASAPI_CATEGORY_SPEECH36864 Flags: Requests the category speech input (e.g. personal assistant) and output (e.g. navigation apps).
BASS_WASAPI_CATEGORY_MOVIE40960 Flags: Requests the category movies, video with dialog.
BASS_WASAPI_CATEGORY_MEDIA45056 Flags: Requests the default category for media playback.
Remarks

The BASS_WASAPI_CATEGORY_xxx flags might be used to request a particular audio category. Audio categories (selected by applications) are mapped to audio modes (defined by drivers). In order to inform the system about the usage of an audio stream, applications have the option to tag the stream with a specific audio stream category.
See Also

Reference