private static void Update(int device, WasapiInitFlags flags) { var info = default(WasapiInfo); var deviceInfo = default(WasapiDeviceInfo); BassUtils.OK(BassWasapi.GetInfo(out info)); BassUtils.OK(BassWasapi.GetDeviceInfo(BassWasapi.CurrentDevice, out deviceInfo)); Info = new BassWasapiDeviceInfo( BassWasapi.CurrentDevice, deviceInfo.MixFrequency, 0, deviceInfo.MixChannels, info.BufferLength, GetSupportedFormats( BassWasapi.CurrentDevice, flags ), BassWasapi.CheckFormat( BassWasapi.CurrentDevice, deviceInfo.MixFrequency, deviceInfo.MixChannels, flags ), device == BassWasapi.DefaultDevice ); }
public extern static bool Init(int device, int freq, int chans, WasapiInitFlags flags, float buffer = 0, float period = 0, WasapiProcedure proc = null, IntPtr User = default(IntPtr));
public static extern bool Init(int Device, int Frequency = 0, int Channels = 0, WasapiInitFlags Flags = WasapiInitFlags.Shared, float Buffer = 0, float Period = 0, WasapiProcedure Procedure = null, IntPtr User = default(IntPtr));
private static IDictionary <int, WasapiFormat> GetSupportedFormats(int device, WasapiInitFlags flags) { var supportedFormats = new Dictionary <int, WasapiFormat>(); foreach (var rate in OutputRate.PCM) { var format = BassWasapi.CheckFormat(device, rate, BassWasapi.Info.Channels, flags); if (format == WasapiFormat.Unknown) { continue; } supportedFormats.Add(rate, format); } return(supportedFormats); }
/// <summary> /// Initialize. /// </summary> /// <returns></returns> public static bool Init(int Device, int Frequency = 0, int Channels = 0, WasapiInitFlags Flags = WasapiInitFlags.Shared, float Buffer = 0f, float Period = 0f, IntPtr User = default(IntPtr)) { return(BASS_WASAPI_HANDLER_Init(Device, Frequency, Channels, Flags, Buffer, Period, User)); }
static extern bool BASS_WASAPI_HANDLER_Init(int Device, int Frequency, int Channels, WasapiInitFlags Flags, float Buffer, float Period, IntPtr User);
public extern static WasapiFormat CheckFormat(int device, int freq, int chans, WasapiInitFlags flags);
public static extern WasapiFormat CheckFormat(int Device, int Frequency, int Channels, WasapiInitFlags Flags);