• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2024 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef I_MEDIA_MONITOR_INFO_H
17 #define I_MEDIA_MONITOR_INFO_H
18 
19 #include <string>
20 #include "system_ability_definition.h"
21 
22 namespace OHOS {
23 namespace Media {
24 namespace MediaMonitor {
25 
26 enum ModuleId {
27     UNKNOW_MODULEID = -1,
28     AUDIO = 0,
29     MEDIA = 1,
30 };
31 
32 enum EventId {
33     UNKNOW_EVENTID = -1,
34     // FAULT_EVENT
35     LOAD_CONFIG_ERROR = 0,
36     LOAD_EFFECT_ENGINE_ERROR = 1,
37     AUDIO_SERVICE_STARTUP_ERROR = 2,
38     AUDIO_STREAM_EXHAUSTED_STATS = 3,
39     AUDIO_STREAM_CREATE_ERROR_STATS = 4,
40     // AGGREGATION_EVENT
41     BACKGROUND_SILENT_PLAYBACK = 5,
42     STREAM_UTILIZATION_STATS = 6,
43     AUDIO_DEVICE_UTILIZATION_STATS = 7,
44     BT_UTILIZATION_STATS = 8,
45     PERFORMANCE_UNDER_OVERRUN_STATS = 9,
46     PLAYBACK_VOLUME_STATS = 10,
47     MUTED_CAPTURE_STATS = 11,
48     STREAM_PROPERTY_STATS = 12,
49     // BEHAVIOR_EVENT
50     DEVICE_CHANGE = 13,
51     HEADSET_CHANGE = 14,
52     VOLUME_CHANGE = 15,
53     STREAM_CHANGE = 16,
54     AUDIO_ROUTE_CHANGE = 17,
55     AUDIO_PIPE_CHANGE = 18,
56     AUDIO_FOCUS_MIGRATE = 19,
57     SET_FORCE_USE_AUDIO_DEVICE = 20,
58 
59     // just for capturer mute status change
60     CAPTURE_MUTE_STATUS_CHANGE = 21,
61 
62     STREAM_STANDBY = 22,
63     AI_VOICE_NOISE_SUPPRESSION = 23,
64     VOLUME_SUBSCRIBE = 24,
65     SMARTPA_STATUS = 25,
66     JANK_PLAYBACK = 26,
67 
68     EXCLUDE_OUTPUT_DEVICE = 27,
69 };
70 
71 enum EventType {
72     UNKNOW_EVENTTYPE = -1,
73     FAULT_EVENT = 0,
74     BEHAVIOR_EVENT = 1,
75     FREQUENCY_AGGREGATION_EVENT = 2,
76     DURATION_AGGREGATION_EVENT = 3,
77 };
78 
79 struct MonitorDeviceInfo {
80     int32_t deviceType_ = -1;
81     int32_t deviceCategory_ = -1;
82     int32_t usageOrSourceType_ = -1;
83     int32_t audioDeviceUsage_ = -1;
84     std::string deviceName_ = "";
85     std::string address_ = "";
86     std::string networkId_ = "";
87 };
88 
89 enum RendererState {
90     /** INVALID state */
91     RENDERER_INVALID = -1,
92     /** Create New Renderer instance */
93     RENDERER_NEW,
94     /** Reneder Prepared state */
95     RENDERER_PREPARED,
96     /** Rendere Running state */
97     RENDERER_RUNNING,
98     /** Renderer Stopped state */
99     RENDERER_STOPPED,
100     /** Renderer Released state */
101     RENDERER_RELEASED,
102     /** Renderer Paused state */
103     RENDERER_PAUSED
104 };
105 
106 enum CapturerState {
107     /** Capturer INVALID state */
108     CAPTURER_INVALID = -1,
109     /** Create new capturer instance */
110     CAPTURER_NEW,
111     /** Capturer Prepared state */
112     CAPTURER_PREPARED,
113     /** Capturer Running state */
114     CAPTURER_RUNNING,
115     /** Capturer Stopped state */
116     CAPTURER_STOPPED,
117     /** Capturer Released state */
118     CAPTURER_RELEASED,
119     /** Capturer Paused state */
120     CAPTURER_PAUSED
121 };
122 
123 enum AudioConfigType {
124     AUDIO_CONVERTER_CONFIG = 0,
125     AUDIO_DEVICE_PRIVACY = 1,
126     AUDIO_EFFECT_CONFIG = 2,
127     AUDIO_INTERRUPT_POLICY_CONFIG = 3,
128     AUDIO_STRATEGY_ROUTER = 4,
129     AUDIO_TONE_DTMF_CONFIG = 5,
130     AUDIO_USAGE_STRATEGY = 6,
131     AUDIO_VOLUME_CONFIG = 7,
132 };
133 
134 enum ServiceId {
135     AUDIO_SERVER_ID = OHOS::AUDIO_DISTRIBUTED_SERVICE_ID,
136     AUDIO_POLICY_SERVICE_ID = OHOS::AUDIO_POLICY_SERVICE_ID,
137 };
138 
139 enum ServiceType {
140     AUDIO_SERVER = 0,
141     AUDIO_POLICY_SERVER = 1,
142     AUDIO_INTERRUPT_SERVER = 2,
143     AUDIO_POLICY_SERVICE = 3,
144 };
145 
146 enum PreferredType {
147     MEDIA_RENDER = 0,
148     CALL_RENDER = 1,
149     CALL_CAPTURE = 2,
150     RING_RENDER = 3,
151     RECORD_CAPTURE = 4,
152     TONE_RENDER = 5,
153 };
154 
155 enum FocusDirection {
156     LOCAL = 0,
157     ROMOTE = 1,
158 };
159 
160 enum PipeChangeReason {
161     DEVICE_CHANGE_FROM_FAST = 0,
162 };
163 
164 enum EffectEngineType {
165     AUDIO_EFFECT_PROCESS_ENGINE = 0,
166     AUDIO_CONVERTER_ENGINE = 1,
167 };
168 
169 enum AudioDeviceUsage {
170     MEDIA_OUTPUT_DEVICES = 1,
171     MEDIA_INPUT_DEVICES = 2,
172     ALL_MEDIA_DEVICES = 3,
173     CALL_OUTPUT_DEVICES = 4,
174     CALL_INPUT_DEVICES = 8,
175     ALL_CALL_DEVICES = 12,
176     D_ALL_DEVICES = 15,
177 };
178 } // namespace MediaMonitor
179 } // namespace Media
180 } // namespace OHOS
181 
182 #endif // I_MEDIA_MONITOR_INFO_H