Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. QML and Qt Quick
  4. Display incoming video frames using QML Multimedia/C++
Forum Updated to NodeBB v4.3 + New Features

Display incoming video frames using QML Multimedia/C++

Scheduled Pinned Locked Moved Unsolved QML and Qt Quick
2 Posts 2 Posters 839 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    S Offline
    sybb8
    wrote on last edited by
    #1

    I'm new to Qt and QML so forgive me if I mess up any vocabulary here.

    I have a multi-threaded C++ application I developed outside of Qt that collects data (frames) from two cameras. For simplicity lets just say I have one camera I interface with but in reality I have two. I have a API that I use to interface with a frame grabber card (connected to PCIe slot) which connects to a camera over the camera link interface. My application connects to a frame grabber card on startup, initializes a few things, and then starts receiving frames. Each new frame is written to it's respected buffer of which I can access through a pointer. To help with this visualization...
    Camera (Hardware) -> Camera Link Interface (Hardware "Cable") -> FrameGrabber PCIe Card (Hardware "Linux PC") -> C++ Application (My software Application "Linux PC") -> Frame Buffer

    What do I need my application to do...

    1. Display in a window each frame I receive/save off to a buffer in my application.
    2. Apply certain processing work to each frame buffer and then re-display it again in another window.
    3. My application has to utilize my existing C++ Application which is all being built by cmake
    4. I do NOT want to use designer.
      NOTE: RAM is not an issue here. I have several hundred GB's of it.

    There seems to be this QML multimedia module I can use but there are many ways to utilize it's features that I'm lost on what route to take. I found this class called the QVideoFrame class. It says it represents video frame data "pixel data" which is what I need but I also have a buffer of my pixel data. Therefore, I don't want to duplicate my data if possible so I'm slight concerned with how this class will or at all use my frame buffers. Do I just give it a pointer to each incoming frame buffer. My images are 1024pixels x 1024pixels x 2bytes depth and everything is grayscale.

    What are my options here that would essentially work well with my requirements I mentioned above? Can you point me to some links or suggestions on how I can easily use the multimedia module or other suggested methods?

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi and welome to devnet,

      You don't have to use designer at all.

      Since you already manage the acquisition, then you could implement your own QtMultimedia camera backend, that will allow you to use the rest of the Qt classes like you would with the platforms backend.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      1 Reply Last reply
      0

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved