How to set the port for the stream

I have application based on “omni.app.dev.kit” which streaming own content through WebRTC web server.
I use extensions:
“omni.services.facilities.base-1.0.4” = {}
“omni.kit.livestream.core-2.3.0+105.1.wx64.r.cp310” = {}
“omni.services.streamclient.webrtc-1.3.8” = {}
“omni.kit.livestream.webrtc.setup-1.0.1” = {}

I’m looking for solution how to set streaming port and web server port.
I couldn’t find anywhere in the code of extensions script to set the port to the number I found out from the browser when connecting.

I want to

Great to see your interest in Omniverse App Streaming :)

Please see Embedded Web Viewer Example for our recommended path. Some of the extensions you list are being deprecated.

The example points to 2 repositories - one for the Kit app creation. You’ll use USD Viewer as a starting point. The other is the front end client (web-viewer-sample). When the app and client runs locally they automatically connect.

This is not a solution to my problem or an answer to my question.

  1. Personally, I’m looking for a solution where the end user doesn’t have to install/copy any parts of the code. Only through the browser will he connect to the web server, which will provide him with access to the desired stream.
  2. I work in a enterprise environment where KIT v.105.1.2 is listed as the latest current version. And I’m doing a PoC for developers to build custom apps and extensions for Omniverse based on my efforts that meet IT security requirements and meet end user requirements.
  3. A colleague of mine is trying the path you describe and is facing the same question: How to control which port the streaming application listens/broadcasts on?
  4. The Kit App Template and Web Viewer Template instructions are very difficult to work with in an automotive corporate environment and require many IT security exceptions because REPO.bat refers to package repositories when downloaded to the Internet. Such a solution is unacceptable for ordinary users/developers.

We are looking for a solution where the application runs on a high-performance station (dual-GPU RTX A6000 station or Apollo server) and the end user connects to the stream from a low-performance device (office laptop) and does not have the permissions or skills to install or modify the applications and the system.
The second point is to try to run the application multiple times with streaming on multiple ports to connect multiple users.

My PoC will be used to decide on the integration of Omniverse into our company and the possibilities of future application development within it.

1 Like

Understood. Still, please use the Embedded Web Viewer Example with its resources to create the solution. The original post indicates usage of Extensions being deprecated.

The Example points to using the 105.1-viewer branch of kit-app-template (GitHub - NVIDIA-Omniverse/kit-app-template at 105.1-viewer). Currently that branch does use Kit 105.1.2.

The Example is for developers to create a solution. Once developed the end user would not need to install anything. You’d need to stream the application from the high-performance station and provide a client/webpage that provides the streamed view. The Example links to 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. which shows how to use the omniverse-webrtc-streaming-library in any client. The AppStreamer is provided by the library (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.).

We will provide instructions for customizing the ports in a future release. For now, on the Kit app side you can do this with:

/app/livestream/port (defaults to 49100, this is the ‘signaling’ port)
/app/livestream/fixedHostPort (defaults to 1024)
/app/livestream/minHostPort (defaults to 1024, only used if fixedHostPort==0)
/app/livestream/maxHostPort (defaults to 65535, only used if fixedHostPort==0)

I’m looking into if/how that can be done on the client side.

I think for running many instances you’ll need a service setup. We are releasing an Omniverse App Streaming Sample soon that provides instructions for setting up a service that can provide app streaming instances on demand.

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