Creates an instance that refers to the backend.
Creates an OutputStream specific to the given driver/device, with the requested parameters, then returns it. Or null in case of an error.
Sets the device's audio specifications to the closest possible specifications.
The audio client. Initialized upon a successful audiospecs request.
References the backend
Contains the properties of this device
Windows specific audio format.
Windows specific error codes
Stores either all supported sample rates, or two values of lowest and highest supported sample rates if any value can be set without stepping. NOTE: It is not guaranteed, that at all sample ranges, all formats will be available.
Stores supported formats.
Number of input channels, or zero if there's none.
Number of output channels, or zero if there's none.
The last error code if there's any, or 0. Shall not be set externally, although should not impede on operation.
The audio specifications set and available to this device.
Tells whether the device is in shared or exclusive mode. In some cases, this can be set, in others it's either shared or exclusive.
Called when device is disconnected.
Returns the range of sample rates that this audio device supports. Might return null if it's enforced at audio spec request. NOTE: It is not guaranteed, that at all sample ranges, all formats will be available.
Returns the range of audio formats that this audio device supports. Might return null if it's enforced at audio spec request. NOTE: It is not guaranteed, that at all sample ranges, all formats will be available.
Returns the number of input channels this device has, or zero if there's none, or -1 if it's enforced at audio spec request. NOTE: Depending on the backend, devices' inputs and outputs (or even different inputs and outputs) might show up as different devices.
Returns the number of output channels this device has, or zero if there's none, or -1 if it's enforced at audio spec request. NOTE: Depending on the backend, devices' inputs and outputs (or even different inputs and outputs) might show up as different devices.
Returns the currently set audio specifications.
Sets the device's audio specifications to the closest possible specifications.
Creates an OutputStream specific to the given driver/device, with the requested parameters, then returns it. Or null in case of an error, then it also sets errCode to a given error code. Might also set a separate error code variable, depending on the OS/backend.
Implements a WASAPI device, and can create both input and output streams for such devices.