AudioScience HPI Version_4.10.
Data Structures | Defines | Typedefs | Enumerations | Functions

G:/asi/sw/drv/hpi/hpi.h File Reference

AudioScience Hardware Programming Interface (HPI) public API definition. More...

#include <stdlib.h>
#include <stdint.h>

Data Structures

struct  hpi_format
 Structure containing sample format information. More...
struct  hpi_async_event
 An object for containing a single async event. More...
struct  hpi_control_t
 Help structure for representing control location and type. More...

Defines

#define HPI_OS_WIN32_USER
 Define when creating a 32 bit Windows user application.
#define HPI_OS_LINUX
 Define when creating a Linux application.
#define HPI_BUILD_64BIT
 Define this when building a 64 bit application.
#define HPI_BUILD_INCLUDE_DEPRECATED
 Define this to enable deprecated functions and defines.
#define HPI_BUILD_DISABLE_DEPRECATED_TYPE_WARNINGS
 Define this to remove legacy type warnings.
#define HPIDLL_IMPORTS
 Define when building an application that links to ASIHPI32.LIB (imports HPI functions from ASIHPI32.DLL).
#define HPIDLL_EXPORTS
 Define when creating an application that uses the HPI DLL.
#define HPIDLL_STATIC
 Define when building an application that compiles in HPIFUNC.C and does not use ASIHPI32.DLL.
#define HPI_UNITS_PER_dB   100
 volumes units are 100ths of a dB
#define HPI_GAIN_OFF   (-100 * HPI_UNITS_PER_dB)
 turns volume control OFF or MUTE
#define HPI_BITMASK_ALL_CHANNELS   (0xFFFFFFFF)
 channel mask specifying all channels
#define HPI_METER_MINIMUM   (-150 * HPI_UNITS_PER_dB)
 value returned for no signal
#define HPI_PAD_CHANNEL_NAME_LEN   16
 The text string containing the station/channel combination.
#define HPI_PAD_ARTIST_LEN   64
 The text string containing the artist.
#define HPI_PAD_TITLE_LEN   64
 The text string containing the title.
#define HPI_PAD_COMMENT_LEN   256
 The text string containing the comment.
#define HPI_PAD_PROGRAM_TYPE_INVALID   0xffff
 The PTY when the tuner has not received any PTY.
#define HPI_MAX_ADAPTERS   20
 Maximum number of PCI HPI adapters.
#define HPI_MAX_STREAMS   16
 Maximum number of in or out streams per adapter.
#define HPI_MAX_ANC_BYTES_PER_FRAME   (64)
 maximum number of ancillary bytes per MPEG frame
#define HPI_MIN_NETWORK_ADAPTER_IDX   100
 Networked adapters have index >= 100.
#define HPI_OSTREAM_VELOCITY_UNITS   4096
 Velocity units.
#define HPI_OSTREAM_TIMESCALE_UNITS   10000
 OutStream timescale units.
#define HPI_OSTREAM_TIMESCALE_PASSTHROUGH   99999
 OutStream timescale passthrough - turns timescaling on in passthough mode.

Typedefs

typedef uint16_t hpi_err_t
 An HPI error code HPI_ERROR_CODES.
typedef uint32_t hpi_handle_t
 An HPI object handle.

Enumerations

enum  HPI_FORMATS {
  HPI_FORMAT_MIXER_NATIVE = 0, HPI_FORMAT_PCM8_UNSIGNED = 1, HPI_FORMAT_PCM16_SIGNED = 2, HPI_FORMAT_MPEG_L1 = 3,
  HPI_FORMAT_MPEG_L2 = 4, HPI_FORMAT_MPEG_L3 = 5, HPI_FORMAT_DOLBY_AC2 = 6, HPI_FORMAT_DOLBY_AC3 = 7,
  HPI_FORMAT_PCM16_BIGENDIAN = 8, HPI_FORMAT_AA_TAGIT1_HITS = 9, HPI_FORMAT_AA_TAGIT1_INSERTS = 10, HPI_FORMAT_PCM32_SIGNED = 11,
  HPI_FORMAT_RAW_BITSTREAM = 12, HPI_FORMAT_AA_TAGIT1_HITS_EX1 = 13, HPI_FORMAT_PCM32_FLOAT = 14, HPI_FORMAT_PCM24_SIGNED = 15,
  HPI_FORMAT_OEM1 = 16, HPI_FORMAT_OEM2 = 17, HPI_FORMAT_UNDEFINED = 0xffff
}
 

Audio format types.

More...
enum  HPI_STREAM_STATES {
  HPI_STATE_STOPPED = 1, HPI_STATE_PLAYING = 2, HPI_STATE_RECORDING = 3, HPI_STATE_DRAINED = 4,
  HPI_STATE_SINEGEN = 5, HPI_STATE_WAIT = 6
}
 

Stream States.

More...
enum  HPI_SOURCENODES {
  HPI_SOURCENODE_NONE = 100, HPI_SOURCENODE_OSTREAM = 101, HPI_SOURCENODE_LINEIN = 102, HPI_SOURCENODE_AESEBU_IN = 103,
  HPI_SOURCENODE_TUNER = 104, HPI_SOURCENODE_RF = 105, HPI_SOURCENODE_CLOCK_SOURCE = 106, HPI_SOURCENODE_RAW_BITSTREAM = 107,
  HPI_SOURCENODE_MICROPHONE = 108, HPI_SOURCENODE_COBRANET = 109, HPI_SOURCENODE_ANALOG = 110, HPI_SOURCENODE_ADAPTER = 111,
  HPI_SOURCENODE_RTP_DESTINATION = 112, HPI_SOURCENODE_INTERNAL = 113, HPI_SOURCENODE_LAST_INDEX = 113
}
 

Source node types.

More...
enum  HPI_DESTNODES {
  HPI_DESTNODE_NONE = 200, HPI_DESTNODE_ISTREAM = 201, HPI_DESTNODE_LINEOUT = 202, HPI_DESTNODE_AESEBU_OUT = 203,
  HPI_DESTNODE_RF = 204, HPI_DESTNODE_SPEAKER = 205, HPI_DESTNODE_COBRANET = 206, HPI_DESTNODE_ANALOG = 207,
  HPI_DESTNODE_RTP_SOURCE = 208, HPI_DESTNODE_LAST_INDEX = 208
}
 

Destination node types.

More...
enum  HPI_CONTROLS {
  HPI_CONTROL_GENERIC = 0, HPI_CONTROL_CONNECTION = 1, HPI_CONTROL_VOLUME = 2, HPI_CONTROL_METER = 3 ,
  HPI_CONTROL_MULTIPLEXER = 5, HPI_CONTROL_AESEBU_TRANSMITTER = 6 , HPI_CONTROL_AESEBU_RECEIVER = 7 , HPI_CONTROL_LEVEL = 8,
  HPI_CONTROL_TUNER = 9, HPI_CONTROL_VOX = 11, HPI_CONTROL_CHANNEL_MODE = 15, HPI_CONTROL_BITSTREAM = 16,
  HPI_CONTROL_SAMPLECLOCK = 17, HPI_CONTROL_MICROPHONE = 18, HPI_CONTROL_PARAMETRIC_EQ = 19 , HPI_CONTROL_COMPANDER = 20,
  HPI_CONTROL_COBRANET = 21, HPI_CONTROL_TONEDETECTOR = 22, HPI_CONTROL_SILENCEDETECTOR = 23, HPI_CONTROL_PAD = 24,
  HPI_CONTROL_SRC = 25, HPI_CONTROL_UNIVERSAL = 26, HPI_CONTROL_LAST_INDEX = 26
}
 

Mixer control types.

More...
enum  HPI_ADAPTER_PROPERTIES { ,
  HPI_ADAPTER_PROPERTY_GROUPING = 2, HPI_ADAPTER_PROPERTY_ENABLE_SSX2 = 3, HPI_ADAPTER_PROPERTY_SSX2_SETTING = 4, HPI_ADAPTER_PROPERTY_IRQ_RATE = 5,
  HPI_ADAPTER_PROPERTY_READONLYBASE = 256, HPI_ADAPTER_PROPERTY_LATENCY = 256, HPI_ADAPTER_PROPERTY_GRANULARITY = 257, HPI_ADAPTER_PROPERTY_CURCHANNELS = 258,
  HPI_ADAPTER_PROPERTY_SOFTWARE_VERSION = 259, HPI_ADAPTER_PROPERTY_MAC_ADDRESS_MSB = 260, HPI_ADAPTER_PROPERTY_MAC_ADDRESS_LSB = 261, HPI_ADAPTER_PROPERTY_EXTENDED_ADAPTER_TYPE = 262,
  HPI_ADAPTER_PROPERTY_LOGTABLEN = 263 , HPI_ADAPTER_PROPERTY_IP_ADDRESS = 265, HPI_ADAPTER_PROPERTY_BUFFER_UPDATE_COUNT = 266, HPI_ADAPTER_PROPERTY_INTERVAL = 267,
  HPI_ADAPTER_PROPERTY_CAPS1 = 268, HPI_ADAPTER_PROPERTY_CAPS2 = 269, HPI_ADAPTER_PROPERTY_SYNC_HEADER_CONNECTIONS = 270, HPI_ADAPTER_PROPERTY_SUPPORTS_SSX2 = 271,
  HPI_ADAPTER_PROPERTY_SUPPORTS_IRQ = 272, HPI_ADAPTER_PROPERTY_SUPPORTS_FW_UPDATE = 273, HPI_ADAPTER_PROPERTY_FIRMWARE_ID = 274
}
 

Adapter properties These are used in HPI_AdapterSetProperty() and HPI_AdapterGetProperty()

More...
enum  HPI_ADAPTER_MODE_CMDS { HPI_ADAPTER_MODE_SET = 0, HPI_ADAPTER_MODE_QUERY = 1 }
 

Adapter mode commands.

More...
enum  HPI_ADAPTER_MODES {
  HPI_ADAPTER_MODE_4OSTREAM = 1, HPI_ADAPTER_MODE_6OSTREAM = 2, HPI_ADAPTER_MODE_8OSTREAM = 3, HPI_ADAPTER_MODE_16OSTREAM = 4,
  HPI_ADAPTER_MODE_1OSTREAM = 5, HPI_ADAPTER_MODE_1 = 6, HPI_ADAPTER_MODE_2 = 7, HPI_ADAPTER_MODE_3 = 8,
  HPI_ADAPTER_MODE_MULTICHANNEL = 9, HPI_ADAPTER_MODE_12OSTREAM = 10, HPI_ADAPTER_MODE_9OSTREAM = 11, HPI_ADAPTER_MODE_MONO = 12,
  HPI_ADAPTER_MODE_LOW_LATENCY = 13
}
 

Adapter Modes These are used by HPI_AdapterSetModeEx()

More...
enum  HPI_MPEG_ANC_MODES { HPI_MPEG_ANC_HASENERGY = 0, HPI_MPEG_ANC_RAW = 1 }
 

MPEG Ancillary Data modes.

More...
enum  HPI_ISTREAM_MPEG_ANC_ALIGNS { HPI_MPEG_ANC_ALIGN_LEFT = 0, HPI_MPEG_ANC_ALIGN_RIGHT = 1 }
 

Ancillary Data Alignment.

More...
enum  HPI_MPEG_MODES { HPI_MPEG_MODE_DEFAULT = 0, HPI_MPEG_MODE_STEREO = 1, HPI_MPEG_MODE_JOINTSTEREO = 2, HPI_MPEG_MODE_DUALCHANNEL = 3 }
 

MPEG modes MPEG modes - can be used optionally for HPI_FormatCreate() parameter dwAttributes.

More...
enum  HPI_MIXER_STORE_COMMAND {
  HPI_MIXER_STORE_SAVE = 1, HPI_MIXER_STORE_RESTORE = 2, HPI_MIXER_STORE_DELETE = 3, HPI_MIXER_STORE_ENABLE = 4,
  HPI_MIXER_STORE_DISABLE = 5, HPI_MIXER_STORE_SAVE_SINGLE = 6
}
 

Commands used by HPI_MixerStore()

More...
enum  HPI_SWITCH_STATES { HPI_SWITCH_OFF = 0, HPI_SWITCH_ON = 1 }
 

Used by mixer plugin enable functions.

More...
enum  HPI_VOLUME_AUTOFADES { HPI_VOLUME_AUTOFADE_LOG = 2, HPI_VOLUME_AUTOFADE_LINEAR = 3 }
 

autofade profiles

More...
enum  HPI_AESEBU_FORMATS { HPI_AESEBU_FORMAT_AESEBU = 1, HPI_AESEBU_FORMAT_SPDIF = 2 }
 

The physical encoding format of the AESEBU I/O.

More...
enum  HPI_AESEBU_ERRORS {
  HPI_AESEBU_ERROR_NOT_LOCKED = 0x01, HPI_AESEBU_ERROR_POOR_QUALITY = 0x02, HPI_AESEBU_ERROR_PARITY_ERROR = 0x04, HPI_AESEBU_ERROR_BIPHASE_VIOLATION = 0x08,
  HPI_AESEBU_ERROR_VALIDITY = 0x10, HPI_AESEBU_ERROR_CRC = 0x20
}
 

AES/EBU error status bits.

More...
enum  eHPI_RDS_type { HPI_RDS_DATATYPE_RDS = 0, HPI_RDS_DATATYPE_RBDS = 1 }
 

Data types for PTY string translation.

More...
enum  HPI_TUNER_BAND {
  HPI_TUNER_BAND_AM = 1, HPI_TUNER_BAND_FM = 2, HPI_TUNER_BAND_TV_NTSC_M = 3 , HPI_TUNER_BAND_FM_STEREO = 4,
  HPI_TUNER_BAND_AUX = 5, HPI_TUNER_BAND_TV_PAL_BG = 6, HPI_TUNER_BAND_TV_PAL_I = 7, HPI_TUNER_BAND_TV_PAL_DK = 8,
  HPI_TUNER_BAND_TV_SECAM_L = 9, HPI_TUNER_BAND_LAST = 9
}
 

Tuner bands.

More...
enum  HPI_TUNER_MODES { HPI_TUNER_MODE_RSS = 1, HPI_TUNER_MODE_RDS = 2 }
 

Tuner mode attributes.

More...
enum  HPI_TUNER_MODE_VALUES {
  HPI_TUNER_MODE_RSS_DISABLE = 0, HPI_TUNER_MODE_RSS_ENABLE = 1, HPI_TUNER_MODE_RDS_DISABLE = 0, HPI_TUNER_MODE_RDS_RDS = 1,
  HPI_TUNER_MODE_RDS_RBDS = 2
}
 

Tuner mode attribute values.

More...
enum  HPI_TUNER_STATUS_BITS {
  HPI_TUNER_VIDEO_COLOR_PRESENT = 0x0001, HPI_TUNER_VIDEO_IS_60HZ = 0x0020, HPI_TUNER_VIDEO_HORZ_SYNC_MISSING = 0x0040, HPI_TUNER_VIDEO_STATUS_VALID = 0x0100,
  HPI_TUNER_DIGITAL = 0x0200, HPI_TUNER_MULTIPROGRAM = 0x0400, HPI_TUNER_PLL_LOCKED = 0x1000, HPI_TUNER_FM_STEREO = 0x2000
}
 

Tuner Status Bits.

More...
enum  HPI_CHANNEL_MODES {
  HPI_CHANNEL_MODE_NORMAL = 1, HPI_CHANNEL_MODE_SWAP = 2, HPI_CHANNEL_MODE_LEFT_TO_STEREO = 3, HPI_CHANNEL_MODE_RIGHT_TO_STEREO = 4,
  HPI_CHANNEL_MODE_STEREO_TO_LEFT = 5, HPI_CHANNEL_MODE_STEREO_TO_RIGHT = 6
}
 

Channel Modes Used for HPI_ChannelModeSet/Get()

More...
enum  HPI_SAMPLECLOCK_SOURCES {
  HPI_SAMPLECLOCK_SOURCE_LOCAL = 1, HPI_SAMPLECLOCK_SOURCE_AESEBU_SYNC = 2, HPI_SAMPLECLOCK_SOURCE_WORD = 3, HPI_SAMPLECLOCK_SOURCE_WORD_HEADER = 4,
  HPI_SAMPLECLOCK_SOURCE_SMPTE = 5, HPI_SAMPLECLOCK_SOURCE_AESEBU_INPUT = 6, HPI_SAMPLECLOCK_SOURCE_NETWORK = 8, HPI_SAMPLECLOCK_SOURCE_PREV_MODULE = 10,
  HPI_SAMPLECLOCK_SOURCE_LAST = 10
}
 

SampleClock source values.

More...
enum  HPI_FILTER_TYPE {
  HPI_FILTER_TYPE_BYPASS = 0, HPI_FILTER_TYPE_LOWSHELF = 1, HPI_FILTER_TYPE_HIGHSHELF = 2, HPI_FILTER_TYPE_EQ_BAND = 3,
  HPI_FILTER_TYPE_LOWPASS = 4, HPI_FILTER_TYPE_HIGHPASS = 5, HPI_FILTER_TYPE_BANDPASS = 6, HPI_FILTER_TYPE_BANDSTOP = 7
}
 

Equalizer filter types.

