QAudioFormat Class

QAudioFormat クラスは、オーディオ・ストリームのパラメータ情報を格納します。詳細...

Header: #include <QAudioFormat>
CMake: find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia

パブリック・タイプ

enum AudioChannelPosition { UnknownPosition, FrontLeft, FrontRight, FrontCenter, LFE, …, BottomFrontRight }
enum ChannelConfig { ChannelConfigUnknown, ChannelConfigMono, ChannelConfigStereo, ChannelConfig2Dot1, ChannelConfig3Dot0, …, ChannelConfigSurround7Dot1 }
enum SampleFormat { Unknown, UInt8, Int16, Int32, Float }

パブリック関数

QAudioFormat()
QAudioFormat(const QAudioFormat &other)
~QAudioFormat()
qint32 bytesForDuration(qint64 microseconds) const
qint32 bytesForFrames(qint32 frameCount) const
int bytesPerFrame() const
int bytesPerSample() const
QAudioFormat::ChannelConfig channelConfig() const
int channelCount() const
int channelOffset(QAudioFormat::AudioChannelPosition channel) const
qint64 durationForBytes(qint32 bytes) const
qint64 durationForFrames(qint32 frameCount) const
qint32 framesForBytes(qint32 byteCount) const
qint32 framesForDuration(qint64 microseconds) const
bool isValid() const
float normalizedSampleValue(const void *sample) const
QAudioFormat::SampleFormat sampleFormat() const
int sampleRate() const
void setChannelConfig(QAudioFormat::ChannelConfig config)
void setChannelCount(int channels)
void setSampleFormat(QAudioFormat::SampleFormat format)
void setSampleRate(int samplerate)

静的パブリック・メンバー

QAudioFormat::ChannelConfig channelConfig(Args... channels)
QAudioFormat::ChannelConfig defaultChannelConfigForChannelCount(int channelCount)
bool operator!=(const QAudioFormat &a, const QAudioFormat &b)
bool operator==(const QAudioFormat &a, const QAudioFormat &b)

詳細説明

オーディオフォーマットは、生のオーディオストリームのデータがどのように配置されるかを指定します。例えば、ストリームがどのように解釈されるかを指定します。

QAudioFormatは、オーディオサンプルデータがどのように配置されるかを指定するパラメータを含んでいます。周波数、チャンネル数、サンプル・フォーマットです。以下の表では、これらの詳細について説明します。

パラメータ説明
サンプルレートオーディオデータの1秒あたりのサンプル数(ヘルツ)。
チャンネル数オーディオ・チャンネルの数(通常、モノラルなら1つ、ステレオなら2つ)。ストリームの1フレームを構成する連続したサンプルの数。
サンプルフォーマットストリームのオーディオサンプルのフォーマット。

このクラスは、QAudioSource またはQAudioSink と組み合わせて使用し、読み書きされるオーディオストリームのパラメータを指定します。また、QAudioBuffer と組み合わせて使用し、メモリ内のサンプルを扱います。

使用するオーディオデバイスと互換性のあるオーディオフォーマットは、QAudioDevice の関数で取得できます。このクラスはまた、デバイスの利用可能なパラメータ値を問い合わせることもできるので、パラメータを自分で設定することもできます。詳細はQAudioDevice クラスの説明を参照してください。再生または録音したいオーディオストリームのフォーマットを知っておく必要があります。

すべてのチャンネルのサンプルはインターリーブされます。Qt Multimedia(および他の場所)では、各チャンネルの同じ瞬間の1つのサンプルをフレームと呼びます。

メンバー型ドキュメント

enum QAudioFormat::AudioChannelPosition

可能なオーディオチャンネルの位置を記述する。これらは、22.2サラウンドサウンド構成で使用される標準的な定義に従います。

定数説明
QAudioFormat::UnknownPosition0不明な位置
QAudioFormat::FrontLeft1
QAudioFormat::FrontRight2
QAudioFormat::FrontCenter3
QAudioFormat::LFE4低域効果チャンネル(サブウーファー)
QAudioFormat::BackLeft5
QAudioFormat::BackRight6
QAudioFormat::FrontLeftOfCenter7
QAudioFormat::FrontRightOfCenter8
QAudioFormat::BackCenter9
QAudioFormat::LFE219
QAudioFormat::SideLeft10
QAudioFormat::SideRight11
QAudioFormat::TopFrontLeft13
QAudioFormat::TopFrontRight15
QAudioFormat::TopFrontCenter14
QAudioFormat::TopCenter12
QAudioFormat::TopBackLeft16
QAudioFormat::TopBackRight18
QAudioFormat::TopSideLeft20
QAudioFormat::TopSideRight21
QAudioFormat::TopBackCenter17
QAudioFormat::BottomFrontCenter22
QAudioFormat::BottomFrontLeft23
QAudioFormat::BottomFrontRight24

