pa_asio.h File Reference
Public API definitions for users of PortAudio

ASIO-specific PortAudio API extension header file. More...

`#include "portaudio.h"`

Go to the source code of this file.

## Data Structures

struct | PaAsioStreamInfo

## Macros

#define | PaAsio_GetAvailableLatencyValues PaAsio_GetAvailableBufferSizes
#define | paAsioUseChannelSelectors (0x01)

## Typedefs

typedef struct PaAsioStreamInfo | PaAsioStreamInfo

## Functions

PaError | PaAsio_GetAvailableBufferSizes (PaDeviceIndex device, long *minBufferSizeFrames, long *maxBufferSizeFrames, long *preferredBufferSizeFrames, long *granularity)
PaError | PaAsio_ShowControlPanel (PaDeviceIndex device, void *systemSpecific)
PaError | PaAsio_GetInputChannelName (PaDeviceIndex device, int channelIndex, const char **channelName)
PaError | PaAsio_GetOutputChannelName (PaDeviceIndex device, int channelIndex, const char **channelName)
PaError | PaAsio_SetStreamSampleRate (PaStream *stream, double sampleRate)

## Detailed Description

ASIO-specific PortAudio API extension header file.

Definition in file pa_asio.h.

## Macro Definition Documentation

## PaAsio_GetAvailableLatencyValues

#define PaAsio_GetAvailableLatencyValues PaAsio_GetAvailableBufferSizes

Backwards compatibility alias for PaAsio_GetAvailableBufferSizes

See also
  PaAsio_GetAvailableBufferSizes

Definition at line 78 of file pa_asio.h.

## Function Documentation

## PaAsio_GetAvailableBufferSizes()

PaError PaAsio_GetAvailableBufferSizes | ( | PaDeviceIndex | device,
|  | long * | minBufferSizeFrames,
|  | long * | maxBufferSizeFrames,
|  | long * | preferredBufferSizeFrames,
|  | long * | granularity
| ) |  |

Retrieve legal native buffer sizes for the specificed device, in sample frames.

Parameters

  device | The global index of the device about which the query is being made.
  minBufferSizeFrames | A pointer to the location which will receive the minimum buffer size value.
  maxBufferSizeFrames | A pointer to the location which will receive the maximum buffer size value.
  preferredBufferSizeFrames | A pointer to the location which will receive the preferred buffer size value.
  granularity | A pointer to the location which will receive the "granularity". This value determines the step size used to compute the legal values between minBufferSizeFrames and maxBufferSizeFrames. If granularity is -1 then available buffer size values are powers of two.

See also
  ASIOGetBufferSize in the ASIO SDK.

Note
  : this function used to be called PaAsio_GetAvailableLatencyValues. There is a #define that maps PaAsio_GetAvailableLatencyValues to this function for backwards compatibility.

## PaAsio_GetInputChannelName()

PaError PaAsio_GetInputChannelName | ( | PaDeviceIndex | device,
|  | int | channelIndex,
|  | const char ** | channelName
| ) |  |

Retrieve a pointer to a string containing the name of the specified input channel. The string is valid until Pa_Terminate is called.

The string will be no longer than 32 characters including the null terminator.

## PaAsio_GetOutputChannelName()

PaError PaAsio_GetOutputChannelName | ( | PaDeviceIndex | device,
|  | int | channelIndex,
|  | const char ** | channelName
| ) |  |

Retrieve a pointer to a string containing the name of the specified input channel. The string is valid until Pa_Terminate is called.

The string will be no longer than 32 characters including the null terminator.

## PaAsio_SetStreamSampleRate()

PaError PaAsio_SetStreamSampleRate | ( | PaStream * | stream,
|  | double | sampleRate
| ) |  |

Set the sample rate of an open paASIO stream.

Parameters

  stream | The stream to operate on.
  sampleRate | The new sample rate.

Note that this function may fail if the stream is alredy running and the ASIO driver does not support switching the sample rate of a running stream.

Returns paIncompatibleStreamHostApi if stream is not a paASIO stream.

## PaAsio_ShowControlPanel()

PaError PaAsio_ShowControlPanel | ( | PaDeviceIndex | device,
|  | void * | systemSpecific
| ) |  |

Display the ASIO control panel for the specified device.

Parameters

  device | The global index of the device whose control panel is to be displayed.
  systemSpecific | On Windows, the calling application's main window handle, on Macintosh this value should be zero.