PySide6.QtMultimedia.QAudioDecoder¶
- class QAudioDecoder¶
- The - QAudioDecoderclass implements decoding audio. More…- Synopsis¶- Properties¶- bufferAvailableᅟ- Whether there is a decoded audio buffer available
- isDecodingᅟ- True if the decoder is currently running and decoding audio data
- sourceᅟ- The active filename being decoded by the decoder object
 - Methods¶- def - __init__()
- def - audioFormat()
- def - duration()
- def - error()
- def - errorString()
- def - isDecoding()
- def - isSupported()
- def - position()
- def - read()
- def - setAudioFormat()
- def - setSource()
- def - source()
- def - sourceDevice()
 - Slots¶- Signals¶
- def - bufferReady()
- def - error()
- def - finished()
- def - formatChanged()
- def - sourceChanged()
 - 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¶- The - QAudioDecoderclass is a high level class for decoding audio media files. It is similar to the- QMediaPlayerclass except that audio is provided back through this API rather than routed directly to audio hardware.- See also - class Error¶
- Defines a media player error condition. - Constant - Description - QAudioDecoder.NoError - No error has occurred. - QAudioDecoder.ResourceError - A media resource couldn’t be resolved. - QAudioDecoder.FormatError - The format of a media resource isn’t supported. - QAudioDecoder.AccessDeniedError - There are not the appropriate permissions to play a media resource. - QAudioDecoder.NotSupportedError - QAudioDecoderis not supported on this platform
 - Note - Properties can be used directly when - from __feature__ import true_propertyis used or via accessor functions otherwise.- property bufferAvailableᅟ: bool¶
 - This property holds whether there is a decoded audio buffer available. - Access functions:
 - property errorᅟ: str¶
 - Returns a human readable description of the current error, or an empty string is there is no error. - Access functions:
 - property isDecodingᅟ: bool¶
 - This property holds - trueif the decoder is currently running and decoding audio data..- Access functions:
- Signal - isDecodingChanged()
 
 - This property holds the active filename being decoded by the decoder object.. - Access functions:
- Signal - sourceChanged()
 
 - Construct an - QAudioDecoderinstance with- parent.- audioFormat()¶
- Return type:
 
 - Returns the audio format the decoder is set to. - Note - This may be different than the format of the decoded samples, if the audio format was set to an invalid one. - See also - bufferAvailable()¶
- Return type:
- bool 
 
 - Returns true if a buffer is available to be read, and false otherwise. If there is no buffer available, calling the - read()function will return an invalid buffer.- Getter of property - bufferAvailableᅟ.- bufferAvailableChanged(available)¶
- Parameters:
- available – bool 
 
 - Signals the availability (if - availableis true) of a new buffer.- If - availableis false, there are no buffers available.- See also - Notification signal of property - bufferAvailableᅟ.- bufferReady()¶
 - Signals that a new decoded audio buffer is available to be read. - See also - duration()¶
- Return type:
- int 
 
 - Returns total duration (in milliseconds) of the audio stream or -1 if not available. - durationChanged(duration)¶
- Parameters:
- duration – int 
 
 - Signals that the estimated - durationof the decoded data has changed.- See also - Returns the current error state of the - QAudioDecoder.- error(error)
- Parameters:
- error – - Error
 
 - Signals that an - errorcondition has occurred.- See also - errorString()¶
- Return type:
- str 
 
 - Getter of property - errorᅟ.- finished()¶
 - Signals that the decoding has finished successfully. If decoding fails, error signal is emitted instead. - formatChanged(format)¶
- Parameters:
- format – - QAudioFormat
 
 - Signals that the current audio format of the decoder has changed to - format.- See also - isDecoding()¶
- Return type:
- bool 
 
 - Getter of property - isDecodingᅟ.- isDecodingChanged(arg__1)¶
- Parameters:
- arg__1 – bool 
 
 - Notification signal of property - isDecodingᅟ.- isSupported()¶
- Return type:
- bool 
 
 - Returns true is audio decoding is supported on this platform. - position()¶
- Return type:
- int 
 
 - Returns position (in milliseconds) of the last buffer read from the decoder or -1 if no buffers have been read. - positionChanged(position)¶
- Parameters:
- position – int 
 
 - Signals that the current - positionof the decoder has changed.- See also - read()¶
- Return type:
 
 - Read a buffer from the decoder, if one is available. Returns an invalid buffer if there are no decoded buffers currently available, or on failure. In both cases this function will not block. - You should either respond to the - bufferReady()signal or check the- bufferAvailable()function before calling read() to make sure you get useful data.- setAudioFormat(format)¶
- Parameters:
- format – - QAudioFormat
 
 - Set the desired audio format for decoded samples to - format.- This property can only be set while the decoder is stopped. Setting this property at other times will be ignored. - If the decoder does not support this format, - error()will be set to- FormatError.- If you do not specify a format, the format of the decoded audio itself will be used. Otherwise, some format conversion will be applied. - If you wish to reset the decoded format to that of the original audio file, you can specify an invalid - format.- Warning - Setting a desired audio format is not yet supported on the Android backend. It does work with the default FFMPEG backend. - See also - Sets the current audio file name to - fileName.- When this property is set any current decoding is stopped, and any audio buffers are discarded. - You can only specify either a source filename or a source QIODevice. Setting one will unset the other. - See also - Setter of property - sourceᅟ.- Sets the current audio QIODevice to - device.- When this property is set any current decoding is stopped, and any audio buffers are discarded. - You can only specify either a source filename or a source QIODevice. Setting one will unset the other. - See also - Returns the current file name to decode. If - setSourceDevicewas called, this will be empty.- See also - Getter of property - sourceᅟ.- sourceChanged()¶
 - Signals that the current source of the decoder has changed. - See also - Notification signal of property - sourceᅟ.- Returns the current source QIODevice, if one was set. If - setSource()was called, this will be a nullptr.- See also - start()¶
 - Starts decoding the audio resource. - As data gets decoded, the - bufferReady()signal will be emitted when enough data has been decoded. Calling- read()will then return an audio buffer without blocking.- If you call - read()before a buffer is ready, an invalid buffer will be returned, again without blocking.- See also - stop()¶
 - Stop decoding audio. Calling - start()again will resume decoding from the beginning.