C:/asi/sw404/drv/hpi/hpi.h File Reference

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

#include <stdlib.h>
#include <asimmdef.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...

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_64BIT
 Define this when building a 64 bit application.
#define HPI_EXCLUDE_DEPRECATED
 Define this to remove public definition of deprecated functions and defines.
#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_ADAPTER_ASI1711   0x1711
 ASI1711 - Quad FM+RDS tuner module.
#define HPI_ADAPTER_ASI1721   0x1721
 ASI1721 - Quad AM/FM+RDS tuner module with MCX external antenna jacks.
#define HPI_ADAPTER_ASI1722   0x1722
 ASI1722 - Quad FM+RDS tuner module (based on ASI1721 h/w).
#define HPI_ADAPTER_ASI1723   0x1723
 ASI1723 - Quad AM/FM+RDS tuner module (no MCX jacks).
#define HPI_ADAPTER_ASI1731   0x1731
 ASI1731 - Quad TV tuner module.
#define HPI_ADAPTER_ASI1741   0x1741
 ASI1741 - Quad HDRadio "pseudo" module.
#define HPI_ADAPTER_ASI2416   0x2416
 ASI2416 - CobraNet peripheral.
#define HPI_ADAPTER_FAMILY_ASI2500   0x2500
 ASI2500 - OEM TV audio processors.
#define HPI_ADAPTER_ASI5001   0x5001
 ASI5001 OEM, PCM only, 4 in, 1 out analog.
#define HPI_ADAPTER_ASI5002   0x5002
 ASI5002 OEM, PCM only, 4 in, 1 out analog and digital.
#define HPI_ADAPTER_ASI5020   0x5020
 ASI5020 PCM only, 2 analog only in/out.
#define HPI_ADAPTER_ASI5044   0x5044
 ASI5044 PCM only, 4 analog and digital in/out.
#define HPI_ADAPTER_ASI5041   0x5041
 ASI5041 PCM only, 4 digital only in/out.
#define HPI_ADAPTER_ASI5042   0x5042
 ASI5042 PCM only, 4 analog only in/out.
#define HPI_ADAPTER_ASI5101   0x5101
 ASI5101 OEM is ASI5111 with no mic.
#define HPI_ADAPTER_ASI5111   0x5111
 ASI5111 PCM only.
#define HPI_ADAPTER_FAMILY_ASI5200   0x5200
 ASI5200 PCIe version of ASI5100.
#define HPI_ADAPTER_ASI5201   0x5201
 ASI5201 OEM is ASI5111 with no mic.
#define HPI_ADAPTER_ASI5211   0x5211
 ASI5211 PCM only.
#define HPI_ADAPTER_FAMILY_ASI5300   0x5300
 ASI5300 PCIe CobraNet PCM only family.
#define HPI_ADAPTER_ASI5302   0x5302
 ASI5302 2x2 CobraNet PCM only.
#define HPI_ADAPTER_ASI5308   0x5308
 ASI5308 8x8 CobraNet PCM only.
#define HPI_ADAPTER_ASI5316   0x5316
 ASI5316 16x16 CobraNet PCM only.
#define HPI_ADAPTER_ASI5402   0x5402
 ASI5402 2x2 CobraNet PCM only.
#define HPI_ADAPTER_ASI5408   0x5408
 ASI5408 8x8 CobraNet PCM only.
#define HPI_ADAPTER_ASI5416   0x5416
 ASI5416 16x16 CobraNet PCM only.
#define HPI_ADAPTER_ASI5640   0x5640
 ASI5640 PCM only, 4 analog in/out.
#define HPI_ADAPTER_ASI5641   0x5641
 ASI5641 PCM only, 4 AES/EBU in/out.
#define HPI_ADAPTER_ASI5644   0x5644
 ASI5644 PCM only, 4 analog and AES/EBU in/out.
#define HPI_ADAPTER_ASI5680   0x5680
 ASI5680 PCM only, 1 analog in/8 analog out.
#define HPI_ADAPTER_ASI6101   0x6101
 ASI6101 prototype.
#define HPI_ADAPTER_ASI6000   0x6000
 ASI6000 - generic 1 DSP adapter, exact config undefined.
#define HPI_ADAPTER_ASI6012   0x6012
 ASI6012 - 1 in, 2 out analog only.
#define HPI_ADAPTER_ASI6022   0x6022
 ASI6022 - 2 in, 2 out analog only.
#define HPI_ADAPTER_ASI6044   0x6044
 ASI6044 - 4 in/out analog only.
#define HPI_ADAPTER_ASI6111   0x6111
 ASI6111 - 1 in/out, analog and AES3.
#define HPI_ADAPTER_ASI6102   0x6102
 ASI6102 - 2out,analog and AES3.
#define HPI_ADAPTER_ASI6113   0x6113
 300MHz version of ASI6114 for testing
#define HPI_ADAPTER_ASI6122   0x6122
 ASI6122 - 2 in/out, analog and AES3.
#define HPI_ADAPTER_ASI6114   0x6114
 ASI6114 - 4os,1is,4out,1in,analog and AES3.
#define HPI_ADAPTER_ASI6118   0x6118
 ASI6118 - 8os,1is,8out,1in analog+AES3.
#define HPI_ADAPTER_ASI6201   0x6201
 ASI6201 - OEM.
#define HPI_ADAPTER_ASI6244   0x6244
 ASI6244 - 4os,4is,4out,4in,analog and AES3.
#define HPI_ADAPTER_ASI6246   0x6246
 ASI6246 - 6os,2is,6out,4in,analog and AES3.
#define HPI_ADAPTER_ASI6200   0x6200
 ASI6200 - generic 2 DSP adapter, exact config undefined.
#define HPI_ADAPTER_ASI6100   0x6100
 ASI6100 - generic 1 DSP adapter, exact config undefined.
#define HPI_ADAPTER_ASI6316   0x6316
 ASI6316 - cobranet PCIe 16 mono in/out.
#define HPI_ADAPTER_ASI6408   0x6408
 ASI6408 - cobranet PCI 8 mono in/out.
#define HPI_ADAPTER_ASI6416   0x6416
 ASI6416 - cobranet PCI 16 mono in/out.
#define HPI_ADAPTER_FAMILY_ASI6500   0x6500
 ASI6500 PCI sound cards.
#define HPI_ADAPTER_ASI6501   0x6501
 ASI6501 - 8 out analog (unbalanced).
