Unit Audio

From Ultibo.org
Jump to: navigation, search

Return to Unit Reference


Description


Ultibo Audio Interface unit

This unit provides both the Audio device interface and the generic USB audio device driver.

Constants



[Expand]
Audio specific constants AUDIO_*


[Expand]
Audio device types AUDIO_TYPE_*


[Expand]
Audio device states AUDIO_STATE_*


[Expand]
Audio device flags AUDIO_FLAG_*


[Expand]
Audio logging AUDIO_LOG_*


Type definitions



Audio properties

[Expand]

PAudioProperties = ^TAudioProperties;

TAudioProperties = record

Audio enumeration callback

TAudioEnumerate = function(Audio:PAudioDevice; Data:Pointer):LongWord;

Audio notification callback

TAudioNotification = function(Device:PDevice; Data:Pointer; Notification:LongWord):LongWord;

Audio device get properties

TAudioDeviceGetProperties = function(Audio:PAudioDevice; Properties:PAudioProperties):LongWord;

Audio device

[Expand]

PAudioDevice = ^TAudioDevice;

TAudioDevice = record


Public variables



Audio logging

AUDIO_DEFAULT_LOG_LEVEL:LongWord = AUDIO_LOG_LEVEL_DEBUG; Minimum level for Audio messages. Only messages with level greater than or equal to this will be printed.
AUDIO_LOG_ENABLED:Boolean;


Function declarations



Initialization functions

[Expand]
procedure AudioInit;
Description: Initialize the Audio unit and Audio device table


Audio device functions

[Expand]
function AudioDeviceGetProperties(Audio:PAudioDevice; Properties:PAudioProperties):LongWord;
Description: Get the properties for the specified Audio device


[Expand]
function AudioDeviceCreate:PAudioDevice;
Description: Create a new Audio device entry


[Expand]
function AudioDeviceCreateEx(Size:LongWord):PAudioDevice;
Description: Create a new Audio device entry


[Expand]
function AudioDeviceDestroy(Audio:PAudioDevice):LongWord;
Description: Destroy an existing Audio device entry


[Expand]
function AudioDeviceRegister(Audio:PAudioDevice):LongWord;
Description: Register a new Audio device in the Audio device table


[Expand]
function AudioDeviceDeregister(Audio:PAudioDevice):LongWord;
Description: Deregister an Audio device from the Audio device table


[Expand]
function AudioDeviceFind(AudioId:LongWord):PAudioDevice;
Description: To be documented


[Expand]
function AudioDeviceFindByName(const Name:String):PAudioDevice; inline;
Description: To be documented


[Expand]
function AudioDeviceFindByDescription(const Description:String):PAudioDevice; inline;
Description: To be documented


[Expand]
function AudioDeviceEnumerate(Callback:TAudioEnumerate; Data:Pointer):LongWord;
Description: To be documented


[Expand]
function AudioDeviceNotification(Audio:PAudioDevice; Callback:TAudioNotification; Data:Pointer; Notification,Flags:LongWord):LongWord;
Description: To be documented


Audio helper functions

[Expand]
function AudioGetCount:LongWord;
Description: Get the current Audio device count


[Expand]
function AudioDeviceGetDefault:PAudioDevice;
Description: Get the current default Audio device


[Expand]
function AudioDeviceSetDefault(Audio:PAudioDevice):LongWord;
Description: Set the current default Audio device


[Expand]
function AudioDeviceCheck(Audio:PAudioDevice):PAudioDevice;
Description: Check if the supplied Audio device is in the Audio device table


[Expand]
procedure AudioLog(Level:LongWord; Audio:PAudioDevice; const AText:String);
Description: To be documented


[Expand]
procedure AudioLogInfo(Audio:PAudioDevice; const AText:String); inline;
Description: To be documented


[Expand]
procedure AudioLogWarn(Audio:PAudioDevice; const AText:String); inline;
Description: To be documented


[Expand]
procedure AudioLogError(Audio:PAudioDevice; const AText:String); inline;
Description: To be documented


[Expand]
procedure AudioLogDebug(Audio:PAudioDevice; const AText:String); inline;
Description: To be documented


Return to Unit Reference