nadjieb / cpp-mjpeg-streamer

C++ MJPEG over HTTP Library
MIT License
132 stars 36 forks source link

extract video stream from html to c++ #19

Closed utsavrai closed 2 years ago

utsavrai commented 2 years ago

Is there any way of extracting real-time HTML video to c++ environment, suppose I have webrtc media which I want to process frame by frame at high-resolution 30fps but the conversion of every frame to base64 using javascript is very computationally expensive and causes too much delay.

kamalnadjieb commented 2 years ago

Hi, sorry for late reply.

If you browse on the internet, there are several WebRTC client libraries in C++. You can also create an intermediary NodeJS client that receives WebRTC stream from web browser then forward it to another C++ process using an interprocess cross-language communication library (there must be one). To reduce the latency, I think you don't have any choice but to reduce the quality and resolution of the frames or using transport protocol other than TCP.

FYI, I built this library to help scientists and hobbyists to visualize their project and not focusing on perfomance (at least for now). Since this library is using HTTP (which is built on top of TCP that has handshakes and congestion control), of course it is less performance if you compare it to another library that using other protocol like UDP.

Thank you.