QAudioDecoderControl Class

The QAudioDecoderControl class provides access to the audio decoding functionality of a QMediaService. 更多...

頭: #include <QAudioDecoderControl>
qmake: QT += multimedia
繼承: QMediaControl

該類在開發且可能改變。

公共函數

virtual ~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

信號

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 newState )

保護函數

QAudioDecoderControl (QObject * parent = nullptr)

QAudioDecoderControl_iid

詳細描述

The functionality provided by this control is exposed to application code through the QAudioDecoder 類。

The interface name of QAudioDecoderControl is org.qt-project.qt.audiodecodercontrol/5.0 作為定義在 QAudioDecoderControl_iid .

另請參閱 QMediaService::requestControl () 和 QAudioDecoder .

成員函數文檔編製

[protected] QAudioDecoderControl:: QAudioDecoderControl ( QObject * parent = nullptr)

Constructs a new audio decoder control with the given parent .

[signal] void QAudioDecoderControl:: bufferAvailableChanged ( bool available )

發射信號,當 bufferAvailable property has changed to available .

[signal] void QAudioDecoderControl:: bufferReady ()

Signals that a new buffer is ready for reading.

[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 )

發射信號,當 error 齣現。 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 (),和 error ().

[signal] void QAudioDecoderControl:: formatChanged (const QAudioFormat & format )

Signals that the current audio format of the decoder has changed to format .

另請參閱 audioFormat () 和 setAudioFormat ().

[signal] void QAudioDecoderControl:: positionChanged ( qint64 position )

Signals that the current position of the decoder has changed.

另請參閱 durationChanged ().

[signal] void QAudioDecoderControl:: sourceChanged ()

Signals that the current source of the decoder has changed.

另請參閱 sourceFilename () 和 sourceDevice ().

[signal] void QAudioDecoderControl:: stateChanged ( QAudioDecoder::State newState )

Signals that the state of a player control has changed to newState .

另請參閱 state ().

[虛擬] 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 () 和 formatChanged ().

[pure virtual] bool QAudioDecoderControl:: bufferAvailable () const

Returns true if a buffer is available to be read, and false otherwise.

[pure virtual] qint64 QAudioDecoderControl:: duration () const

Returns total duration (in milliseconds) of the audio stream or -1 if not available.

[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.

[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 () 會被設為 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 ().

[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 () 和 read ().

[pure virtual] QAudioDecoder::State QAudioDecoderControl:: state () const

Returns the state of a player control.

[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 狀態。

宏文檔編製

QAudioDecoderControl_iid

org.qt-project.qt.audiodecodercontrol/5.0

定義接口名為 QAudioDecoderControl 類。