enum QAudioFormat::ChannelConfig

この列挙型は、標準化されたオーディオチャンネルレイアウトを記述する。最も一般的な構成は、Mono、Stereo、2.1(ステレオ+低域)、5.1サラウンド、7.1サラウンド構成である。

定数説明
QAudioFormat::ChannelConfigUnknown0チャンネル構成は不明。
QAudioFormat::ChannelConfigMonoQtPrivate::channelConfig(FrontCenter)音声には1つのセンターチャンネルがある。
QAudioFormat::ChannelConfigStereoQtPrivate::channelConfig(FrontLeft, FrontRight)オーディオはLeftとRightの2チャンネル。
QAudioFormat::ChannelConfig2Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, LFE)オーディオには、Left、Right、LFE(低周波エフェクト)の3つのチャンネルがある。
QAudioFormat::ChannelConfig3Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter)左、右、センターの3チャンネル。
QAudioFormat::ChannelConfig3Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE)左、右、センター、LFE(低周波エフェクト)の4チャンネル。
QAudioFormat::ChannelConfigSurround5Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, BackLeft, BackRight)オーディオには、Left、Right、Center、BackLeftBackRight の5つのチャンネルがあります。
QAudioFormat::ChannelConfigSurround5Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE, BackLeft, BackRight)オーディオは左、右、センター、LFE、BackLeftBackRight の6チャンネル。
QAudioFormat::ChannelConfigSurround7Dot0QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, BackLeft, BackRight, SideLeft, SideRight)オーディオは7チャンネル、レフト、ライト、センター、BackLeftBackRightSideLeftSideRight
QAudioFormat::ChannelConfigSurround7Dot1QtPrivate::channelConfig(FrontLeft, FrontRight, FrontCenter, LFE, BackLeft, BackRight, SideLeft, SideRight)オーディオは、左、右、センター、LFE、BackLeftBackRightSideLeftSideRight の8チャンネルです。

enum QAudioFormat::SampleFormat

Qt は常にホストプラットフォームのエンディアンでサンプルを使用します。外部ソースからのオーディオデータを自分で処理する場合は、QAudioSinkQAudioBuffer に書き込む前に、正しいエンディアンに変換してください。

定数説明
QAudioFormat::Unknown0設定しない
QAudioFormat::UInt81サンプルは8ビット符号なし整数
QAudioFormat::Int162サンプルは16ビット符号付き整数
QAudioFormat::Int323サンプルは32ビット符号付き整数
QAudioFormat::Float4サンプルは浮動小数点数

メンバー関数ドキュメント

[noexcept default] QAudioFormat::QAudioFormat()

新しいオーディオフォーマットを構築する。

値は以下のように初期化されます:

[noexcept default] QAudioFormat::QAudioFormat(const QAudioFormat &other)

other を使用して新しいオーディオフォーマットを構築する。

[noexcept default] QAudioFormat::~QAudioFormat()

この音声フォーマットを破棄する。

qint32 QAudioFormat::bytesForDuration(qint64 microseconds) const

この音声フォーマットに必要なバイト数をmicroseconds に返す。

このフォーマットが有効でない場合は 0 を返す。

microsecondssampleRate() の正確な小数でない場合、丸めが発生する可能性があることに注意。

durationForBytes()も参照

qint32 QAudioFormat::bytesForFrames(qint32 frameCount) const

frameCount このフォーマットのフレームに必要なバイト数を返す。

このフォーマットが有効でない場合は 0 を返す。

bytesForDuration()も参照

[constexpr] int QAudioFormat::bytesPerFrame() const

このフォーマットで1フレーム(各チャンネルのサンプル)を表現するのに必要なバイト数を返します。

このフォーマットが無効な場合は0を返す。

[constexpr noexcept] int QAudioFormat::bytesPerSample() const

このフォーマットで1サンプルを表現するのに必要なバイト数を返します。

