Класс QGraphicsVideoItem
Класс QGraphicsVideoItem предоставляет графический элемент, который отображает видео, созданное объектом QMediaObject. Подробнее...
| Заголовок: | #include <QGraphicsVideoItem> |
| qmake: | QT += multimediawidgets |
| Наследует: | QGraphicsObject и QMediaBindableInterface |
Свойства
|
|
Открытые функции
| 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 |
Переопределенные открытые функции
| virtual QRectF | boundingRect() const override |
| virtual QMediaObject * | mediaObject() const override |
| virtual void | paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr) override |
Сигналы
| void | nativeSizeChanged(const QSizeF &size) |
Подробное описание
Прикрепление QGraphicsVideoItem к QMediaObject позволяет отображать выход видео или изображения этого объекта мультимедиа. QGraphicsVideoItem прикрепляется к объекту мультимедиа путем передачи указателя на QMediaObject в функцию setMediaObject().
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(); Примечание: Только один выходной сигнал отображения может быть прикреплен к объекту мультимедиа одновременно.
См. также QMediaObject, QMediaPlayer и QVideoWidget.
Документация по свойствам
aspectRatioMode : Qt::AspectRatioMode
как видео масштабируется для соответствия размеру графического элемента.
Функции доступа:
| Qt::AspectRatioMode | aspectRatioMode() const |
| void | setAspectRatioMode(Qt::AspectRatioMode mode) |
mediaObject : QMediaObject* const
Это свойство содержит объект мультимедиа, который предоставляет видео, отображаемое графическим элементом.
Функции доступа:
| virtual QMediaObject * | mediaObject() const override |
nativeSize : const QSizeF
Это свойство содержит размер видео по умолчанию.
Функции доступа:
| QSizeF | nativeSize() const |
Сигнал уведомления:
| void | nativeSizeChanged(const QSizeF &size) |
offset : QPointF
Это свойство содержит смещение элемента видео.
QGraphicsVideoItem будет отображать видео, используя смещение для его верхнего левого угла.
Функции доступа:
| QPointF | offset() const |
| void | setOffset(const QPointF &offset) |
size : QSizeF
Это свойство содержит размер элемента видео.
QGraphicsVideoItem будет отображать видео, масштабируя его для соответствия размеру в соответствии с его значением fillMode.
Функции доступа:
| QSizeF | size() const |
| void | setSize(const QSizeF &size) |
videoSurface : QAbstractVideoSurface* const
Возвращает базовую видеоповерхность, которая может отображать кадры видео в текущем элементе. Это свойство никогда не nullptr. Пример того, как отображать кадры видео в 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); Это свойство было введено в Qt 5.15.
Функции доступа:
| QAbstractVideoSurface * | videoSurface() const |
См. также QMediaPlayer::setVideoOutput.
Документация по функциям-членам
QGraphicsVideoItem::QGraphicsVideoItem(QGraphicsItem *parent = nullptr)
Создаёт графический элемент для отображения видео.
parent передаётся в QGraphicsItem.
[signal] void QGraphicsVideoItem::nativeSizeChanged(const QSizeF &size)
Сигнализирует, что размер видео по умолчанию size изменился.
Примечание: Сигнал уведомления для свойства nativeSize.
[virtual] QGraphicsVideoItem::~QGraphicsVideoItem()
Удаляет элемент графики видео.
[override virtual] QRectF QGraphicsVideoItem::boundingRect() const
Переопределяет: QGraphicsItem::boundingRect() const.
[override virtual] void QGraphicsVideoItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr)
Переопределяет: QGraphicsItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget).
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qgraphicsvideoitem.html