C# Класс xZune.Bass.BassManager

Bass global manager.
Показать файл Открыть проект

Открытые методы

Метод Описание
Apply3DChanges ( ) : void

Applies changes made to the 3D system.

This function must be called to apply any changes made with Set3DFactors, Set3DPosition, Channel.Set3DAttribute or Channel.Set3DPosition. This allows multiple changes to be synchronized, and also improves performance.

FreeBass ( ) : void

Frees all resources used by the output device, including all its samples, streams and MOD musics.

This function should be called for all initialized devices before the program closes. It is not necessary to individually free the samples/streams/musics as these are all automatically freed by this function. When using multiple devices, the current thread's device setting (as set with SetDevice) determines which device this function call applies to.

Get3DFactors ( float &distf, float &rollf, float &dollf ) : void

Get the factors that affect the calculations of 3D sound.

Get3DPosition ( Vector3 &pos, Vector3 &vel, Vector3 &front, Vector3 &top ) : void

Get the position, velocity, and orientation of the listener.

GetDSoundObject ( DSoundObjectType type ) : IntPtr

Get a pointer to a DirectSound object interface.

GetDeviceInfo ( int device ) : DeviceInfo

Get information on an output device.

GetErrorCode ( ) : ErrorCode

Retrieves the error code for the most recent Bass function call in the current thread.

Initialize ( String bassLibraryPath, int device, uint freq, InitializationConfig configs, IntPtr windowHandle, xZune.Bass.Interop.Core.Guid dSoundGuid ) : void

Load Bass library and initialize it, it will automatically call InitializeBass.

This function must be successfully called before using any functions, others remarks see InitializeBass.

Initialize ( int device, uint freq, InitializationConfig configs, IntPtr windowHandle, xZune.Bass.Interop.Core.Guid dSoundGuid ) : void

Load Bass library and initialize it, it will automatically call InitializeBass, we will try find Bass library in last time used directory and current directory.

This function must be successfully called before using any functions, others remarks see InitializeBass.

InitializeBass ( int device, uint freq, InitializationConfig configs, IntPtr windowHandle, xZune.Bass.Interop.Core.Guid dSoundGuid ) : void

Initializes an output device.

This function must be successfully called before using any sample, stream or MOD music functions. The recording functions may be used without having called this function. Playback is not possible with the "no sound" device, but it does allow the use of "decoding channels", eg. to decode files. Simultaneously using multiple devices is supported in the Bass API via a context switching system; instead of there being an extra "device" parameter in the function calls, the device to be used is set prior to calling the functions. SetDevice is used to switch the current device. When successful, InitializeBass automatically sets the current thread's device to the one that was just initialized. When using the default device (device = -1), GetDevice can be used to find out which device it was mapped to.

PauseAll ( ) : void

Stops the output, pausing all musics/samples/streams on it.

ReleaseAll ( ) : void

Free Bass library and release all resource it used, it will automatically call FreeBass.

Set3DFactors ( float distf, float rollf, float dollf ) : void

Set the factors that affect the calculations of 3D sound.

Set3DPosition ( Vector3 pos, Vector3 vel, Vector3 front, Vector3 top ) : void

Set the position, velocity, and orientation of the listener.

StartAll ( ) : void

Starts (or resumes) the all output.

StopAll ( ) : void

Stops the output, stopping all musics/samples/streams on it.

Update ( int length ) : void

Updates the StreamMedia and MusicMedia channel playback buffers.

When automatic updating is disabled, this function or ChannelUpdate needs to be used to keep the playback buffers updated. The length parameter should include some safety margin, in case the next update cycle gets delayed. For example, if calling this function every 100ms, 200 would be a reasonable length parameter.

Описание методов

Apply3DChanges() публичный статический Метод

Applies changes made to the 3D system.
This function must be called to apply any changes made with Set3DFactors, Set3DPosition, Channel.Set3DAttribute or Channel.Set3DPosition. This allows multiple changes to be synchronized, and also improves performance.
public static Apply3DChanges ( ) : void
Результат void

FreeBass() публичный статический Метод

