簡體   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