Hello,how can i use libwebrtc 36.3 hardware acceleration

how can i use libwebrtc 36.3 hardware acceleration,the sample ‘webrtc_argus_camera_app’ wrapper the interface video_encoder_factory, but not call the function, how can i do it

Hello @ap0406438, welcome to the NVIDIA developer forums.

Please review the detailed instructions in the official documentation: Hardware Acceleration in the WebRTC Framework — NVIDIA Jetson Linux Developer Guide 1 documentation

Apart from that, let us know which Jetson Hardware you are working on and we might be able ot refer you to the correct subcategory here on the forums.

Thanks!

Hello, I am currently using Jetson Agx Orin’s development board to develop a product. The project is very urgent, and my Jet Pack version has been upgraded to 6.0. The application scenario is to convert the stream from the USB camera to i420, then use libwebrtc36.3 version of H264 hardware encoding, and send it out. I have carefully read the official documentation, and if I can make libwebrtc36.3 run and enable H264 hardware coding, then the problem will be solved. It is such a simple thing. But I have been debugging for two weeks now, and I have also debugged libwebrtc25.2. Either it is still soft coding for Openh264, or it crashes when it comes to hard coding. I have seen a demo with webrtc_argus_camera_app in version 36.3, and during debugging, I found that it did not actually call LibNvVideoEncoderTemplateAdapter to implement libwebrtc hardware encoding. Although this demo encapsulates the function that implements webrtc calling h264 hardware encoding, when I tried to open this function, it crashed and reported a check adm() failed error. How can I make the H264 hardware encoding of libwebrtc run? Can someone provide some demos or useful links that can make USB cameras+libwebrtc hard coded? Thank you.

Hi,
Please share where you get webrtc_argus_camera_app. So that we can check and suggest next.

We have a package in release page:

Jetson Linux 36.3 | NVIDIA Developer
WebRTC

You may check and see if it can be applied to your use-case.

https://developer.download.nvidia.cn/embedded/L4T/r36_Release_v3.0/sources/public_sources.tbz2?t=eyJscyI6ImdzZW8iLCJsc2QiOiJodHRwczovL3d3dy5nb29nbGUuY29tLmhrLyJ9

download the public_sources, After decompressing, there is a webrtc_argus_camera_app_src file

If there is any news, please convey it to me as soon as possible

Hi,
If you follow developer guide and cannot apply the package to your use-case, the package may not be eligible for the use-case.

You may check this and see if it can be applied to your use-case:
jetson-inference/docs/webrtc-server.md at master · dusty-nv/jetson-inference · GitHub

Ok! thank you!
Can you tell me where I can download the file WebRTP_r36.3.0-arch64.tbz2? The official development documentation mentions this file, but I can’t find the link

Hi,
Please download it from the link:

Okay, I have downloaded the real libwebrtc36.3 from Tools and it compiles smoothly. However, during LD, I received a bunch of undefined reference std:: errors. My jet pack version is 6.0, bsp version is 36.3, and g++version is 11.4.0; I have tried both c14 and c17, but there is an issue with this ld. Other versions of libwebrtc, such as 25.2, do not have this issue. Is it missing a certain parameter or a certain so? I have researched a lot of information and tried various methods, how to solve it

There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.
Thanks

Is this still an issue to support? Any result can be shared?