156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * File: 456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * eas.h 556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Contents and purpose: 756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * The public interface header for the EAS synthesizer. 856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * This header only contains declarations that are specific 1056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * to this implementation. 1156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 1256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * DO NOT MODIFY THIS FILE! 1356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 1456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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. 2756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 2856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 2956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Revision Control: 3056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * $Revision: 852 $ 3156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * $Date: 2007-09-04 11:43:49 -0700 (Tue, 04 Sep 2007) $ 3256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 3356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 3456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 3556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifndef _EAS_H 3656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define _EAS_H 3756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 3856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#include "eas_types.h" 3956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 4056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* for C++ linkage */ 4156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifdef __cplusplus 4256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparksextern "C" { 4356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#endif 4456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 4556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* library version macro */ 4656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define MAKE_LIB_VERSION(a,b,c,d) (((((((EAS_U32) a <<8) | (EAS_U32) b) << 8) | (EAS_U32) c) << 8) | (EAS_U32) d) 4756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define LIB_VERSION MAKE_LIB_VERSION(3, 6, 10, 14) 4856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 4956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparkstypedef struct 5056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks{ 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; 6056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} S_EAS_LIB_CONFIG; 6156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 6256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* enumerated effects module numbers for configuration */ 6356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparkstypedef enum 6456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks{ 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 7556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} E_FX_MODULES; 7656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 7756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* enumerated optional module numbers for configuration */ 7856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparkstypedef enum 7956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks{ 8056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks EAS_MODULE_MMAPI_TONE_CONTROL = 0, 8156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks EAS_MODULE_METRICS 8256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} E_OPT_MODULES; 8356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define NUM_OPTIONAL_MODULES 2 8456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 8556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* enumerated audio decoders for configuration */ 8656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparkstypedef enum 8756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks{ 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 9356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} E_DECODER_MODULES; 9456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define NUM_DECODER_MODULES 4 9556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 9656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* 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 */ 10156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 10256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/* maximum volume setting */ 10356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define EAS_MAX_VOLUME 100 10456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 10556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 10656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Init() 10756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 10856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 10956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Initialize the synthesizer library 11056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 11156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 11256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * polyphony - number of voices to play (dynamic memory model only) 11356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * ppLibData - pointer to data handle variable for this instance 11456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 11556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 11656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 11756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 11856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 11956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_Init (EAS_DATA_HANDLE *ppEASData); 12056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 12156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 12256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Config() 12356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 12456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 12556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns a pointer to a structure containing the configuration options 12656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * in this library build. 12756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 12856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 12956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 13056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 13156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 13256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 13356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 13456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC const S_EAS_LIB_CONFIG *EAS_Config (void); 13556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 13656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 13756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Shutdown() 13856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 13956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 14056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Shuts down the library. Deallocates any memory associated with the 14156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * synthesizer (dynamic memory model only) 14256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 14356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 14456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - handle to data for this instance 14556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 14656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 14756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 14856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 14956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 15056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_Shutdown (EAS_DATA_HANDLE pEASData); 15156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 15256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 15356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Render() 15456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 15556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 15656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Parse the Midi data and render PCM audio data. 15756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 15856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 15956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 16356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 16456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 16556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SUCCESS if PCM data was successfully rendered 16656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 16756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 16856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 16956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_Render (EAS_DATA_HANDLE pEASData, EAS_PCM *pOut, EAS_I32 numRequested, EAS_I32 *pNumGenerated); 17056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 17156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 17256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetRepeat() 17356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 17456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 17556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Set the selected stream to repeat. 17656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 17756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 18256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 18356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 18456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 18556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 18656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Notes: 18756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 0 = no repeat 18856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 1 = repeat once, i.e. play through twice 18956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * -1 = repeat forever 19056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 19156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 19256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetRepeat (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 repeatCount); 19356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 19456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 19556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetRepeat() 19656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 19756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 19856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Gets the current repeat count for the selected stream. 19956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 20056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 20556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 20656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 20756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 20856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 20956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Notes: 21056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 0 = no repeat 21156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 1 = repeat once, i.e. play through twice 21256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * -1 = repeat forever 21356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 21456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 21556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetRepeat (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pRepeatCount); 21656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 21756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 21856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetPlaybackRate() 21956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 22056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 22156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Set the playback rate. 22256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 22356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 22856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 22956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 23056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 23156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 23256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 23356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 23456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_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) 23756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 23856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 23956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetTransposition) 24056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 24156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 24256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Sets the key tranposition for the synthesizer. Transposes all 24356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * melodic instruments by the specified amount. Range is limited 24456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * to +/-12 semitones. 24556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 24656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 24756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - handle to data for this instance 24856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - handle to stream 24956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * transposition - +/-12 semitones 25056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 25156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 25256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 25356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 25456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 25556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 25656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 25756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetTransposition (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 transposition); 25856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#define MAX_TRANSPOSE 12 25956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 26056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 26156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetSynthPolyphony() 26256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 26356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 26456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Set the polyphony of the synthesizer. Value must be >= 1 and <= the 26556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * maximum number of voices. This function will pin the polyphony 26656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * at those limits 26756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 26856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 27356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 27456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 27556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 27656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 27756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 27856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 27956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetSynthPolyphony (EAS_DATA_HANDLE pEASData, EAS_I32 synthNum, EAS_I32 polyphonyCount); 28056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 28156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 28256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetSynthPolyphony() 28356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 28456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 28556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the current polyphony setting of the synthesizer 28656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 28756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 29256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 29356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 29456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 29556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 29656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 29756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 29856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetSynthPolyphony (EAS_DATA_HANDLE pEASData, EAS_I32 synthNum, EAS_I32 *pPolyphonyCount); 29956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 30056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 30156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetPolyphony() 30256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 30356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 30456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Set the polyphony of the stream. Value must be >= 1 and <= the 30556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * maximum number of voices. This function will pin the polyphony 30656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * at those limits 30756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 30856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 31356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 31456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 31556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 31656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 31756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 31856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 31956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetPolyphony (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 polyphonyCount); 32056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 32156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 32256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetPolyphony() 32356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 32456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 32556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the current polyphony setting of the stream 32656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 32756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 33256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 33356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 33456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 33556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 33656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 33756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 33856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetPolyphony (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pPolyphonyCount); 33956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 34056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 34156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetPriority() 34256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 34356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 34456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Set the priority of the stream. Determines which stream's voices 34556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * are stolen when there are insufficient voices for all notes. 34656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Value must be in the range of 1-255, lower values are higher 34756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * priority. The default priority is 50. 34856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 34956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 35456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 35556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 35656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 35756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 35856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 35956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 36056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetPriority (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 priority); 36156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 36256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 36356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetPriority() 36456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 36556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 36656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the current priority setting of the stream 36756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 36856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 37356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 37456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 37556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 37656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 37756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 37856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 37956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetPriority (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pPriority); 38056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 38156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 38256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetVolume() 38356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 38456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 38556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Set the master volume for the mixer. The default volume setting is 38656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 90 (-10 dB). The volume range is 0 to 100 in 1dB increments. 38756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 38856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 38956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to overall EAS data structure 39056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * volume - the desired master volume 39156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 39256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 39356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 39456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 39556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 39656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * overrides any previously set master volume from sysex 39756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 39856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 39956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 40056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetVolume (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 volume); 40156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 40256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 40356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetVolume() 40456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 40556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 40656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the master volume for the mixer in 1dB increments. 40756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 40856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 40956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to overall EAS data structure 41056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * volume - the desired master volume 41156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 41256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 41356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 41456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 41556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 41656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * overrides any previously set master volume from sysex 41756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 41856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 41956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 42056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_I32 EAS_GetVolume (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 42156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 42256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 42356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetMaxLoad() 42456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 42556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 42656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Sets the maximum workload the parsers will do in a single call to 42756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Render. The units are currently arbitrary, but should correlate 42856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * well to the actual CPU cycles consumed. The primary effect is to 42956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * reduce the occasional peaks in CPU cycles consumed when parsing 43056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * dense parts of a MIDI score. Setting maxWorkLoad to zero disables 43156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * the workload limiting function. 43256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 43356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 43456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - handle to data for this instance 43556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * maxLoad - the desired maximum workload 43656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 43756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 43856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 43956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 44056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 44156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 44256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 44356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetMaxLoad (EAS_DATA_HANDLE pEASData, EAS_I32 maxLoad); 44456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 44556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 44656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetMaxPCMStreams() 44756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 44856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Sets the maximum number of PCM streams allowed in parsers that 44956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * use PCM streaming. 45056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 45156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 45556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 45656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 45756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetMaxPCMStreams (EAS_DATA_HANDLE pEASData, EAS_HANDLE pStream, EAS_I32 maxNumStreams); 45856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 45956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 46056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_OpenFile() 46156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 46256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 46356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Opens a file for audio playback. 46456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 46556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 47056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 47156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 47256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 47356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 47456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 47556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 47656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 47756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_OpenFile (EAS_DATA_HANDLE pEASData, EAS_FILE_LOCATOR locator, EAS_HANDLE *pStreamHandle); 47856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 47956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifdef MMAPI_SUPPORT 48056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 48156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_MMAPIToneControl() 48256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 48356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 48456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Opens a ToneControl file for audio playback. 48556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 48656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 49156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 49256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 49356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 49456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 49556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 49656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 49756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 49856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_MMAPIToneControl (EAS_DATA_HANDLE pEASData, EAS_FILE_LOCATOR locator, EAS_HANDLE *pStreamHandle); 49956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 50056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 50156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetWaveFmtChunk 50256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 50356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Helper function to retrieve WAVE file fmt chunk for MMAPI 50456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 50556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to EAS persistent data object 50656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - stream handle 50756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pFmtChunk - pointer to pointer to FMT chunk data 50856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 50956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 51056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetWaveFmtChunk (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_VOID_PTR *ppFmtChunk); 51156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#endif 51256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 51356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 51456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetFileType 51556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 51656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the file type (see eas_types.h for enumerations) 51756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 51856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to EAS persistent data object 51956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - stream handle 52056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pFileType - pointer to variable to receive file type 52156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 52256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 52356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetFileType (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pFileType); 52456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 52556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 52656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_ParseMetaData() 52756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 52856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 52956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 53056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 53156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 53656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 53756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 53856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 53956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 54056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * - resets the parser to the start of the file 54156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 54256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 54356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_ParseMetaData (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pPlayLength); 54456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 54556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 54656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Prepare() 54756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 54856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 54956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Prepares the synthesizer to play the file or stream. Parses the first 55056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * frame of data from the file and arms the synthesizer. 55156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 55256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 55356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to overall EAS data structure 55456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - file or stream handle 55556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 55656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 55756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 55856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 55956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 56056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 56156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 56256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 56356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_Prepare (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 56456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 56556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 56656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_State() 56756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 56856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 56956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the state of an audio file or stream. 57056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 57156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 57256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to overall EAS data structure 57356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - file or stream handle 57456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 57556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 57656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 57756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 57856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 57956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 58056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 58156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 58256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_State (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_STATE *pState); 58356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 58456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 58556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_RegisterMetaDataCallback() 58656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 58756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 58856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Registers a metadata callback function for parsed metadata. To 58956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * de-register the callback, call this function again with parameter 59056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * cbFunc set to NULL. 59156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 59256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 59956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 60056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 60156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 60256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 60356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 60456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 60556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 60656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_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); 61356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 61456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 61556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetNoteCount () 61656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 61756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the total number of notes played in this stream 61856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 61956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 62356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 62456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 62556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetNoteCount (EAS_DATA_HANDLE pEASData, EAS_HANDLE pStream, EAS_I32 *pNoteCount); 62656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 62756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 62856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CloseFile() 62956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 63056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 63156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Closes an audio file or stream. Playback should have either paused or 63256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * completed (EAS_State returns EAS_PAUSED or EAS_STOPPED). 63356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 63456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 63556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to overall EAS data structure 63656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - file or stream handle 63756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 63856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 63956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 64056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 64156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 64256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 64356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 64456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 64556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_CloseFile (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 64656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 64756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 64856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_OpenMIDIStream() 64956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 65056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 65156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Opens a raw MIDI stream allowing the host to route MIDI cable data directly to the synthesizer 65256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 65356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 65856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 65956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 66056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 66156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 66256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 66356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 66456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 66556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_OpenMIDIStream (EAS_DATA_HANDLE pEASData, EAS_HANDLE *pStreamHandle, EAS_HANDLE streamHandle); 66656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 66756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 66856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_WriteMIDIStream() 66956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 67056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 67156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Send data to the MIDI stream device 67256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 67356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 67956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 68056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 68156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 68256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 68356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 68456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 68556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 68656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_WriteMIDIStream(EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_U8 *pBuffer, EAS_I32 count); 68756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 68856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 68956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_CloseMIDIStream() 69056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 69156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 69256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Closes a raw MIDI stream 69356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 69456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 69556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to overall EAS data structure 69656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - stream handle 69756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 69856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 69956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 70056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 70156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 70256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 70356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 70456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 70556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_CloseMIDIStream (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 70656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 70756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 70856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Locate() 70956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 71056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 71156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Locate into the file associated with the handle. 71256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 71356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 71856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 71956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 72056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 72156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 72256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * the actual offset will be quantized to the closest update period, typically 72356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * a resolution of 5.9ms. Notes that are started prior to this time will not 72456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * sound. Any notes currently playing will be shut off. 72556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 72656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 72756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 72856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_Locate (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 milliseconds, EAS_BOOL offset); 72956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 73056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 73156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetRenderTime() 73256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 73356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 73456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the current playback offset 73556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 73656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 73756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to overall EAS data structure 73856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 73956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 74056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Gets the render time clock in msecs. 74156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 74256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 74356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 74456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 74556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 74656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetRenderTime (EAS_DATA_HANDLE pEASData, EAS_I32 *pTime); 74756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 74856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 74956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetLocation() 75056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 75156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 75256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the current playback offset 75356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 75456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 75556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - pointer to overall EAS data structure 75656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - file handle 75756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 75856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 75956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * The offset in milliseconds from the start of the current sequence, quantized 76056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * to the nearest update period. Actual resolution is typically 5.9 ms. 76156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 76256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 76356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 76456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 76556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 76656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetLocation (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_I32 *pTime); 76756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 76856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 76956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Pause() 77056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 77156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 77256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Pauses the playback of the data associated with this handle. The audio 77356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * is gracefully ramped down to prevent clicks and pops. It may take several 77456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * buffers of audio before the audio is muted. 77556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 77656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 77756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * psEASData - pointer to overall EAS data structure 77856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - file or stream handle 77956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 78056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 78156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 78256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 78356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 78456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 78556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 78656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 78756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 78856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_Pause (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 78956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 79056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 79156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_Resume() 79256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 79356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 79456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Resumes the playback of the data associated with this handle. The audio 79556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * is gracefully ramped up to prevent clicks and pops. 79656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 79756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 79856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * psEASData - pointer to overall EAS data structure 79956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - file or stream handle 80056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 80156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 80256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 80356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 80456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 80556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 80656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 80756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 80856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 80956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_Resume (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle); 81056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 81156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 81256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetParameter() 81356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 81456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 81556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Set the parameter of a module. See E_MODULES for a list of modules 81656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * and the header files of the modules for a list of parameters. 81756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 81856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 82456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 82556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 82656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 82756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 82856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 82956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 83056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 83156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 83256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetParameter (EAS_DATA_HANDLE pEASData, EAS_I32 module, EAS_I32 param, EAS_I32 *pValue); 83356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 83456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 83556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetParameter() 83656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 83756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 83856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Set the parameter of a module. See E_MODULES for a list of modules 83956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * and the header files of the modules for a list of parameters. 84056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 84156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 84856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 84956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 85056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 85156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 85256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 85356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 85456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 85556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 85656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetParameter (EAS_DATA_HANDLE pEASData, EAS_I32 module, EAS_I32 param, EAS_I32 value); 85756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 85856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifdef _METRICS_ENABLED 85956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 86056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_MetricsReport() 86156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 86256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 86356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Displays the current metrics through the EAS_Report interface. 86456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 86556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 86656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - instance data handle 86756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 86856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 86956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 87056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 87156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 87256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 87356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 87456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 87556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_MetricsReport (EAS_DATA_HANDLE pEASData); 87656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 87756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 87856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_MetricsReset() 87956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 88056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 88156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Displays the current metrics through the EAS_Report interface. 88256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 88356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 88456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - instance data handle 88556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 88656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 88756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 88856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 88956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 89056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 89156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 89256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 89356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_MetricsReset (EAS_DATA_HANDLE pEASData); 89456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#endif 89556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 89656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 89756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetSoundLibrary() 89856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 89956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 90056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Sets the location of the sound library. 90156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 90256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 90356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - instance data handle 90456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - file or stream handle 90556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pSoundLib - pointer to sound library 90656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 90756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 90856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 90956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 91056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 91156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 91256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 91356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 91456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetSoundLibrary (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_SNDLIB_HANDLE pSndLib); 91556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 91656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 91756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetHeaderSearchFlag() 91856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 91956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * By default, when EAS_OpenFile is called, the parsers check the 92056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * first few bytes of the file looking for a specific header. Some 92156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * mobile devices may add a header to the start of a file, which 92256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * will prevent the parser from recognizing the file. If the 92356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * searchFlag is set to EAS_TRUE, the parser will search the entire 92456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * file looking for the header. This may enable EAS to recognize 92556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * some files that it would ordinarily reject. The negative is that 92656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * it make take slightly longer to process the EAS_OpenFile request. 92756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 92856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 92956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - instance data handle 93056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * searchFlag - search flag (EAS_TRUE or EAS_FALSE) 93156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 93256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 93356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetHeaderSearchFlag (EAS_DATA_HANDLE pEASData, EAS_BOOL searchFlag); 93456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 93556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 93656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetPlayMode() 93756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 93856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Some file formats support special play modes, such as iMode partial 93956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * play mode. This call can be used to change the play mode. The 94056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * default play mode (usually straight playback) is always zero. 94156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 94256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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) 94656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 94756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 94856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetPlayMode (EAS_DATA_HANDLE pEASData, EAS_HANDLE pStream, EAS_I32 playMode); 94956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 95056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifdef DLS_SYNTHESIZER 95156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 95256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_LoadDLSCollection() 95356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 95456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 95556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Downloads a DLS collection 95656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 95756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 95856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - instance data handle 95956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * streamHandle - file or stream handle 96056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * locator - file locator 96156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 96256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 96356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 96456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 96556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 96656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * May overlay instruments in the GM sound set 96756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 96856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 96956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 97056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_LoadDLSCollection (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_FILE_LOCATOR locator); 97156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#endif 97256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 97356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 97456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SetFrameBuffer() 97556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 97656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 97756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Sets the frame buffer pointer passed to the IPC communications functions 97856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 97956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Inputs: 98056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * pEASData - instance data handle 98156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * locator - file locator 98256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 98356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 98456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 98556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 98656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 98756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * May overlay instruments in the GM sound set 98856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 98956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 99056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 99156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_SetFrameBuffer (EAS_DATA_HANDLE pEASData, EAS_FRAME_BUFFER_HANDLE pFrameBuffer); 99256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 99356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifdef EXTERNAL_AUDIO 99456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 99556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_RegExtAudioCallback() 99656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 99756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 99856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Registers callback functions for audio events. 99956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 100056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 100656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 100756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 100856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 100956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 101056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 101156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 101256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 101356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_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); 101856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 101956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 102056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_GetMIDIControllers() 102156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 102256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Purpose: 102356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns the current state of MIDI controllers on the requested channel. 102456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 102556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 * 103056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Outputs: 103156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 103256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 103356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Side Effects: 103456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 103556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 103656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 103756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_PUBLIC EAS_RESULT EAS_GetMIDIControllers (EAS_DATA_HANDLE pEASData, EAS_HANDLE streamHandle, EAS_U8 channel, S_MIDI_CONTROLLERS *pControl); 103856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#endif 103956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 104056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks/*---------------------------------------------------------------------------- 104156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * EAS_SearchFile 104256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 104356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Search file for specific sequence starting at current file 104456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * position. Returns offset to start of sequence. 104556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 104656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 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 105256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * 105356c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks * Returns EAS_EOF if end-of-file is reached 105456c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks *---------------------------------------------------------------------------- 105556c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks*/ 105656c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave SparksEAS_RESULT EAS_SearchFile (EAS_DATA_HANDLE pEASData, EAS_FILE_HANDLE fileHandle, const EAS_U8 *searchString, EAS_I32 len, EAS_I32 *pOffset); 105756c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 105856c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#ifdef __cplusplus 105956c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks} /* end extern "C" */ 106056c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#endif 106156c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks 106256c99cd2c2c1e6ab038dac5fced5b92ccf11ff6cDave Sparks#endif /* #ifndef _EAS_H */ 1063