kclyu / rpi-webrtc-streamer

This repo's objective is providing something like Web Cam server on the most popular Raspberry PI hardware. By integrating [WebRTC](https://webrtc.org/native-code/) and Raspberry PI, we can stream the Raspberry camera feed to browser or native client which talks WebRTC.
Other
627 stars 108 forks source link

Only one connected browser #12

Closed adrian23 closed 7 years ago

adrian23 commented 7 years ago

What is the reason You made possibility to connect only one browser at the same time ? I'm just curious was it only one of your assumption or there was some problems to keep streaming to two sessions at the same time. Regards, Adrian

kclyu commented 7 years ago

First of all, the biggest reason is that Raspberry PI H/W currently supports one CSI Camera and the purpose of RWS program is Realtime Video Encoding.
Currently, RWS encodes video by adjusting FPS, bitrate, screen resolution according to BWE (Bandwidth Estimation) of one connected RTC session, and directly configures setting of H/W component camera and MMAL encoder.

Simultaneous sessions from one WebRTC Client have been recently added to the WebRTC native stack. However, in Raspberry PI H/W, it need to evaluate various methods (eg RWS Encoding Architecture change, hardware performance for encoding fps and bitrate per session) in order to check whether it is possible.

In a nutshell, many things should be considered and evaluated whether it is possible, and also it takes a lot of time and effort to develop. While concurrent multiple session features are still to be considered, they are not a high priority right now, so it is a feature that should be tried if higher priority ones are resolved.

Thanks, Lyu.

adrian23 commented 7 years ago

Thanks for your answer :) Cheers