More...
enum  ASYNC_EVENT_SOURCES { HPI_ASYNC_EVENT_GPIO = 1, HPI_ASYNC_EVENT_SILENCE = 2, HPI_ASYNC_EVENT_TONE = 3 }
 

Async Event sources.

More...
enum  HPI_ERROR_CODES {
  HPI_ERROR_INVALID_TYPE = 100, HPI_ERROR_INVALID_OBJ = 101, HPI_ERROR_INVALID_FUNC = 102, HPI_ERROR_INVALID_OBJ_INDEX = 103,
  HPI_ERROR_OBJ_NOT_OPEN = 104, HPI_ERROR_OBJ_ALREADY_OPEN = 105, HPI_ERROR_INVALID_RESOURCE = 106, HPI_ERROR_INVALID_RESPONSE = 108,
  HPI_ERROR_PROCESSING_MESSAGE = 109, HPI_ERROR_NETWORK_TIMEOUT = 110 , HPI_ERROR_UNIMPLEMENTED = 112, HPI_ERROR_NETWORK_TOO_MANY_CLIENTS = 113,
  HPI_ERROR_RESPONSE_BUFFER_TOO_SMALL = 114, HPI_ERROR_RESPONSE_MISMATCH = 115, HPI_ERROR_CONTROL_CACHING = 116, HPI_ERROR_MESSAGE_BUFFER_TOO_SMALL = 117,
  HPI_ERROR_BAD_ADAPTER = 201, HPI_ERROR_BAD_ADAPTER_NUMBER = 202, HPI_ERROR_DUPLICATE_ADAPTER_NUMBER = 203, HPI_ERROR_DSP_BOOTLOAD = 204,
  HPI_ERROR_DSP_FILE_NOT_FOUND = 206, HPI_ERROR_DSP_HARDWARE = 207, HPI_ERROR_MEMORY_ALLOC = 208, HPI_ERROR_PLD_LOAD = 209,
  HPI_ERROR_DSP_FILE_FORMAT = 210, HPI_ERROR_DSP_FILE_ACCESS_DENIED = 211, HPI_ERROR_DSP_FILE_NO_HEADER = 212, HPI_ERROR_DSP_SECTION_NOT_FOUND = 214,
  HPI_ERROR_DSP_FILE_OTHER_ERROR = 215, HPI_ERROR_DSP_FILE_SHARING_VIOLATION = 216, HPI_ERROR_DSP_FILE_NULL_HEADER = 217, HPI_ERROR_BAD_CHECKSUM = 221 ,
  HPI_ERROR_RESERVED_1 = 290, HPI_ERROR_INVALID_FORMAT = 301, HPI_ERROR_INVALID_SAMPLERATE = 302, HPI_ERROR_INVALID_CHANNELS = 303,
  HPI_ERROR_INVALID_BITRATE = 304, HPI_ERROR_INVALID_DATASIZE = 305, HPI_ERROR_INVALID_DATA_POINTER = 308, HPI_ERROR_INVALID_PACKET_ORDER = 309,
  HPI_ERROR_INVALID_OPERATION = 310, HPI_ERROR_INCOMPATIBLE_SAMPLERATE = 311, HPI_ERROR_BAD_ADAPTER_MODE = 312, HPI_ERROR_TOO_MANY_CAPABILITY_CHANGE_ATTEMPTS = 313,
  HPI_ERROR_NO_INTERADAPTER_GROUPS = 314, HPI_ERROR_NO_INTERDSP_GROUPS = 315, HPI_ERROR_WAIT_CANCELLED = 316, HPI_ERROR_INVALID_STRING = 317,
  HPI_ERROR_INVALID_NODE = 400, HPI_ERROR_INVALID_CONTROL = 401, HPI_ERROR_INVALID_CONTROL_VALUE = 402, HPI_ERROR_INVALID_CONTROL_ATTRIBUTE = 403,
  HPI_ERROR_CONTROL_DISABLED = 404, HPI_ERROR_CONTROL_I2C_MISSING_ACK = 405 , HPI_ERROR_CONTROL_NOT_READY = 407, HPI_ERROR_NVMEM_BUSY = 450 ,
  HPI_ERROR_I2C_BAD_ADR = 460, HPI_ERROR_ENTITY_TYPE_MISMATCH = 470, HPI_ERROR_ENTITY_ITEM_COUNT = 471, HPI_ERROR_ENTITY_TYPE_INVALID = 472,
  HPI_ERROR_ENTITY_ROLE_INVALID = 473, HPI_ERROR_ENTITY_SIZE_MISMATCH = 474, HPI_ERROR_CUSTOM = 600, HPI_ERROR_MUTEX_TIMEOUT = 700,
  HPI_ERROR_BACKEND_BASE = 900, HPI_ERROR_DSP_COMMUNICATION = 900
}
 

HPI Error codes.

More...
enum  e_entity_type { ,
  entity_type_sequence = 1, entity_type_reference = 2, entity_type_int = 3, entity_type_float = 4,
  entity_type_double = 5, entity_type_cstring = 6, entity_type_octet = 7, entity_type_ip4_address = 8,
  entity_type_ip6_address = 9, entity_type_mac_address = 10, entity_type_boolean = 11
}
 

Type tags used in hpi_entity structures.

More...
enum  e_entity_role {
  entity_role_null = 0, entity_role_value = 1, entity_role_classname = 2, entity_role_units = 3,
  entity_role_flags = 4, entity_role_range = 5, entity_role_mapping = 6, entity_role_enum = 7 ,
  entity_role_value_constraint = 11, entity_role_parameter_port = 12, entity_role_block = 13, entity_role_label = 14,
  entity_role_key = 15, entity_role_value_label = 16
}
 

Role tags used in hpi_entity structures.

More...
enum  e_entity_flag_values { entity_flag_writeable = 1, entity_flag_readable = 2, entity_flag_volatile = 4, entity_flag_volatile_info = 8 }
 

Flag values used with entity_role_flags.

More...

Functions

hpi_err_t HPI_StreamEstimateBufferSize (struct hpi_format *pF, uint32_t dwHostPollingRateInMilliSeconds, uint32_t *dwRecommendedBufferSize)
 Given a format and rate that the buffer is processed, return the correct buffer size to support ping-pong buffering of audio.
hpi_err_t HPI_Entity_FindNext (struct hpi_entity *container_entity, enum e_entity_type type, enum e_entity_role role, int recursive_flag, struct hpi_entity **current_match)
 Search for an entity with the given _type_ and _role_ in a container entity.
hpi_err_t HPI_Entity_CopyValueFrom (struct hpi_entity *entity, enum e_entity_type type, size_t item_count, void *value_dst_p, size_t value_size)
 Copies item_count items from the Entity's value array into *value_dst_p.
hpi_err_t HPI_Entity_Unpack (struct hpi_entity *entity, enum e_entity_type *type, size_t *items, enum e_entity_role *role, void **value)
 Extracts information from an entity into the specified locations.
const char * HPI_Entity_GetTypeName (struct hpi_entity *entity)
 Return the typename of the entity.
const char * HPI_Entity_GetRoleName (struct hpi_entity *entity)
hpi_err_t HPI_Entity_AllocAndPack (const enum e_entity_type type, const size_t item_count, const enum e_entity_role role, const void *value, const size_t value_size, struct hpi_entity **entity)
 Allocate and initialize an entity with the provided parameters.
void HPI_Entity_Free (struct hpi_entity *entity)
 Free an hpi_entity allocated by HPI_Universal_* and HPI_Entity_* functions.
hpi_err_t HPI_Object_UriToHandle (const char *uri, hpi_handle_t *h)
 Get an object handle given the object's URI.
hpi_err_t HPI_Object_GetInfoEntity (hpi_handle_t h, struct hpi_entity **info)
 Get the complete information entity for an object addressed by handle.
hpi_err_t HPI_Object_GetValueEntity (hpi_handle_t h, struct hpi_entity **value)
 Get the value entity of an object addressed by its handle.
hpi_err_t HPI_Object_SetValueEntity (hpi_handle_t h, const struct hpi_entity *value)
 Set the value entity of an object addressed by its handle.
hpi_err_t HPI_Object_GetValue (hpi_handle_t h, enum e_entity_type type, size_t count, void *value, size_t value_size)
 Retrieve an object's value.
hpi_err_t HPI_Object_SetValue (hpi_handle_t h, enum e_entity_type type, size_t count, const void *value, size_t value_size)
 Set an object's value.
hpi_err_t HPI_Object_GetRole (hpi_handle_t hObject, enum e_entity_role *r)
 Get the object role.
hpi_err_t HPI_Object_GetInfo (hpi_handle_t hObject, enum e_entity_type type, enum e_entity_role role, void *value, size_t *value_size, size_t *value_count)
 Get information about an object.
