Zephyr API Documentation
4.4.99
A Scalable Open Source RTOS
Loading...
Searching...
No Matches
mcs.h
Go to the documentation of this file.
1
5
/*
6
* Copyright (c) 2019 - 2024 Nordic Semiconductor ASA
7
*
8
* SPDX-License-Identifier: Apache-2.0
9
*/
10
11
#ifndef ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_MCS_H_
12
#define ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_MCS_H_
13
28
29
#include <
zephyr/sys/util.h
>
30
#include <
zephyr/sys/util_macro.h
>
31
32
#ifdef __cplusplus
33
extern
"C"
{
34
#endif
35
40
#define BT_MCS_ERR_LONG_VAL_CHANGED 0x80U
41
50
#define BT_MCS_PLAYBACK_SPEED_MIN -128
52
#define BT_MCS_PLAYBACK_SPEED_QUARTER -128
54
#define BT_MCS_PLAYBACK_SPEED_HALF -64
56
#define BT_MCS_PLAYBACK_SPEED_UNITY 0
58
#define BT_MCS_PLAYBACK_SPEED_DOUBLE 64
60
#define BT_MCS_PLAYBACK_SPEED_MAX 127
62
72
#define BT_MCS_SEEKING_SPEED_FACTOR_MAX 64
74
#define BT_MCS_SEEKING_SPEED_FACTOR_MIN 4
76
#define BT_MCS_SEEKING_SPEED_FACTOR_ZERO 0
78
84
#define BT_MCS_PLAYING_ORDER_SINGLE_ONCE 0x01U
86
#define BT_MCS_PLAYING_ORDER_SINGLE_REPEAT 0x02U
88
#define BT_MCS_PLAYING_ORDER_INORDER_ONCE 0x03U
90
#define BT_MCS_PLAYING_ORDER_INORDER_REPEAT 0x04U
92
#define BT_MCS_PLAYING_ORDER_OLDEST_ONCE 0x05U
94
#define BT_MCS_PLAYING_ORDER_OLDEST_REPEAT 0x06U
96
#define BT_MCS_PLAYING_ORDER_NEWEST_ONCE 0x07U
98
#define BT_MCS_PLAYING_ORDER_NEWEST_REPEAT 0x08U
100
#define BT_MCS_PLAYING_ORDER_SHUFFLE_ONCE 0x09U
102
#define BT_MCS_PLAYING_ORDER_SHUFFLE_REPEAT 0x0AU
104
112
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_SINGLE_ONCE BIT(0U)
114
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_SINGLE_REPEAT BIT(1U)
116
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_INORDER_ONCE BIT(2U)
118
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_INORDER_REPEAT BIT(3U)
120
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_OLDEST_ONCE BIT(4U)
122
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_OLDEST_REPEAT BIT(5U)
124
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_NEWEST_ONCE BIT(6U)
126
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_NEWEST_REPEAT BIT(7U)
128
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_SHUFFLE_ONCE BIT(8U)
130
#define BT_MCS_PLAYING_ORDERS_SUPPORTED_SHUFFLE_REPEAT BIT(9U)
132
138
#define BT_MCS_MEDIA_STATE_INACTIVE 0x00U
140
#define BT_MCS_MEDIA_STATE_PLAYING 0x01U
142
#define BT_MCS_MEDIA_STATE_PAUSED 0x02U
144
#define BT_MCS_MEDIA_STATE_SEEKING 0x03U
146
152
#define BT_MCS_OPC_PLAY 0x01U
154
#define BT_MCS_OPC_PAUSE 0x02U
156
#define BT_MCS_OPC_FAST_REWIND 0x03U
158
#define BT_MCS_OPC_FAST_FORWARD 0x04U
163
#define BT_MCS_OPC_STOP 0x05U
164
166
#define BT_MCS_OPC_MOVE_RELATIVE 0x10U
167
172
#define BT_MCS_OPC_PREV_SEGMENT 0x20U
177
#define BT_MCS_OPC_NEXT_SEGMENT 0x21U
182
#define BT_MCS_OPC_FIRST_SEGMENT 0x22U
187
#define BT_MCS_OPC_LAST_SEGMENT 0x23U
192
#define BT_MCS_OPC_GOTO_SEGMENT 0x24U
193
195
#define BT_MCS_OPC_PREV_TRACK 0x30U
197
#define BT_MCS_OPC_NEXT_TRACK 0x31U
199
#define BT_MCS_OPC_FIRST_TRACK 0x32U
201
#define BT_MCS_OPC_LAST_TRACK 0x33U
203
#define BT_MCS_OPC_GOTO_TRACK 0x34U
204
206
#define BT_MCS_OPC_PREV_GROUP 0x40U
208
#define BT_MCS_OPC_NEXT_GROUP 0x41U
210
#define BT_MCS_OPC_FIRST_GROUP 0x42U
212
#define BT_MCS_OPC_LAST_GROUP 0x43U
214
#define BT_MCS_OPC_GOTO_GROUP 0x44U
216
218
#define BT_MCS_OPCODES_SUPPORTED_LEN 4U
219
225
#define BT_MCS_OPC_SUP_PLAY BIT(0U)
227
#define BT_MCS_OPC_SUP_PAUSE BIT(1U)
229
#define BT_MCS_OPC_SUP_FAST_REWIND BIT(2U)
231
#define BT_MCS_OPC_SUP_FAST_FORWARD BIT(3U)
233
#define BT_MCS_OPC_SUP_STOP BIT(4U)
234
236
#define BT_MCS_OPC_SUP_MOVE_RELATIVE BIT(5U)
237
239
#define BT_MCS_OPC_SUP_PREV_SEGMENT BIT(6U)
241
#define BT_MCS_OPC_SUP_NEXT_SEGMENT BIT(7U)
243
#define BT_MCS_OPC_SUP_FIRST_SEGMENT BIT(8U)
245
#define BT_MCS_OPC_SUP_LAST_SEGMENT BIT(9U)
247
#define BT_MCS_OPC_SUP_GOTO_SEGMENT BIT(10U)
248
250
#define BT_MCS_OPC_SUP_PREV_TRACK BIT(11U)
252
#define BT_MCS_OPC_SUP_NEXT_TRACK BIT(12U)
254
#define BT_MCS_OPC_SUP_FIRST_TRACK BIT(13U)
256
#define BT_MCS_OPC_SUP_LAST_TRACK BIT(14U)
258
#define BT_MCS_OPC_SUP_GOTO_TRACK BIT(15U)
259
261
#define BT_MCS_OPC_SUP_PREV_GROUP BIT(16U)
263
#define BT_MCS_OPC_SUP_NEXT_GROUP BIT(17U)
265
#define BT_MCS_OPC_SUP_FIRST_GROUP BIT(18U)
267
#define BT_MCS_OPC_SUP_LAST_GROUP BIT(19U)
269
#define BT_MCS_OPC_SUP_GOTO_GROUP BIT(20U)
271
277
#define BT_MCS_OPC_NTF_SUCCESS 0x01U
279
#define BT_MCS_OPC_NTF_NOT_SUPPORTED 0x02U
285
#define BT_MCS_OPC_NTF_PLAYER_INACTIVE 0x03U
290
#define BT_MCS_OPC_NTF_CANNOT_BE_COMPLETED 0x04U
292
300
#define BT_MCS_SEARCH_TYPE_TRACK_NAME 0x01U
302
#define BT_MCS_SEARCH_TYPE_ARTIST_NAME 0x02U
304
#define BT_MCS_SEARCH_TYPE_ALBUM_NAME 0x03U
306
#define BT_MCS_SEARCH_TYPE_GROUP_NAME 0x04U
308
#define BT_MCS_SEARCH_TYPE_EARLIEST_YEAR 0x05U
310
#define BT_MCS_SEARCH_TYPE_LATEST_YEAR 0x06U
312
#define BT_MCS_SEARCH_TYPE_GENRE 0x07U
314
#define BT_MCS_SEARCH_TYPE_ONLY_TRACKS 0x08U
316
#define BT_MCS_SEARCH_TYPE_ONLY_GROUPS 0x09U
318
325
#define SEARCH_LEN_MIN 2U
326
328
#define SEARCH_LEN_MAX 64U
329
336
#define SEARCH_SCI_LEN_MIN 1
/* An SCI length can be as little as one byte,
337
* for an SCI that has only the type field.
338
* (The SCI len is the length of type + param.)
339
*/
340
342
#define SEARCH_PARAM_MAX 62U
343
351
#define BT_MCS_SCP_NTF_SUCCESS 0x01U
353
#define BT_MCS_SCP_NTF_FAILURE 0x02U
355
363
#define BT_MCS_GROUP_OBJECT_TRACK_TYPE 0x00U
365
#define BT_MCS_GROUP_OBJECT_GROUP_TYPE 0x01U
367
368
#ifdef __cplusplus
369
}
370
#endif
371
375
376
#endif
/* ZEPHYR_INCLUDE_BLUETOOTH_AUDIO_MCS_H_ */
util.h
Misc utilities.
util_macro.h
Macro utilities.
zephyr
bluetooth
audio
mcs.h
Generated on
for Zephyr API Documentation by
1.16.1