Web Streaming react UI in USD Composer in Linux

I want to stream my omniverse application on web and wants to add react UI on top of it when a cube is clicked. I want to know the different options I have to implement this.

I have followed the cube on click tutorial. Now I want to send an event click to the react side, that should pop open the UI window on top of my omniverse application in web browser.

If WebRTC is the only way, provide any working samples related to same.

I am working on a linux machine.
USD composer - 2023.2.5
Since I am new to omniverse, bit of direction would be appreciated.

Hi there and thank you for your question. I am just curious, but if you are new to Omniverse, why did you download our Legacy Launcher? Ideally you just stick with the kit download from NGC. So really you need to just ignore everything Launcher and get rid of it and start over.

  1. The first thing to do is update your USD Composer. That is 2 years old and will not work. Launcher is depreciated. You really need to uninstall Launcher and start over fresh.
  2. The second thing is you follow our pre-built React examples from GitHub

So for 1) follow this as a windows example, and adapt to your needs for Linux.

Warning, This will totally remove everything Omniverse from your system. All data, all cache, all apps, all settings.

To Uninstall the Omniverse Launcher on Windows, follow these instructions:
1. Exit all kit apps 
2. Close the Launcher interface
3. Right click on the "Green Launcher icon" down in the bottom right corner of the system tray and click "Exit"
4. Start the "Add / Remove Programs" system for and select "Nvidia Omniverse Launcher". Uninstall it.
5. Start "Task Manager" and go to the "Details" tab. List by the "Name" column
6. Look for all processes running that start with "omni" with a green icon. These are Omniverse processes.  If you have none running, ignore this.
7. Right click on each one of them and use the "End Task". If you have none running, ignore this.

8. Delete ALL of following folders, if you find them:
c:/users/USER/appdata/local/ov
c:/users/USER/appdata/local/omniverse-launcher-updater
c:/users/USER/appdata/roaming/omni-launcher
c:/users/USER/.nvidia-omniverse
c:/users/USER/documents/kit
c:/users/USER/documents/omniverse

9. Restart your computer

Then you need to start fresh with our latest Composer from the Kit App Template at GitHub - NVIDIA-Omniverse/kit-app-template: Omniverse Kit App Template

Then you need to download the web streaming viewer example which is compatible with the React code.
GitHub - NVIDIA-Omniverse/web-viewer-sample: This sample demonstrates how a front-end client can present a streamed Omniverse Kit application and how to send messages between the two apps.

1 Like

Hi @Richard3D Thanks for the detailed guidance.

I have setup the Omniverse kit app template. And then downloaded the web viewer sample. But the local streaming in it is not working while following the given steps in it.
While running the client with “npm run dev” I am getting Syntax error “Unexpected reserved word”.

Can you share me the steps after installing omniverse kit template?

Also, I saw Kubernetes clusters is required for OKAS. Can you explain what all
technology stack is required for setting up my basic streaming application?

There is local streaming, OKAS, GDN and OVC.
Can you explain the specific option of streaming to choose based on use case?

So you got the stage where you typed in “npm install” ? And what happened? You could see the normal screen like in my video? Then you typed in “npm run dev” and it gave an error? Strange. Go back and type in npm install and show my that screen so I can see. Or better still, record a video

Hi @Richard3D I am getting few unsupported engine warnings, when doing npm install.

After doing “npm audit fix --force” … I got this.

And then same error after doing “npm run dev”

Hi @Richard3D I got it working after using node compatible version. Thanks a lot.

I have few queries…

  1. I saw Kubernetes clusters is required for OKAS. Can you explain what all
    technology stack is required for setting up my basic streaming application.

  2. There is local streaming, OKAS, GDN and OVC.
    Can you explain the specific option of streaming to choose based on our use case?

For 1) I really do not have specifics on the Kubernetes stack, because that is something that you would need to set up. But I do know that you simulate it virtually on a home install or deploy it the cloud on most popular platforms. Then you would use a Linux install with a container.

  1. For these streaming options, I am assuming you are referring to the Application layer options when building the Kit app template. You really want to just stick to the default option 1, local streaming. That is your best starting point. The rest are all advanced cloud options. GDN is our “graphics delivery network”.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.