1/*
2 * BluezQt - Asynchronous BlueZ wrapper library
3 *
4 * SPDX-FileCopyrightText: 2019 Manuel Weichselbaumer <mincequi@web.de>
5 *
6 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
7 */
8
9#ifndef BLUEZQT_MEDIATYPES_H
10#define BLUEZQT_MEDIATYPES_H
11
12namespace BluezQt
13{
14/*!
15 * Assigned number of codec that the endpoint/transport supports.
16 * Currently limited to most common codecs. Further codecs reserved.
17 *
18 * \value Invalid
19 * \value Sbc
20 * \value Aac
21 */
22enum class AudioCodec {
23 Invalid = 0x0000,
24 Sbc = 0x0001,
25 // Mp3 = 0x0002,
26 Aac = 0x0004,
27 // Atrac = 0x0008,
28 // AptX = 0x0010,
29 // AptXLl = 0x0020,
30 // AptXHd = 0x0040,
31 // FastStream = 0x0080,
32 // Ldac = 0x0100,
33};
34
35/*!
36 * Assigned number of sample rate that the endpoint/transport supports.
37 *
38 * Currently limited to most common rates. Further rates reserved.
39 *
40 * \value Invalid
41 * \value Rate44100
42 * \value Rate48000
43 *
44 */
45enum class AudioSampleRate {
46 Invalid = 0x0000,
47 // Rate8000 = 0x0001,
48 // Rate11025 = 0x0002,
49 // Rate12000 = 0x0004,
50 // Rate16000 = 0x0008,
51 // Rate22050 = 0x0010,
52 // Rate24000 = 0x0020,
53 // Rate32000 = 0x0040,
54 Rate44100 = 0x0080,
55 Rate48000 = 0x0100,
56 // Rate64000 = 0x0200,
57 // Rate88200 = 0x0400,
58 // Rate96000 = 0x0800
59};
60
61/*!
62 *
63 */
64struct AudioConfiguration {
65 AudioCodec codec = AudioCodec::Invalid;
66 AudioSampleRate sampleRate = AudioSampleRate::Invalid;
67};
68
69} // namespace BluezQt
70
71#endif
72

source code of bluez-qt/src/mediatypes.h