Frees all resources used by the output device, including all its samples, streams and MOD musics.
This function should be called for all initialized devices before the program closes. It is not necessary to individually free the samples/streams/musics as these are all automatically freed by this function. When using multiple devices, the current thread's device setting (as set with SetDevice) determines which device this function call applies to.
/// Some error occur to call a Bass function, check the error code and error message /// to get more error information. /// /// Bass DLL not loaded, you must use to /// load Bass DLL first. ///
public static FreeBass ( ) : void
Результат void

Get3DFactors() публичный статический Метод

Get the factors that affect the calculations of 3D sound.
public static Get3DFactors ( float &distf, float &rollf, float &dollf ) : void
distf float The distance factor.
rollf float The rolloff factor.
dollf float The doppler factor.
Результат void

Get3DPosition() публичный статический Метод

Get the position, velocity, and orientation of the listener.
public static Get3DPosition ( Vector3 &pos, Vector3 &vel, Vector3 &front, Vector3 &top ) : void
pos Vector3 The position of the listener.
vel Vector3 The listener's velocity.
front Vector3 The direction that the listener's front is pointing.
top Vector3 The direction that the listener's top is pointing.
Результат void

GetDSoundObject() публичный статический Метод

Get a pointer to a DirectSound object interface.
public static GetDSoundObject ( DSoundObjectType type ) : IntPtr
type DSoundObjectType DirectSound object type.
Результат System.IntPtr

GetDeviceInfo() публичный статический Метод

Get information on an output device.
Bass DLL not loaded, you must use to load Bass DLL first. Some error occur to call a Bass function, check the error code and error message to get more error information.
public static GetDeviceInfo ( int device ) : DeviceInfo
device int The device to get the information of... 0 = first.
Результат xZune.Bass.Interop.Core.DeviceInfo

GetErrorCode() публичный статический Метод

Retrieves the error code for the most recent Bass function call in the current thread.
public static GetErrorCode ( ) : ErrorCode
Результат ErrorCode

Initialize() публичный статический Метод

Load Bass library and initialize it, it will automatically call InitializeBass.
This function must be successfully called before using any functions, others remarks see InitializeBass.
/// Bass has initialized, maybe you should call /// to dispose all resource, then call /// initialize Bass again. /// Can't find Bass DLL. /// Can't load Bass DLL, check the platform and Bass target platform (should be same, x86 or x64). /// /// Bass DLL not loaded, you must use Bass to load Bass DLL /// first. /// /// Can't find /// in this Bass function. /// A custom attribute type cannot be loaded. Can't find this function in Bass DLL. /// Some error occur to call a Bass function, check the error code and error message /// to get more error information. ///
public static Initialize ( String bassLibraryPath, int device, uint freq, InitializationConfig configs, IntPtr windowHandle, xZune.Bass.Interop.Core.Guid dSoundGuid ) : void
bassLibraryPath String /// Path of the Bass library, if it is a file, will load this file, if it is a directory, /// will search "bass.dll" in it. ///
device int /// The device to use... -1 = default device, 0 = no sound, 1 = first real output device. /// can be used to enumerate the available devices. ///
freq uint Output sample rate.
configs InitializationConfig Configures of initialize Bass.
windowHandle System.IntPtr The application's main window... 0 = the desktop window (use this for console applications).
dSoundGuid xZune.Bass.Interop.Core.Guid /// Class identifier of the object to create, that will be used to initialize DirectSound... NULL /// = use default. ///
Результат void

Initialize() публичный статический Метод

Load Bass library and initialize it, it will automatically call InitializeBass, we will try find Bass library in last time used directory and current directory.
This function must be successfully called before using any functions, others remarks see InitializeBass.
/// Bass has initialized, maybe you should call /// to dispose all resource, then call /// initialize Bass again. /// Can't find Bass DLL. /// Can't load Bass DLL, check the platform and Bass target platform (should be same, x86 or x64). /// /// Bass DLL not loaded, you must use Bass to load Bass DLL /// first. /// /// Can't find /// in this Bass function. /// A custom attribute type cannot be loaded. Can't find this function in Bass DLL. /// Some error occur to call a Bass function, check the error code and error message /// to get more error information. ///
public static Initialize ( int device, uint freq, InitializationConfig configs, IntPtr windowHandle, xZune.Bass.Interop.Core.Guid dSoundGuid ) : void
device int /// The device to use... -1 = default device, 0 = no sound, 1 = first real output device. /// can be used to enumerate the available devices. ///
freq uint Output sample rate.
configs InitializationConfig Configures of initialize Bass.
windowHandle System.IntPtr The application's main window... 0 = the desktop window (use this for console applications).
dSoundGuid xZune.Bass.Interop.Core.Guid /// Class identifier of the object to create, that will be used to initialize DirectSound... NULL /// = use default. ///
Результат void

