PortAudio 2.0
|
WASAPI-specific PortAudio API extension header file. More...
Go to the source code of this file.
Data Structures | |
struct | PaWasapiJackDescription |
struct | PaWasapiStreamInfo |
Macros | |
#define | paWinWasapiExclusive (paWinWasapiExclusive) |
#define | paWinWasapiRedirectHostProcessor (paWinWasapiRedirectHostProcessor) |
#define | paWinWasapiUseChannelMask (paWinWasapiUseChannelMask) |
#define | paWinWasapiPolling (paWinWasapiPolling) |
#define | paWinWasapiThreadPriority (paWinWasapiThreadPriority) |
Typedefs | |
typedef enum PaWasapiFlags | PaWasapiFlags |
typedef void(* | PaWasapiHostProcessorCallback) (void *inputBuffer, long inputFrames, void *outputBuffer, long outputFrames, void *userData) |
typedef enum PaWasapiDeviceRole | PaWasapiDeviceRole |
typedef enum PaWasapiJackConnectionType | PaWasapiJackConnectionType |
typedef enum PaWasapiJackGeoLocation | PaWasapiJackGeoLocation |
typedef enum PaWasapiJackGenLocation | PaWasapiJackGenLocation |
typedef enum PaWasapiJackPortConnection | PaWasapiJackPortConnection |
typedef enum PaWasapiThreadPriority | PaWasapiThreadPriority |
typedef struct PaWasapiJackDescription | PaWasapiJackDescription |
typedef enum PaWasapiStreamCategory | PaWasapiStreamCategory |
typedef enum PaWasapiStreamOption | PaWasapiStreamOption |
typedef struct PaWasapiStreamInfo | PaWasapiStreamInfo |
Enumerations | |
enum | PaWasapiFlags { paWinWasapiExclusive = (1 << 0) , paWinWasapiRedirectHostProcessor = (1 << 1) , paWinWasapiUseChannelMask = (1 << 2) , paWinWasapiPolling = (1 << 3) , paWinWasapiThreadPriority = (1 << 4) } |
enum | PaWasapiDeviceRole { eRoleRemoteNetworkDevice = 0 , eRoleSpeakers , eRoleLineLevel , eRoleHeadphones , eRoleMicrophone , eRoleHeadset , eRoleHandset , eRoleUnknownDigitalPassthrough , eRoleSPDIF , eRoleHDMI , eRoleUnknownFormFactor } |
enum | PaWasapiJackConnectionType { eJackConnTypeUnknown , eJackConnType3Point5mm , eJackConnTypeQuarter , eJackConnTypeAtapiInternal , eJackConnTypeRCA , eJackConnTypeOptical , eJackConnTypeOtherDigital , eJackConnTypeOtherAnalog , eJackConnTypeMultichannelAnalogDIN , eJackConnTypeXlrProfessional , eJackConnTypeRJ11Modem , eJackConnTypeCombination } |
enum | PaWasapiJackGeoLocation { eJackGeoLocUnk = 0 , eJackGeoLocRear = 0x1 , eJackGeoLocFront , eJackGeoLocLeft , eJackGeoLocRight , eJackGeoLocTop , eJackGeoLocBottom , eJackGeoLocRearPanel , eJackGeoLocRiser , eJackGeoLocInsideMobileLid , eJackGeoLocDrivebay , eJackGeoLocHDMI , eJackGeoLocOutsideMobileLid , eJackGeoLocATAPI , eJackGeoLocReserved5 , eJackGeoLocReserved6 } |
enum | PaWasapiJackGenLocation { eJackGenLocPrimaryBox = 0 , eJackGenLocInternal , eJackGenLocSeparate , eJackGenLocOther } |
enum | PaWasapiJackPortConnection { eJackPortConnJack = 0 , eJackPortConnIntegratedDevice , eJackPortConnBothIntegratedAndJack , eJackPortConnUnknown } |
enum | PaWasapiThreadPriority { eThreadPriorityNone = 0 , eThreadPriorityAudio , eThreadPriorityCapture , eThreadPriorityDistribution , eThreadPriorityGames , eThreadPriorityPlayback , eThreadPriorityProAudio , eThreadPriorityWindowManager } |
enum | PaWasapiStreamCategory { eAudioCategoryOther = 0 , eAudioCategoryCommunications = 3 , eAudioCategoryAlerts = 4 , eAudioCategorySoundEffects = 5 , eAudioCategoryGameEffects = 6 , eAudioCategoryGameMedia = 7 , eAudioCategoryGameChat = 8 , eAudioCategorySpeech = 9 , eAudioCategoryMovie = 10 , eAudioCategoryMedia = 11 } |
enum | PaWasapiStreamOption { eStreamOptionNone = 0 , eStreamOptionRaw = 1 , eStreamOptionMatchFormat = 2 } |
Functions | |
int | PaWasapi_GetDeviceDefaultFormat (void *pFormat, unsigned int nFormatSize, PaDeviceIndex nDevice) |
int | PaWasapi_GetDeviceRole (PaDeviceIndex nDevice) |
PaError | PaWasapi_ThreadPriorityBoost (void **hTask, PaWasapiThreadPriority nPriorityClass) |
PaError | PaWasapi_ThreadPriorityRevert (void *hTask) |
PaError | PaWasapi_GetFramesPerHostBuffer (PaStream *pStream, unsigned int *nInput, unsigned int *nOutput) |
PaError | PaWasapi_GetJackCount (PaDeviceIndex nDevice, int *jcount) |
PaError | PaWasapi_GetJackDescription (PaDeviceIndex nDevice, int jindex, PaWasapiJackDescription *pJackDescription) |
WASAPI-specific PortAudio API extension header file.
Definition in file pa_win_wasapi.h.
#define paWinWasapiExclusive (paWinWasapiExclusive) |
Definition at line 77 of file pa_win_wasapi.h.
#define paWinWasapiPolling (paWinWasapiPolling) |
Definition at line 80 of file pa_win_wasapi.h.
#define paWinWasapiRedirectHostProcessor (paWinWasapiRedirectHostProcessor) |
Definition at line 78 of file pa_win_wasapi.h.
#define paWinWasapiThreadPriority (paWinWasapiThreadPriority) |
Definition at line 81 of file pa_win_wasapi.h.
#define paWinWasapiUseChannelMask (paWinWasapiUseChannelMask) |
Definition at line 79 of file pa_win_wasapi.h.
typedef void(* PaWasapiHostProcessorCallback) (void *inputBuffer, long inputFrames, void *outputBuffer, long outputFrames, void *userData) |
Definition at line 90 of file pa_win_wasapi.h.
typedef enum PaWasapiStreamCategory PaWasapiStreamCategory |
Stream category. Note:
typedef enum PaWasapiStreamOption PaWasapiStreamOption |
Stream option. Note:
enum PaWasapiDeviceRole |
Definition at line 95 of file pa_win_wasapi.h.
enum PaWasapiFlags |
Definition at line 56 of file pa_win_wasapi.h.
enum PaWasapiJackConnectionType |
Definition at line 113 of file pa_win_wasapi.h.
enum PaWasapiJackGenLocation |
Definition at line 155 of file pa_win_wasapi.h.
enum PaWasapiJackGeoLocation |
Definition at line 132 of file pa_win_wasapi.h.
enum PaWasapiJackPortConnection |
Definition at line 166 of file pa_win_wasapi.h.
Stream category. Note:
Definition at line 213 of file pa_win_wasapi.h.
enum PaWasapiStreamOption |
Stream option. Note:
Definition at line 236 of file pa_win_wasapi.h.
Enumerator | |
---|---|
eThreadPriorityAudio | Default for Shared mode. |
eThreadPriorityProAudio | Default for Exclusive mode. |
Definition at line 177 of file pa_win_wasapi.h.
int PaWasapi_GetDeviceDefaultFormat | ( | void * | pFormat, |
unsigned int | nFormatSize, | ||
PaDeviceIndex | nDevice | ||
) |
Returns default sound format for device. Format is represented by PaWinWaveFormat or WAVEFORMATEXTENSIBLE structure.
pFormat | Pointer to PaWinWaveFormat or WAVEFORMATEXTENSIBLE structure. |
nFormatSize | Size of PaWinWaveFormat or WAVEFORMATEXTENSIBLE structure in bytes. |
nDevice | Device index. |
int PaWasapi_GetDeviceRole | ( | PaDeviceIndex | nDevice | ) |
Returns device role (PaWasapiDeviceRole enum).
nDevice | device index. |
PaError PaWasapi_GetFramesPerHostBuffer | ( | PaStream * | pStream, |
unsigned int * | nInput, | ||
unsigned int * | nOutput | ||
) |
Get number of frames per host buffer. This is maximal value of frames of WASAPI buffer which can be locked for operations. Use this method as helper to findout maximal values of inputFrames/outputFrames of PaWasapiHostProcessorCallback.
pStream | Pointer to PaStream to query. |
nInput | Pointer to variable to receive number of input frames. Can be NULL. |
nOutput | Pointer to variable to receive number of output frames. Can be NULL. |
PaError PaWasapi_GetJackCount | ( | PaDeviceIndex | nDevice, |
int * | jcount | ||
) |
Get number of jacks associated with a WASAPI device. Use this method to determine if there are any jacks associated with the provided WASAPI device. Not all audio devices will support this capability. This is valid for both input and output devices.
nDevice | device index. |
jcount | Number of jacks is returned in this variable |
PaError PaWasapi_GetJackDescription | ( | PaDeviceIndex | nDevice, |
int | jindex, | ||
PaWasapiJackDescription * | pJackDescription | ||
) |
Get the jack description associated with a WASAPI device and jack number Before this function is called, use PaWasapi_GetJackCount to determine the number of jacks associated with device. If jcount is greater than zero, then each jack from 0 to jcount can be queried with this function to get the jack description.
nDevice | device index. |
jindex | Which jack to return information |
KSJACK_DESCRIPTION | This structure filled in on success. |
PaError PaWasapi_ThreadPriorityBoost | ( | void ** | hTask, |
PaWasapiThreadPriority | nPriorityClass | ||
) |
Boost thread priority of calling thread (MMCSS). Use it for Blocking Interface only for thread which makes calls to Pa_WriteStream/Pa_ReadStream.
hTask | Handle to pointer to priority task. Must be used with PaWasapi_RevertThreadPriority method to revert thread priority to initial state. |
nPriorityClass | Id of thread priority of PaWasapiThreadPriority type. Specifying eThreadPriorityNone does nothing. |
PaError PaWasapi_ThreadPriorityRevert | ( | void * | hTask | ) |
Boost thread priority of calling thread (MMCSS). Use it for Blocking Interface only for thread which makes calls to Pa_WriteStream/Pa_ReadStream.
hTask | Task handle obtained by PaWasapi_BoostThreadPriority method. |