hpi_err_t HPI_Object_BlockParameters (hpi_handle_t hMixer, hpi_handle_t block, hpi_handle_t *parameters, size_t *param_count)
 Given a block handle, return a list of parameter object handles.
hpi_err_t HPI_Object_BlockHandle (hpi_handle_t hMixer, uint16_t wSrcNodeType, uint16_t wSrcNodeTypeIndex, uint16_t wDstNodeType, uint16_t wDstNodeTypeIndex, const char *block_name, hpi_handle_t *phBlock)
 Given block location information and name, fetch an object handle for the block.
hpi_err_t HPI_Object_ParameterHandle (hpi_handle_t hMixer, hpi_handle_t hBlock, const char *parameter_name, hpi_handle_t *phParameter)
 Given a block handle and parameter name, fetch an object handle for the specified parameter.
void HPI_MemFree (void *mem)
 Free memory allocated by a previous HPI call.
hpi_hsubsys_t * HPI_SubSysCreate (void)
 HPI Subsystem create.
void HPI_SubSysFree (const hpi_hsubsys_t *phSubSys)
 HPI Subsystem free.
hpi_err_t HPI_SubSysGetVersionEx (const hpi_hsubsys_t *phSubSys, uint32_t *pdwVersionEx)
 Extended HPI_SubSysGetVersion() that returns Major, Minor and Build versions Returns extended HPI subsystem version that was embedded into the HPI module at compile time.
hpi_err_t HPI_SubSysGetNumAdapters (const hpi_hsubsys_t *phSubSys, int *pnNumAdapters)
 Return the total number of adapters including networked adapters.
hpi_err_t HPI_SubSysGetAdapter (const hpi_hsubsys_t *phSubSys, int nIterator, uint32_t *pdwAdapterIndex, uint16_t *pwAdapterType)
 Extended version of HPI_SubSysFindAdapters() that iterates through all adapters present, returning adapter index and type for each one.
hpi_err_t HPI_SubSysSetHostNetworkInterface (const hpi_hsubsys_t *phSubSys, const char *szInterface)
 Sets the HPI networking subsystem to use the network interface specified.
hpi_err_t HPI_AdapterOpen (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex)
 Opens an adapter for use.
hpi_err_t HPI_AdapterClose (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex)
 Closes the adapter associated with the wAdapterIndex.
hpi_err_t HPI_AdapterGetInfo (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t *pwNumOutStreams, uint16_t *pwNumInStreams, uint16_t *pwVersion, uint32_t *pdwSerialNumber, uint16_t *pwAdapterType)
 Obtains information about the specified adapter, including the number of output streams and number of input streams, version, serial number and it's type.
hpi_err_t HPI_AdapterGetModuleByIndex (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t wModuleIndex, uint16_t *pwNumOutputs, uint16_t *pwNumInputs, uint16_t *pwVersion, uint32_t *pdwSerialNumber, uint16_t *pwModuleType, hpi_handle_t *phModule)
 Obtains information about the specified module on an adapter, including the number of outputs and number of inputs, version, serial number and type.
hpi_err_t HPI_AdapterSetMode (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint32_t dwAdapterMode)
 Sets the operating mode of an adapter.
hpi_err_t HPI_AdapterSetModeEx (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint32_t dwAdapterMode, uint16_t wQueryOrSet)
 Adapter set mode extended.
hpi_err_t HPI_AdapterGetMode (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint32_t *pdwAdapterMode)
 Read the current adapter mode setting.
hpi_err_t HPI_AdapterGetAssert2 (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t *pAssertCount, char *pszAssert, uint32_t *pParam1, uint32_t *pParam2, uint32_t *pDspStringAddr, uint16_t *pProcessorId)
hpi_err_t HPI_AdapterTestAssert (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t wAssertId)
 This function tests that asserts are working correctly on the selected adapter.
hpi_err_t HPI_AdapterSetProperty (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t wProperty, uint16_t wParamter1, uint16_t wParamter2)
 Set an adapter property to a value.
hpi_err_t HPI_AdapterGetProperty (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t wProperty, uint16_t *pwParamter1, uint16_t *pwParamter2)
 Gets the value of an adapter property.
hpi_err_t HPI_NvMemoryOpen (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, hpi_handle_t *phNvMemory, uint16_t *pwSizeInBytes)
 Opens the non-volatile memory on a particular adapter for reading and writing.
hpi_err_t HPI_NvMemoryReadByte (const hpi_hsubsys_t *phSubSys, hpi_handle_t hNvMemory, uint16_t wIndex, uint16_t *pwData)
 Reads a byte from an adapters non-volatile memory.
hpi_err_t HPI_NvMemoryWriteByte (const hpi_hsubsys_t *phSubSys, hpi_handle_t hNvMemory, uint16_t wIndex, uint16_t wData)
 Writes a byte to an adapters non-volatile memory.
hpi_err_t HPI_GpioOpen (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, hpi_handle_t *phGpio, uint16_t *pwNumberInputBits, uint16_t *pwNumberOutputBits)
 Opens the GPIO on a particular adapter for reading and writing.
hpi_err_t HPI_GpioReadBit (const hpi_hsubsys_t *phSubSys, hpi_handle_t hGpio, uint16_t wBitIndex, uint16_t *pwBitData)
 Read a particular bit from an adapter's GPIO input port.
hpi_err_t HPI_GpioReadAllBits (const hpi_hsubsys_t *phSubSys, hpi_handle_t hGpio, uint16_t awAllBitData[4])
 Read all bits from an adapter's GPIO input ports.
hpi_err_t HPI_GpioWriteBit (const hpi_hsubsys_t *phSubSys, hpi_handle_t hGpio, uint16_t wBitIndex, uint16_t wBitData)
 Write a particular bit to an adapter's GPIO output port.
hpi_err_t HPI_GpioWriteStatus (const hpi_hsubsys_t *phSubSys, hpi_handle_t hGpio, uint16_t awAllBitData[4])
 Read back the current status of all GPIO outputs on an adapter.
hpi_err_t HPI_OutStreamOpen (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t wOutStreamIndex, hpi_handle_t *phOutStream)
 Open and initializes an output stream.
hpi_err_t HPI_OutStreamClose (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream)
 Closes an output stream and deallocates host buffers if they are being used.
hpi_err_t HPI_OutStreamGetInfoEx (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, uint16_t *pwState, uint32_t *pdwBufferSize, uint32_t *pdwDataToPlay, uint32_t *pdwSamplesPlayed, uint32_t *pdwAuxiliaryDataToPlay)
 Get information about attributes and state of output stream.
hpi_err_t HPI_OutStreamWriteBuf (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, const uint8_t *pbWriteBuf, uint32_t dwBytesToWrite, const struct hpi_format *pFormat)
 Writes a block of audio data to the specified output stream.
hpi_err_t HPI_OutStreamStart (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream)
 Starts an output stream playing audio data.
hpi_err_t HPI_OutStreamWaitStart (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream)
 Sets an output stream to WAIT state, ready for inter-card syncing.
hpi_err_t HPI_OutStreamStop (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream)
 Stops an output stream playing audio data.
hpi_err_t HPI_OutStreamReset (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream)
 Clears the audio data buffer of an output stream.
hpi_err_t HPI_OutStreamQueryFormat (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, struct hpi_format *pFormat)
 Queries an OutStream to see whether it supports a certain audio format, described in pFormat.
hpi_err_t HPI_OutStreamSetFormat (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, struct hpi_format *pFormat)
 Sets an OutStream to a certain audio format, described in pFormat.
hpi_err_t HPI_OutStreamSetVelocity (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, short nVelocity)
 Sets the playback velocity for scrubbing.
hpi_err_t HPI_OutStreamAncillaryReset (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, uint16_t wMode)
 Resets MPEG ancillary data extraction.
hpi_err_t HPI_OutStreamAncillaryGetInfo (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, uint32_t *pdwFramesAvailable)
 Returns information about the Ancillary stream.
hpi_err_t HPI_OutStreamAncillaryRead (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, struct hpi_anc_frame *pAncFrameBuffer, uint32_t dwAncFrameBufferSizeInBytes, uint32_t dwNumberOfAncillaryFramesToRead)
 Reads frames of ancillary data from a stream's ancillary data buffer to pdwBuffer.
hpi_err_t HPI_OutStreamSetTimeScale (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, uint32_t dwTimeScaleX10000)
 Sets the playback timescale with pitch and content preservation.
hpi_err_t HPI_OutStreamHostBufferAllocate (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, uint32_t dwSizeInBytes)
 Allocates a buffer inside the driver for bus mastering transfers.
hpi_err_t HPI_OutStreamHostBufferFree (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream)
 Free any buffers allocated by HPI_OutStreamHostBufferAllocate().
