QMediaService Class

The QMediaService class provides a common base class for media service implementations. 更多...

头: #include <QMediaService>
qmake: QT += multimedia
继承: QObject

公共函数

~QMediaService ()
virtual void releaseControl (QMediaControl * control ) = 0
virtual QMediaControl * requestControl (const char * interface ) = 0
T requestControl ()

保护函数

QMediaService (QObject * parent )

额外继承成员

详细描述

The QMediaService class provides a common base class for media service implementations.

Media services provide implementations of the functionality promised by media objects, and allow multiple providers to implement a QMediaObject .

To provide the functionality of a QMediaObject media services implement QMediaControl interfaces. Services typically implement one core media control which provides the core feature of a media object, and some number of additional controls which provide either optional features of the media object, or features of a secondary media object or peripheral object.

A pointer to media service's QMediaControl implementation can be obtained by passing the control's interface name to the requestControl () 函数。

QMediaPlayerControl *control = qobject_cast<QMediaPlayerControl *>(
        mediaService->requestControl("org.qt-project.qt.mediaplayercontrol/5.0"));
					

Media objects can use services loaded dynamically from plug-ins or implemented statically within an applications. Plug-in based services should also implement the QMediaServiceProviderPlugin interface. Static services should implement the QMediaServiceProvider interface. In general, implementing a QMediaService is outside of the scope of this documentation and support on the relevant mailing lists or IRC channels should be sought.

另请参阅 QMediaObject and QMediaControl .

成员函数文档编制

[protected] QMediaService:: QMediaService ( QObject * parent )

Construct a media service with the given parent . This class is meant as a base class for Multimedia services so this constructor is protected.

QMediaService:: ~QMediaService ()

Destroys a media service.

[pure virtual] void QMediaService:: releaseControl ( QMediaControl * control )

Releases a control back to the service.

[pure virtual] QMediaControl *QMediaService:: requestControl (const char * interface )

Returns a pointer to the media control implementing interface .

If the service does not implement the control, or if it is unavailable a null pointer is returned instead.

Controls must be returned to the service when no longer needed using the releaseControl () 函数。

T QMediaService:: requestControl ()

Returns a pointer to the media control of type T implemented by a media service.

If the service does not implement the control, or if it is unavailable a null pointer is returned instead.

Controls must be returned to the service when no longer needed using the releaseControl () 函数。