このフォーマットが無効な場合は 0 を返します。

[constexpr noexcept] QAudioFormat::ChannelConfig QAudioFormat::channelConfig() const

現在のチャネル構成を返します。

setChannelConfig()も参照してください

[static constexpr] template <typename... Args> QAudioFormat::ChannelConfig QAudioFormat::channelConfig(Args... channels)

指定されたchannels の現在のチャネル構成を返す。

[constexpr noexcept] int QAudioFormat::channelCount() const

現在のチャネルカウント値を返します。

setChannelCount()も参照

[noexcept] int QAudioFormat::channelOffset(QAudioFormat::AudioChannelPosition channel) const

指定されたフォーマットのオーディオフレーム内の、あるオーディオchannel の位置を返します。このフォーマットに対してチャネルが存在しない場合、あるいはチャネル構成が不明な場合は -1 を返します。

[static] QAudioFormat::ChannelConfig QAudioFormat::defaultChannelConfigForChannelCount(int channelCount)

channelCount のデフォルトのチャンネル構成を返します。

デフォルトの設定は最大 8 チャンネルまで定義されており、標準のモノラル、ステレオ、サラウンドの各設定に対応しています。それ以上のチャンネル数の場合は、QAudioFormat::AudioChannelPosition で定義された最初のchannelCount 音声チャンネルを使用します。

qint64 QAudioFormat::durationForBytes(qint32 bytes) const

bytes 、このフォーマットで表されるマイクロ秒数を返す。

このフォーマットが有効でない場合は0を返す。

bytes がフレームあたりのバイト数の正確な倍数でない場合、丸めが発生する可能性があることに注意。

bytesForDuration()も参照のこと

qint64 QAudioFormat::durationForFrames(qint32 frameCount) const

このフォーマットのframeCount フレームで表されるマイクロ秒数を返す。

qint32 QAudioFormat::framesForBytes(qint32 byteCount) const

このフォーマットでbyteCount で表されるフレームの数を返す。

byteCount がフレームあたりのバイト数の正確な倍数でない場合、丸めが発生する可能性があることに注意。

各フレームには、チャンネルごとに1つのサンプルがある。

framesForDuration()も参照

qint32 QAudioFormat::framesForDuration(qint64 microseconds) const

このフォーマットでmicroseconds を表現するのに必要なフレーム数を返す。

microsecondssampleRate() の正確な小数でない場合、丸めが発生する可能性があることに注意。

[constexpr noexcept] bool QAudioFormat::isValid() const

すべてのパラメータが有効な場合はtrue を返す。

float QAudioFormat::normalizedSampleValue(const void *sample) const

sample このメソッドはQaudioFormatに依存します。

[constexpr noexcept] QAudioFormat::SampleFormat QAudioFormat::sampleFormat() const

現在のサンプル・フォーマットを返します。

setSampleFormat()も参照してください

[constexpr noexcept] int QAudioFormat::sampleRate() const

現在のサンプルレートをヘルツで返します。

setSampleRate() も参照して ください。

[noexcept] void QAudioFormat::setChannelConfig(QAudioFormat::ChannelConfig config)

チャンネル構成をconfig に設定します。

オーディオフォーマットのチャンネル構成を、標準オーディオチャンネル構成のいずれかに設定します。

注意: これはチャンネル数も変更します。

channelConfig()も参照

[constexpr noexcept] void QAudioFormat::setChannelCount(int channels)

チャンネルカウントをchannels に設定する。 これを設定すると、チャンネルコンフィグもChannelConfigUnknown に設定される。

channelCount() も参照して ください。

[constexpr noexcept] void QAudioFormat::setSampleFormat(QAudioFormat::SampleFormat format)

サンプルフォーマットをformat に設定する。

sampleFormat() およびQAudioFormat::SampleFormat参照

[constexpr noexcept] void QAudioFormat::setSampleRate(int samplerate)

サンプルレートをsamplerate (ヘルツ)に設定します。

sampleRate() も参照

関連する非会員

bool operator!=(const QAudioFormat &a, const QAudioFormat &b)

オーディオフォーマットab と等しくない場合はtrue を返し、そうでない場合はfalse を返す。

bool operator==(const QAudioFormat &a, const QAudioFormat &b)

オーディオフォーマットab と等しい場合はtrue を返し、そうでない場合はfalse を返します。

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。