hpi_err_t HPI_OutStreamGroupAdd (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, hpi_handle_t hStream)
 This function adds a stream to a group of streams.
hpi_err_t HPI_OutStreamGroupGetMap (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, uint32_t *pdwOutStreamMap, uint32_t *pdwInStreamMap)
 This function returns information about the streams that form a group.
hpi_err_t HPI_OutStreamGroupReset (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream)
 Resets stream grouping information for a given out stream.
hpi_err_t HPI_OutStreamWait (const hpi_hsubsys_t *phSubSys, hpi_handle_t hOutStream, uint32_t dwThresholdBytesToPlay)
 Returns when the output stream hits the threshold.
hpi_err_t HPI_InStreamOpen (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t wInStreamIndex, hpi_handle_t *phInStream)
 Open and initializes an input stream.
hpi_err_t HPI_InStreamClose (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream)
 Closes an input stream.
hpi_err_t HPI_InStreamQueryFormat (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, const struct hpi_format *pFormat)
 Queries an input stream to see whether it supports a certain audio format, described in pFormat.
hpi_err_t HPI_InStreamSetFormat (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, const struct hpi_format *pFormat)
 Sets the recording format for an input stream.
hpi_err_t HPI_InStreamReadBuf (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, uint8_t *pbReadBuf, uint32_t dwBytesToRead)
 Read data from an InStream into a buffer Reads dwBytesToRead bytes of audio data from the specified InStream into a memory buffer pointed to by pbData.
hpi_err_t HPI_InStreamStart (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream)
 Starts an input stream recording audio data.
hpi_err_t HPI_InStreamWaitStart (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream)
 Get a stream ready for sync'd start across multiple adapters.
hpi_err_t HPI_InStreamStop (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream)
 Stops an input stream recording audio data.
hpi_err_t HPI_InStreamReset (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream)
 Clears the audio data buffer of an input stream.
hpi_err_t HPI_InStreamGetInfoEx (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, uint16_t *pwState, uint32_t *pdwBufferSize, uint32_t *pdwDataRecorded, uint32_t *pdwSamplesRecorded, uint32_t *pdwAuxiliaryDataRecorded)
 Returns extended information about the input stream.
hpi_err_t HPI_InStreamAncillaryReset (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, uint16_t wBytesPerFrame, uint16_t wMode, uint16_t wAlignment, uint16_t wIdleBit)
 Initializes the MPEG Layer II / III Ancillary data channel.
hpi_err_t HPI_InStreamAncillaryGetInfo (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, uint32_t *pdwFrameSpace)
 Returns information about the ancillary data stream.
hpi_err_t HPI_InStreamAncillaryWrite (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, const struct hpi_anc_frame *pAncFrameBuffer, uint32_t dwAncFrameBufferSizeInBytes, uint32_t dwNumberOfAncillaryFramesToWrite)
 Writes frames to the stream's ancillary data buffer.
hpi_err_t HPI_InStreamHostBufferAllocate (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, uint32_t dwSizeInBytes)
 Allocates a buffer on the host PC for bus mastering transfers.
hpi_err_t HPI_InStreamHostBufferFree (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream)
 Free any buffers allocated by HPI_InStreamHostBufferAllocate.
hpi_err_t HPI_InStreamGroupAdd (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, hpi_handle_t hStream)
 This function adds a stream to a group of streams.
hpi_err_t HPI_InStreamGroupGetMap (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, uint32_t *pdwOutStreamMap, uint32_t *pdwInStreamMap)
 This function returns information about the streams that form a group.
hpi_err_t HPI_InStreamGroupReset (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream)
 Resets stream grouping information for a given InStream.
hpi_err_t HPI_InStreamWait (const hpi_hsubsys_t *phSubSys, hpi_handle_t hInStream, uint32_t dwThresholdBytesRecorded)
 Returns when the input stream hits the threshold.
hpi_err_t HPI_MixerOpen (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, hpi_handle_t *phMixer)
 Opens and initializes an adapters mixer.
hpi_err_t HPI_MixerClose (const hpi_hsubsys_t *phSubSys, hpi_handle_t hMixer)
 Closes a mixer.
hpi_err_t HPI_MixerGetControl (const hpi_hsubsys_t *phSubSys, hpi_handle_t hMixer, uint16_t wSrcNodeType, uint16_t wSrcNodeTypeIndex, uint16_t wDstNodeType, uint16_t wDstNodeTypeIndex, uint16_t wControlType, hpi_handle_t *phControl)
 Gets a mixer control.
hpi_err_t HPI_MixerGetControlByIndex (const hpi_hsubsys_t *phSubSys, hpi_handle_t hMixer, uint16_t wControlIndex, uint16_t *pwSrcNodeType, uint16_t *pwSrcNodeIndex, uint16_t *pwDstNodeType, uint16_t *pwDstNodeIndex, uint16_t *pwControlType, hpi_handle_t *phControl)
 Get the location and type of a mixer control by index.
hpi_err_t HPI_MixerStore (const hpi_hsubsys_t *phSubSys, hpi_handle_t hMixer, enum HPI_MIXER_STORE_COMMAND Command, uint16_t wIndex)
 Execute a command on the Mixer Control store.
hpi_err_t HPI_VolumeSetGain (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anGain0_01dB[HPI_MAX_CHANNELS])
 Set the gain of a volume control.
hpi_err_t HPI_VolumeGetGain (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anGain0_01dB_out[HPI_MAX_CHANNELS])
 Gets the current gain of a volume control.
hpi_err_t HPI_VolumeSetMute (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t mute)
 Set the mute of a volume control.
hpi_err_t HPI_VolumeGetMute (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *mute)
 Gets the current mute setting of a volume control.
hpi_err_t HPI_VolumeQueryRange (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short *nMinGain_01dB, short *nMaxGain_01dB, short *nStepGain_01dB)
 Query the range of a volume or level control.
hpi_err_t HPI_Volume_QueryChannels (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hControl, uint32_t *pChannels)
 Get the number of channels supported by this volume control.
hpi_err_t HPI_VolumeAutoFade (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anStopGain0_01dB[HPI_MAX_CHANNELS], uint32_t wDurationMs)
hpi_err_t HPI_VolumeAutoFadeProfile (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anStopGain0_01dB[HPI_MAX_CHANNELS], uint32_t dwDurationMs, uint16_t dwProfile)
 Starts an automatic ramp of the volume control from the current gain setting to the specified setting over the specified duration (in milliseconds).
hpi_err_t HPI_Volume_QueryAutoFadeProfile (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hControl, const uint32_t i, uint16_t *wProfile)
 Enumerate audiofade profiles supported by this controls (may be none).
hpi_err_t HPI_LevelQueryRange (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short *nMinGain_01dB, short *nMaxGain_01dB, short *nStepGain_01dB)
 Query the allowed values of a level control.
hpi_err_t HPI_LevelSetGain (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anGain0_01dB[HPI_MAX_CHANNELS])
 Sets the value of a level control.
hpi_err_t HPI_LevelGetGain (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anGain0_01dB_out[HPI_MAX_CHANNELS])
 Gets the value of a level control.
hpi_err_t HPI_Meter_QueryChannels (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hMeter, uint32_t *pChannels)
 Get the number of channels supported by this meter.
hpi_err_t HPI_MeterGetPeak (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anPeak0_01dB_out[HPI_MAX_CHANNELS])
 Get the meter peak reading.
hpi_err_t HPI_MeterGetRms (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anPeak0_01dB_out[HPI_MAX_CHANNELS])
 Get the meter RMS reading in 100ths of a dB.
hpi_err_t HPI_MeterSetPeakBallistics (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t nAttack, uint16_t nDecay)
 Set the ballistics of the Peak part of a meter.
hpi_err_t HPI_MeterSetRmsBallistics (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t nAttack, uint16_t nDecay)
 Set the ballistics of the RMS part of a meter.
hpi_err_t HPI_MeterGetPeakBallistics (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *nAttack, uint16_t *nDecay)
 Get the ballistics settings of the Peak part of a meter.
hpi_err_t HPI_MeterGetRmsBallistics (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *nAttack, uint16_t *nDecay)
 Get the ballistics settings of the RMS part of a meter.
hpi_err_t HPI_ChannelMode_QueryMode (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hMode, const uint32_t dwIndex, uint16_t *pwMode)
 Query the available channel modes for this control Iterate dwIndex until an error is returned to get allowed values for channel mode in *pwMode.
hpi_err_t HPI_ChannelModeSet (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wMode)
 Set the channel mode.
hpi_err_t HPI_ChannelModeGet (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *wMode)
 Get the current channel mode.
