QAudioDecoderControl Class
The QAudioDecoderControl class provides access to the audio decoding functionality of a QMediaService. 更多...
头文件: | #include <QAudioDecoderControl> |
qmake: | QT += multimedia |
基类: | QMediaControl |
This class is under development and is subject to change.
公有函数
~QAudioDecoderControl() | |
virtual QAudioFormat | audioFormat() const = 0 |
virtual bool | bufferAvailable() const = 0 |
virtual qint64 | duration() const = 0 |
virtual qint64 | position() const = 0 |
virtual QAudioBuffer | read() = 0 |
virtual void | setAudioFormat(const QAudioFormat &format) = 0 |
virtual void | setSourceDevice(QIODevice *device) = 0 |
virtual void | setSourceFilename(const QString &fileName) = 0 |
virtual QIODevice * | sourceDevice() const = 0 |
virtual QString | sourceFilename() const = 0 |
virtual void | start() = 0 |
virtual QAudioDecoder::State | state() const = 0 |
virtual void | stop() = 0 |
- 32 个公有函数继承自 QObject
信号
void | bufferAvailableChanged(bool available) |
void | bufferReady() |
void | durationChanged(qint64 duration) |
void | error(int error, const QString &errorString) |
void | finished() |
void | formatChanged(const QAudioFormat &format) |
void | positionChanged(qint64 position) |
void | sourceChanged() |
void | stateChanged(QAudioDecoder::State state) |
- 2 个信号继承自 QObject
受保护的函数
QAudioDecoderControl(QObject *parent = Q_NULLPTR) |
- 9 个受保护的函数继承自 QObject
Macros
其他继承的成员
详细描述
The QAudioDecoderControl class provides access to the audio decoding functionality of a QMediaService.
The functionality provided by this control is exposed to application code through the QAudioDecoder class.
The interface name of QAudioDecoderControl is org.qt-project.qt.audiodecodercontrol/5.0
as defined in QAudioDecoderControl_iid.
参见 QMediaService::requestControl() and QAudioDecoder.
成员函数
[protected]
QAudioDecoderControl::QAudioDecoderControl(QObject *parent = Q_NULLPTR)
Constructs a new audio decoder control with the given parent.
QAudioDecoderControl::~QAudioDecoderControl()
Destroys an audio decoder control.
[pure virtual]
QAudioFormat QAudioDecoderControl::audioFormat() const
Returns the current audio format of the decoded stream.
Any buffers returned should have this format.
参见 setAudioFormat() and formatChanged().
[pure virtual]
bool QAudioDecoderControl::bufferAvailable() const
Returns true if a buffer is available to be read, and false otherwise.
[signal]
void QAudioDecoderControl::bufferAvailableChanged(bool available)
Signals that the bufferAvailable property has changed to available.
[signal]
void QAudioDecoderControl::bufferReady()
Signals that a new buffer is ready for reading.
[pure virtual]
qint64 QAudioDecoderControl::duration() const
Returns total duration (in milliseconds) of the audio stream or -1 if not available.
[signal]
void QAudioDecoderControl::durationChanged(qint64 duration)
Signals that the estimated duration of the decoded data has changed.
参见 positionChanged().
[signal]
void QAudioDecoderControl::error(int error, const QString &errorString)
Signals that an error has occurred. The errorString provides a more detailed explanation.
[signal]
void QAudioDecoderControl::finished()
Signals that the decoding has finished successfully. If decoding fails, error signal is emitted instead.
参见 start(), stop(), and error().
[signal]
void QAudioDecoderControl::formatChanged(const QAudioFormat &format)
Signals that the current audio format of the decoder has changed to format.
参见 audioFormat() and setAudioFormat().
[pure virtual]
qint64 QAudioDecoderControl::position() const
Returns position (in milliseconds) of the last buffer read from the decoder or -1 if no buffers have been read.
[signal]
void QAudioDecoderControl::positionChanged(qint64 position)
Signals that the current position of the decoder has changed.
参见 durationChanged().
[pure virtual]
QAudioBuffer QAudioDecoderControl::read()
Attempts to read a buffer from the decoder, without blocking. Returns invalid buffer if there are no decoded buffers available, or on error.
[pure virtual]
void QAudioDecoderControl::setAudioFormat(const QAudioFormat &format)
Set the desired audio format for decoded samples to format.
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.
参见 audioFormat().
[pure virtual]
void QAudioDecoderControl::setSourceDevice(QIODevice *device)
Sets the current source to device. Changing the source will stop any current decoding and discard any buffers.
Sources are exclusive, so only one can be set.
参见 sourceDevice().
[pure virtual]
void QAudioDecoderControl::setSourceFilename(const QString &fileName)
Sets the current source to fileName. Changing the source will stop any current decoding and discard any buffers.
Sources are exclusive, so only one can be set.
参见 sourceFilename().
[signal]
void QAudioDecoderControl::sourceChanged()
Signals that the current source of the decoder has changed.
参见 sourceFilename() and sourceDevice().
[pure virtual]
QIODevice *QAudioDecoderControl::sourceDevice() const
Returns the current media source QIODevice, or 0 if none (or a file).
参见 setSourceDevice().
[pure virtual]
QString QAudioDecoderControl::sourceFilename() const
Returns the current media source filename, or a null QString if none (or a device)
参见 setSourceFilename().
[pure virtual]
void QAudioDecoderControl::start()
Starts decoding the current media.
If successful the player control will immediately enter the decoding state.
[pure virtual]
QAudioDecoder::State QAudioDecoderControl::state() const
Returns the state of a player control.
[signal]
void QAudioDecoderControl::stateChanged(QAudioDecoder::State state)
Signals that the state of a player control has changed.
参见 state().
[pure virtual]
void QAudioDecoderControl::stop()
Stops playback of the current media and discards any buffers.
If successful the player control will immediately enter the stopped state.
宏
QAudioDecoderControl_iid
org.qt-project.qt.audiodecodercontrol/5.0
Defines the interface name of the QAudioDecoderControl class.