dtkmultimedia
DTK Multimedia module
载入中...
搜索中...
未找到
daudioinput.h
浏览该文件的文档.
1// SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DAUDIOINPUTDEVICE_H
6#define DAUDIOINPUTDEVICE_H
7#if BUILD_Qt6
8#include <QMediaRecorder>
9#include <QMediaCaptureSession>
10#include <QAudioInput>
11#else
12#include <QMediaObject>
13#endif
14
15#include <dtkmultimedia.h>
16
17DMULTIMEDIA_BEGIN_NAMESPACE
18class DAudioInputPrivate;
19
20#ifdef BUILD_Qt6
21class Q_MULTIMEDIA_EXPORT DAudioInput : public QAudioInput
22#else
23class Q_MULTIMEDIA_EXPORT DAudioInput : public QObject
24#endif
25{
26 Q_OBJECT
27 Q_PROPERTY(QString device READ device WRITE setDevice NOTIFY deviceChanged)
28 Q_PROPERTY(float volume READ volume WRITE setVolume NOTIFY volumeChanged)
29 Q_PROPERTY(bool muted READ isMuted WRITE setMuted NOTIFY mutedChanged)
30 Q_DECLARE_PRIVATE(DAudioInput)
31
32public:
33#ifdef BUILD_Qt6
34 explicit DAudioInput(QObject *parent = nullptr);
35// explicit DAudioInput(const QAudioDevice &deviceInfo, QObject *parent = nullptr);
36#endif
37 explicit DAudioInput(const QString &device, QObject *parent = nullptr);
39
40 QString device() const;
41 float volume() const;
42 bool isMuted() const;
43
44public Q_SLOTS:
45 void setDevice(const QString &device);
46 void setVolume(float volume);
47 void setMuted(bool muted);
48
49Q_SIGNALS:
51 void volumeChanged(float volume);
52 void mutedChanged(bool muted);
53
54protected:
55 QScopedPointer<DAudioInputPrivate> d_ptr;
56};
57
58DMULTIMEDIA_END_NAMESPACE
59
60#endif // QAUDIOINPUTDEVICE_H
DAudioInput类提供音频输出相关信息.
Definition daudioinput.h:25
void setDevice(const QString &device)
设置音频输出设备.
void deviceChanged()
信号-输出设备信息改变.
float volume() const
获取音频输出音量值.
void volumeChanged(float volume)
信号-输出音量值改变.
void setMuted(bool muted)
设置音频输出静音状态.
QString device() const
获取音频输出设备对象.
void mutedChanged(bool muted)
信号-输出静音状态改变.
void setVolume(float volume)
设置音频输出音量值.
bool isMuted() const
获取音频输出静音状态.