QAudioDevice Class
Die Klasse QAudioDevice bietet Informationen über Audiogeräte und deren Funktionalität. Mehr...
Kopfzeile: | #include <QAudioDevice> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Multimedia) target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
qmake: | QT += multimedia |
Öffentliche Typen
enum | Mode { Null, Input, Output } |
Eigenschaften
- description : const QString
- id : const QByteArray
- isDefault : const bool
- mode : const Mode
Öffentliche Funktionen
QAudioDevice() | |
QAudioDevice(const QAudioDevice &other) | |
QAudioDevice(QAudioDevice &&other) | |
~QAudioDevice() | |
QAudioFormat::ChannelConfig | channelConfiguration() const |
QString | description() const |
QByteArray | id() const |
bool | isDefault() const |
bool | isFormatSupported(const QAudioFormat &settings) const |
bool | isNull() const |
int | maximumChannelCount() const |
int | maximumSampleRate() const |
int | minimumChannelCount() const |
int | minimumSampleRate() const |
QAudioDevice::Mode | mode() const |
QAudioFormat | preferredFormat() const |
QList<QAudioFormat::SampleFormat> | supportedSampleFormats() const |
void | swap(QAudioDevice &other) |
bool | operator!=(const QAudioDevice &other) const |
QAudioDevice & | operator=(QAudioDevice &&other) |
QAudioDevice & | operator=(const QAudioDevice &other) |
bool | operator==(const QAudioDevice &other) const |
Detaillierte Beschreibung
QAudioDevice beschreibt ein im System verfügbares Audiogerät, entweder für die Eingabe oder für die Wiedergabe.
Ein QAudioDevice wird von Qt verwendet, um Klassen zu erstellen, die mit dem Gerät kommunizieren - wie QAudioSource und QAudioSink. Es wird auch verwendet, um das Eingabe- oder Ausgabegerät zu bestimmen, das in einer Aufnahmesitzung oder während der Medienwiedergabe verwendet werden soll.
Die QAudioDevice-Instanz behält ihre Eigenschaften während ihrer gesamten Lebensdauer bei, selbst wenn das entsprechende physische Gerät getrennt oder seine Einstellungen geändert werden. Um die aktualisierten Eigenschaften im Auge zu behalten, sollte der Benutzer neue Instanzen von QAudioDevice von QMediaDevices laden, wenn die relevanten Signale ausgelöst werden.
Sie können auch jedes Gerät nach den von ihm unterstützten Formaten abfragen. Ein Format ist in diesem Zusammenhang ein Satz, der aus einer Kanalanzahl, einer Abtastrate und einem Abtasttyp besteht. Ein Format wird durch die Klasse QAudioFormat dargestellt.
Die vom Gerät unterstützten Werte für jeden dieser Parameter können mit minimumChannelCount(), maximumChannelCount(), minimumSampleRate(), maximumSampleRate() und supportedSampleFormats() abgefragt werden. Die unterstützten Kombinationen sind von den Fähigkeiten des Audiogeräts abhängig. Wenn Sie ein bestimmtes Format benötigen, können Sie mit isFormatSupported() prüfen, ob das Gerät es unterstützt. Zum Beispiel:
{ sourceFile.setFileName("/tmp/test.raw"); sourceFile.open(QIODevice::ReadOnly); QAudioFormat format; // Einrichten des Formats, z.B.format.setSampleRate(8000); format.setChannelCount(1); format.setSampleFormat(QAudioFormat::UInt8); QAudioDevice info(QMediaDevices::defaultAudioOutput()); if (!info.isFormatSupported(format)) { qWarning() << "Raw audio format not supported by backend, cannot play audio."; return; } audio = new QAudioSink(format, this); connect(audio, QAudioSink::stateChanged, this, &AudioInputExample::handleStateChanged); audio->start(&sourceFile); }
Die Menge der verfügbaren Geräte kann über die Klasse QMediaDevices abgerufen werden.
Zum Beispiel:
const auto devices = QMediaDevices::audioOutputs();for(const QAudioDevice &device: devices) qDebug() << "Device: " << device.description();
In diesem Codebeispiel durchlaufen wir eine Schleife durch alle Geräte, die in der Lage sind, Ton auszugeben, d. h. einen Audiostrom in einem unterstützten Format abzuspielen. Für jedes gefundene Gerät geben wir einfach den Gerätenamen() aus.
Siehe auch QAudioSink, QAudioSource, und QAudioFormat.
Dokumentation der Mitgliedstypen
enum QAudioDevice::Mode
Beschreibt den Modus dieses Geräts.
Konstante | Wert | Beschreibung |
---|---|---|
QAudioDevice::Null | 0 | Ein Null-Gerät. |
QAudioDevice::Input | 1 | Ein Eingabegerät. |
QAudioDevice::Output | 2 | Ein Ausgabegerät. |
Eigenschaft Dokumentation
[read-only]
description : const QString
Gibt einen für Menschen lesbaren Namen des Audiogeräts zurück.
Verwenden Sie diese Zeichenfolge, um das Gerät dem Benutzer vorzustellen.
Zugriffsfunktionen:
QString | description() const |
[read-only]
id : const QByteArray
Gibt einen Bezeichner für das Audiogerät zurück.
Die Gerätenamen variieren je nach verwendeter Plattform/verwendetem Audio-Plugin.
Sie sind ein eindeutiger Bezeichner für das Audiogerät.
Zugriffsfunktionen:
QByteArray | id() const |
[read-only]
isDefault : const bool
Gibt true zurück, wenn dies das Standard-Audiogerät ist.
Zugriffsfunktionen:
bool | isDefault() const |
[read-only]
mode : const Mode
Gibt zurück, ob dieses Gerät ein Eingabe- oder Ausgabegerät ist.
Zugriffsfunktionen:
QAudioDevice::Mode | mode() const |
Dokumentation der Mitgliedsfunktionen
QAudioDevice::QAudioDevice()
Konstruiert ein Null-QAudioDevice-Objekt.
QAudioDevice::QAudioDevice(const QAudioDevice &other)
Konstruiert eine Kopie von other.
[noexcept]
QAudioDevice::QAudioDevice(QAudioDevice &&other)
Konstrukte von other verschieben.
[noexcept]
QAudioDevice::~QAudioDevice()
Zerstören Sie diese Audiogeräteinformation.
QAudioFormat::ChannelConfig QAudioDevice::channelConfiguration() const
Gibt die Kanalkonfiguration des Geräts zurück.
bool QAudioDevice::isFormatSupported(const QAudioFormat &settings) const
Gibt true zurück, wenn die angegebenen settings von dem durch diese QAudioDevice beschriebenen Audiogerät unterstützt werden.
bool QAudioDevice::isNull() const
Gibt zurück, ob dieses QAudioDevice Objekt eine gültige Gerätedefinition enthält.
int QAudioDevice::maximumChannelCount() const
Gibt die maximale Anzahl der unterstützten Kanäle zurück.
Dies ist in der Regel 1 für Mono-Sound oder 2 für Stereo-Sound.
int QAudioDevice::maximumSampleRate() const
Gibt die maximal unterstützte Abtastrate (in Hertz) zurück.
int QAudioDevice::minimumChannelCount() const
Gibt die Mindestanzahl der unterstützten Kanäle zurück.
Dies ist in der Regel 1 für Mono-Sound oder 2 für Stereo-Sound.
int QAudioDevice::minimumSampleRate() const
Gibt die minimale unterstützte Abtastrate (in Hertz) zurück.
QAudioFormat QAudioDevice::preferredFormat() const
Gibt die Standard-Audioformateinstellungen für dieses Gerät zurück.
Diese Einstellungen werden von der verwendeten Plattform/dem verwendeten Audio-Plugin bereitgestellt.
Sie sind auch abhängig vom QtAudio::Mode, der verwendet wird.
Ein typisches Audiosystem würde etwas wie folgt bereitstellen:
- Eingangseinstellungen: 48000Hz mono 16 bit.
- Ausgangseinstellungen: 48000Hz Stereo 16 Bit.
QList<QAudioFormat::SampleFormat> QAudioDevice::supportedSampleFormats() const
Gibt eine Liste der unterstützten Probentypen zurück.
[noexcept]
void QAudioDevice::swap(QAudioDevice &other)
Tauscht das Audiogerät mit dem other aus.
bool QAudioDevice::operator!=(const QAudioDevice &other) const
Gibt true zurück, wenn diese QAudioDevice Klasse ein anderes Audiogerät repräsentiert als other
[noexcept]
QAudioDevice &QAudioDevice::operator=(QAudioDevice &&other)
Verschiebt other in dieses QAudioDevice Objekt.
QAudioDevice &QAudioDevice::operator=(const QAudioDevice &other)
Setzt das Objekt QAudioDevice auf den Wert other.
bool QAudioDevice::operator==(const QAudioDevice &other) const
Gibt true zurück, wenn diese QAudioDevice Klasse das gleiche Audiogerät wie other repräsentiert.
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.