繁体   English   中英

如何在GPU上运行qt应用程序而不是在CPU上运行

[英]How to run qt application on GPU and not on CPU

我有一个小型QT应用程序,从本地存储播放视频,当我运行它时视频阻塞和缓慢,我正在使用gstreamer 0.1 ...但是当我从终端运行它并明确说与gstreamer在gpu上运行它工作正常。

如何从QT调整我在GPU上运行的代码...我的代码示例...

    QApplication app(argc, argv);

    QGraphicsView *graphicsView = new QGraphicsView;
    QMediaPlayer *player = new QMediaPlayer;
    QGraphicsScene *scene = new QGraphicsScene;

    graphicsView->setScene(scene);
    graphicsView->setMinimumSize(800,480);
    QGraphicsVideoItem *item = new QGraphicsVideoItem;
    player->setVideoOutput(item);
    graphicsView->scene()->addItem(item);
    graphicsView->show();
    player->setMedia(QUrl::fromLocalFile("/path/to/my/file"));

    QTransform mirror;
    mirror.scale(-1,1);
    item->setTransform(mirror);

    player->play();

return app.exec();

}

您不能使用GPU(或在CPU和GPU之间切换)来运行您的Qt应用程序。 您仍然需要CPU来运行您的应用程序。 GPU不是通用处理器:您只能为GPU专门执行一些数学任务。 它的CPU控制将在GPU上执行的操作。

所有GStreamer代码都由CPU执行。 但是,有些元素可以使用GPU进行内部数学运算。 “明确说gstreamer在GPU上运行”是什么意思?

你应该只使用Qt的GStreamer 1.x分支。 GStreamer 0.1岁15岁。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM