首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QGraphicsVideoItem in QGraphicsView

QGraphicsVideoItem in QGraphicsView
EN

Stack Overflow用户
提问于 2015-10-09 22:56:49
回答 2查看 1.5K关注 0票数 2

我试图在QT5.5中绘制QGraphicsView内部的视频。这是密码

代码语言:javascript
复制
QString path = "video.mp4";

qDebug() << QFile::exists(path);

ui->graphicsView->setScene(new QGraphicsScene());

QMediaPlayer pl;
QGraphicsVideoItem vid;
pl.setVideoOutput(&vid);
qDebug() << pl.error();

vid.setSize( QSizeF(1920, 1080) );

pl.setMedia( QUrl::fromLocalFile( path ) );
qDebug() << pl.error();

ui->graphicsView->scene()->addItem(&vid);
ui->graphicsView->resize(1920, 1080);
pl.play();
qDebug() << pl.error();

什么都画不出来。没有错误。文件存在。也许插件有什么问题?或硬件加速,因为我在笔记本上与离散卡。提前谢谢你。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-09 23:54:02

好的,我知道了。我的愚蠢错误。退出作用域后删除QMediaPlayer和QGraphicsVideoItem。

票数 0
EN

Stack Overflow用户

发布于 2021-01-07 20:24:53

以防其他人进入这个页面。您可能不得不使用QVideoWidget而不是QGraphicsVideoItem。

https://whynhow.info/30713/How-to-make-friends-QCamera-and-QGraphicsVideoItem

代码语言:javascript
复制
    // Note: QGraphicsVideoItem doesn't work but QVideoWidget does
    // https://whynhow.info/30713/How-to-make-friends-QCamera-and-QGraphicsVideoItem?
    auto *vidWidget = new QVideoWidget;
    mpScene->addWidget(vidWidget);

    mpCamera = new QCamera(acCamera, this);
    mpCamera->setViewfinder(vidWidget);
    mpCamera->setCaptureMode(QCamera::CaptureVideo);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33048298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档