#define HPI_ADAPTER_ASI6511   0x6511
 ASI6511 - 1 in/out, analog and AES3.
#define HPI_ADAPTER_ASI6514   0x6514
 ASI6514 - ASI6114 replacement, 12os,2is,4out,1in,analog and AES3.
#define HPI_ADAPTER_ASI6518   0x6518
 ASI6518 - ASI6118 replacement, 8os,1is,8out,1in analog+AES3.
#define HPI_ADAPTER_ASI6520   0x6520
 ASI6520 - 6os,4is,2out,2in,analog only.
#define HPI_ADAPTER_ASI6522   0x6522
 ASI6522 - 6os,4is,2out,2in,analog and AES3.
#define HPI_ADAPTER_ASI6540   0x6540
 ASI6540 - 12os,8is,4out,4in,analog only.
#define HPI_ADAPTER_ASI6544   0x6544
 ASI6544 - 12os,8is,4out,4in,analog and AES3.
#define HPI_ADAPTER_ASI6548   0x6548
 ASI6548 - 16os,8is,8out,4in,analog and AES3.
#define HPI_ADAPTER_ASI6585   0x6585
 ASI6585 - 8in, 8out, Livewire.
#define HPI_ADAPTER_FAMILY_ASI6600   0x6600
 ASI6600 PCI Express sound cards.
#define HPI_ADAPTER_ASI6611   0x6611
 ASI6611 - 1 in/out, analog and AES3.
#define HPI_ADAPTER_ASI6614   0x6614
 ASI6614 - ASI6114 replacement, 12os,2is,4out,1in,analog and AES3.
#define HPI_ADAPTER_ASI6618   0x6618
 ASI6618 - ASI6118 replacement, 8os,1is,8out,1in analog+AES3.
#define HPI_ADAPTER_ASI6620   0x6620
 ASI6620 - 6os,4is,2out,2in,analog only.
#define HPI_ADAPTER_ASI6622   0x6622
 ASI6622 - 6os,4is,2out,2in,analog and AES3.
#define HPI_ADAPTER_ASI6640   0x6640
 ASI6640 - 12os,8is,4out,4in,analog only.
#define HPI_ADAPTER_ASI6644   0x6644
 ASI6644 - 12os,8is,4out,4in,analog and AES3.
#define HPI_ADAPTER_ASI6648   0x6648
 ASI6648 - 16os,8is,8out,4in,analog and AES3.
#define HPI_ADAPTER_ASI6685   0x6685
 ASI6685 - 8in, 8out, Livewire.
#define HPI_ADAPTER_ASI8701   0x8701
 OEM 8 record 2 AM/FM + 6 FM/TV , AM has 10kHz b/w.
#define HPI_ADAPTER_ASI8702   0x8702
 8 AM/FM record
#define HPI_ADAPTER_ASI8703   0x8703
 8 TV/FM record
#define HPI_ADAPTER_ASI8704   0x8704
 standard product 2 AM/FM + 6 FM/TV
#define HPI_ADAPTER_ASI8705   0x8705
 4 TV/FM, 4 AM/FM record
#define HPI_ADAPTER_ASI8706   0x8706
 8 record 2 AM/FM + 6 FM/TV + 2 ext antenna jacks
#define HPI_ADAPTER_ASI8707   0x8707
 8 record AM/FM - 4 ext antenna jacks
#define HPI_ADAPTER_ASI8708   0x8708
 8 record AM/FM - 6 ext antenna jacks
#define HPI_ADAPTER_ASI8709   0x8709
 8 record - no tuners
#define HPI_ADAPTER_ASI8710   0x8710
 8 record AM/FM - 1 ext antenna jacks
#define HPI_ADAPTER_ASI8711   0x8711
 8 record AM/FM - 2 ext antenna jacks
#define HPI_ADAPTER_ASI8712   0x8712
 4 record AM/FM
#define HPI_ADAPTER_ASI8713   0x8713
 4 record NTSC-TV/FM
#define HPI_ADAPTER_ASI8722   0x8722
 8 record 6xAM/FM+2xNTSC
#define HPI_ADAPTER_ASI8723   0x8723
 8 record NTSC
#define HPI_ADAPTER_ASI8724   0x8724
 4 record NTSC
#define HPI_ADAPTER_ASI8725   0x8725
 4 record 4xAM/FM+4xNTSC
#define HPI_ADAPTER_ASI8732   0x8732
 8 record 6xAM/FM+2xPAL
#define HPI_ADAPTER_ASI8733   0x8733
 8 record PAL
#define HPI_ADAPTER_ASI8734   0x8734
 4 record PAL
#define HPI_ADAPTER_ASI8735   0x8735
 4 record 4xAM/FM+4xPAL
#define HPI_ADAPTER_FAMILY_ASI8800   0x8800
 tuner PCIe
#define HPI_ADAPTER_ASI8801   0x8801
 OEM 8 record.
#define HPI_ADAPTER_FAMILY_ASI8800   0x8800
 tuner PCIe
#define HPI_ADAPTER_ASI8821   0x8821
 2 module tuner card
#define HPI_ADAPTER_FAMILY_ASI8900   0x8900
 tuner PCI
#define HPI_ADAPTER_ASI8914   0x8914
 4 channel AM/FM HD Radio
#define HPI_ADAPTER_ASI8920   0x8920
 OEM FM+RDS, 2 module tuner card.
#define HPI_ADAPTER_ASI8921   0x8921
 2 module tuner card
#define HPI_ADAPTER_ILLEGAL   0xFFFF
 Used in DLL to indicate device not present.
#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_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 recieved any PTY.
#define HPI_MAX_ADAPTERS   20
 Maximum number of adapters per HPI sub-system WARNING: modifying this value changes the response structure size.
#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_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 unsigned char HPI_ETHERNET_MAC_ADR [6]
 Used for sending ethernet packets VIA HMI interface.
typedef HW16 HPI_ERR
 An HPI error code HPI_ERROR_CODES.

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_LAST_INDEX = 111
}
 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_LAST_INDEX = 207
}
 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_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
}
 Adapter properties These are used in HPI_AdapterSetProperty() and HPI_AdapterGetProperty(). More...
