QAudioOutput Class

Represents an output channel for audio. More...

Header: #include <QAudioOutput>
CMake: find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia
In QML: AudioOutput
Inherits: QObject

Properties

Public Functions

QAudioDevice device() const
bool isMuted() const
float volume() const

Public Slots

void setDevice(const QAudioDevice &device)
void setMuted(bool muted)
void setVolume(float volume)

Signals

void deviceChanged()
void mutedChanged(bool muted)
void volumeChanged(float volume)

Detailed Description

This class represents an output channel that can be used together with QMediaPlayer or QMediaCaptureSession. It enables the selection of the physical output device to be used, muting the channel, and changing the channel's volume.

Property Documentation

device : QAudioDevice

This property holds the audio device connected to this output.

The device property represents the audio device this output is connected to. This property can be used to select an output device from the QMediaDevices::audioOutputs() list. You can select the system default audio output by setting this property to a default constructed QAudioDevice object.

Access functions:

QAudioDevice device() const
void setDevice(const QAudioDevice &device)

Notifier signal:

void deviceChanged()

muted : bool

This property holds the muted state of the current media.

The value will be true if the output is muted; otherwise false.

Access functions:

bool isMuted() const
void setMuted(bool muted)

Notifier signal:

void mutedChanged(bool muted)

volume : float

This property holds the current volume.

The volume is scaled linearly, ranging from 0 (silence) to 1 (full volume).

Note: values outside this range will be clamped.

By default the volume is 1.

UI volume controls should usually be scaled non-linearly. For example, using a logarithmic scale will produce linear changes in perceived loudness, which is what a user would normally expect from a volume control.

Access functions:

float volume() const
void setVolume(float volume)

Notifier signal:

void volumeChanged(float volume)

See also QtAudio::convertVolume().