hpi_err_t HPI_Tuner_QueryBand (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hTuner, const uint32_t dwIndex, uint16_t *pwBand)
 Query tuner for supported bands.
hpi_err_t HPI_Tuner_SetBand (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wBand)
 Set the band that the tuner recieves.
hpi_err_t HPI_Tuner_GetBand (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwBand)
 Get the current tuner band.
hpi_err_t HPI_Tuner_QueryFrequency (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hTuner, const uint32_t dwIndex, const uint16_t band, uint32_t *pdwFreq)
 Query tuner band for supported frequency range and steps Calling with dwIndex=0,1,2 returns frequency minimum, maximum and step respectively (in kHz), for the specified band.
hpi_err_t HPI_Tuner_SetFrequency (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t wFreqInkHz)
 Set the tuner frequency.
hpi_err_t HPI_Tuner_GetFrequency (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pwFreqInkHz)
 Get the current tuner frequency.
hpi_err_t HPI_Tuner_GetRFLevel (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short *pwLevel)
 Get the RF level of a tuner input in millibel microvolts.
hpi_err_t HPI_Tuner_GetRawRFLevel (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short *pwLevel)
 Get the RF raw level of a tuner.
hpi_err_t HPI_Tuner_QueryGain (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hTuner, const uint32_t dwIndex, uint16_t *pwGain)
 Query possible settings of tuner gain control Iterate dwIndex until an error is returned to get the list of gains supported by this tuner.
hpi_err_t HPI_Tuner_SetGain (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short nGain)
 Set the RF attenuator gain of the tuner front end.
hpi_err_t HPI_Tuner_GetGain (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short *pnGain)
 Get the current tuner gain.
hpi_err_t HPI_Tuner_GetStatus (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwStatusMask, uint16_t *pwStatus)
 Get the status of various Boolean attributes of a tuner control.
hpi_err_t HPI_Tuner_SetMode (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t nMode, uint32_t nValue)
 This function turns off the RSS (FM FR level reading) capability for the specified tuner.
hpi_err_t HPI_Tuner_GetMode (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t nMode, uint32_t *pnValue)
 Get the current tuner mode.
hpi_err_t HPI_Tuner_GetRDS (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, char *pRdsData)
 Get tuner RDS data.
hpi_err_t HPI_Tuner_QueryDeemphasis (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hTuner, const uint32_t dwIndex, const uint16_t band, uint32_t *pdwDeemphasis)
 Query tuner band for supported deemphasis settings.
hpi_err_t HPI_Tuner_SetDeemphasis (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwDeemphasis)
 Set the audio de-emphasis.
hpi_err_t HPI_Tuner_GetDeemphasis (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwDeemphasis)
 Get the audio de-emphasis setting.
hpi_err_t HPI_Tuner_QueryProgram (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hTuner, uint32_t *pbitmapProgram)
 Get bitmap of programmes supported by this tuner.
hpi_err_t HPI_Tuner_SetProgram (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwProgram)
 Sets the tuner program.
hpi_err_t HPI_Tuner_GetProgram (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwProgram)
 Gets the tuner program.
hpi_err_t HPI_Tuner_GetHdRadioDspVersion (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, char *pszDspVersion, const uint32_t dwStringSize)
 Gets the DSP firmware verison of an HD Radio tuner.
hpi_err_t HPI_Tuner_GetHdRadioSdkVersion (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, char *pszSdkVersion, const uint32_t dwStringSize)
 Gets the SDK firmware verison of an HD Radio tuner.
hpi_err_t HPI_Tuner_GetHdRadioSignalQuality (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwQuality)
 Get the digital signal quality from an HDRadio tuner.
hpi_err_t HPI_Tuner_GetHdRadioSignalBlend (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwBlend)
 Get the signal blend from an HDRadio tuner.
hpi_err_t HPI_Tuner_SetHdRadioSignalBlend (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, const uint32_t dwBlend)
 Set the signal blend from an HDRadio tuner.
hpi_err_t HPI_PAD_GetChannelName (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, char *pszString, const uint32_t dwStringLength)
 Get tuner's PAD channel name.
hpi_err_t HPI_PAD_GetArtist (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, char *pszString, const uint32_t dwStringLength)
 Get tuner's PAD artist information.
hpi_err_t HPI_PAD_GetTitle (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, char *pszString, const uint32_t dwStringLength)
 Get tuner's PAD title information.
hpi_err_t HPI_PAD_GetComment (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, char *pszString, const uint32_t dwStringLength)
 Get tuner's PAD comment information.
hpi_err_t HPI_PAD_GetProgramType (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwPTY)
 Get tuner's PAD program type (PTY).
hpi_err_t HPI_PAD_GetRdsPI (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwPI)
 Get tuner's PAD RDS program identification (PI).
hpi_err_t HPI_PAD_GetProgramTypeString (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, const uint32_t dwDataType, const uint32_t nPTY, char *pszString, const uint32_t dwStringLength)
 Translate tuner's PTY into a string.
hpi_err_t HPI_AESEBU_Receiver_QueryFormat (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hAesRx, const uint32_t dwIndex, uint16_t *pwFormat)
 query formats supported by this aesebu receiver Iterate dwIndex until an error is returned to get allowed values for aesebu format in *pwFormat
hpi_err_t HPI_AESEBU_Receiver_SetFormat (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wSource)
 Sets the physical format of the digital audio input to either the balanced, professional AES/EBU input or the unbalanced, consumer S/PDIF input.
hpi_err_t HPI_AESEBU_Receiver_GetFormat (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwSource)
 Gets the physical format of the digital audio input : either the balanced, professional AES/EBU input or the unbalanced, consumer S/PDIF input.
hpi_err_t HPI_AESEBU_Receiver_GetSampleRate (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwSampleRate)
 Returns the sample rate of the incoming AES/EBU digital audio stream in *pdwSampleRate.
hpi_err_t HPI_AESEBU_Receiver_GetUserData (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wIndex, uint16_t *pwData)
 Get one of 4 userdata bytes from the AES/EBU stream.
hpi_err_t HPI_AESEBU_Receiver_GetChannelStatus (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wIndex, uint16_t *pwData)
 Get one of 24 channel status bytes from the AES/EBU stream.
hpi_err_t HPI_AESEBU_Receiver_GetErrorStatus (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwErrorData)
 Get error status from the AES/EBU stream.
hpi_err_t HPI_AESEBU_Transmitter_SetSampleRate (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwSampleRate)
 Set the AES/EBU transmitters sample rate.
hpi_err_t HPI_AESEBU_Transmitter_SetUserData (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wIndex, uint16_t wData)
 Set one of 4 userdata bytes in the AES/EBU stream.
hpi_err_t HPI_AESEBU_Transmitter_SetChannelStatus (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wIndex, uint16_t wData)
 Set one of 24 channel status bytes in the AES/EBU stream.
hpi_err_t HPI_AESEBU_Transmitter_GetChannelStatus (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wIndex, uint16_t *pwData)
 Get a byte of channel status in the AES/EBU stream.
hpi_err_t HPI_AESEBU_Transmitter_QueryFormat (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hAesTx, const uint32_t dwIndex, uint16_t *pwFormat)
 Query the formats supported by this AESEBU transmitter Iterate dwIndex until an error is returned to get allowed values for aesebu format in *pwFormat.
hpi_err_t HPI_AESEBU_Transmitter_SetFormat (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wOutputFormat)
 Set the output electrical format for the AESEBU transmitter.
hpi_err_t HPI_AESEBU_Transmitter_GetFormat (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwOutputFormat)
 Get the current output electrical format for the AESEBU transmitter.
hpi_err_t HPI_Multiplexer_SetSource (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wSourceNodeType, uint16_t wSourceNodeIndex)
 Set the signal source that the multiplexer will send to the destination.
hpi_err_t HPI_Multiplexer_GetSource (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *wSourceNodeType, uint16_t *wSourceNodeIndex)
 Get the signal source that the multiplexer is currently connected to.
hpi_err_t HPI_Multiplexer_QuerySource (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t nIndex, uint16_t *wSourceNodeType, uint16_t *wSourceNodeIndex)
 Establish valid source node settings for this multiplexer.
hpi_err_t HPI_VoxSetThreshold (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short anGain0_01dB)
 Sets the threshold of a VOX control.
hpi_err_t HPI_VoxGetThreshold (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short *anGain0_01dB)
 Gets the current threshold of a VOX control.
hpi_err_t HPI_Bitstream_GetActivity (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwClkActivity, uint16_t *pwDataActivity)
 Returns 2 indicative measurements of the incoming data stream.
hpi_err_t HPI_SampleClock_QuerySource (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hClock, const uint32_t dwIndex, uint16_t *pwSource)
 Query valid SampleClock sources Iterate dwIndex until an error is returned to get allowed values for SampleClock source in *pwFormat.