enum  HPI_ADAPTER_MODE_CMDS
 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_LEVEL
 Tuner Level settings. 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_PLL_LOCKED = 0x1000, HPI_TUNER_FM_STEREO = 0x2000, HPI_TUNER_DIGITAL = 0x0200, HPI_TUNER_MULTIPROGRAM = 0x0400
}
 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_SUBSYSFINDADAPTERS_GETINFO = 107,
  HPI_ERROR_INVALID_RESPONSE = 108, HPI_ERROR_PROCESSING_MESSAGE = 109, HPI_ERROR_NETWORK_TIMEOUT = 110, HPI_ERROR_INVALID_HANDLE = 111,
  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_TOO_MANY_ADAPTERS = 200, HPI_ERROR_BAD_ADAPTER = 201, HPI_ERROR_BAD_ADAPTER_NUMBER = 202, HPI_DUPLICATE_ADAPTER_NUMBER = 203,
  HPI_ERROR_DSP_BOOTLOAD = 204, HPI_ERROR_DSP_SELFTEST = 205, HPI_ERROR_DSP_FILE_NOT_FOUND = 206, HPI_ERROR_DSP_HARDWARE = 207,
  HPI_ERROR_DOS_MEMORY_ALLOC = 208, 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_FILE_READ_ERROR = 213, 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_FLASH = 220,
  HPI_ERROR_BAD_CHECKSUM = (HPI_ERROR_FLASH+1) , HPI_ERROR_RESERVED_1 = 290, HPI_ERROR_INVALID_STREAM = 300, 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_BUFFER_FULL = 306, HPI_ERROR_BUFFER_EMPTY = 307, HPI_ERROR_INVALID_DATA_TRANSFER = 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_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_MISSING_ACK = HPI_ERROR_CONTROL_I2C_MISSING_ACK , HPI_ERROR_ENTITY_TYPE_MISMATCH = 470 ,
  HPI_ERROR_CUSTOM = 600, HPI_ERROR_MUTEX_TIMEOUT = 700, HPI_ERROR_BACKEND_BASE = 900, HPI_ERROR_ILLEGAL_CACHE_VALUE = 0xffff
}
 HPI Error codes. More...

Functions

HPI_ERR HPI_StreamEstimateBufferSize (HPI_FORMAT *pF, HW32 dwHostPollingRateInMilliSeconds, HW32 *dwRecommendedBufferSize)
 Given a format and rate that the buffer is processed, return the correct buffer size to support ping-pong buffering of audio.
PHPI_HSUBSYS HPI_SubSysCreate (void)
 HPI Subsystem create.
void HPI_SubSysFree (const HPI_HSUBSYS *phSubSys)
 HPI Subsystem free.
HPI_ERR HPI_SubSysGetVersion (const HPI_HSUBSYS *phSubSys, HW32 *pdwVersion)
 HPI subsystem get version.
