Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
qqnxmediadevices.cpp
Go to the documentation of this file.
1// Copyright (C) 2021 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
5#include "qmediadevices.h"
6#include "private/qcameradevice_p.h"
7#include "qcameradevice.h"
8
9#include "qqnxaudiosource_p.h"
10#include "qqnxaudiosink_p.h"
11#include "qqnxaudiodevice_p.h"
12
13#include <qdir.h>
14#include <qdebug.h>
15
17
19{
21 return {};
22
23 QDir dir(QStringLiteral("/dev/snd"));
24
25 dir.setFilter(QDir::Files);
26 dir.setSorting(QDir::Name);
27
28 // QNX PCM devices names start with the pcm prefix and end either with the
29 // 'p' (playback) or 'c' (capture) suffix
30
31 const char modeSuffix = mode == QAudioDevice::Input ? 'c' : 'p';
32
34
35 for (const QString &entry : dir.entryList()) {
36 if (entry.startsWith(QStringLiteral("pcm")) && entry.back() == modeSuffix)
37 devices << (new QnxAudioDeviceInfo(entry.toUtf8(), mode))->create();
38 }
39
40 return devices;
41}
42
45{
46}
47
49{
50 return ::enumeratePcmDevices(QAudioDevice::Input);
51}
52
54{
55 return ::enumeratePcmDevices(QAudioDevice::Output);
56}
57
60{
61 return new QQnxAudioSource(deviceInfo, parent);
62}
63
66{
67 return new QQnxAudioSink(deviceInfo, parent);
68}
69
The QAudioDevice class provides an information about audio devices and their functionality.
Mode
Describes the mode of this device.
\inmodule QtCore
Definition qdir.h:19
@ Name
Definition qdir.h:49
@ Files
Definition qdir.h:22
Definition qlist.h:74
\inmodule QtCore
Definition qobject.h:90
QObject * parent() const
Returns a pointer to the parent object.
Definition qobject.h:311
QPlatformAudioSink * createAudioSink(const QAudioDevice &deviceInfo, QObject *parent) override
QPlatformAudioSource * createAudioSource(const QAudioDevice &deviceInfo, QObject *parent) override
QList< QAudioDevice > audioInputs() const override
QList< QAudioDevice > audioOutputs() const override
\macro QT_RESTRICTED_CAST_FROM_ASCII
Definition qstring.h:127
Combined button and popup list for selecting options.
EGLDeviceEXT * devices
GLenum mode
GLuint entry
static QT_BEGIN_NAMESPACE QList< QAudioDevice > enumeratePcmDevices(QAudioDevice::Mode mode)
#define QStringLiteral(str)
QString dir
[11]
view create()
IUIAutomationTreeWalker __RPC__deref_out_opt IUIAutomationElement ** parent