hpi_err_t HPI_SampleClock_SetSource (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wSource)
 Sets the clock source for the sample clock.
hpi_err_t HPI_SampleClock_GetSource (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwSource)
 Gets the current sample clock source.
hpi_err_t HPI_SampleClock_QuerySourceIndex (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hClock, const uint32_t dwIndex, const uint32_t dwSource, uint16_t *pwSourceIndex)
 Query the available source indices.
hpi_err_t HPI_SampleClock_SetSourceIndex (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wSourceIndex)
 Sets the index for the currently selected source.
hpi_err_t HPI_SampleClock_GetSourceIndex (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwSourceIndex)
 Gets the AES/EBU input used to source the adapter clock.
hpi_err_t HPI_SampleClock_GetSampleRate (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwSampleRate)
 Gets the current adapter samplerate.
hpi_err_t HPI_SampleClock_QueryLocalRate (const hpi_hsubsys_t *phSubSys, const hpi_handle_t hClock, const uint32_t dwIndex, uint32_t *pdwSource)
 Query samplerates supported by the local PLL of this sampleclock Iterate dwIndex until an error is returned to get the list of valid PLL samplerates.
hpi_err_t HPI_SampleClock_SetLocalRate (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwSampleRate)
 Set the samplerate of the sample clock's local PLL This samplerate becomes the sampleclock output rate when the HPI_SAMPLECLOCK_SOURCE_LOCAL source is selected.
hpi_err_t HPI_SampleClock_GetLocalRate (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwSampleRate)
 Get the samplerate of the sample clock's local PLL.
hpi_err_t HPI_SampleClock_SetAuto (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwEnable)
 Enable/disable clock autoswitching.
hpi_err_t HPI_SampleClock_GetAuto (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwEnable)
hpi_err_t HPI_SampleClock_SetLocalRateLock (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwLock)
 Enable/disable local rate changing.
hpi_err_t HPI_SampleClock_GetLocalRateLock (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwLock)
hpi_err_t HPI_Microphone_SetPhantomPower (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wOnOff)
 Sets the microphone phantom power on or off.
hpi_err_t HPI_Microphone_GetPhantomPower (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwOnOff)
 Gets the current microphone phantom power setting.
hpi_err_t HPI_ParametricEQ_GetInfo (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t *pwNumberOfBands, uint16_t *pwEnabled)
 Find out the number of available bands of a parametric equalizer, and whether it is enabled or not.
hpi_err_t HPI_ParametricEQ_SetState (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wOnOff)
 Turn a parametric equalizer on or off.
hpi_err_t HPI_ParametricEQ_SetBand (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wIndex, uint16_t nType, uint32_t dwFrequencyHz, short nQ100, short nGain0_01dB)
 Set up one of the filters in a parametric equalizer.
hpi_err_t HPI_ParametricEQ_GetBand (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wIndex, uint16_t *pnType, uint32_t *pdwFrequencyHz, short *pnQ100, short *pnGain0_01dB)
 Get the settings of one of the filters in a parametric equalizer.
hpi_err_t HPI_ParametricEQ_GetCoeffs (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint16_t wIndex, short coeffs[5])
 Retrieve the calculated IIR filter coefficients (scaled by 1000 into integers).
hpi_err_t HPI_Compander_SetEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwOn)
 Enable or disable the compander.
hpi_err_t HPI_Compander_GetEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwOn)
 Get the enable state of the compander.
hpi_err_t HPI_Compander_SetMakeupGain (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short nMakeupGain0_01dB)
 Set the makeup gain of a compander control.
hpi_err_t HPI_Compander_GetMakeupGain (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, short *pnMakeupGain0_01dB)
 Get the makeup gain of a compander control.
hpi_err_t HPI_Compander_SetRatio (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwIndex, uint32_t wRatio100)
 Set the ratio for one of the compander knee points.
hpi_err_t HPI_Compander_GetRatio (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwIndex, uint32_t *pwRatio100)
 Set the ratio for one of the compander knee points.
hpi_err_t HPI_Cobranet_HmiWrite (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwHmiAddress, uint32_t dwByteCount, uint8_t *pbData)
 Write to an HMI variable.
hpi_err_t HPI_Cobranet_HmiRead (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwHmiAddress, uint32_t dwMaxByteCount, uint32_t *pdwByteCount, uint8_t *pbData)
 Read from an HMI variable.
hpi_err_t HPI_Cobranet_HmiGetStatus (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwStatus, uint32_t *pdwReadableSize, uint32_t *pdwWriteableSize)
 Get the status of the last cobranet operation.
hpi_err_t HPI_Cobranet_GetIPaddress (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwIPaddress)
 Get the CobraNet node's current IP address.
hpi_err_t HPI_Cobranet_SetIPaddress (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwIPaddress)
 Set the CobraNet node's current IP address.
hpi_err_t HPI_Cobranet_GetStaticIPaddress (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwIPaddress)
 Get the CobraNet node's static IP address.
hpi_err_t HPI_Cobranet_SetStaticIPaddress (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t dwIPaddress)
 Set the CobraNet node's static IP address.
hpi_err_t HPI_Cobranet_GetMACaddress (const hpi_hsubsys_t *phSubSys, hpi_handle_t hControl, uint32_t *pdwMAC_MSBs, uint32_t *pdwMAC_LSBs)
 Get the CobraNet node's MAC address.
hpi_err_t HPI_ToneDetector_GetState (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t *state)
 Get tone detector state.
hpi_err_t HPI_ToneDetector_SetEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t enable)
 Enable (or disable) a ToneDetector control.
hpi_err_t HPI_ToneDetector_GetEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t *enable)
 Get the Enable state of a ToneDetector control.
hpi_err_t HPI_ToneDetector_SetEventEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t EventEnable)
 Enable ToneDetector control event generation.
hpi_err_t HPI_ToneDetector_GetEventEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t *EventEnable)
 Get the event generation enable state of a ToneDetector control.
hpi_err_t HPI_ToneDetector_SetThreshold (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, int threshold)
 Set the Threshold of a ToneDetector control.
hpi_err_t HPI_ToneDetector_GetThreshold (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, int *threshold)
 Get the Threshold of a ToneDetector control.
hpi_err_t HPI_ToneDetector_GetFrequency (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t nIndex, uint32_t *dwFrequency)
 Enumerate the detection frequencies of the tone detector control.
hpi_err_t HPI_SilenceDetector_GetState (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t *state)
 Get the State of a SilenceDetector control.
hpi_err_t HPI_SilenceDetector_SetEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t enable)
 Enable a SilenceDetector control.
hpi_err_t HPI_SilenceDetector_GetEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t *enable)
 Get the Enable setting of a SilenceDetector control.
hpi_err_t HPI_SilenceDetector_SetEventEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t EventEnable)
 Set the event generation by a SilenceDetector control.
hpi_err_t HPI_SilenceDetector_GetEventEnable (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t *EventEnable)
 Get the event generation enable setting of a SilenceDetector control.
hpi_err_t HPI_SilenceDetector_SetDelay (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t delay)
 Set the Delay of a SilenceDetector control.
hpi_err_t HPI_SilenceDetector_GetDelay (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, uint32_t *delay)
 Get the trigger delay of a SilenceDetector control.
hpi_err_t HPI_SilenceDetector_SetThreshold (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, int threshold)
 Set the Threshold of a SilenceDetector control.
hpi_err_t HPI_SilenceDetector_GetThreshold (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, int *threshold)
 Get the Threshold of a SilenceDetector control.
hpi_err_t HPI_Universal_Info (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, struct hpi_entity **info)
 Retrieve information associated with an universal control.
hpi_err_t HPI_Universal_Get (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, struct hpi_entity **value)
 Returns the current value of an universal control as an entity.
hpi_err_t HPI_Universal_Set (const hpi_hsubsys_t *phSubSys, hpi_handle_t hC, struct hpi_entity *value)
 Set the current value of an universal control.
hpi_err_t HPI_ProfileOpenAll (const hpi_hsubsys_t *phSubSys, uint16_t wAdapterIndex, uint16_t wProfileIndex, hpi_handle_t *phProfile, uint16_t *pwMaxProfiles)
 Open all the profiles on a particular adapter.
hpi_err_t HPI_ProfileGet (const hpi_hsubsys_t *phSubSys, hpi_handle_t hProfile, uint16_t wBinIndex, uint16_t *pwProfileInterval, uint32_t *pdwTotalTickCount, uint32_t *pdwCallCount, uint32_t *pdwMaxTickCount, uint32_t *pdwTicksPerMillisecond)
 Reads a single profile from the DSP's profile store.
hpi_err_t HPI_ProfileStartAll (const hpi_hsubsys_t *phSubSys, hpi_handle_t hProfile)
 Start profiling running.
