17df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
27df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * File:
47df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * eas.h
57df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
67df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Contents and purpose:
77df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * The public interface header for the EAS synthesizer.
87df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
97df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * This header only contains declarations that are specific
1056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * to this implementation.
117df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * DO NOT MODIFY THIS FILE!
1356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
147df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Copyright Sonic Network Inc. 2005, 2006
157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * you may not use this file except in compliance with the License.
187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * You may obtain a copy of the License at
197df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
207df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * See the License for the specific language governing permissions and
267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * limitations under the License.
277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Revision Control:
307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *   $Revision: 852 $
317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *   $Date: 2007-09-04 11:43:49 -0700 (Tue, 04 Sep 2007) $
327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
347df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#ifndef _EAS_H
367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define _EAS_H
377df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#include "eas_types.h"
397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/* for C++ linkage */
417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#ifdef __cplusplus
427df30109963092559d3760c0661a020f9daf1030The Android Open Source Projectextern "C" {
437df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif
447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/* library version macro */
467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define MAKE_LIB_VERSION(a,b,c,d) (((((((EAS_U32) a <<8) | (EAS_U32) b) << 8) | (EAS_U32) c) << 8) | (EAS_U32) d)
477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#define LIB_VERSION MAKE_LIB_VERSION(3, 6, 10, 14)
487df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
497df30109963092559d3760c0661a020f9daf1030The Android Open Source Projecttypedef struct
507df30109963092559d3760c0661a020f9daf1030The Android Open Source Project{
5156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_U32     libVersion;
5256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_BOOL    checkedVersion;
5356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_I32     maxVoices;
5456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_I32     numChannels;
5556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_I32     sampleRate;
5656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_I32     mixBufferSize;
5756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_BOOL    filterEnabled;
5856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_U32     buildTimeStamp;
5956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_CHAR    *buildGUID;
607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project} S_EAS_LIB_CONFIG;
617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/* enumerated effects module numbers for configuration */
637df30109963092559d3760c0661a020f9daf1030The Android Open Source Projecttypedef enum
647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project{
6556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_ENHANCER = 0,
6656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_COMPRESSOR,
6756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_REVERB,
6856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_CHORUS,
6956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_WIDENER,
7056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_GRAPHIC_EQ,
7156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_WOW,
7256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_MAXIMIZER,
7356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_TONECONTROLEQ,
7456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    NUM_EFFECTS_MODULES
757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project} E_FX_MODULES;
767df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
777df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/* enumerated optional module numbers for configuration */
787df30109963092559d3760c0661a020f9daf1030The Android Open Source Projecttypedef enum
797df30109963092559d3760c0661a020f9daf1030The Android Open Source Project{
8056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_MMAPI_TONE_CONTROL = 0,
8156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_MODULE_METRICS
827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project} E_OPT_MODULES;
8356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define NUM_OPTIONAL_MODULES    2
847df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/* enumerated audio decoders for configuration */
867df30109963092559d3760c0661a020f9daf1030The Android Open Source Projecttypedef enum
877df30109963092559d3760c0661a020f9daf1030The Android Open Source Project{
8856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_DECODER_PCM = 0,
8956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_DECODER_SMAF_ADPCM,
9056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_DECODER_IMA_ADPCM,
9156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_DECODER_7BIT_SMAF_ADPCM,
9256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_DECODER_NOT_SUPPORTED
937df30109963092559d3760c0661a020f9daf1030The Android Open Source Project} E_DECODER_MODULES;
9456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define NUM_DECODER_MODULES     4
957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/* defines for EAS_PEOpenStream flags parameter */
9756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define PCM_FLAGS_STEREO        0x00000100  /* stream is stereo */
9856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define PCM_FLAGS_8_BIT         0x00000001  /* 8-bit format */
9956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define PCM_FLAGS_UNSIGNED      0x00000010  /* unsigned format */
10056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define PCM_FLAGS_STREAMING     0x80000000  /* streaming mode */
1017df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
1027df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/* maximum volume setting */
10356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define EAS_MAX_VOLUME          100
1047df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
1057df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
1067df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Init()
1077df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1087df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Purpose:
1097df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Initialize the synthesizer library
1107df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1117df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
11256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  polyphony       - number of voices to play (dynamic memory model only)
11356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  ppLibData       - pointer to data handle variable for this instance
1147df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
1167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
1197df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_Init (EAS_DATA_HANDLE *ppEASData);
1207df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
1217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
1227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Config()
1237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Purpose:
1257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns a pointer to a structure containing the configuration options
1267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * in this library build.
1277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
1297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
1317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
1347df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC const S_EAS_LIB_CONFIG *EAS_Config (void);
1357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
1367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
1377df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Shutdown()
1387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Purpose:
1407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Shuts down the library. Deallocates any memory associated with the
1417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * synthesizer (dynamic memory model only)
1427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1437df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
14456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pEASData        - handle to data for this instance
1457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
1477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1487df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1497df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
1507df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_Shutdown (EAS_DATA_HANDLE pEASData);
1517df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
1527df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
1537df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Render()
1547df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1557df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Purpose:
1567df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Parse the Midi data and render PCM audio data.
1577df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1587df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
1597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *  pEASData        - buffer for internal EAS data
16056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pOut            - output buffer pointer
16156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  nNumRequested   - requested num samples to generate
16256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pnNumGenerated  - actual number of samples generated
1637df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
16556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  EAS_SUCCESS if PCM data was successfully rendered
1667df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1677df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1687df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
1697df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_Render (EAS_DATA_HANDLE pEASData, EAS_PCM *pOut, EAS_I32 numRequested, EAS_I32 *pNumGenerated);
1707df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
1717df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
1727df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetRepeat()
1737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
17456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
1757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Set the selected stream to repeat.
1767df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1777df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
17856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pEASData        - handle to data for this instance
17956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  streamHandle    - handle to stream
18056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  repeatCount     - repeat count (0 = no repeat, -1 = repeat forever)
18156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
1827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
1837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1847df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
1857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
1867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Notes:
18756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  0 = no repeat
18856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  1 = repeat once, i.e. play through twice
1897df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *  -1 = repeat forever
1907df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
1917df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
1927df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetRepeat (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 repeatCount);
1937df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
1947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
1957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetRepeat()
1967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
19756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
1987df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Gets the current repeat count for the selected stream.
1997df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2007df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
20156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pEASData        - handle to data for this instance
20256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  streamHandle    - handle to stream
20356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pRrepeatCount   - pointer to variable to hold repeat count
20456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
2057df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
2067df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2077df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
2087df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2097df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Notes:
21056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  0 = no repeat
21156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  1 = repeat once, i.e. play through twice
2127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *  -1 = repeat forever
2137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
2147df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
2157df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetRepeat (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pRepeatCount);
2167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
2177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
2187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetPlaybackRate()
2197df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
22056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
2217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Set the playback rate.
2227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
22456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pEASData        - handle to data for this instance
22556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  streamHandle    - handle to stream
22656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  rate            - rate (28-bit fractional amount)
22756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
2287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
2297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
2317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
2337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
2347df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetPlaybackRate (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_U32 rate);
23556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define MAX_PLAYBACK_RATE   (EAS_U32)(1L << 29)
23656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define MIN_PLAYBACK_RATE   (EAS_U32)(1L << 27)
2377df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
2387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
2397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetTransposition)
2407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
24156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
2427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Sets the key tranposition for the synthesizer. Transposes all
2437df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * melodic instruments by the specified amount. Range is limited
2447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * to +/-12 semitones.
2457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
24756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pEASData        - handle to data for this instance
24856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  streamHandle    - handle to stream
24956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  transposition   - +/-12 semitones
25056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
2517df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
2527df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2537df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
2547df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2557df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
2567df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
2577df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetTransposition (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 transposition);
25856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define MAX_TRANSPOSE       12
2597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
2607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
2617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetSynthPolyphony()
2627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
26356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
2647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Set the polyphony of the synthesizer. Value must be >= 1 and <= the
2657df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * maximum number of voices. This function will pin the polyphony
2667df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * at those limits
2677df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2687df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
26956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
27056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * synthNum         - synthesizer number (0 = onboard, 1 = DSP)
27156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * polyphonyCount   - the desired polyphony count
27256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
2737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
2747df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
2767df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2777df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
2787df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
2797df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetSynthPolyphony (EAS_DATA_HANDLE pEASData, EAS_I32 synthNum, EAS_I32 polyphonyCount);
2807df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
2817df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
2827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetSynthPolyphony()
2837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
28456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
2857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns the current polyphony setting of the synthesizer
2867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2877df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
28856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
28956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * synthNum         - synthesizer number (0 = onboard, 1 = DSP)
29056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pPolyphonyCount  - pointer to variable to receive polyphony count
29156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
2927df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
2937df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
2957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
2967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
2977df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
2987df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetSynthPolyphony (EAS_DATA_HANDLE pEASData, EAS_I32 synthNum, EAS_I32 *pPolyphonyCount);
2997df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
3007df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
3017df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetPolyphony()
3027df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
30356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
3047df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Set the polyphony of the stream. Value must be >= 1 and <= the
3057df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * maximum number of voices. This function will pin the polyphony
3067df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * at those limits
3077df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3087df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
30956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
31056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - handle returned by EAS_OpenFile
31156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * polyphonyCount   - the desired polyphony count
31256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
3137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
3147df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
3167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
3187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
3197df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetPolyphony (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 polyphonyCount);
3207df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
3217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
3227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetPolyphony()
3237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
32456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
3257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns the current polyphony setting of the stream
3267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
32856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
32956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - handle returned by EAS_OpenFile
33056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pPolyphonyCount  - pointer to variable to receive polyphony count
33156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
3327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
3337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3347df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
3357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
3377df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
3387df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetPolyphony (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pPolyphonyCount);
3397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
3407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
3417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetPriority()
3427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
34356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
3447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Set the priority of the stream. Determines which stream's voices
3457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * are stolen when there are insufficient voices for all notes.
3467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Value must be in the range of 1-255, lower values are higher
3477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * priority. The default priority is 50.
3487df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3497df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
35056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
35156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - handle returned by EAS_OpenFile
35256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * polyphonyCount   - the desired polyphony count
35356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
3547df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
3557df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3567df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
3577df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3587df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
3597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
3607df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetPriority (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 priority);
3617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
3627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
3637df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetPriority()
3647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
36556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
3667df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns the current priority setting of the stream
3677df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3687df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
36956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
37056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - handle returned by EAS_OpenFile
37156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pPriority        - pointer to variable to receive priority
37256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
3737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
3747df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
3767df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3777df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
3787df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
3797df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetPriority (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pPriority);
3807df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
3817df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
3827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetVolume()
3837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
38456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
3857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Set the master volume for the mixer. The default volume setting is
3867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * 90 (-10 dB). The volume range is 0 to 100 in 1dB increments.
3877df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3887df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
38956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
39056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * volume           - the desired master volume
39156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
3927df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
3937df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
3967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * overrides any previously set master volume from sysex
3977df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
3987df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
3997df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
4007df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetVolume (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 volume);
4017df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
4027df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
4037df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetVolume()
4047df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
40556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
4067df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns the master volume for the mixer in 1dB increments.
4077df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4087df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
40956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
41056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * volume           - the desired master volume
41156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
4127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
4137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4147df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
4167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * overrides any previously set master volume from sysex
4177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
4197df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
4207df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_I32 EAS_GetVolume (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle);
4217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
4227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
4237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetMaxLoad()
4247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
42556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
4267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Sets the maximum workload the parsers will do in a single call to
4277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Render. The units are currently arbitrary, but should correlate
4287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * well to the actual CPU cycles consumed. The primary effect is to
4297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * reduce the occasional peaks in CPU cycles consumed when parsing
4307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * dense parts of a MIDI score. Setting maxWorkLoad to zero disables
4317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * the workload limiting function.
4327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
43456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  pEASData        - handle to data for this instance
43556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *  maxLoad         - the desired maximum workload
43656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
4377df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
4387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
4407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
4427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
4437df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetMaxLoad (EAS_DATA_HANDLE pEASData, EAS_I32 maxLoad);
4447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
4457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
4467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetMaxPCMStreams()
4477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
4487df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Sets the maximum number of PCM streams allowed in parsers that
4497df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * use PCM streaming.
4507df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4517df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
45256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
45356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - handle returned by EAS_OpenFile
45456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * maxNumStreams    - maximum number of PCM streams
4557df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
4567df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
4577df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetMaxPCMStreams (EAS_DATA_HANDLE pEASData, EAS_HANDLE pStream, EAS_I32 maxNumStreams);
4587df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
4597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
4607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_OpenFile()
4617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
46256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
4637df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Opens a file for audio playback.
4647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4657df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
46656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
46756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * locator          - pointer to filename or other locating information
46856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pStreamHandle    - pointer to stream handle variable
46956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
4707df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
47156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
4727df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
4747df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
4767df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
4777df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_OpenFile (EAS_DATA_HANDLE pEASData, EAS_FILE_LOCATOR locator, EAS_HANDLE *pStreamHandle);
4787df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
4797df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#ifdef MMAPI_SUPPORT
4807df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
4817df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_MMAPIToneControl()
4827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
48356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
4847df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Opens a ToneControl file for audio playback.
4857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
48756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
48856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * locator          - pointer to filename or other locating information
48956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pStreamHandle    - pointer to stream handle variable
49056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
4917df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
49256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
4937df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
4957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
4967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
4977df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
4987df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_MMAPIToneControl (EAS_DATA_HANDLE pEASData, EAS_FILE_LOCATOR locator, EAS_HANDLE *pStreamHandle);
4997df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
5007df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
5017df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetWaveFmtChunk
5027df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
5037df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Helper function to retrieve WAVE file fmt chunk for MMAPI
5047df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
50556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to EAS persistent data object
50656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - stream handle
50756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pFmtChunk        - pointer to pointer to FMT chunk data
5087df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
5097df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
5107df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetWaveFmtChunk (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_VOID_PTR *ppFmtChunk);
5117df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif
5127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
5137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
5147df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetFileType
5157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
5167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns the file type (see eas_types.h for enumerations)
5177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
51856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to EAS persistent data object
51956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - stream handle
52056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pFileType        - pointer to variable to receive file type
5217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
5227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
5237df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetFileType (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pFileType);
5247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
5257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
5267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_ParseMetaData()
5277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
52856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
52956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
5307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
53256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
53356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
53456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * playLength       - pointer to variable to store the play length (in msecs)
53556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
5367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
53756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
5387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
54056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *                  - resets the parser to the start of the file
5417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
5427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
5437df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_ParseMetaData (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pPlayLength);
5447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
5457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
5467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Prepare()
5477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
54856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
5497df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Prepares the synthesizer to play the file or stream. Parses the first
5507df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * frame of data from the file and arms the synthesizer.
5517df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5527df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
55356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
55456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
55556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
5567df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
55756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
5587df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
5607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
5627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
5637df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_Prepare (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle);
5647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
5657df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
5667df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_State()
5677df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
56856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
56956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the state of an audio file or stream.
5707df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5717df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
57256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
57356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
57456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
5757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
57656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
5777df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5787df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
5797df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5807df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
5817df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
5827df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_State (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_STATE *pState);
5837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
5847df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
5857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_RegisterMetaDataCallback()
5867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
58756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
5887df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Registers a metadata callback function for parsed metadata. To
5897df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * de-register the callback, call this function again with parameter
5907df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * cbFunc set to NULL.
5917df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
5927df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
59356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
59456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
59556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * cbFunc           - pointer to host callback function
59656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * metaDataBuffer   - pointer to metadata buffer
59756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * metaDataBufSize  - maximum size of the metadata buffer
59856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
5997df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
60056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
6017df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6027df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
6037df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6047df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
6057df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
6067df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_RegisterMetaDataCallback (
60756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_DATA_HANDLE pEASData,
60856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_HANDLE streamHandle,
60956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_METADATA_CBFUNC cbFunc,
61056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    char *metaDataBuffer,
61156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_I32 metaDataBufSize,
61256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_VOID_PTR pUserData);
6137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
6147df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
6157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetNoteCount ()
6167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
6177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns the total number of notes played in this stream
6187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6197df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
62056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
62156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
62256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pNoteCount       - pointer to variable to receive note count
6237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
6247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
6257df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetNoteCount (EAS_DATA_HANDLE pEASData, EAS_HANDLE pStream, EAS_I32 *pNoteCount);
6267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
6277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
6287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_CloseFile()
6297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
63056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
6317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Closes an audio file or stream. Playback should have either paused or
6327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * completed (EAS_State returns EAS_PAUSED or EAS_STOPPED).
6337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6347df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
63556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
63656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
63756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
6387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
63956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
6407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
6427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6437df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
6447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
6457df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_CloseFile (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle);
6467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
6477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
6487df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_OpenMIDIStream()
6497df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
65056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
6517df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Opens a raw MIDI stream allowing the host to route MIDI cable data directly to the synthesizer
6527df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6537df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
65456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
65556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pStreamHandle    - pointer to variable to hold file or stream handle
65656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - open stream or NULL for new synthesizer instance
65756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
6587df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
65956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
6607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
6627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6637df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
6647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
6657df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_OpenMIDIStream (EAS_DATA_HANDLE pEASData, EAS_HANDLE *pStreamHandle, EAS_HANDLE streamHandle);
6667df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
6677df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
6687df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_WriteMIDIStream()
6697df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
67056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
6717df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Send data to the MIDI stream device
6727df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
67456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
67556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - stream handle
67656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pBuffer          - pointer to buffer
67756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * count            - number of bytes to write
67856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
6797df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
68056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
6817df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
6837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6847df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
6857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
6867df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_WriteMIDIStream(EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_U8 *pBuffer, EAS_I32 count);
6877df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
6887df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
6897df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_CloseMIDIStream()
6907df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
69156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
6927df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Closes a raw MIDI stream
6937df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
6947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
69556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
69656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - stream handle
69756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
6987df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
69956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
7007df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7017df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
7027df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7037df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
7047df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
7057df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_CloseMIDIStream (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle);
7067df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
7077df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
7087df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Locate()
7097df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
71056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
7117df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Locate into the file associated with the handle.
7127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
71456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
71556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file handle
71656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * milliseconds     - playback offset from start of file in milliseconds
71756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
7187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
71956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
7207df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
7227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * the actual offset will be quantized to the closest update period, typically
7237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * a resolution of 5.9ms. Notes that are started prior to this time will not
7247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * sound. Any notes currently playing will be shut off.
7257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
7277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
7287df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_Locate (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 milliseconds, EAS_BOOL offset);
7297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
7307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
7317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetRenderTime()
7327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
73356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
73456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the current playback offset
7357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
73756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
73856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
7397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
7407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Gets the render time clock in msecs.
7417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
7437df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
7457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
7467df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetRenderTime (EAS_DATA_HANDLE pEASData, EAS_I32 *pTime);
7477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
7487df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
7497df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetLocation()
7507df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
75156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
75256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the current playback offset
7537df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7547df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
75556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
75656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file handle
75756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
7587df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
7597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * The offset in milliseconds from the start of the current sequence, quantized
7607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * to the nearest update period. Actual resolution is typically 5.9 ms.
7617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
7637df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
7657df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
7667df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetLocation (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pTime);
7677df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
7687df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
7697df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Pause()
7707df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
77156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
7727df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Pauses the playback of the data associated with this handle. The audio
7737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * is gracefully ramped down to prevent clicks and pops. It may take several
7747df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * buffers of audio before the audio is muted.
7757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7767df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
77756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * psEASData        - pointer to overall EAS data structure
77856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
77956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
7807df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
78156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
7827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
7847df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
7877df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
7887df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_Pause (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle);
7897df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
7907df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
7917df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_Resume()
7927df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
79356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
7947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Resumes the playback of the data associated with this handle. The audio
7957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * is gracefully ramped up to prevent clicks and pops.
7967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
7977df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
79856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * psEASData        - pointer to overall EAS data structure
79956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
80056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8017df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
80256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8037df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8047df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
8057df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8067df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8077df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
8087df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
8097df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_Resume (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle);
8107df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
8117df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
8127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetParameter()
8137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
81456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
8157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Set the parameter of a module. See E_MODULES for a list of modules
8167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * and the header files of the modules for a list of parameters.
8177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
81956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * psEASData        - pointer to overall EAS data structure
82056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * module           - enumerated module number
82156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * param            - enumerated parameter number
82256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pValue           - pointer to variable to receive parameter value
82356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
82556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
8287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8297df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
8317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
8327df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetParameter (EAS_DATA_HANDLE pEASData, EAS_I32 module, EAS_I32 param, EAS_I32 *pValue);
8337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
8347df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
8357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetParameter()
8367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
83756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
8387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Set the parameter of a module. See E_MODULES for a list of modules
8397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * and the header files of the modules for a list of parameters.
8407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
84256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * psEASData        - pointer to overall EAS data structure
84356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * handle           - file or stream handle
84456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * module           - enumerated module number
84556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * param            - enumerated parameter number
84656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * value            - new parameter value
84756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8487df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
84956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8507df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8517df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
8527df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8537df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8547df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
8557df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
8567df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetParameter (EAS_DATA_HANDLE pEASData, EAS_I32 module, EAS_I32 param, EAS_I32 value);
8577df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
85856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifdef _METRICS_ENABLED
8597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
8607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_MetricsReport()
8617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
86256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
8637df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Displays the current metrics through the EAS_Report interface.
8647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8657df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
86656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData             - instance data handle
86756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8687df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
86956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8707df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8717df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
8727df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
8747df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
8757df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_MetricsReport (EAS_DATA_HANDLE pEASData);
8767df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
8777df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
8787df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_MetricsReset()
8797df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
88056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
8817df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Displays the current metrics through the EAS_Report interface.
8827df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
88456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData             - instance data handle
88556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
88756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
8887df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8897df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
8907df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
8917df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
8927df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
8937df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_MetricsReset (EAS_DATA_HANDLE pEASData);
8947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif
8957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
8967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
8977df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetSoundLibrary()
8987df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
89956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
9007df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Sets the location of the sound library.
9017df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9027df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
90356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData             - instance data handle
90456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle         - file or stream handle
90556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pSoundLib            - pointer to sound library
90656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
9077df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
90856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
9097df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9107df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
9117df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
9137df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
9147df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetSoundLibrary (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_SNDLIB_HANDLE pSndLib);
9157df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
9167df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
9177df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetHeaderSearchFlag()
9187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
9197df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * By default, when EAS_OpenFile is called, the parsers check the
9207df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * first few bytes of the file looking for a specific header. Some
9217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * mobile devices may add a header to the start of a file, which
9227df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * will prevent the parser from recognizing the file. If the
9237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * searchFlag is set to EAS_TRUE, the parser will search the entire
9247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * file looking for the header. This may enable EAS to recognize
9257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * some files that it would ordinarily reject. The negative is that
9267df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * it make take slightly longer to process the EAS_OpenFile request.
9277df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9287df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
92956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData             - instance data handle
93056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * searchFlag           - search flag (EAS_TRUE or EAS_FALSE)
9317df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
9327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
9337df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetHeaderSearchFlag (EAS_DATA_HANDLE pEASData, EAS_BOOL searchFlag);
9347df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
9357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
9367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetPlayMode()
9377df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
9387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Some file formats support special play modes, such as iMode partial
9397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * play mode. This call can be used to change the play mode. The
9407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * default play mode (usually straight playback) is always zero.
9417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
94356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData             - instance data handle
94456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * handle               - file or stream handle
94556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * playMode             - play mode (see eas_types.h for enumerations)
9467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
9477df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
9487df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetPlayMode (EAS_DATA_HANDLE pEASData, EAS_HANDLE pStream, EAS_I32 playMode);
9497df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
9507df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#ifdef DLS_SYNTHESIZER
9517df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
9527df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_LoadDLSCollection()
9537df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
95456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
9557df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Downloads a DLS collection
9567df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9577df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
95856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData             - instance data handle
95956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle         - file or stream handle
96056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * locator              - file locator
96156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
9627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
96356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
9647df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9657df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
9667df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * May overlay instruments in the GM sound set
9677df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9687df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
9697df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
9707df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_LoadDLSCollection (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_FILE_LOCATOR locator);
9717df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif
9727df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
9737df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
9747df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SetFrameBuffer()
9757df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
97656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
9777df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Sets the frame buffer pointer passed to the IPC communications functions
9787df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9797df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
98056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData             - instance data handle
98156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * locator              - file locator
98256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
9837df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
98456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
9857df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9867df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
9877df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * May overlay instruments in the GM sound set
9887df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
9897df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
9907df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
9917df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_SetFrameBuffer (EAS_DATA_HANDLE pEASData, EAS_FRAME_BUFFER_HANDLE pFrameBuffer);
9927df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
9937df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#ifdef EXTERNAL_AUDIO
9947df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
9957df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_RegExtAudioCallback()
9967df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
99756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
9987df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Registers callback functions for audio events.
9997df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
10007df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
100156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
100256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
100356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * cbProgChgFunc    - pointer to host callback function for program change
100456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * cbEventFunc      - pointer to host callback functio for note events
100556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
10067df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
100756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
10087df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
10097df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
10107df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
10117df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
10127df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
10137df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_RegExtAudioCallback (EAS_DATA_HANDLE pEASData,
101456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_HANDLE streamHandle,
101556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_VOID_PTR pInstData,
101656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_EXT_PRG_CHG_FUNC cbProgChgFunc,
101756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks    EAS_EXT_EVENT_FUNC cbEventFunc);
10187df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
10197df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
10207df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_GetMIDIControllers()
10217df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
102256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose:
10237df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns the current state of MIDI controllers on the requested channel.
10247df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
10257df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
102656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to overall EAS data structure
102756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle     - file or stream handle
102856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pControl         - pointer to structure to receive data
102956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
10307df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Outputs:
103156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *
10327df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
10337df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Side Effects:
10347df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
10357df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
10367df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
10377df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_PUBLIC EAS_RESULT EAS_GetMIDIControllers (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_U8 channel, S_MIDI_CONTROLLERS *pControl);
10387df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif
10397df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
10407df30109963092559d3760c0661a020f9daf1030The Android Open Source Project/*----------------------------------------------------------------------------
10417df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * EAS_SearchFile
10427df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
10437df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Search file for specific sequence starting at current file
10447df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * position. Returns offset to start of sequence.
10457df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
10467df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Inputs:
104756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData         - pointer to EAS persistent data object
104856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * fileHandle       - file handle
104956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * searchString     - pointer to search sequence
105056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * len              - length of search sequence
105156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pOffset          - pointer to variable to store offset to sequence
10527df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *
10537df30109963092559d3760c0661a020f9daf1030The Android Open Source Project * Returns EAS_EOF if end-of-file is reached
10547df30109963092559d3760c0661a020f9daf1030The Android Open Source Project *----------------------------------------------------------------------------
10557df30109963092559d3760c0661a020f9daf1030The Android Open Source Project*/
10567df30109963092559d3760c0661a020f9daf1030The Android Open Source ProjectEAS_RESULT EAS_SearchFile (EAS_DATA_HANDLE pEASData, EAS_FILE_HANDLE fileHandle, const EAS_U8 *searchString, EAS_I32 len, EAS_I32 *pOffset);
10577df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
10587df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#ifdef __cplusplus
10597df30109963092559d3760c0661a020f9daf1030The Android Open Source Project} /* end extern "C" */
10607df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif
10617df30109963092559d3760c0661a020f9daf1030The Android Open Source Project
10627df30109963092559d3760c0661a020f9daf1030The Android Open Source Project#endif /* #ifndef _EAS_H */
1063