HPI_ERR HPI_SubSysGetVersionEx (const HPI_HSUBSYS *phSubSys, HW32 *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 HPI_SubSysGetInfo (const HPI_HSUBSYS *phSubSys, HW32 *pdwVersion, HW16 *pwNumAdapters, HW16 awAdapterList[], HW16 wListLength)
HPI_ERR HPI_SubSysFindAdapters (const HPI_HSUBSYS *phSubSys, HW16 *pwNumAdapters, HW16 awAdapterList[], HW16 wListLength)
 Find all adapters that the HPI subsystem knows about.
HPI_ERR HPI_SubSysGetNumAdapters (const HPI_HSUBSYS *phSubSys, int *pnNumAdapters)
 Return the total number of adapters including networked adapters.
HPI_ERR HPI_SubSysGetAdapter (const HPI_HSUBSYS *phSubSys, int nIterator, HW32 *pdwAdapterIndex, HW16 *pwAdapterType)
 Extended version of HPI_SubSysFindAdapters() that iterates through all adapters present, returning adapter index and type for each one.
HPI_ERR HPI_SubSysSetHostNetworkInterface (const HPI_HSUBSYS *phSubSys, const char *szInterface)
 Sets the HPI networking subsystem to use the network interface specified.
HPI_ERR HPI_AdapterOpen (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex)
 Opens an adapter for use.
HPI_ERR HPI_AdapterClose (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex)
 Closes the adapter associated with the wAdapterIndex.
HPI_ERR HPI_AdapterGetInfo (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 *pwNumOutStreams, HW16 *pwNumInStreams, HW16 *pwVersion, HW32 *pdwSerialNumber, HW16 *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 HPI_AdapterGetModuleByIndex (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 wModuleIndex, HW16 *pwNumOutputs, HW16 *pwNumInputs, HW16 *pwVersion, HW32 *pdwSerialNumber, HW16 *pwModuleType, HPI_HANDLE *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 HPI_AdapterSetMode (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW32 dwAdapterMode)
 Sets the operating mode of an adapter.
HPI_ERR HPI_AdapterSetModeEx (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW32 dwAdapterMode, HW16 wQueryOrSet)
 Adapter set mode extended.
HPI_ERR HPI_AdapterGetMode (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW32 *pdwAdapterMode)
 Read the current adapter mode setting.
HPI_ERR HPI_AdapterGetAssert (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 *wAssertPresent, char *pszAssert, HW16 *pwLineNumber)
 Returns DSP generated assert messages.
HPI_ERR HPI_AdapterTestAssert (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 wAssertId)
 This function tests that asserts are working correctly on the selected adapter.
HPI_ERR HPI_AdapterSetProperty (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 wProperty, HW16 wParamter1, HW16 wParamter2)
 Set an adapter property to a value.
HPI_ERR HPI_AdapterGetProperty (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 wProperty, HW16 *pwParamter1, HW16 *pwParamter2)
 Gets the value of an adapter property.
HPI_ERR HPI_NvMemoryOpen (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HPI_HNVMEMORY *phNvMemory, HW16 *pwSizeInBytes)
 Opens the non-volatile memory on a particular adapter for reading and writing.
HPI_ERR HPI_NvMemoryReadByte (const HPI_HSUBSYS *phSubSys, HPI_HNVMEMORY hNvMemory, HW16 wIndex, HW16 *pwData)
 Reads a byte from an adapters non-volatile memory.
HPI_ERR HPI_NvMemoryWriteByte (const HPI_HSUBSYS *phSubSys, HPI_HNVMEMORY hNvMemory, HW16 wIndex, HW16 wData)
 Writes a byte to an adapters non-volatile memory.
HPI_ERR HPI_GpioOpen (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HPI_HGPIO *phGpio, HW16 *pwNumberInputBits, HW16 *pwNumberOutputBits)
 Opens the GPIO on a particular adapter for reading and writing.
HPI_ERR HPI_GpioReadBit (const HPI_HSUBSYS *phSubSys, HPI_HGPIO hGpio, HW16 wBitIndex, HW16 *pwBitData)
 Read a particular bit from an adapter's GPIO input port.
HPI_ERR HPI_GpioReadAllBits (const HPI_HSUBSYS *phSubSys, HPI_HGPIO hGpio, HW16 awAllBitData[4])
 Read all bits from an adapter's GPIO input ports.
HPI_ERR HPI_GpioWriteBit (const HPI_HSUBSYS *phSubSys, HPI_HGPIO hGpio, HW16 wBitIndex, HW16 wBitData)
 Write a particular bit to an adapter's GPIO output port.
HPI_ERR HPI_GpioWriteStatus (const HPI_HSUBSYS *phSubSys, HPI_HGPIO hGpio, HW16 awAllBitData[4])
 Read back the current status of an adapter's GPIO output.
HPI_ERR HPI_AsyncEventOpen (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HPI_HASYNC *phAsync)
 Open an ASync object.
HPI_ERR HPI_AsyncEventClose (const HPI_HSUBSYS *phSubSys, HPI_HASYNC hAsync)
 Closes an ASync object.
HPI_ERR HPI_AsyncEventWait (const HPI_HSUBSYS *phSubSys, HPI_HASYNC hAsync, HW16 wMaximumEvents, struct hpi_async_event *pEvents, HW16 *pwNumberReturned)
 Waits for a asynchronous events.
HPI_ERR HPI_AsyncEventGetCount (const HPI_HSUBSYS *phSubSys, HPI_HASYNC hAsync, HW16 *pwCount)
 Returns the number of asynchronous events waiting.
HPI_ERR HPI_AsyncEventGet (const HPI_HSUBSYS *phSubSys, HPI_HASYNC hAsync, HW16 wMaximumEvents, struct hpi_async_event *pEvents, HW16 *pwNumberReturned)
 Returns single or many asynchronous events.
HPI_ERR HPI_OutStreamOpen (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 wOutStreamIndex, HPI_HOSTREAM *phOutStream)
 Open and initializes an output stream.
HPI_ERR HPI_OutStreamClose (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream)
 Closes an output stream and deallocates host buffers if they are being used.
HPI_ERR HPI_OutStreamGetInfoEx (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HW16 *pwState, HW32 *pdwBufferSize, HW32 *pdwDataToPlay, HW32 *pdwSamplesPlayed, HW32 *pdwAuxiliaryDataToPlay)
 Get information about attributes and state of output stream.
HPI_ERR HPI_OutStreamWriteBuf (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, const HW8 *pbWriteBuf, HW32 dwBytesToWrite, const HPI_FORMAT *pFormat)
 Writes a block of audio data to the specified output stream.
HPI_ERR HPI_OutStreamStart (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream)
 Starts an output stream playing audio data.
HPI_ERR HPI_OutStreamWaitStart (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream)
 Sets an output stream to WAIT state, ready for inter-card syncing.
HPI_ERR HPI_OutStreamStop (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream)
 Stops an output stream playing audio data.
HPI_ERR HPI_OutStreamReset (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream)
 Clears the audio data buffer of an output stream.
HPI_ERR HPI_OutStreamQueryFormat (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HPI_FORMAT *pFormat)
 Queries an OutStream to see whether it supports a certain audio format, described in pFormat.
HPI_ERR HPI_OutStreamSetFormat (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HPI_FORMAT *pFormat)
 Sets an OutStream to a certain audio format, described in pFormat.
HPI_ERR HPI_OutStreamSetVelocity (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, short nVelocity)
 Sets the playback velocity for scrubbing.
HPI_ERR HPI_OutStreamAncillaryReset (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HW16 wMode)
 Resets MPEG ancillary data extraction.
HPI_ERR HPI_OutStreamAncillaryGetInfo (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HW32 *pdwFramesAvailable)
 Returns information about the Ancillary stream.
HPI_ERR HPI_OutStreamAncillaryRead (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HPI_ANC_FRAME *pAncFrameBuffer, HW32 dwAncFrameBufferSizeInBytes, HW32 dwNumberOfAncillaryFramesToRead)
 Reads frames of ancillary data from a stream's ancillary data buffer to pdwBuffer.
HPI_ERR HPI_OutStreamSetTimeScale (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HW32 dwTimeScaleX10000)
 Sets the playback timescale with pitch and content preservation.
HPI_ERR HPI_OutStreamHostBufferAllocate (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HW32 dwSizeInBytes)
 Allocates a buffer inside the driver for bus mastering transfers.
HPI_ERR HPI_OutStreamHostBufferFree (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream)
 Free any buffers allocated by HPI_OutStreamHostBufferAllocate().
HPI_ERR HPI_OutStreamGroupAdd (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HPI_HSTREAM hStream)
 This function adds a stream to a group of streams.
HPI_ERR HPI_OutStreamGroupGetMap (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream, HW32 *pdwOutStreamMap, HW32 *pdwInStreamMap)
 This function returns information about the streams that form a group.
HPI_ERR HPI_OutStreamGroupReset (const HPI_HSUBSYS *phSubSys, HPI_HOSTREAM hOutStream)
 Resets stream grouping information for a given out stream.
HPI_ERR HPI_InStreamOpen (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 wInStreamIndex, HPI_HISTREAM *phInStream)
 Open and initializes an input stream.
HPI_ERR HPI_InStreamClose (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream)
 Closes an input stream.
HPI_ERR HPI_InStreamQueryFormat (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, const HPI_FORMAT *pFormat)
 Queries an input stream to see whether it supports a certain audio format, described in pFormat.
HPI_ERR HPI_InStreamSetFormat (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, const HPI_FORMAT *pFormat)
 Sets the recording format for an input stream.
HPI_ERR HPI_InStreamReadBuf (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, HW8 *pbReadBuf, HW32 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 HPI_InStreamStart (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream)
 Starts an input stream recording audio data.
HPI_ERR HPI_InStreamWaitStart (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream)
 Get a stream ready for sync'd start across multiple adapters.
HPI_ERR HPI_InStreamStop (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream)
 Stops an input stream recording audio data.
HPI_ERR HPI_InStreamReset (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream)
 Clears the audio data buffer of an input stream.
HPI_ERR HPI_InStreamGetInfoEx (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, HW16 *pwState, HW32 *pdwBufferSize, HW32 *pdwDataRecorded, HW32 *pdwSamplesRecorded, HW32 *pdwAuxiliaryDataRecorded)
 Returns extended information about the input stream.
HPI_ERR HPI_InStreamAncillaryReset (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, HW16 wBytesPerFrame, HW16 wMode, HW16 wAlignment, HW16 wIdleBit)
 Initializes the MPEG Layer II / III Ancillary data channel.
HPI_ERR HPI_InStreamAncillaryGetInfo (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, HW32 *pdwFrameSpace)
 Returns information about the ancillary data stream.
HPI_ERR HPI_InStreamAncillaryWrite (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, const HPI_ANC_FRAME *pAncFrameBuffer, HW32 dwAncFrameBufferSizeInBytes, HW32 dwNumberOfAncillaryFramesToWrite)
 Writes frames to the stream's ancillary data buffer.
HPI_ERR HPI_InStreamHostBufferAllocate (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, HW32 dwSizeInBytes)
 Allocates a buffer on the host PC for bus mastering transfers.
HPI_ERR HPI_InStreamHostBufferFree (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream)
 Free any buffers allocated by HPI_InStreamHostBufferAllocate.
HPI_ERR HPI_InStreamGroupAdd (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, HPI_HSTREAM hStream)
 This function adds a stream to a group of streams.
HPI_ERR HPI_InStreamGroupGetMap (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream, HW32 *pdwOutStreamMap, HW32 *pdwInStreamMap)
 This function returns information about the streams that form a group.
HPI_ERR HPI_InStreamGroupReset (const HPI_HSUBSYS *phSubSys, HPI_HISTREAM hInStream)
 Resets stream grouping information for a given InStream.
HPI_ERR HPI_MixerOpen (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HPI_HMIXER *phMixer)
 Opens and initializes an adapters mixer.
HPI_ERR HPI_MixerClose (const HPI_HSUBSYS *phSubSys, HPI_HMIXER hMixer)
 Closes a mixer.
HPI_ERR HPI_MixerGetControl (const HPI_HSUBSYS *phSubSys, HPI_HMIXER hMixer, HW16 wSrcNodeType, HW16 wSrcNodeTypeIndex, HW16 wDstNodeType, HW16 wDstNodeTypeIndex, HW16 wControlType, HPI_HCONTROL *phControl)
 Gets a mixer control.
HPI_ERR HPI_MixerGetControlByIndex (const HPI_HSUBSYS *phSubSys, HPI_HMIXER hMixer, HW16 wControlIndex, HW16 *pwSrcNodeType, HW16 *pwSrcNodeIndex, HW16 *pwDstNodeType, HW16 *pwDstNodeIndex, HW16 *pwControlType, HPI_HCONTROL *phControl)
 Get the location and type of a mixer control by index.
HPI_ERR HPI_MixerStore (const HPI_HSUBSYS *phSubSys, HPI_HMIXER hMixer, enum HPI_MIXER_STORE_COMMAND Command, HW16 wIndex)
 Execute a command on the Mixer Control store.
HPI_ERR HPI_VolumeSetGain (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anGain0_01dB[HPI_MAX_CHANNELS])
 Set the gain of a volume control.
HPI_ERR HPI_VolumeGetGain (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anGain0_01dB_out[HPI_MAX_CHANNELS])
 Gets the current gain of a volume control.
HPI_ERR HPI_VolumeQueryRange (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short *nMinGain_01dB, short *nMaxGain_01dB, short *nStepGain_01dB)
 Query the range of a volume or level control.
HPI_ERR HPI_Volume_QueryChannels (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hVolume, HW32 *pChannels)
 Get the number of channels supported by this volume control.
HPI_ERR HPI_VolumeAutoFade (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anStopGain0_01dB[HPI_MAX_CHANNELS], HW32 wDurationMs)
HPI_ERR HPI_VolumeAutoFadeProfile (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anStopGain0_01dB[HPI_MAX_CHANNELS], HW32 dwDurationMs, HW16 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 HPI_LevelQueryRange (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short *nMinGain_01dB, short *nMaxGain_01dB, short *nStepGain_01dB)
 Query the range of a volume or level control.
HPI_ERR HPI_LevelSetGain (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anGain0_01dB[HPI_MAX_CHANNELS])
 Sets the gain of a level control.
HPI_ERR HPI_LevelGetGain (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anGain0_01dB_out[HPI_MAX_CHANNELS])
 Gets the gain of a level control.
HPI_ERR HPI_Meter_QueryChannels (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hMeter, HW32 *pChannels)
 Get the number of channels supported by this meter.
HPI_ERR HPI_MeterGetPeak (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anPeak0_01dB_out[HPI_MAX_CHANNELS])
 Get the meter peak reading.
HPI_ERR HPI_MeterGetRms (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anPeak0_01dB_out[HPI_MAX_CHANNELS])
 Get the meter RMS reading in 100ths of a dB.
HPI_ERR HPI_MeterSetPeakBallistics (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 nAttack, HW16 nDecay)
 Set the ballistics of the Peak part of a meter.
HPI_ERR HPI_MeterSetRmsBallistics (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 nAttack, HW16 nDecay)
 Set the ballistics of the RMS part of a meter.
HPI_ERR HPI_MeterGetPeakBallistics (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *nAttack, HW16 *nDecay)
 Get the ballistics settings of the Peak part of a meter.
HPI_ERR HPI_MeterGetRmsBallistics (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *nAttack, HW16 *nDecay)
 Get the ballistics settings of the RMS part of a meter.
HPI_ERR HPI_ChannelMode_QueryMode (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hMode, const HW32 dwIndex, HW16 *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 HPI_ChannelModeSet (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wMode)
 Set the channel mode.
HPI_ERR HPI_ChannelModeGet (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *wMode)
 Get the current channel mode.
HPI_ERR HPI_Tuner_QueryBand (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hTuner, const HW32 dwIndex, HW16 *pwBand)
 Query tuner for supported bands.
HPI_ERR HPI_Tuner_SetBand (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wBand)
 Set the band that the tuner recieves.
HPI_ERR HPI_Tuner_GetBand (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwBand)
 Get the current tuner band.
HPI_ERR HPI_Tuner_QueryFrequency (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hTuner, const HW32 dwIndex, const HW16 band, HW32 *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 HPI_Tuner_SetFrequency (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 wFreqInkHz)
 Set the tuner frequency.
HPI_ERR HPI_Tuner_GetFrequency (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pwFreqInkHz)
 Get the current tuner frequency.
HPI_ERR HPI_Tuner_GetRFLevel (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short *pwLevel)
 Get the RF level of a tuner input in millibel microvolts.
HPI_ERR HPI_Tuner_GetRawRFLevel (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short *pwLevel)
 Get the RF raw level of a tuner.
HPI_ERR HPI_Tuner_QueryGain (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hTuner, const HW32 dwIndex, HW16 *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 HPI_Tuner_SetGain (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short nGain)
 Set the RF attenuator gain of the tuner front end.
HPI_ERR HPI_Tuner_GetGain (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short *pnGain)
 Get the current tuner gain.
HPI_ERR HPI_Tuner_GetStatus (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwStatusMask, HW16 *pwStatus)
 Get the status of various Boolean attributes of a tuner control.
HPI_ERR HPI_Tuner_SetMode (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 nMode, HW32 nValue)
 This function turns off the RSS (FM FR level reading) capability for the specified tuner.
HPI_ERR HPI_Tuner_GetMode (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 nMode, HW32 *pnValue)
 Get the current tuner mode.
HPI_ERR HPI_Tuner_GetRDS (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, char *pRdsData)
 Get tuner RDS data.
HPI_ERR HPI_Tuner_QueryDeemphasis (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hTuner, const HW32 dwIndex, const HW16 band, HW32 *pdwDeemphasis)
 Query tuner band for supported deemphasis settings.
HPI_ERR HPI_Tuner_SetDeemphasis (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwDeemphasis)
 Set the audio de-emphasis.
HPI_ERR HPI_Tuner_GetDeemphasis (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwDeemphasis)
 Get the audio de-emphasis setting.
HPI_ERR HPI_Tuner_QueryProgram (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hTuner, HW32 *pbitmapProgram)
 Get bitmap of programmes supported by this tuner.
HPI_ERR HPI_Tuner_SetProgram (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwProgram)
 Sets the tuner program.
HPI_ERR HPI_Tuner_GetProgram (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwProgram)
 Gets the tuner program.
HPI_ERR HPI_Tuner_GetHdRadioDspVersion (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, char *pszDspVersion, const HW32 dwStringSize)
 Gets the DSP firmware verison of an HD Radio tuner.
HPI_ERR HPI_Tuner_GetHdRadioSdkVersion (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, char *pszSdkVersion, const HW32 dwStringSize)
 Gets the SDK firmware verison of an HD Radio tuner.
HPI_ERR HPI_Tuner_GetHdRadioSignalQuality (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwQuality)
 Get the digital signal quality from an HDRadio tuner.
HPI_ERR HPI_Tuner_GetHdRadioSignalBlend (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwBlend)
 Get the signal blend from an HDRadio tuner.
HPI_ERR HPI_Tuner_SetHdRadioSignalBlend (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, const HW32 dwBlend)
 Set the signal blend from an HDRadio tuner.
HPI_ERR HPI_PAD_GetChannelName (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, char *pszString, const HW32 dwStringLength)
 Get tuner's PAD channel name.
HPI_ERR HPI_PAD_GetArtist (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, char *pszString, const HW32 dwStringLength)
 Get tuner's PAD artist information.
HPI_ERR HPI_PAD_GetTitle (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, char *pszString, const HW32 dwStringLength)
 Get tuner's PAD title information.
HPI_ERR HPI_PAD_GetComment (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, char *pszString, const HW32 dwStringLength)
 Get tuner's PAD comment information.
HPI_ERR HPI_PAD_GetProgramType (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwPTY)
 Get tuner's PAD program type (PTY).
HPI_ERR HPI_PAD_GetRdsPI (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwPI)
 Get tuner's PAD RDS program identification (PI).
HPI_ERR HPI_PAD_GetProgramTypeString (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, const HW32 dwDataType, const HW32 nPTY, char *pszString, const HW32 dwStringLength)
 Translate tuner's PTY into a string.
HPI_ERR HPI_AESEBU_Receiver_QueryFormat (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hAesRx, const HW32 dwIndex, HW16 *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 HPI_AESEBU_Receiver_SetFormat (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 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 HPI_AESEBU_Receiver_GetFormat (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *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 HPI_AESEBU_Receiver_GetSampleRate (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwSampleRate)
 Returns the sample rate of the incoming AES/EBU digital audio stream in *pdwSampleRate.
HPI_ERR HPI_AESEBU_Receiver_GetUserData (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wIndex, HW16 *pwData)
 Get one of 4 userdata bytes from the AES/EBU stream.
HPI_ERR HPI_AESEBU_Receiver_GetChannelStatus (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wIndex, HW16 *pwData)
 Get one of 24 channel status bytes from the AES/EBU stream.
HPI_ERR HPI_AESEBU_Receiver_GetErrorStatus (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwErrorData)
 Get error status from the AES/EBU stream.
HPI_ERR HPI_AESEBU_Transmitter_SetSampleRate (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwSampleRate)
 Set the AES/EBU transmitters sample rate.
HPI_ERR HPI_AESEBU_Transmitter_SetUserData (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wIndex, HW16 wData)
 Set one of 4 userdata bytes in the AES/EBU stream.
HPI_ERR HPI_AESEBU_Transmitter_SetChannelStatus (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wIndex, HW16 wData)
 Set one of 24 channel status bytes in the AES/EBU stream.
HPI_ERR HPI_AESEBU_Transmitter_GetChannelStatus (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wIndex, HW16 *pwData)
 Get a byte of channel status in the AES/EBU stream.
HPI_ERR HPI_AESEBU_Transmitter_QueryFormat (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hAesTx, const HW32 dwIndex, HW16 *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 HPI_AESEBU_Transmitter_SetFormat (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wOutputFormat)
 Set the output electrical format for the AESEBU transmitter.
HPI_ERR HPI_AESEBU_Transmitter_GetFormat (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwOutputFormat)
 Get the current output electrical format for the AESEBU transmitter.
HPI_ERR HPI_Multiplexer_SetSource (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wSourceNodeType, HW16 wSourceNodeIndex)
 Set the signal source that the multiplexer will send to the destination.
HPI_ERR HPI_Multiplexer_GetSource (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *wSourceNodeType, HW16 *wSourceNodeIndex)
 Get the signal source that the multiplexer is currently connected to.
HPI_ERR HPI_Multiplexer_QuerySource (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 nIndex, HW16 *wSourceNodeType, HW16 *wSourceNodeIndex)
 Establish valid source node settings for this multiplexer.
HPI_ERR HPI_VoxSetThreshold (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short anGain0_01dB)
 Sets the threshold of a VOX control.
HPI_ERR HPI_VoxGetThreshold (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short *anGain0_01dB)
 Gets the current threshold of a VOX control.
HPI_ERR HPI_Bitstream_GetActivity (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwClkActivity, HW16 *pwDataActivity)
 Returns 2 indicative measurements of the incoming data stream.
HPI_ERR HPI_SampleClock_QuerySource (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hClock, const HW32 dwIndex, HW16 *pwSource)
 Query valid SampleClock sources Iterate dwIndex until an error is returned to get allowed values for SampleClock source in *pwFormat.
HPI_ERR HPI_SampleClock_SetSource (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wSource)
 Sets the clock source for the sample clock.
HPI_ERR HPI_SampleClock_GetSource (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwSource)
 Gets the current sample clock source.
HPI_ERR HPI_SampleClock_QuerySourceIndex (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hClock, const HW32 dwIndex, const HW32 dwSource, HW16 *pwSourceIndex)
 Query the available source indices.
HPI_ERR HPI_SampleClock_SetSourceIndex (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wSourceIndex)
 Sets the index for the currently selected source.
HPI_ERR HPI_SampleClock_GetSourceIndex (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwSourceIndex)
 Gets the AES/EBU input used to source the adapter clock.
HPI_ERR HPI_SampleClock_GetSampleRate (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwSampleRate)
 Gets the current adapter samplerate.
HPI_ERR HPI_SampleClock_QueryLocalRate (const HPI_HSUBSYS *phSubSys, const HPI_HCONTROL hClock, const HW32 dwIndex, HW32 *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 HPI_SampleClock_SetLocalRate (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 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 HPI_SampleClock_GetLocalRate (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwSampleRate)
 Get the samplerate of the sample clock's local PLL.
HPI_ERR HPI_SampleClock_SetAuto (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwEnable)
 Enable/disable clock autoswitching.
HPI_ERR HPI_SampleClock_GetAuto (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwEnable)
HPI_ERR HPI_SampleClock_SetLocalRateLock (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwLock)
 Enable/disable local rate changing.
HPI_ERR HPI_SampleClock_GetLocalRateLock (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwLock)
HPI_ERR HPI_Microphone_SetPhantomPower (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wOnOff)
 Sets the microphone phantom power on or off.
HPI_ERR HPI_Microphone_GetPhantomPower (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwOnOff)
 Gets the current microphone phantom power setting.
HPI_ERR HPI_ParametricEQ_GetInfo (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 *pwNumberOfBands, HW16 *pwEnabled)
 Find out the number of available bands of a parametric equalizer, and whether it is enabled or not.
HPI_ERR HPI_ParametricEQ_SetState (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wOnOff)
 Turn a parametric equalizer on or off.
HPI_ERR HPI_ParametricEQ_SetBand (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wIndex, HW16 nType, HW32 dwFrequencyHz, short nQ100, short nGain0_01dB)
 Set up one of the filters in a parametric equalizer.
HPI_ERR HPI_ParametricEQ_GetBand (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wIndex, HW16 *pnType, HW32 *pdwFrequencyHz, short *pnQ100, short *pnGain0_01dB)
 Get the settings of one of the filters in a parametric equalizer.
HPI_ERR HPI_ParametricEQ_GetCoeffs (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW16 wIndex, short coeffs[5])
 Retrieve the calculated IIR filter coefficients (scaled by 1000 into integers).
HPI_ERR HPI_Compander_SetEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwOn)
 Enable or disable the compander.
HPI_ERR HPI_Compander_GetEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwOn)
 Get the enable state of the compander.
HPI_ERR HPI_Compander_SetMakeupGain (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short nMakeupGain0_01dB)
 Set the makeup gain of a compander control.
HPI_ERR HPI_Compander_GetMakeupGain (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, short *pnMakeupGain0_01dB)
 Get the makeup gain of a compander control.
HPI_ERR HPI_Compander_SetRatio (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwIndex, HW32 wRatio100)
 Set the ratio for one of the compander knee points.
HPI_ERR HPI_Compander_GetRatio (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwIndex, HW32 *pwRatio100)
 Set the ratio for one of the compander knee points.
HPI_ERR HPI_Cobranet_HmiWrite (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwHmiAddress, HW32 dwByteCount, HW8 *pbData)
 Write to an HMI variable.
HPI_ERR HPI_Cobranet_HmiRead (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwHmiAddress, HW32 dwMaxByteCount, HW32 *pdwByteCount, HW8 *pbData)
 Read from an HMI variable.
HPI_ERR HPI_Cobranet_HmiGetStatus (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwStatus, HW32 *pdwReadableSize, HW32 *pdwWriteableSize)
 Get the status of the last cobranet operation.
HPI_ERR HPI_Cobranet_GetIPaddress (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwIPaddress)
 Get the CobraNet node's current IP address.
HPI_ERR HPI_Cobranet_SetIPaddress (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwIPaddress)
 Set the CobraNet node's current IP address.
HPI_ERR HPI_Cobranet_GetStaticIPaddress (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwIPaddress)
 Get the CobraNet node's static IP address.
HPI_ERR HPI_Cobranet_SetStaticIPaddress (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 dwIPaddress)
 Set the CobraNet node's static IP address.
HPI_ERR HPI_Cobranet_GetMACaddress (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hControl, HW32 *pdwMAC_MSBs, HW32 *pdwMAC_LSBs)
 Get the CobraNet node's MAC address.
HPI_ERR HPI_ToneDetector_GetState (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 *State)
 Get tone detector state.
HPI_ERR HPI_ToneDetector_SetEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 Enable)
 Enable (or disable) a ToneDetector control.
HPI_ERR HPI_ToneDetector_GetEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 *Enable)
 Get the Enable state of a ToneDetector control.
HPI_ERR HPI_ToneDetector_SetEventEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 EventEnable)
 Enable ToneDetector control event generation.
HPI_ERR HPI_ToneDetector_GetEventEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 *EventEnable)
 Get the event generation enable state of a ToneDetector control.
HPI_ERR HPI_ToneDetector_SetThreshold (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, int Threshold)
 Set the Threshold of a ToneDetector control.
HPI_ERR HPI_ToneDetector_GetThreshold (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, int *Threshold)
 Get the Threshold of a ToneDetector control.
HPI_ERR HPI_ToneDetector_GetFrequency (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 nIndex, HW32 *dwFrequency)
 Enumerate the detection frequencies of the tone detector control.
HPI_ERR HPI_SilenceDetector_GetState (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 *State)
 Get the State of a SilenceDetector control.
HPI_ERR HPI_SilenceDetector_SetEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 Enable)
 Enable a SilenceDetector control.
HPI_ERR HPI_SilenceDetector_GetEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 *Enable)
 Get the Enable setting of a SilenceDetector control.
HPI_ERR HPI_SilenceDetector_SetEventEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 EventEnable)
 Set the event generation by a SilenceDetector control.
HPI_ERR HPI_SilenceDetector_GetEventEnable (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 *EventEnable)
 Get the event generation enable setting of a SilenceDetector control.
HPI_ERR HPI_SilenceDetector_SetDelay (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 Delay)
 Set the Delay of a SilenceDetector control.
HPI_ERR HPI_SilenceDetector_GetDelay (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, HW32 *Delay)
 Get the trigger delay of a SilenceDetector control.
HPI_ERR HPI_SilenceDetector_SetThreshold (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, int Threshold)
 Set the Threshold of a SilenceDetector control.
HPI_ERR HPI_SilenceDetector_GetThreshold (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, int *Threshold)
 Get the Threshold of a SilenceDetector control.
HPI_ERR 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 HPI_Entity_CopyValueFrom (struct hpi_entity *entity, enum e_entity_type type, size_t item_count, void *value_dst_p)
 Copies item_count items from the Entity's value array into *value_dst_p.
HPI_ERR 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.
HPI_ERR HPI_Entity_AllocAndPack (const enum e_entity_type type, const size_t item_count, const enum e_entity_role role, void *value, 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 HPI_Universal_Info (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, struct hpi_entity **info)
 Retrieve information associated with an universal control.
HPI_ERR HPI_Universal_Get (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, struct hpi_entity **value)
 Returns the current value of an universal control as an entity.
HPI_ERR HPI_Universal_Set (const HPI_HSUBSYS *phSubSys, HPI_HCONTROL hC, struct hpi_entity *value)
 Set the current value of an universal control.
HPI_ERR HPI_ProfileOpenAll (const HPI_HSUBSYS *phSubSys, HW16 wAdapterIndex, HW16 wProfileIndex, HPI_HPROFILE *phProfile, HW16 *pwMaxProfiles)
 Open all the profiles on a particular adapter.
HPI_ERR HPI_ProfileGet (const HPI_HSUBSYS *phSubSys, HPI_HPROFILE hProfile, HW16 wIndex, HW16 *pwSeconds, HW32 *pdwMicroSeconds, HW32 *pdwCallCount, HW32 *pdwMaxMicroSeconds, HW32 *pdwMinMicroSeconds)
 Reads a single profile from the DSP's profile store.
HPI_ERR HPI_ProfileStartAll (const HPI_HSUBSYS *phSubSys, HPI_HPROFILE hProfile)
 Start profiling running.
HPI_ERR HPI_ProfileStopAll (const HPI_HSUBSYS *phSubSys, HPI_HPROFILE hProfile)
 Stop profiling.
HPI_ERR HPI_ProfileGetName (const HPI_HSUBSYS *phSubSys, HPI_HPROFILE hProfile, HW16 wIndex, char *szProfileName, HW16 nProfileNameLength)
 Get the name of a profile.
HPI_ERR HPI_ProfileGetUtilization (const HPI_HSUBSYS *phSubSys, HPI_HPROFILE hProfile, HW32 *pdwUtilization)
 Get the DSP utilization in 1/100 of a percent.
void HPI_GetErrorText (HPI_ERR wError, char *pszErrorText)
 Convert one of the HPI_ERROR_CODES into a string.
HPI_ERR HPI_FormatCreate (HPI_FORMAT *pFormat, HW16 wChannels, HW16 wFormat, HW32 dwSampleRate, HW32 dwBitRate, HW32 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


Typedef Documentation

typedef unsigned char HPI_ETHERNET_MAC_ADR[6]
 

Used for sending ethernet packets VIA HMI interface.

typedef HW16 HPI_ERR
 

An HPI error code HPI_ERROR_CODES.


Enumeration Type Documentation

enum HPI_ERROR_CODES
 

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 (adapter/Stream) 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_SUBSYSFINDADAPTERS_GETINFO  GetInfo call from SubSysFindAdapters failed.
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_INVALID_HANDLE  An HPI handle is invalid (uninitialised?).
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.
HPI_ERROR_RESPONSE_MISMATCH  The returned response did not match the sent message.
HPI_ERROR_TOO_MANY_ADAPTERS  Too many adapters.
HPI_ERROR_BAD_ADAPTER  Bad adpater.
HPI_ERROR_BAD_ADAPTER_NUMBER  Adapter number out of range or not set properly.
HPI_DUPLICATE_ADAPTER_NUMBER  2 adapters with the same adapter number.
HPI_ERROR_DSP_BOOTLOAD  DSP code failed to bootload.
HPI_ERROR_DSP_SELFTEST  Adapter failed DSP code self test.
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_DOS_MEMORY_ALLOC  Could not allocate memory in DOS.
HPI_ERROR_MEMORY_ALLOC  Could not allocate memory.
HPI_ERROR_PLD_LOAD  Failed to correctly load/config PLD .
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_FILE_READ_ERROR  File read operation on DSP code file failed.
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_FLASH  Base number for flash errors.
HPI_ERROR_BAD_CHECKSUM  Flash has bad checksum.
HPI_ERROR_RESERVED_1  Reserved for OEMs.
HPI_ERROR_INVALID_STREAM  Stream does not exist.
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_BUFFER_FULL  Stream buffer is full during stream write.
HPI_ERROR_BUFFER_EMPTY  Stream buffer is empty during stream read.
HPI_ERROR_INVALID_DATA_TRANSFER  Invalid datasize 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 an SRG is shared amongst streams, an incompatible samplerate is one that is different to any currently playing or recording 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_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_MISSING_ACK  I2C.
HPI_ERROR_ENTITY_TYPE_MISMATCH  Entity errors.
HPI_ERROR_CUSTOM  custom error to use for debugging
HPI_ERROR_MUTEX_TIMEOUT  hpioct32.c can't obtain mutex
HPI_ERROR_BACKEND_BASE  errors from HPI backends have values >= this
HPI_ERROR_ILLEGAL_CACHE_VALUE  indicates a cached HW16 value is invalid.


Generated on Thu Jul 29 09:56:41 2010 for AudioScience HPI by  doxygen 1.4.6-NO