Mac Developer Library

Developer

IOAudioTypes.h Reference

Options
Deployment Target:

On This Page

IOAudioTypes.h Reference

Included Headers

  • <libkern/OSTypes.h>

  • <mach/message.h>

Data Types

See the Overview section above for header-level documentation.

  • The set of constants passed to IOAudioControlUserClient::getExternalMethodForIndex() when making calls from the IOAudioFamily user client code.

    Declaration

    typedef enum _IOAudioControlCalls { kIOAudioControlCallSetValue = 0, kIOAudioControlCallGetValue = 1 } IOAudioControlCalls;

    Constants

    • kIOAudioControlCallSetValue

      Used to set the value of an IOAudioControl.

    • kIOAudioControlCallGetValue

      Used to get the value of an IOAudioControl.

    Import Statement

  • The set of constants passed in the type field of IOAudioControlUserClient::registerNotificaitonPort().

    Declaration

    typedef enum _IOAudioControlNotifications { kIOAudioControlValueChangeNotification = 0, kIOAudioControlRangeChangeNotification = 1 } IOAudioControlNotifications;

    Constants

    • kIOAudioControlValueChangeNotification

      Used to request value change notifications.

    • kIOAudioControlRangeChangeNotification

      Used to request range change notifications.

    Import Statement

  • The set of constants passed to IOAudioEngineUserClient::getExternalMethodForIndex() when making calls from the IOAudioFamily user client code.

    Declaration

    typedef enum _IOAudioEngineCalls { kIOAudioEngineCallRegisterClientBuffer = 0, kIOAudioEngineCallUnregisterClientBuffer = 1, kIOAudioEngineCallGetConnectionID = 2, kIOAudioEngineCallStart = 3, kIOAudioEngineCallStop = 4, kIOAudioEngineCallGetNearestStartTime = 5 } IOAudioEngineCalls;

    Import Statement

  • Used to identify the type of memory requested by a client process to be mapped into its process space

    Declaration

    typedef enum _IOAudioEngineMemory { kIOAudioStatusBuffer = 0, kIOAudioSampleBuffer = 1, kIOAudioMixBuffer = 2, kIOAudioBytesInInputBuffer = 3, kIOAudioBytesInOutputBuffer = 4 } IOAudioEngineMemory;

    Constants

    • kIOAudioSampleBuffer

      This requests the IOAudioEngine's sample buffer

    • kIOAudioStatusBuffer

      This requests the IOAudioEngine's status buffer. It's type is IOAudioEngineStatus.

    • kIOAudioMixBuffer

      This requests the IOAudioEngine's mix buffer

    Discussion

    This is the parameter to the type field of IOMapMemory when called on an IOAudioEngine. This is only intended for use by the Audio Device API library.

    Import Statement

  • Represents the state of an IOAudioEngine

    Declaration

    typedef enum _IOAudioEngineState { kIOAudioEngineStopped = 0, kIOAudioEngineRunning = 1, kIOAudioEnginePaused = 2, kIOAudioEngineResumed = 3 } IOAudioEngineState;

    Constants

    • kIOAudioEngineRunning

      The IOAudioEngine is currently running - it is transferring data to or from the device.

    • kIOAudioEngineStopped

      The IOAudioEngine is currently stopped - no activity is occurring.

    Import Statement

  • Shared-memory structure giving audio engine status

    Declaration

    typedef struct _IOAudioEngineStatus { UInt32 fVersion; volatile UInt32 fCurrentLoopCount; volatile AbsoluteTime fLastLoopTime; volatile UInt32 fEraseHeadSampleFrame; } IOAudioEngineStatus;

    Import Statement

  • Used in the mach message for IOAudio notifications.

    Declaration

    typedef struct _IOAudioNotificationMessage { mach_msg_header_t messageHeader; UInt32 type; UInt32 ref; void *sender; } IOAudioNotificationMessage;

    Import Statement

  • A structure for holding a SMPTE time.

    Declaration

    typedef struct _IOAudioSMPTETime { SInt16 fSubframes; SInt16 fSubframeDivisor; UInt32 fCounter; UInt32 fType; UInt32 fFlags; SInt16 fHours; SInt16 fMinutes; SInt16 fSeconds; SInt16 fFrames; } IOAudioSMPTETime;

    Import Statement

  • Represents the direction of an IOAudioStream

    Declaration

    typedef enum _IOAudioStreamDirection { kIOAudioStreamDirectionOutput = 0, kIOAudioStreamDirectionInput = 1 } IOAudioStreamDirection;

    Constants

    • kIOAudioStreamDirectionOutput

      Output buffer

    • kIOAudioStreamDirectionInput

      Input buffer

    Import Statement

  • A structure for holding a SMPTE time.

    Declaration

    typedef struct _IOAudioSMPTETime { SInt16 fSubframes; SInt16 fSubframeDivisor; UInt32 fCounter; UInt32 fType; UInt32 fFlags; SInt16 fHours; SInt16 fMinutes; SInt16 fSeconds; SInt16 fFrames; } IOAudioSMPTETime;

    Import Statement

Constants

See the Overview section above for header-level documentation.

  • Declaration

    #define kIOAudioControlNumCalls 2 #define kIOAudioEngineDefaultMixBufferSampleSize sizeof(float) #define kIOAudioEngineNumCalls 6

    Constants

    • kIOAudioControlNumCalls

      The number of elements in the IOAudioControlCalls enum.

    • kIOAudioEngineDefaultMixBufferSampleSize

    • kIOAudioEngineNumCalls

      The number of elements in the IOAudioEngineCalls enum.