QGraphicsVideoItem Class

QGraphicsVideoItemクラスは、QMediaPlayer またはQCamera によって生成されたビデオを表示するグラフィック・アイテムを提供します

ヘッダー #include <QGraphicsVideoItem>
CMake: find_package(Qt6 REQUIRED COMPONENTS MultimediaWidgets)
target_link_libraries(mytarget PRIVATE Qt6::MultimediaWidgets)
qmake: QT += multimediawidgets
継承: QGraphicsObject

プロパティ

パブリック関数

QGraphicsVideoItem(QGraphicsItem *parent = nullptr)
virtual ~QGraphicsVideoItem() override
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
QVideoSink *videoSink() const

再実装パブリック関数

virtual QRectF boundingRect() const override
virtual void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget = nullptr) override
virtual int type() const override

シグナル

void nativeSizeChanged(const QSizeF &size)

詳細説明

QGraphicsVideoItem をQMediaPlayer またはQCamera にアタッチすると、そのメディアオブジェクトのビデオまたは画像出力を表示できます。

player = new QMediaPlayer(this);

QGraphicsVideoItem *item = new QGraphicsVideoItem;
player->setVideoOutput(item);
graphicsView->scene()->addItem(item);
graphicsView->show();

player->setSource(QUrl("http://example.com/myclip4.ogv"));
player->play();

:一度にメディアオブジェクトにアタッチできる表示出力は1つだけです。

QMediaPlayerQVideoWidgetQCameraも参照してください

プロパティ・ドキュメント

aspectRatioMode : Qt::AspectRatioMode

グラフィックスアイテムのサイズに合わせて動画を拡大縮小する方法。

関数にアクセスします:

Qt::AspectRatioMode aspectRatioMode() const
void setAspectRatioMode(Qt::AspectRatioMode mode)

[read-only] 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)

[read-only] videoSink : QVideoSink* const

現在のアイテムにビデオフレームをレンダリングできる、基礎となるビデオシンクを返す。このプロパティがnullptr になることはありません。動画フレームをQGraphicsVideoItem にレンダリングする方法の例:

QGraphicsVideoItem *item = new QGraphicsVideoItem;
graphicsView->scene()->addItem(item);
graphicsView->show();
QImage img = QImage("images/qt-logo.png").convertToFormat(QImage::Format_ARGB32);
item->videoSink()->setVideoFrame(QVideoFrame(img));

アクセス関数:

QVideoSink *videoSink() const[see note below]

注: この関数は、メタオブジェクトシステムおよび QML から呼び出すことができます。Q_INVOKABLE を参照してください。

QMediaPlayer::setVideoOutputも参照して ください。

メンバー関数ドキュメント

[explicit] QGraphicsVideoItem::QGraphicsVideoItem(QGraphicsItem *parent = nullptr)

動画を表示するグラフィック項目を構築する。

parentQGraphicsItem に渡される。

[override virtual noexcept] 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)。

[override virtual] int QGraphicsVideoItem::type() const

再実装:QGraphicsItem::type() const.

動画アイテムの型を表す int を返します。

© 2025 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.