QGraphicsVideoItem Class
The QGraphicsVideoItem class provides a graphics item which display video produced by a QMediaObject. More...
Header: | #include <QGraphicsVideoItem> |
qmake: | QT += multimediawidgets |
Inherits: | QGraphicsObject and QMediaBindableInterface |
Properties
|
|
Public Functions
QGraphicsVideoItem(QGraphicsItem *parent = nullptr) | |
virtual | ~QGraphicsVideoItem() |
Qt::AspectRatioMode | aspectRatioMode() const |
QSizeF | nativeSize() const |
QPointF | offset() const |
void | setAspectRatioMode(Qt::AspectRatioMode mode) |
void | setOffset(const QPointF &offset) |
void | setSize(const QSizeF &size) |
QSizeF | size() const |
QAbstractVideoSurface * | videoSurface() const |
Reimplemented Public Functions
virtual QRectF | boundingRect() const override |
virtual QMediaObject * | mediaObject() const override |
virtual void | paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr) override |
Signals
void | nativeSizeChanged(const QSizeF &size) |
Detailed Description
Attaching a QGraphicsVideoItem to a QMediaObject allows it to display the video or image output of that media object. A QGraphicsVideoItem is attached to a media object by passing a pointer to the QMediaObject to the setMediaObject() function.
player = new QMediaPlayer(this); QGraphicsVideoItem *item = new QGraphicsVideoItem; player->setVideoOutput(item); graphicsView->scene()->addItem(item); graphicsView->show(); player->setMedia(QUrl("http://example.com/myclip4.ogv")); player->play();
Note: Only a single display output can be attached to a media object at one time.
See also QMediaObject, QMediaPlayer, and QVideoWidget.
Property Documentation
aspectRatioMode : Qt::AspectRatioMode
how a video is scaled to fit the graphics item's size.
Access functions:
Qt::AspectRatioMode | aspectRatioMode() const |
void | setAspectRatioMode(Qt::AspectRatioMode mode) |
mediaObject : QMediaObject* const
This property holds the media object which provides the video displayed by a graphics item.
Access functions:
virtual QMediaObject * | mediaObject() const override |
nativeSize : const QSizeF
This property holds the native size of the video.
Access functions:
QSizeF | nativeSize() const |
Notifier signal:
void | nativeSizeChanged(const QSizeF &size) |
offset : QPointF
This property holds the video item's offset.
QGraphicsVideoItem will draw video using the offset for its top left corner.
Access functions:
QPointF | offset() const |
void | setOffset(const QPointF &offset) |
size : QSizeF
This property holds the video item's size.
QGraphicsVideoItem will draw video scaled to fit size according to its fillMode.
Access functions:
QSizeF | size() const |
void | setSize(const QSizeF &size) |
videoSurface : QAbstractVideoSurface* const
Returns the underlying video surface that can render video frames to the current item. This property is never nullptr
. Example of how to render video frames to QGraphicsVideoItem:
QGraphicsVideoItem *item = new QGraphicsVideoItem; graphicsView->scene()->addItem(item); graphicsView->show(); QImage img = QImage("images/qt-logo.png").convertToFormat(QImage::Format_ARGB32); QVideoSurfaceFormat format(img.size(), QVideoFrame::Format_ARGB32); item->videoSurface()->start(format); item->videoSurface()->present(img);
This property was introduced in Qt 5.15.
Access functions:
QAbstractVideoSurface * | videoSurface() const |
See also QMediaPlayer::setVideoOutput.
Member Function Documentation
QGraphicsVideoItem::QGraphicsVideoItem(QGraphicsItem *parent = nullptr)
Constructs a graphics item that displays video.
The parent is passed to QGraphicsItem.
[signal]
void QGraphicsVideoItem::nativeSizeChanged(const QSizeF &size)
Signals that the native size of the video has changed.
Note: Notifier signal for property nativeSize.
[virtual]
QGraphicsVideoItem::~QGraphicsVideoItem()
Destroys a video graphics item.
[override virtual]
QRectF QGraphicsVideoItem::boundingRect() const
Reimplements: QGraphicsItem::boundingRect() const.
[override virtual]
void QGraphicsVideoItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr)
Reimplements: QGraphicsItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget).
© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.