InitializeBass() публичный статический Метод

Initializes an output device.
This function must be successfully called before using any sample, stream or MOD music functions. The recording functions may be used without having called this function. Playback is not possible with the "no sound" device, but it does allow the use of "decoding channels", eg. to decode files. Simultaneously using multiple devices is supported in the Bass API via a context switching system; instead of there being an extra "device" parameter in the function calls, the device to be used is set prior to calling the functions. SetDevice is used to switch the current device. When successful, InitializeBass automatically sets the current thread's device to the one that was just initialized. When using the default device (device = -1), GetDevice can be used to find out which device it was mapped to.
/// Bass DLL not loaded, you must use to /// load Bass DLL first. /// /// Some error occur to call a Bass function, check the error code and error message /// to get more error information. ///
public static InitializeBass ( int device, uint freq, InitializationConfig configs, IntPtr windowHandle, xZune.Bass.Interop.Core.Guid dSoundGuid ) : void
device int /// The device to use... -1 = default device, 0 = no sound, 1 = first real output device. /// can be used to enumerate the available devices. ///
freq uint Output sample rate.
configs InitializationConfig Configures of initialize Bass.
windowHandle System.IntPtr The application's main window... 0 = the desktop window (use this for console applications).
dSoundGuid xZune.Bass.Interop.Core.Guid /// Class identifier of the object to create, that will be used to initialize DirectSound... NULL /// = use default. ///
Результат void

PauseAll() публичный статический Метод

Stops the output, pausing all musics/samples/streams on it.
Bass DLL not loaded, you must use to load Bass DLL first. Some error occur to call a Bass function, check the error code and error message to get more error information.
public static PauseAll ( ) : void
Результат void

ReleaseAll() публичный статический Метод

Free Bass library and release all resource it used, it will automatically call FreeBass.
/// Bass DLL not loaded, you must use to load Bass DLL /// first. /// /// Some error occur to call a Bass function, check the error code and error message /// to get more error information. ///
public static ReleaseAll ( ) : void
Результат void

Set3DFactors() публичный статический Метод

Set the factors that affect the calculations of 3D sound.
public static Set3DFactors ( float distf, float rollf, float dollf ) : void
distf float The distance factor.
rollf float The rolloff factor.
dollf float The doppler factor.
Результат void

Set3DPosition() публичный статический Метод

Set the position, velocity, and orientation of the listener.
public static Set3DPosition ( Vector3 pos, Vector3 vel, Vector3 front, Vector3 top ) : void
pos Vector3 The position of the listener.
vel Vector3 The listener's velocity.
front Vector3 The direction that the listener's front is pointing.
top Vector3 The direction that the listener's top is pointing.
Результат void

StartAll() публичный статический Метод

Starts (or resumes) the all output.
Bass DLL not loaded, you must use to load Bass DLL first. Some error occur to call a Bass function, check the error code and error message to get more error information.
public static StartAll ( ) : void
Результат void

StopAll() публичный статический Метод

Stops the output, stopping all musics/samples/streams on it.
Bass DLL not loaded, you must use to load Bass DLL first. Some error occur to call a Bass function, check the error code and error message to get more error information.
public static StopAll ( ) : void
Результат void

Update() публичный статический Метод

Updates the StreamMedia and MusicMedia channel playback buffers.
When automatic updating is disabled, this function or ChannelUpdate needs to be used to keep the playback buffers updated. The length parameter should include some safety margin, in case the next update cycle gets delayed. For example, if calling this function every 100ms, 200 would be a reasonable length parameter.
public static Update ( int length ) : void
length int The amount of data to render, in milliseconds.
Результат void