QAudioDevice#
The QAudioDevice
class provides an information about audio devices and their functionality. More…
Synopsis#
Properties#
Functions#
def
channelConfiguration
()def
description
()def
id
()def
isDefault
()def
isFormatSupported
(format)def
isNull
()def
maximumChannelCount
()def
maximumSampleRate
()def
minimumChannelCount
()def
minimumSampleRate
()def
mode
()def
__ne__
(other)def
__eq__
(other)def
preferredFormat
()def
supportedSampleFormats
()def
swap
(other)
Note
This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE
Detailed Description#
Warning
This section contains snippets that were automatically translated from C++ to Python and may contain errors.
QAudioDevice
describes an audio device available in the system, either for input or for playback.
A QAudioDevice
is used by Qt to construct classes that communicate with the device – such as QAudioSource
, and QAudioSink
. It is also used to determine the input or output device to use in a capture session or during media playback.
You can also query each device for the formats it supports. A format in this context is a set consisting of a channel count, sample rate, and sample type. A format is represented by the QAudioFormat
class.
The values supported by the device for each of these parameters can be fetched with minimumChannelCount()
, maximumChannelCount()
, minimumSampleRate()
, maximumSampleRate()
and supportedSampleFormats()
. The combinations supported are dependent on the audio device capabilities. If you need a specific format, you can check if the device supports it with isFormatSupported()
. For instance:
sourceFile.setFileName("/tmp/test.raw") sourceFile.open(QIODevice.ReadOnly) format = QAudioFormat() # Set up the format, eg. format.setSampleRate(8000) format.setChannelCount(1) format.setSampleFormat(QAudioFormat.UInt8) info = QAudioDevice(QMediaDevices.defaultAudioOutput()) if not info.isFormatSupported(format): qWarning() << "Raw audio format not supported by backend, cannot play audio." return audio = QAudioSink(format, self) audio.connect(QAudioSink::stateChanged, self.handleStateChanged) audio.start(sourceFile)
The set of available devices can be retrieved from the QMediaDevices
class.
For instance:
devices = QMediaDevices.audioOutputs() for device in devices: print("Device: ", device.description())
In this code sample, we loop through all devices that are able to output sound, i.e., play an audio stream in a supported format. For each device we find, we simply print the deviceName().
See also
- class PySide6.QtMultimedia.QAudioDevice#
PySide6.QtMultimedia.QAudioDevice(other)
- Parameters:
Constructs a null QAudioDevice
object.
Constructs a copy of other
.
Note
Properties can be used directly when from __feature__ import true_property
is used or via accessor functions otherwise.
- property PᅟySide6.QtMultimedia.QAudioDevice.description: str#
Returns a human readable name of the audio device.
Use this string to present the device to the user.
- Access functions:
description
()
- property PᅟySide6.QtMultimedia.QAudioDevice.id: PySide6.QtCore.QByteArray#
Returns an identifier for the audio device.
Device names vary depending on the platform/audio plugin being used.
They are a unique identifier for the audio device.
- Access functions:
id
()
- property PᅟySide6.QtMultimedia.QAudioDevice.isDefault: bool#
Returns true if this is the default audio device.
- Access functions:
isDefault
()
- property PᅟySide6.QtMultimedia.QAudioDevice.mode: Mode#
Returns whether this device is an input or output device.
- Access functions:
mode
()
- PySide6.QtMultimedia.QAudioDevice.Mode#
Describes the mode of this device.
Constant
Description
QAudioDevice.Null
A null device.
QAudioDevice.Input
An input device.
QAudioDevice.Output
An output device.
- PySide6.QtMultimedia.QAudioDevice.channelConfiguration()#
- Return type:
Returns the channel configuration of the device.
- PySide6.QtMultimedia.QAudioDevice.description()#
- Return type:
str
Getter of property description
.
- PySide6.QtMultimedia.QAudioDevice.id()#
- Return type:
Getter of property id
.
- PySide6.QtMultimedia.QAudioDevice.isDefault()#
- Return type:
bool
Getter of property isDefault
.
- PySide6.QtMultimedia.QAudioDevice.isFormatSupported(format)#
- Parameters:
format –
PySide6.QtMultimedia.QAudioFormat
- Return type:
bool
Returns true if the supplied settings
are supported by the audio device described by this QAudioDevice
.
- PySide6.QtMultimedia.QAudioDevice.isNull()#
- Return type:
bool
Returns whether this QAudioDevice
object holds a valid device definition.
- PySide6.QtMultimedia.QAudioDevice.maximumChannelCount()#
- Return type:
int
Returns the maximum number of supported channel counts.
This is typically 1 for mono sound, or 2 for stereo sound.
- PySide6.QtMultimedia.QAudioDevice.maximumSampleRate()#
- Return type:
int
Returns the maximum supported sample rate (in Hertz).
- PySide6.QtMultimedia.QAudioDevice.minimumChannelCount()#
- Return type:
int
Returns the minimum number of supported channel counts.
This is typically 1 for mono sound, or 2 for stereo sound.
- PySide6.QtMultimedia.QAudioDevice.minimumSampleRate()#
- Return type:
int
Returns the minimum supported sample rate (in Hertz).
Getter of property mode
.
- PySide6.QtMultimedia.QAudioDevice.__ne__(other)#
- Parameters:
- Return type:
bool
Returns true if this QAudioDevice
class represents a different audio device than other
- PySide6.QtMultimedia.QAudioDevice.__eq__(other)#
- Parameters:
- Return type:
bool
Returns true if this QAudioDevice
class represents the same audio device as other
.
- PySide6.QtMultimedia.QAudioDevice.preferredFormat()#
- Return type:
Returns the default audio format settings for this device.
These settings are provided by the platform/audio plugin being used.
They are also dependent on the QAudio ::Mode being used.
A typical audio system would provide something like:
Input settings: 48000Hz mono 16 bit.
Output settings: 48000Hz stereo 16 bit.
- PySide6.QtMultimedia.QAudioDevice.supportedSampleFormats()#
- Return type:
.list of QAudioFormat.SampleFormat
Returns a list of supported sample types.
- PySide6.QtMultimedia.QAudioDevice.swap(other)#
- Parameters:
Swaps the audio device with the other
.