Linux Kernel
3.7.1
|
#include <linux/types.h>
Go to the source code of this file.
Data Structures | |
struct | hpi_format |
struct | hpi_anc_frame |
struct | hpi_async_event |
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
Definition in file hpi.h.
#define HPI_BITMASK_ALL_CHANNELS (0xFFFFFFFF) |
#define HPI_GAIN_OFF (-100 * HPI_UNITS_PER_dB) |
#define HPI_METER_MINIMUM (-150 * HPI_UNITS_PER_dB) |
#define hpi_volume_get_range hpi_volume_query_range |
enum ASYNC_EVENT_SOURCES |
enum eHPI_RDS_type |
enum HPI_ADAPTER_MODES |
Adapter Modes
These are used by HPI_AdapterSetModeEx()
HPI_ADAPTER_MODE_4OSTREAM |
4 outstream mode.
|
HPI_ADAPTER_MODE_6OSTREAM |
6 outstream mode.
|
HPI_ADAPTER_MODE_8OSTREAM |
8 outstream mode.
|
HPI_ADAPTER_MODE_16OSTREAM |
16 outstream mode.
|
HPI_ADAPTER_MODE_1OSTREAM |
one outstream mode.
|
HPI_ADAPTER_MODE_1 |
ASI504X mode 1. 12 outstream, 4 instream 0 to 48kHz sample rates (see ASI504X datasheet for more info). |
HPI_ADAPTER_MODE_2 |
ASI504X mode 2. 4 outstreams, 4 instreams at 0 to 192kHz sample rates (see ASI504X datasheet for more info). |
HPI_ADAPTER_MODE_3 |
ASI504X mode 3. 4 outstreams, 4 instreams at 0 to 192kHz sample rates (see ASI504X datasheet for more info). |
HPI_ADAPTER_MODE_MULTICHANNEL |
ASI504X multichannel mode. 2 outstreams -> 4 line outs = 1 to 8 channel streams), 4 lineins -> 1 instream (1 to 8 channel streams) at 0-48kHz. For more info see the SSX Specification. |
HPI_ADAPTER_MODE_12OSTREAM |
12 outstream mode.
|
HPI_ADAPTER_MODE_9OSTREAM |
9 outstream mode.
|
HPI_ADAPTER_MODE_MONO |
mono mode.
|
HPI_ADAPTER_MODE_LOW_LATENCY |
Low latency mode.
|
Adapter properties
These are used in HPI_AdapterSetProperty() and HPI_AdapterGetProperty()
HPI_ADAPTER_PROPERTY_ERRATA_1 | |
HPI_ADAPTER_PROPERTY_GROUPING |
Adapter grouping property Indicates whether the adapter supports the grouping API (for ASIO and SSX2) |
HPI_ADAPTER_PROPERTY_ENABLE_SSX2 |
Driver SSX2 property Tells the kernel driver to turn on SSX2 stream mapping. This feature is not used by the DSP. In fact the call is completely processed by the driver and is not passed on to the DSP at all. |
HPI_ADAPTER_PROPERTY_SSX2_SETTING |
Adapter SSX2 property Indicates the state of the adapter's SSX2 setting. This setting is stored in non-volatile memory on the adapter. A typical call sequence would be to use HPI_ADAPTER_PROPERTY_SSX2_SETTING to set SSX2 on the adapter and then to reload the driver. The driver would query HPI_ADAPTER_PROPERTY_SSX2_SETTING during startup and if SSX2 is set, it would then call HPI_ADAPTER_PROPERTY_ENABLE_SSX2 to enable SSX2 stream mapping within the kernel level of the driver. |
HPI_ADAPTER_PROPERTY_IRQ_RATE |
Enables/disables PCI(e) IRQ. A setting of 0 indicates that no interrupts are being generated. A DSP boot this property is set to 0. Setting to a non-zero value specifies the number of frames of audio that should be processed between interrupts. This property should be set to multiple of the mixer interval as read back from the HPI_ADAPTER_PROPERTY_INTERVAL property. |
HPI_ADAPTER_PROPERTY_READONLYBASE |
Base number for readonly properties |
HPI_ADAPTER_PROPERTY_LATENCY |
Readonly adapter latency property. This property returns in the input and output latency in samples. Property 1 is the estimated input latency in samples, while Property 2 is that output latency in samples. |
HPI_ADAPTER_PROPERTY_GRANULARITY |
Readonly adapter granularity property. The granulariy is the smallest size chunk of stereo samples that is processed by the adapter. This property returns the record granularity in samples in Property 1. Property 2 returns the play granularity. |
HPI_ADAPTER_PROPERTY_CURCHANNELS |
Readonly adapter number of current channels property. Property 1 is the number of record channels per record device. Property 2 is the number of play channels per playback device. |
HPI_ADAPTER_PROPERTY_SOFTWARE_VERSION |
Readonly adapter software version. The SOFTWARE_VERSION property returns the version of the software running on the adapter as Major.Minor.Release. Property 1 contains Major in bits 15..8 and Minor in bits 7..0. Property 2 contains Release in bits 7..0. |
HPI_ADAPTER_PROPERTY_MAC_ADDRESS_MSB |
Readonly adapter MAC address MSBs. The MAC_ADDRESS_MSB property returns the most significant 32 bits of the MAC address. Property 1 contains bits 47..32 of the MAC address. Property 2 contains bits 31..16 of the MAC address. |
HPI_ADAPTER_PROPERTY_MAC_ADDRESS_LSB |
Readonly adapter MAC address LSBs The MAC_ADDRESS_LSB property returns the least significant 16 bits of the MAC address. Property 1 contains bits 15..0 of the MAC address. |
HPI_ADAPTER_PROPERTY_EXTENDED_ADAPTER_TYPE |
Readonly extended adapter type number The EXTENDED_ADAPTER_TYPE property returns the 4 digits of an extended adapter type, i.e ASI8920-0022, 0022 is the extended type. The digits are returned as ASCII characters rather than the hex digits that are returned for the main type Property 1 returns the 1st two (left most) digits, i.e "00" in the example above, the upper byte being the left most digit. Property 2 returns the 2nd two digits, i.e "22" in the example above |
HPI_ADAPTER_PROPERTY_LOGTABLEN |
Readonly debug log buffer information |
HPI_ADAPTER_PROPERTY_LOGTABBEG | |
HPI_ADAPTER_PROPERTY_IP_ADDRESS |
Readonly adapter IP address For 192.168.1.101 Property 1 returns the 1st two (left most) digits, i.e 192*256 + 168 in the example above, the upper byte being the left most digit. Property 2 returns the 2nd two digits, i.e 1*256 + 101 in the example above, |
HPI_ADAPTER_PROPERTY_BUFFER_UPDATE_COUNT |
Readonly adapter buffer processed count. Returns a buffer processed count that is incremented every time all buffers for all streams are updated. This is useful for checking completion of all stream operations across the adapter when using grouped streams. |
HPI_ADAPTER_PROPERTY_INTERVAL |
Readonly mixer and stream intervals These intervals are measured in mixer frames. To convert to time, divide by the adapter samplerate. The mixer interval is the number of frames processed in one mixer iteration. The stream update interval is the interval at which streams check for and process data, and BBM host buffer counters are updated. Property 1 is the mixer interval in mixer frames. Property 2 is the stream update interval in mixer frames. |
HPI_ADAPTER_PROPERTY_CAPS1 |
Adapter capabilities 1 Property 1 - adapter can do multichannel (SSX1) Property 2 - adapter can do stream grouping (supports SSX2) |
HPI_ADAPTER_PROPERTY_CAPS2 |
Adapter capabilities 2 Property 1 - adapter can do samplerate conversion (MRX) Property 2 - adapter can do timestretch (TSX) |
HPI_ADAPTER_PROPERTY_SYNC_HEADER_CONNECTIONS |
Readonly adapter sync header connection count. |
HPI_ADAPTER_PROPERTY_SUPPORTS_SSX2 |
Readonly supports SSX2 property. Indicates the adapter supports SSX2 in some mode setting. The return value is true (1) or false (0). If the current adapter mode is MONO SSX2 is disabled, even though this property will return true. |
HPI_ADAPTER_PROPERTY_SUPPORTS_IRQ |
Readonly supports PCI(e) IRQ. Indicates that the adapter in it's current mode supports interrupts across the host bus. Note, this does not imply that interrupts are enabled. Instead it indicates that they can be enabled. |
HPI_ADAPTER_PROPERTY_SUPPORTS_FW_UPDATE |
Readonly supports firmware updating. Indicates that the adapter implements an interface to update firmware on the adapter. |
HPI_ADAPTER_PROPERTY_FIRMWARE_ID |
Readonly Firmware IDs Identifiy firmware independent of individual adapter type. May be used as a filter for firmware update images. Property 1 = Bootloader ID Property 2 = Main program ID |
enum HPI_AESEBU_ERRORS |
AES/EBU error status bits
Returned by HPI_Aesebu_Receiver_GetErrorStatus()
HPI_AESEBU_ERROR_NOT_LOCKED |
bit0: 1 when PLL is not locked |
HPI_AESEBU_ERROR_POOR_QUALITY |
bit1: 1 when signal quality is poor |
HPI_AESEBU_ERROR_PARITY_ERROR |
bit2: 1 when there is a parity error |
HPI_AESEBU_ERROR_BIPHASE_VIOLATION |
bit3: 1 when there is a bi-phase coding violation |
HPI_AESEBU_ERROR_VALIDITY |
bit4: 1 when the validity bit is high |
HPI_AESEBU_ERROR_CRC |
bit5: 1 when the CRC error bit is high |
enum HPI_AESEBU_FORMATS |
The physical encoding format of the AESEBU I/O.
Used in HPI_Aesebu_Transmitter_SetFormat(), HPI_Aesebu_Receiver_SetFormat() along with related Get and Query functions
enum HPI_CHANNEL_MODES |
Channel Modes
Used for HPI_ChannelModeSet/Get()
enum HPI_CONTROLS |
Mixer control types
HPI_CONTROL_GENERIC |
generic control. |
HPI_CONTROL_CONNECTION |
A connection between nodes. |
HPI_CONTROL_VOLUME |
volume control - works in dB_fs. |
HPI_CONTROL_METER |
peak meter control. |
HPI_CONTROL_MUTE | |
HPI_CONTROL_MULTIPLEXER |
multiplexer control. |
HPI_CONTROL_AESEBU_TRANSMITTER |
AES/EBU transmitter control |
HPI_CONTROL_AESEBUTX | |
HPI_CONTROL_AESEBU_RECEIVER |
AES/EBU receiver control. |
HPI_CONTROL_AESEBURX | |
HPI_CONTROL_LEVEL |
level/trim control - works in d_bu. |
HPI_CONTROL_TUNER |
tuner control. |
HPI_CONTROL_VOX |
vox control. |
HPI_CONTROL_CHANNEL_MODE |
channel mode control. |
HPI_CONTROL_BITSTREAM |
bitstream control. |
HPI_CONTROL_SAMPLECLOCK |
sample clock control. |
HPI_CONTROL_MICROPHONE |
microphone control. |
HPI_CONTROL_PARAMETRIC_EQ |
parametric EQ control. |
HPI_CONTROL_EQUALIZER | |
HPI_CONTROL_COMPANDER |
compander control. |
HPI_CONTROL_COBRANET |
cobranet control. |
HPI_CONTROL_TONEDETECTOR |
tone detector control. |
HPI_CONTROL_SILENCEDETECTOR |
silence detector control. |
HPI_CONTROL_PAD |
tuner PAD control. |
HPI_CONTROL_SRC |
samplerate converter control. |
HPI_CONTROL_UNIVERSAL |
universal control. |
HPI_CONTROL_LAST_INDEX |
highest control type ID |
enum HPI_DESTNODES |
Destination node types
HPI_DESTNODE_NONE |
This define can be used instead of 0 to indicate that there is no valid destination node. A control that exists on a source node can be searched for using a destination node value of either 0, or HPI_DESTNODE_NONE |
HPI_DESTNODE_ISTREAM |
In Stream (Record) node. |
HPI_DESTNODE_LINEOUT |
line out node. |
HPI_DESTNODE_AESEBU_OUT |
AES/EBU output node. |
HPI_DESTNODE_RF |
RF output node. |
HPI_DESTNODE_SPEAKER |
speaker output node. |
HPI_DESTNODE_COBRANET |
Cobranet output node - Audio samples from the device are sent out on the Cobranet network. |
HPI_DESTNODE_ANALOG |
analog output node. |
HPI_DESTNODE_RTP_SOURCE |
RTP stream output node - This node is a source for packets of RTP audio samples that are sent to other devices. |
HPI_DESTNODE_LAST_INDEX |
largest ID |
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()
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_INVALID_HANDLE | |
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 | |
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_BAD_SEQUENCE | |
HPI_ERROR_FLASH_ERASE | |
HPI_ERROR_FLASH_PROGRAM | |
HPI_ERROR_FLASH_VERIFY | |
HPI_ERROR_FLASH_TYPE | |
HPI_ERROR_FLASH_START | |
HPI_ERROR_FLASH_READ | |
HPI_ERROR_FLASH_READ_NO_FILE | |
HPI_ERROR_FLASH_SIZE | |
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_I2C_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_NVMEM_FULL | |
HPI_ERROR_NVMEM_FAIL | |
HPI_ERROR_I2C_BAD_ADR |
I2C |
HPI_ERROR_ENTITY_TYPE_MISMATCH | |
HPI_ERROR_ENTITY_ITEM_COUNT |
Entity item count did not match requested count |
HPI_ERROR_ENTITY_TYPE_INVALID | |
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.
|
HPI_ERROR_DSP_COMMUNICATION |
Communication with DSP failed |
enum HPI_FILTER_TYPE |
Equalizer filter types. Used by HPI_ParametricEq_SetBand()
enum HPI_FORMATS |
Audio format types
HPI_FORMAT_MIXER_NATIVE |
Used internally on adapter. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_PCM8_UNSIGNED |
8-bit unsigned PCM. Windows equivalent is WAVE_FORMAT_PCM. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_PCM16_SIGNED |
16-bit signed PCM. Windows equivalent is WAVE_FORMAT_PCM. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_MPEG_L1 |
MPEG-1 Layer-1. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_MPEG_L2 |
MPEG-1 Layer-2. Windows equivalent is WAVE_FORMAT_MPEG. The following table shows what combinations of mode and bitrate are possible:
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_MPEG_L3 |
MPEG-1 Layer-3. Windows equivalent is WAVE_FORMAT_MPEG. The following table shows what combinations of mode and bitrate are possible:
* Available on the ASI6000 series only | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_DOLBY_AC2 |
Dolby AC-2. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_DOLBY_AC3 |
Dolbt AC-3. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_PCM16_BIGENDIAN |
16-bit PCM big-endian. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_AA_TAGIT1_HITS |
TAGIT-1 algorithm - hits. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_AA_TAGIT1_INSERTS |
TAGIT-1 algorithm - inserts. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_PCM32_SIGNED |
32-bit signed PCM. Windows equivalent is WAVE_FORMAT_PCM. Each sample is a 32bit word. The most significant 24 bits contain a 24-bit sample and the least significant 8 bits are set to 0. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_RAW_BITSTREAM |
Raw bitstream - unknown format. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_AA_TAGIT1_HITS_EX1 |
TAGIT-1 algorithm hits - extended. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_PCM32_FLOAT |
32-bit PCM as an IEEE float. Windows equivalent is WAVE_FORMAT_IEEE_FLOAT. Each sample is a 32bit word in IEEE754 floating point format. The range is +1.0 to -1.0, which corresponds to digital fullscale. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_PCM24_SIGNED |
24-bit PCM signed. Windows equivalent is WAVE_FORMAT_PCM. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_OEM1 |
OEM format 1 - private. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_OEM2 |
OEM format 2 - private. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
HPI_FORMAT_UNDEFINED |
Undefined format. |
Commands used by HPI_MixerStore()
HPI_MIXER_STORE_SAVE |
Save all mixer control settings. |
HPI_MIXER_STORE_RESTORE |
Restore all controls from saved. |
HPI_MIXER_STORE_DELETE |
Delete saved control settings. |
HPI_MIXER_STORE_ENABLE |
Enable auto storage of some control settings. |
HPI_MIXER_STORE_DISABLE |
Disable auto storage of some control settings. |
HPI_MIXER_STORE_SAVE_SINGLE |
Unimplemented - save the attributes of a single control. |
enum HPI_MPEG_ANC_MODES |
MPEG Ancillary Data modes
The mode for the ancillary data insertion or extraction to operate in.
HPI_MPEG_ANC_HASENERGY |
the MPEG frames have energy information stored in them (5 bytes per stereo frame, 3 per mono) |
HPI_MPEG_ANC_RAW |
the entire ancillary data field is taken up by data from the Anc data buffer On encode, the encoder will insert the energy bytes before filling the remainder of the ancillary data space with data from the ancillary data buffer. |
enum HPI_MPEG_MODES |
MPEG modes
MPEG modes - can be used optionally for HPI_FormatCreate() parameter dwAttributes.
Using any mode setting other than HPI_MPEG_MODE_DEFAULT with single channel format will return an error.
HPI_MPEG_MODE_DEFAULT |
Causes the MPEG-1 Layer II bitstream to be recorded in single_channel mode when the number of channels is 1 and in stereo when the number of channels is 2. |
HPI_MPEG_MODE_STEREO |
Standard stereo without joint-stereo compression |
HPI_MPEG_MODE_JOINTSTEREO |
Joint stereo |
HPI_MPEG_MODE_DUALCHANNEL |
Left and Right channels are completely independent |
SampleClock source values
HPI_SAMPLECLOCK_SOURCE_LOCAL |
The sampleclock output is derived from its local samplerate generator. The local samplerate may be set using HPI_SampleClock_SetLocalRate(). |
HPI_SAMPLECLOCK_SOURCE_AESEBU_SYNC |
The adapter is clocked from a dedicated AES/EBU SampleClock input. |
HPI_SAMPLECLOCK_SOURCE_WORD |
From external wordclock connector |
HPI_SAMPLECLOCK_SOURCE_WORD_HEADER |
Board-to-board header |
HPI_SAMPLECLOCK_SOURCE_SMPTE |
FUTURE - SMPTE clock. |
HPI_SAMPLECLOCK_SOURCE_AESEBU_INPUT |
One of the aesebu inputs |
HPI_SAMPLECLOCK_SOURCE_NETWORK |
From a network interface e.g. Cobranet or Livewire at either 48 or 96kHz |
HPI_SAMPLECLOCK_SOURCE_PREV_MODULE |
From previous adjacent module (ASI2416 only) |
HPI_SAMPLECLOCK_SOURCE_LAST |
Update this if you add a new clock source. |
enum HPI_SOURCENODES |
Source node types
HPI_SOURCENODE_NONE |
This define can be used instead of 0 to indicate that there is no valid source node. A control that exists on a destination node can be searched for using a source node value of either 0, or HPI_SOURCENODE_NONE |
HPI_SOURCENODE_OSTREAM |
Out Stream (Play) node. |
HPI_SOURCENODE_LINEIN |
Line in node - could be analog, AES/EBU or network. |
HPI_SOURCENODE_AESEBU_IN |
AES/EBU input node. |
HPI_SOURCENODE_TUNER |
tuner node. |
HPI_SOURCENODE_RF |
RF input node. |
HPI_SOURCENODE_CLOCK_SOURCE |
clock source node. |
HPI_SOURCENODE_RAW_BITSTREAM |
raw bitstream node. |
HPI_SOURCENODE_MICROPHONE |
microphone node. |
HPI_SOURCENODE_COBRANET |
Cobranet input node - Audio samples come from the Cobranet network and into the device. |
HPI_SOURCENODE_ANALOG |
analog input node. |
HPI_SOURCENODE_ADAPTER |
adapter node. |
HPI_SOURCENODE_RTP_DESTINATION |
RTP stream input node - This node is a destination for packets of RTP audio samples from other devices. |
HPI_SOURCENODE_INTERNAL |
node internal to the device. |
HPI_SOURCENODE_LAST_INDEX |
largest ID |
enum HPI_STREAM_STATES |
Stream States
enum HPI_SWITCH_STATES |
enum HPI_TUNER_BAND |
Tuner bands
Used for HPI_Tuner_SetBand(),HPI_Tuner_GetBand()
enum HPI_TUNER_MODES |
Tuner Status Bits
These bitfield values are returned by a call to HPI_Tuner_GetStatus(). Multiple fields are returned from a single call.
HPI_TUNER_VIDEO_COLOR_PRESENT |
video color is present. |
HPI_TUNER_VIDEO_IS_60HZ |
60 hz video detected. |
HPI_TUNER_VIDEO_HORZ_SYNC_MISSING |
video HSYNC is missing. |
HPI_TUNER_VIDEO_STATUS_VALID |
video status is valid. |
HPI_TUNER_DIGITAL |
tuner reports digital programming. |
HPI_TUNER_MULTIPROGRAM |
tuner reports multiple programs. |
HPI_TUNER_PLL_LOCKED |
the tuner's PLL is locked. |
HPI_TUNER_FM_STEREO |
tuner reports back FM stereo. |
enum HPI_VOLUME_AUTOFADES |
u16 hpi_adapter_debug_read | ( | u16 | adapter_index, |
u32 | dsp_address, | ||
char * | p_bytes, | ||
int * | count_bytes | ||
) |
u16 hpi_adapter_get_assert2 | ( | u16 | adapter_index, |
u16 * | p_assert_count, | ||
char * | psz_assert, | ||
u32 * | p_param1, | ||
u32 * | p_param2, | ||
u32 * | p_dsp_string_addr, | ||
u16 * | p_processor_id | ||
) |
u16 hpi_instream_query_format | ( | u32 | h_instream, |
const struct hpi_format * | p_format | ||
) |
u16 hpi_instream_set_format | ( | u32 | h_instream, |
const struct hpi_format * | p_format | ||
) |
u16 hpi_mixer_store | ( | u32 | h_mixer, |
enum HPI_MIXER_STORE_COMMAND | command, | ||
u16 | index | ||
) |
u16 hpi_outstream_query_format | ( | u32 | h_outstream, |
struct hpi_format * | p_format | ||
) |
u16 hpi_outstream_set_format | ( | u32 | h_outstream, |
struct hpi_format * | p_format | ||
) |
u16 hpi_pad_get_program_type_string | ( | u32 | h_control, |
const u32 | data_type, | ||
const u32 | pTY, | ||
char * | psz_string, | ||
const u32 | string_length | ||
) |
u16 hpi_stream_estimate_buffer_size | ( | struct hpi_format * | pF, |
u32 | host_polling_rate_in_milli_seconds, | ||
u32 * | recommended_buffer_size | ||
) |