summaryrefslogtreecommitdiffstats
path: root/src/MPH.h
blob: 593994aa7e371c16a8870e24fa94685ff48e3ba0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
/*
 * Copyright (C) 2010 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef __MPH_H
#define __MPH_H

// Minimal perfect hash for each interface ID

#define MPH_NONE                      (-1)
#define MPH_MIN                         0

// OpenSL ES 1.0.1 interfaces
#define MPH_3DCOMMIT                    0
#define MPH_3DDOPPLER                   1
#define MPH_3DGROUPING                  2
#define MPH_3DLOCATION                  3
#define MPH_3DMACROSCOPIC               4
#define MPH_3DSOURCE                    5
#define MPH_AUDIODECODERCAPABILITIES    6
#define MPH_AUDIOENCODER                7
#define MPH_AUDIOENCODERCAPABILITIES    8
#define MPH_AUDIOIODEVICECAPABILITIES   9
#define MPH_BASSBOOST                  10
#define MPH_BUFFERQUEUE                11
#define MPH_DEVICEVOLUME               12
#define MPH_DYNAMICINTERFACEMANAGEMENT 13
#define MPH_DYNAMICSOURCE              14
#define MPH_EFFECTSEND                 15
#define MPH_ENGINE                     16
#define MPH_ENGINECAPABILITIES         17
#define MPH_ENVIRONMENTALREVERB        18
#define MPH_EQUALIZER                  19
#define MPH_LED                        20
#define MPH_METADATAEXTRACTION         21
#define MPH_METADATATRAVERSAL          22
#define MPH_MIDIMESSAGE                23
#define MPH_MIDIMUTESOLO               24
#define MPH_MIDITEMPO                  25
#define MPH_MIDITIME                   26
#define MPH_MUTESOLO                   27
#define MPH_NULL                       28  // shared by SL and XA
#define MPH_OBJECT                     29
#define MPH_OUTPUTMIX                  30
#define MPH_PITCH                      31
#define MPH_PLAY                       32
#define MPH_PLAYBACKRATE               33
#define MPH_PREFETCHSTATUS             34
#define MPH_PRESETREVERB               35
#define MPH_RATEPITCH                  36
#define MPH_RECORD                     37
#define MPH_SEEK                       38
#define MPH_THREADSYNC                 39
#define MPH_VIBRA                      40
#define MPH_VIRTUALIZER                41
#define MPH_VISUALIZATION              42
#define MPH_VOLUME                     43

// Wilhelm desktop extended interfaces
#define MPH_OUTPUTMIXEXT               44

// Android API level 9 extended interfaces
// GUID and MPH are shared by SL and XA, but currently documented for SL only
#define MPH_ANDROIDEFFECT              45
#define MPH_ANDROIDEFFECTCAPABILITIES  46
#define MPH_ANDROIDEFFECTSEND          47
#define MPH_ANDROIDCONFIGURATION       48
#define MPH_ANDROIDSIMPLEBUFFERQUEUE   49

// Android API level 12 extended interfaces
// GUID and MPH are shared by SL and XA, but currently documented for XA only
#define MPH_ANDROIDBUFFERQUEUESOURCE   50

// OpenMAX AL 1.0.1 interfaces
#define MPH_XAAUDIODECODERCAPABILITIES   51
#define MPH_XAAUDIOENCODER               52
#define MPH_XAAUDIOENCODERCAPABILITIES   53
#define MPH_XAAUDIOIODEVICECAPABILITIES  54
#define MPH_XACAMERA                     55
#define MPH_XACAMERACAPABILITIES         56
#define MPH_XACONFIGEXTENSION            57
#define MPH_XADEVICEVOLUME               58
#define MPH_XADYNAMICINTERFACEMANAGEMENT 59
#define MPH_XADYNAMICSOURCE              60
#define MPH_XAENGINE                     61
#define MPH_XAEQUALIZER                  62
#define MPH_XAIMAGECONTROLS              63
#define MPH_XAIMAGEDECODERCAPABILITIES   64
#define MPH_XAIMAGEEFFECTS               65
#define MPH_XAIMAGEENCODER               66
#define MPH_XAIMAGEENCODERCAPABILITIES   67
#define MPH_XALED                        68
#define MPH_XAMETADATAEXTRACTION         69
#define MPH_XAMETADATAINSERTION          70
#define MPH_XAMETADATATRAVERSAL          71
#define MPH_XANULL                 MPH_NULL
#define MPH_XAOBJECT                     72
#define MPH_XAOUTPUTMIX                  73
#define MPH_XAPLAY                       74
#define MPH_XAPLAYBACKRATE               75
#define MPH_XAPREFETCHSTATUS             76
#define MPH_XARADIO                      77
#define MPH_XARDS                        78
#define MPH_XARECORD                     79
#define MPH_XASEEK                       80
#define MPH_XASNAPSHOT                   81
#define MPH_XASTREAMINFORMATION          82
#define MPH_XATHREADSYNC                 83
#define MPH_XAVIBRA                      84
#define MPH_XAVIDEODECODERCAPABILITIES   85
#define MPH_XAVIDEOENCODER               86
#define MPH_XAVIDEOENCODERCAPABILITIES   87
#define MPH_XAVIDEOPOSTPROCESSING        88
#define MPH_XAVOLUME                     89

// Android API level 20 extended interfaces
#define MPH_ANDROIDACOUSTICECHOCANCELLATION 90
#define MPH_ANDROIDAUTOMATICGAINCONTROL     91
#define MPH_ANDROIDNOISESUPPRESSION         92

// total number of interface IDs
#define MPH_MAX                          93

#endif // !defined(__MPH_H)