1 /* 2 * Copyright (C) 2010 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef __MPH_H 18 #define __MPH_H 19 20 // Minimal perfect hash for each interface ID 21 22 #define MPH_NONE (-1) 23 #define MPH_MIN 0 24 25 // OpenSL ES 1.0.1 interfaces 26 #define MPH_3DCOMMIT 0 27 #define MPH_3DDOPPLER 1 28 #define MPH_3DGROUPING 2 29 #define MPH_3DLOCATION 3 30 #define MPH_3DMACROSCOPIC 4 31 #define MPH_3DSOURCE 5 32 #define MPH_AUDIODECODERCAPABILITIES 6 33 #define MPH_AUDIOENCODER 7 34 #define MPH_AUDIOENCODERCAPABILITIES 8 35 #define MPH_AUDIOIODEVICECAPABILITIES 9 36 #define MPH_BASSBOOST 10 37 #define MPH_BUFFERQUEUE 11 38 #define MPH_DEVICEVOLUME 12 39 #define MPH_DYNAMICINTERFACEMANAGEMENT 13 40 #define MPH_DYNAMICSOURCE 14 41 #define MPH_EFFECTSEND 15 42 #define MPH_ENGINE 16 43 #define MPH_ENGINECAPABILITIES 17 44 #define MPH_ENVIRONMENTALREVERB 18 45 #define MPH_EQUALIZER 19 46 #define MPH_LED 20 47 #define MPH_METADATAEXTRACTION 21 48 #define MPH_METADATATRAVERSAL 22 49 #define MPH_MIDIMESSAGE 23 50 #define MPH_MIDIMUTESOLO 24 51 #define MPH_MIDITEMPO 25 52 #define MPH_MIDITIME 26 53 #define MPH_MUTESOLO 27 54 #define MPH_NULL 28 // shared by SL and XA 55 #define MPH_OBJECT 29 56 #define MPH_OUTPUTMIX 30 57 #define MPH_PITCH 31 58 #define MPH_PLAY 32 59 #define MPH_PLAYBACKRATE 33 60 #define MPH_PREFETCHSTATUS 34 61 #define MPH_PRESETREVERB 35 62 #define MPH_RATEPITCH 36 63 #define MPH_RECORD 37 64 #define MPH_SEEK 38 65 #define MPH_THREADSYNC 39 66 #define MPH_VIBRA 40 67 #define MPH_VIRTUALIZER 41 68 #define MPH_VISUALIZATION 42 69 #define MPH_VOLUME 43 70 71 // Wilhelm desktop extended interfaces 72 #define MPH_OUTPUTMIXEXT 44 73 74 // Android API level 9 extended interfaces 75 // GUID and MPH are shared by SL and XA, but currently documented for SL only 76 #define MPH_ANDROIDEFFECT 45 77 #define MPH_ANDROIDEFFECTCAPABILITIES 46 78 #define MPH_ANDROIDEFFECTSEND 47 79 #define MPH_ANDROIDCONFIGURATION 48 80 #define MPH_ANDROIDSIMPLEBUFFERQUEUE 49 81 82 // Android API level 12 extended interfaces 83 // GUID and MPH are shared by SL and XA, but currently documented for XA only 84 #define MPH_ANDROIDBUFFERQUEUESOURCE 50 85 86 // OpenMAX AL 1.0.1 interfaces 87 #define MPH_XAAUDIODECODERCAPABILITIES 51 88 #define MPH_XAAUDIOENCODER 52 89 #define MPH_XAAUDIOENCODERCAPABILITIES 53 90 #define MPH_XAAUDIOIODEVICECAPABILITIES 54 91 #define MPH_XACAMERA 55 92 #define MPH_XACAMERACAPABILITIES 56 93 #define MPH_XACONFIGEXTENSION 57 94 #define MPH_XADEVICEVOLUME 58 95 #define MPH_XADYNAMICINTERFACEMANAGEMENT 59 96 #define MPH_XADYNAMICSOURCE 60 97 #define MPH_XAENGINE 61 98 #define MPH_XAEQUALIZER 62 99 #define MPH_XAIMAGECONTROLS 63 100 #define MPH_XAIMAGEDECODERCAPABILITIES 64 101 #define MPH_XAIMAGEEFFECTS 65 102 #define MPH_XAIMAGEENCODER 66 103 #define MPH_XAIMAGEENCODERCAPABILITIES 67 104 #define MPH_XALED 68 105 #define MPH_XAMETADATAEXTRACTION 69 106 #define MPH_XAMETADATAINSERTION 70 107 #define MPH_XAMETADATATRAVERSAL 71 108 #define MPH_XANULL MPH_NULL 109 #define MPH_XAOBJECT 72 110 #define MPH_XAOUTPUTMIX 73 111 #define MPH_XAPLAY 74 112 #define MPH_XAPLAYBACKRATE 75 113 #define MPH_XAPREFETCHSTATUS 76 114 #define MPH_XARADIO 77 115 #define MPH_XARDS 78 116 #define MPH_XARECORD 79 117 #define MPH_XASEEK 80 118 #define MPH_XASNAPSHOT 81 119 #define MPH_XASTREAMINFORMATION 82 120 #define MPH_XATHREADSYNC 83 121 #define MPH_XAVIBRA 84 122 #define MPH_XAVIDEODECODERCAPABILITIES 85 123 #define MPH_XAVIDEOENCODER 86 124 #define MPH_XAVIDEOENCODERCAPABILITIES 87 125 #define MPH_XAVIDEOPOSTPROCESSING 88 126 #define MPH_XAVOLUME 89 127 128 // total number of interface IDs 129 #define MPH_MAX 90 130 131 #endif // !defined(__MPH_H) 132