I wrote this to solve a few things I cared about.
* I want to show people that native WebRTC players can be a thing. I hope this encourages hangouts/discord/$x to implement WHIP and WHEP it would let people do so much more
* I wanted to make low latency sharing easier. I saw the need for this working on adding WebRTC to OBS and Broadcast Box[0]
* I wanted to show devs what a great ecosystem exists for WebRTC. Lots of great implementations in different languages.
* Was a bit of a ‘frustration project’. I saw a company claiming only their proprietary protocol can do latency this low. So I thought ‘screw you I will make an open source version!’
Did the company have a “ripple” in its name? Curious
Let me find it again! I saw it on LinkedIn and it was such a bullshit promo thing
Hey Sean, we both worked at Twitch Video but I left just as you were joining. I currently work on the Discord video stack and am somewhat curious about how you imagine Discord leveraging WHIP/WHEP. Do you see it as a way for these clients to broadcast outwards to services like Twitch or more as an interoperability tool?
Users what to send WHIP into discord. The lack of control on screen sharing today is frustrating. Users want to capture via another tool and control bitrate/resolution.
Most Broadcast Box users tell me that’s their reason for switching off discord.
———
With WHEP I want to see easier co-streaming. I should be able to connect a room to my OBS instance and everyone’s video auto show up.
I don’t have this figured out yet. Would love your opinion and feedback. Wanna comment on the doc or would love to talk 1:1 ! siobud.com/meeting
Any plans on integrating L4S with e.g. Tetrys-based FEC and using a way where the congestion feedback from L4S acts on the quantizer/rate-factor instead of directly on bitrate?
It's much more appropriate to do perceptual fairness than strict bitrate fairness.
Happy to have a chat on this btw; you can best catch me on discord.
Depends on the network, surely? Lots of applications for low latency video where you are not sharing the channel, but it has a fixed bandwidth.
Is the restriction to NVIDIA necessary for the low latency?
Nope! I want to add all the other flows.
nvidia is the absolute lowest I believe. I wanted to do it first to know if it was worth building.
Question, 30ms latency sounds amazing but how does it actually compare to "the standard" sharing tools for desktops, like do you know what the latency on say MSRDP is as comparison or VNC?
I doubt the protocol itself makes a big difference. I bet you can get 30ms with VNC. The difference with BitWHIP.
* Can play WebRTC in browser. That makes things easier to use.
* simpler/hackable software. BitWHIP is simple and uses nvenc etc… if you use nvenc with VNC I bet you can get the same experience
Another things that is in this realm. I am adding native co-streaming/conferencing to OBS [0]. OBS can send WebRTC, next I want to make receiving work well.
Between that and Simulcast I hope to make real-time video dramatically cheaper and easier
[0] https://docs.google.com/document/d/1Ed2Evze1ZJHY-1f4tYzqNZfx...
This would be fabulous, thank you so much for working on that. What kind of latency does dual encoding (on client then on receiver again) adds? Are there codecs that can have multiple streams on the same image (as in zones of independent streams on the video surface)?
This is awesome. I would love if you had some examples on how to use AntMedia as a source. I am mostly in video engineering so the read the source comes slower to me. This would be really handy in many cases.
Great things are accomplished by spite programming! https://hackaday.com/2018/01/03/spite-thrift-and-the-virtues...
Thanks the code is really useful to read through.