Hello me and my team are trying to port a C++ application from Intel UP2 to Nvidia Jetson Nano.
Our app use WebRTC to send a video stream to another device. To do so, the video datastream have to be encoded in the H264 format.
We use the Nvidia Encoder Factory class in the WebRTC library to compress the raw video stream from a camera into the H264 format.
Basically we have two issues: 1) The framerate is too low, I'm aiming for 30 fps in 1920x1080p resolution. On intel board I can have this performance, but on Nano it's less than 10 fps. Inside the WebRTC package provided by Nvidia there is a test application for it, called `video_loopback`, and I can see the framerate is not enough. Also by using different USB cameras I noticed a slightly better framerate sometimes but still not enough. 2) There are several parameters for the H264 Encoder class: `Profile`, `Level`, `RTP Packetization mode`. The combination of various parameters make a lot of possible configurations, but only one seems to be supported by the Nvidia encoder class in webRTC (packetization-mode = 0, profile-level-id = 42e01f). However many Android devices only support `packetization-mode=1`, it means I cannot establish a call between the Nano and an Android device, which is one of the key features of our application. I believe these 2 issues could be fixed by tweaking the encoder code in the Webrtc library, unfortunately I could not find the sources anywhere. I'd like to have access to these sources, or at least discuss with the person who developed it so I don't have to code the whole encoding logic. Here is also some technical questions which could help me and my team: - Which type of camera should we use for getting the best performances with the Nvidia Encoder (interface, model, capability)? - When capturing the video, does the Encoder need a specific video format as input ? (NV12, YUY2, MPEG, I420, …) - From Gstreamer I noticed very good results in terms of framerate, but I wonder why the WebRTC class is lower, did someone managed to transmit a 30fps stream with it?