hpi_err_t HPI_ProfileStopAll (const hpi_hsubsys_t *phSubSys, hpi_handle_t hProfile)
 Stop profiling.
hpi_err_t HPI_ProfileGetName (const hpi_hsubsys_t *phSubSys, hpi_handle_t hProfile, uint16_t wIndex, char *szProfileName, uint16_t nProfileNameLength)
 Get the name of a profile.
hpi_err_t HPI_ProfileGetUtilization (const hpi_hsubsys_t *phSubSys, hpi_handle_t hProfile, uint32_t *pdwUtilization)
 Get the DSP utilization in 1/100 of a percent.
void HPI_GetErrorText (hpi_err_t wError, char *pszErrorText)
 Convert one of the HPI_ERROR_CODES into a string.
hpi_err_t HPI_FormatCreate (struct hpi_format *pFormat, uint16_t wChannels, uint16_t wFormat, uint32_t dwSampleRate, uint32_t dwBitRate, uint32_t dwAttributes)
 Initialize an audio format structure, given various defining parameters.

Detailed Description

AudioScience Hardware Programming Interface (HPI) public API definition.

The HPI is a low-level hardware abstraction layer to all AudioScience digital audio adapters

(C) Copyright AudioScience Inc. 1998-2010


Typedef Documentation

typedef uint16_t hpi_err_t

An HPI error code HPI_ERROR_CODES.

typedef uint32_t hpi_handle_t

An HPI object handle.


Enumeration Type Documentation

Async Event sources.

Enumerator:
HPI_ASYNC_EVENT_GPIO 

GPIO event.

HPI_ASYNC_EVENT_SILENCE 

Silence event detected.

HPI_ASYNC_EVENT_TONE 

tone event detected.

HPI Error codes.

Almost all HPI functions return an error code A return value of zero means there was no error. Otherwise one of these error codes is returned. Error codes can be converted to a descriptive string using HPI_GetErrorText()

Note:
When a new error code is added HPI_GetErrorText() MUST be updated.
Codes 1-100 are reserved for driver use
Enumerator:
HPI_ERROR_INVALID_TYPE 

Message type does not exist.

HPI_ERROR_INVALID_OBJ 

Object type does not exist.

HPI_ERROR_INVALID_FUNC 

Function does not exist.

HPI_ERROR_INVALID_OBJ_INDEX 

The specified object does not exist.

HPI_ERROR_OBJ_NOT_OPEN 

Trying to access an object that has not been opened yet.

HPI_ERROR_OBJ_ALREADY_OPEN 

Trying to open an already open object.

HPI_ERROR_INVALID_RESOURCE 

PCI, ISA resource not valid.

HPI_ERROR_INVALID_RESPONSE 

Default response was never updated with actual error code.

HPI_ERROR_PROCESSING_MESSAGE 

wSize field of response was not updated, indicating that the message was not processed.

HPI_ERROR_NETWORK_TIMEOUT 

The network did not respond in a timely manner.

HPI_ERROR_UNIMPLEMENTED 

A function or attribute has not been implemented yet.

HPI_ERROR_NETWORK_TOO_MANY_CLIENTS 

There are too many clients attempting to access a network resource.

HPI_ERROR_RESPONSE_BUFFER_TOO_SMALL 

Response buffer passed to HPI_Message was smaller than returned response.

wSpecificError field of hpi response contains the required size.

HPI_ERROR_RESPONSE_MISMATCH 

The returned response did not match the sent message.

HPI_ERROR_CONTROL_CACHING 

A control setting that should have been cached was not.

HPI_ERROR_MESSAGE_BUFFER_TOO_SMALL 

A message buffer in the path to the adapter was smaller than the message size.

wSpecificError field of hpi response contains the actual size.

HPI_ERROR_BAD_ADAPTER 

Bad adpater.

HPI_ERROR_BAD_ADAPTER_NUMBER 

Adapter number out of range or not set properly.

HPI_ERROR_DUPLICATE_ADAPTER_NUMBER 

2 adapters with the same adapter number.

HPI_ERROR_DSP_BOOTLOAD 

DSP code failed to bootload.

Usually a DSP memory test failure.

HPI_ERROR_DSP_FILE_NOT_FOUND 

Couldn't find or open the DSP code file.

HPI_ERROR_DSP_HARDWARE 

Internal DSP hardware error.

HPI_ERROR_MEMORY_ALLOC 

Could not allocate memory.

HPI_ERROR_PLD_LOAD 

Failed to correctly load/config PLD.

(unused)

HPI_ERROR_DSP_FILE_FORMAT 

Unexpected end of file, block length too big etc.

HPI_ERROR_DSP_FILE_ACCESS_DENIED 

Found but could not open DSP code file.

HPI_ERROR_DSP_FILE_NO_HEADER 

First DSP code section header not found in DSP file.

HPI_ERROR_DSP_SECTION_NOT_FOUND 

DSP code for adapter family not found.

HPI_ERROR_DSP_FILE_OTHER_ERROR 

Other OS specific error opening DSP file.

HPI_ERROR_DSP_FILE_SHARING_VIOLATION 

Sharing violation opening DSP code file.

HPI_ERROR_DSP_FILE_NULL_HEADER 

DSP code section header had size == 0.

HPI_ERROR_BAD_CHECKSUM 

Flash has bad checksum.

HPI_ERROR_RESERVED_1 

Reserved for OEMs.

HPI_ERROR_INVALID_FORMAT 

Invalid compression format.

HPI_ERROR_INVALID_SAMPLERATE 

Invalid format samplerate.

HPI_ERROR_INVALID_CHANNELS 

Invalid format number of channels.

HPI_ERROR_INVALID_BITRATE 

Invalid format bitrate.

HPI_ERROR_INVALID_DATASIZE 

Invalid datasize used for stream read/write.

HPI_ERROR_INVALID_DATA_POINTER 

Null data pointer used for stream read/write.

HPI_ERROR_INVALID_PACKET_ORDER 

Packet ordering error for stream read/write.

HPI_ERROR_INVALID_OPERATION 

Object can't do requested operation in its current state, eg set format, change rec mux state while recording.

HPI_ERROR_INCOMPATIBLE_SAMPLERATE 

Where a SRG is shared amongst streams, an incompatible samplerate is one that is different to any currently active stream.

HPI_ERROR_BAD_ADAPTER_MODE 

Adapter mode is illegal.

HPI_ERROR_TOO_MANY_CAPABILITY_CHANGE_ATTEMPTS 

There have been too many attempts to set the adapter's capabilities (using bad keys), the card should be returned to ASI if further capabilities updates are required.

HPI_ERROR_NO_INTERADAPTER_GROUPS 

Streams on different adapters cannot be grouped.

HPI_ERROR_NO_INTERDSP_GROUPS 

Streams on different DSPs cannot be grouped.

HPI_ERROR_WAIT_CANCELLED 

Stream wait cancelled before threshold reached.

HPI_ERROR_INVALID_STRING 

A character string is invalid.

HPI_ERROR_INVALID_NODE 

Invalid mixer node for this adapter.

HPI_ERROR_INVALID_CONTROL 

Invalid control.

HPI_ERROR_INVALID_CONTROL_VALUE 

Invalid control value was passed.

HPI_ERROR_INVALID_CONTROL_ATTRIBUTE 

Control attribute not supported by this control.

HPI_ERROR_CONTROL_DISABLED 

Control is disabled.

HPI_ERROR_CONTROL_I2C_MISSING_ACK 

I2C transaction failed due to a missing ACK.

HPI_ERROR_CONTROL_NOT_READY 

Control is busy, or coming out of reset and cannot be accessed at this time.

HPI_ERROR_NVMEM_BUSY 

Non volatile memory.

HPI_ERROR_I2C_BAD_ADR 

I2C.

HPI_ERROR_ENTITY_TYPE_MISMATCH 

Entity type did not match requested type.

HPI_ERROR_ENTITY_ITEM_COUNT 

Entity item count did not match requested count.

HPI_ERROR_ENTITY_TYPE_INVALID 

Entity type is not one of the valid types.

HPI_ERROR_ENTITY_ROLE_INVALID 

Entity role is not one of the valid roles.

HPI_ERROR_ENTITY_SIZE_MISMATCH 

Entity size doesn't match target size.

HPI_ERROR_CUSTOM 

custom error to use for debugging

HPI_ERROR_MUTEX_TIMEOUT 

hpioct32.c can't obtain mutex

HPI_ERROR_BACKEND_BASE 

Backend errors used to be greater than this.

Deprecated:
Now, all backends return only errors defined here in hpi.h
HPI_ERROR_DSP_COMMUNICATION 

Communication with DSP failed.