QAudioDevice Class
QAudioDeviceクラスは、オーディオ・デバイスとその機能についての情報を提供します。詳細...
Header: | #include <QAudioDevice> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Multimedia) target_link_libraries(mytarget PRIVATE Qt6::Multimedia) |
qmake: | QT += multimedia |
パブリック・タイプ
enum | Mode { Null, Input, Output } |
プロパティ
- description : const QString
- id : const QByteArray
- isDefault : const bool
- mode : const Mode
パブリック関数
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 |
詳細説明
QAudioDevice は、入力用または再生用の、システムで利用可能なオーディオデバイスを記述します。
QAudioDeviceは、Qtがデバイスと通信するクラス(QAudioSource やQAudioSink など)を構築するために使用されます。また、キャプチャセッションやメディア再生時に使用する入力デバイスや出力デバイスを決定するためにも使用されます。
また、各デバイスがサポートしているフォーマットを問い合わせることもできます。ここでいうフォーマットとは、チャンネル数、サンプルレート、サンプルタイプからなるセットのことである。フォーマットはQAudioFormat クラスで表されます。
minimumChannelCount(),maximumChannelCount(),minimumSampleRate(),maximumSampleRate(),supportedSampleFormats() で、デバイスがサポートする各パラメータの値を取得できる。サポートされる組み合わせは、オーディオデバイスの機能に依存します。特定のフォーマットが必要な場合は、isFormatSupported() でデバイスがサポートしているかどうかを確認できます。例えば
{ sourceFile.setFileName("/tmp/test.raw"); sourceFile.open(QIODevice::ReadOnly); QAudioFormat format; // Set up the format, eg. 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); }
使用可能なデバイスのセットは、QMediaDevices クラスから取得できます。
例えば
const auto devices = QMediaDevices::audioOutputs(); for (const QAudioDevice &device : devices) qDebug() << "Device: " << device.description();
このコードサンプルでは、サウンドを出力できる、つまりサポートされているフォーマットでオーディオストリームを再生できる、すべてのデバイスをループします。見つかった各デバイスについて、単純に deviceName() を表示します。
QAudioSink 、QAudioSource 、QAudioFormatも参照 。
メンバー型ドキュメント
enum QAudioDevice::Mode
このデバイスのモードを記述する。
定数 | 値 | 説明 |
---|---|---|
QAudioDevice::Null | 0 | ヌル・デバイス |
QAudioDevice::Input | 1 | 入力デバイス |
QAudioDevice::Output | 2 | 出力デバイス |
プロパティ Documentation
[read-only]
description : const QString
オーディオデバイスの可読形式の名前を返します。
この文字列を使用して、ユーザーにデバイスを提示します。
アクセス関数
QString | description() const |
[read-only]
id : const QByteArray
オーディオデバイスの識別子を返します。
デバイス名は、使用するプラットフォーム/オーディオプラグインによって異なります。
オーディオデバイスの一意な識別子です。
アクセス関数
QByteArray | id() const |
[read-only]
isDefault : const bool
デフォルトのオーディオデバイスであれば true を返します。
アクセス関数
bool | isDefault() const |
[read-only]
mode : const Mode
アクセス関数:このデバイスが入力デバイスか出力デバイスかを返します。
アクセス関数:このデバイスが入力デバイスか出力デバイスかを返します:
QAudioDevice::Mode | mode() const |
メンバー関数ドキュメント
QAudioDevice::QAudioDevice()
NULL QAudioDevice オブジェクトを構築します。
QAudioDevice::QAudioDevice(const QAudioDevice &other)
other のコピーを構築します。
[noexcept]
QAudioDevice::QAudioDevice(QAudioDevice &&other)
other から構築物を移動します。
[noexcept]
QAudioDevice::~QAudioDevice()
このオーディオ・デバイス情報を破棄します。
QAudioFormat::ChannelConfig QAudioDevice::channelConfiguration() const
デバイスのチャンネル構成を返します。
bool QAudioDevice::isFormatSupported(const QAudioFormat &settings) const
提供されたsettings が、このQAudioDevice によって記述されたオーディオデバイスによってサポートされている場合、true を返します。
bool QAudioDevice::isNull() const
このQAudioDevice オブジェクトが有効なデバイス定義を保持しているかどうかを返します。
int QAudioDevice::maximumChannelCount() const
サポートされるチャンネル数の最大値を返します。
これは通常、モノラル・サウンドの場合は 1、ステレオ・サウンドの場合は 2 です。
int QAudioDevice::maximumSampleRate() const
対応サンプルレートの最大値(ヘルツ単位)を返します。
int QAudioDevice::minimumChannelCount() const
対応チャンネル数の最小値を返します。
これは通常、モノラル・サウンドの場合は1、ステレオ・サウンドの場合は2です。
int QAudioDevice::minimumSampleRate() const
対応サンプルレートの最小値(ヘルツ単位)を返します。
QAudioFormat QAudioDevice::preferredFormat() const
このデバイスのデフォルトオーディオフォーマット設定を返します。
これらの設定は、使用するプラットフォーム/オーディオプラグインによって提供されます。
また、使用されているQtAudio::Mode にも依存します。
典型的なオーディオシステムは以下のようなものを提供する:
- 入力設定:入力設定:48000Hzモノラル16ビット。
- 出力設定:出力設定:48000Hzステレオ16ビット
QList<QAudioFormat::SampleFormat> QAudioDevice::supportedSampleFormats() const
サポートされているサンプルタイプのリストを返します。
[noexcept]
void QAudioDevice::swap(QAudioDevice &other)
オーディオ・デバイスをother と交換します。
bool QAudioDevice::operator!=(const QAudioDevice &other) const
とは異なるオーディオ・デバイスをこのQAudioDevice クラスが表す場合、true を返します。other
[noexcept]
QAudioDevice &QAudioDevice::operator=(QAudioDevice &&other)
other をこのQAudioDevice オブジェクトに移動します。
QAudioDevice &QAudioDevice::operator=(const QAudioDevice &other)
QAudioDevice オブジェクトをother と等しくなるように設定します。
bool QAudioDevice::operator==(const QAudioDevice &other) const
このQAudioDevice クラスがother と同じオーディオデバイスを表す場合、true を返します。
©2024TheQt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。