Skip to content

cosmoimd/holohub_videogenius_integration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Holohub - Videogenius integration

Files to add to the NVIDIA holohub repository for Videogenius compatibility.

Videogenius is the Cosmo proprietary software that manages the video input and output. It abstracts supported video boards in order to make software hardware-agnostic. An application can call this library without worrying about the video board currently installed.

Videogenius provides an API to:

  • receive the input video frame and the info of the current video standard
  • transmit an overlay that will be superimposed on the input video

To obtain Videogenius, the third party will enroll in the AI Access program through the Cosmo Innovation Center. The application form will be reviewed, and if approved, the third party will receive the software/hardware needed to develop a SaMD for the GI Genius device.

Requirements

Clone the holohub repository and then checkout at commit 468f5fc5d3c16ea129a913e4a660c99ef854f6e1. This commit corresponds to Holoscan v1.0.3.

This integration is compatible with Videogenius version 3.0.1.

Integration

Add/modify this files in the cloned Holohub repository:

  • applications/

    • It contains sample applications to be copied in the Holohub folder applications. CMakeLists.txt.integration contains the lines to add to the file CMakeLists.txt.
  • gxf_extensions/

    • It contains extensions to be copied in the Holohub folder gxf_extensions. CMakeLists.txt.integration contains the lines to add to the file CMakeLists.txt.
  • operators/

    • It contains operators to be copied in the Holohub folder operators. CMakeLists.txt.integration contains the lines to add to the file CMakeLists.txt.

After integration follow the README inside the holohub repository to build your application.

How to use

In the context of the AI Access program, Cosmo provides two Holoscan operators to third parties that are developing a SaMD compatible with the GI Genius device.
The operators interface with the Videogenius library and are:

  • GeniusVideoSourceOp: video receiver, it returns the video frame in RGBA format (alpha can be dropped later).
  • GeniusVideoOverlayOp: video transmitter, it needs as input a frame in BGRA format that only contains the data to overlay on the input video frame, the rest of the pixels must be transparent.

These operators can be used in C++ or Python. For example, in Python, they can be imported as:

from holohub.genius_video_source import GeniusVideoSourceOp
from holohub.genius_video_overlay import GeniusVideoOverlayOp

About

Files to add in the NVIDIA holohub repository to be compatible with videogenius

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors