1 /*
2  * Copyright (c) 2022-2023 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 OHOS_DAUDIO_CONSTANTS_H
17 #define OHOS_DAUDIO_CONSTANTS_H
18 
19 #include <string>
20 #include <map>
21 
22 namespace OHOS {
23 namespace DistributedHardware {
24 // Distributed Auido Parameters
25 const std::string KEY_AUDIOPORT_DIR = "portdir";
26 const std::string KEY_AUDIOFORMAT = "format";
27 const std::string KEY_AUDIOCHANNELMASK = "channel";
28 const std::string KEY_AUDIOSAMPLERATE = "samplerate";
29 
30 const std::string VALUE_AUDIOPORT_DIR_IN = "portdirin";
31 const std::string VALUE_AUDIOPORT_DIR_OUT = "portdirout";
32 const std::string VALUE_AUDIOPORT_DIR_INOUT = "portdirinout";
33 
34 const std::string DEVICE_TYPE_OUTPUT_DEFAULT = "0";
35 const std::string DEVICE_TYPE_INPUT_DEFAULT = "1";
36 
37 const std::string VOLUME_GROUP_ID = "VOLUME_GROUP_ID";
38 const std::string INTERRUPT_GROUP_ID = "INTERRUPT_GROUP_ID";
39 
40 // Distributed Auido Parameters
41 const std::string VOLUME_LEVEL = "VOLUME_LEVEL";
42 const std::string VOLUME_EVENT_TYPE = "EVENT_TYPE";
43 const std::string MAX_VOLUME_LEVEL = "MAX_VOLUME_LEVEL";
44 const std::string MIN_VOLUME_LEVEL = "MIN_VOLUME_LEVEL";
45 const std::string STREAM_MUTE_STATUS = "STREAM_MUTE_STATUS";
46 
47 const std::string HDF_EVENT_RESULT_SUCCESS = "DH_SUCCESS";
48 const std::string HDF_EVENT_INIT_ENGINE_FAILED = "ERR_DH_AUDIO_INIT_ENGINE_FAILED";
49 const std::string HDF_EVENT_NOTIFY_SINK_FAILED = "ERR_DH_AUDIO_NOTIFY_SINK_FAILED";
50 const std::string HDF_EVENT_TRANS_SETUP_FAILED = "ERR_DH_AUDIO_TRANS_SETUP_FAILED";
51 const std::string HDF_EVENT_TRANS_START_FAILED = "ERR_DH_AUDIO_TRANS_START_FAILED";
52 const std::string HDF_EVENT_RESULT_FAILED = "DH_FAILED";
53 
54 const std::string HDF_EVENT_RESTART = "restart";
55 const std::string HDF_EVENT_PAUSE = "pause";
56 
57 const std::string PRINT_SPK = "spk";
58 const std::string PRINT_MIC = "mic";
59 const std::string PRINT_NONE = "none";
60 
61 constexpr int32_t AUDIO_DEVICE_TYPE_UNKNOWN = 0;
62 constexpr int32_t AUDIO_DEVICE_TYPE_SPEAKER = 1;
63 constexpr int32_t AUDIO_DEVICE_TYPE_MIC = 2;
64 
65 constexpr uint32_t DAUDIO_FADE_NORMALIZATION_FACTOR = 2;
66 constexpr uint32_t DAUDIO_FADE_POWER_NUM = 2;
67 constexpr uint32_t DAUDIO_FADE_MAXIMUM_VALUE = 2;
68 
69 constexpr uint32_t VOLUME_GROUP_ID_DEFAULT = 0;
70 constexpr uint32_t INTERRUPT_GROUP_ID_DEFAULT = 0;
71 
72 constexpr uint32_t AUDIO_SAMPLE_RATE_DEFAULT = 4800;
73 constexpr uint32_t AUDIO_CHANNEL_COUNT_DEFAULT = 2;
74 constexpr uint32_t AUDIO_FORMAT_DEFAULT = 16;
75 
76 constexpr int32_t MILLISECOND_PER_SECOND = 1000;
77 constexpr uint32_t DEFAULT_AUDIO_DATA_SIZE = 3840;
78 constexpr size_t RENDER_MAX_FRAME_SIZE = 4096;
79 constexpr int64_t AUDIO_OFFSET_FRAME_NUM = 10;
80 constexpr int64_t MAX_TIME_INTERVAL_US = 23000;
81 
82 constexpr uint32_t AUDIO_DEFAULT_MAX_VOLUME_LEVEL = 15;
83 constexpr uint32_t AUDIO_DEFAULT_MIN_VOLUME_LEVEL = 0;
84 
85 constexpr int32_t DAUDIO_MAX_ASHMEM_LEN = 100000;
86 constexpr int32_t DAUDIO_MIN_ASHMEM_LEN = 10;
87 
88 constexpr const char *KEY_DH_ID = "dhId";
89 constexpr const char *KEY_STATE = "STATE";
90 constexpr const char *IS_UPDATEUI = "IS_UPDATEUI";
91 constexpr const char *VOLUME_CHANAGE = "VOLUME_CHANAGE";
92 constexpr const char *FIRST_VOLUME_CHANAGE = "FIRST_VOLUME_CHANAGE";
93 constexpr const char *INTERRUPT_EVENT = "INTERRUPT_EVENT";
94 constexpr const char *FORCE_TYPE = "FORCE_TYPE";
95 constexpr const char *HINT_TYPE = "HINT_TYPE";
96 constexpr const char *RENDER_STATE_CHANGE_EVENT = "RENDER_STATE_CHANGE_EVENT";
97 constexpr const char *AUDIO_STREAM_TYPE = "AUDIO_STREAM_TYPE";
98 constexpr int32_t LOW_LATENCY_RENDER_ID = 1 << 1 | 1 << 0;
99 constexpr int32_t DEFAULT_RENDER_ID = 1;
100 constexpr int32_t DEFAULT_CAPTURE_ID = 1 << 27 | 1 << 0;
101 } // DistributeHardware
102 } // OHOS
103 #endif // OHOS_DAUDIO_CONSTANTS_H
104