Live data from Hacker News

Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

github.com

31–40 of 141 posts

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#31
post #20

Earlier quoted context omitted.

What about a recording of a demo on YouTube?

I’ll get on that first thing tomorrow!

OBS runs on windows as well, this only runs on Linux? Can I run this in a VM of Linux easily - and have all deps there, including OBS? (I dont know anything about OBS just yet - I just looked at it and DL'd it now...

Incidentally - I met the the producer of the podcast "moneypot" on the plane a few days ago and we talked a ton - I asked about how would one get into podcasting/streaming if they havent yet - and she mentioned some great resources - I cant recall them off the top of my head - Ill have to ping her and get them again - but this is something I am going to look into learning during this pandowntime.

If you have resources to point at - that would be appreciated.

THanks for this though.

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#32
post #30

Earlier quoted context omitted.

So assuming you have packet loss - you just get a paused/blank stream until the flow continues? How does it handle any network issues. Would it ever be possible to route two stream via different paths to the client and let the client just accept the first packet from either and drop the other in order to add some redundancy to delivery?

This wouldn’t actually solve anything since WebRTC can handle packet loss. The loss is going to be coming from OBS -> Server which unfortunately there isn’t much I can do about that since it uses UDP

Ah thanks.

A diagram of the setup on your page would be helpful...

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#33
Could this mix multiple obs streams from different origins? My friends and I put on a NYE stream party but it was actually a massive faff finding something that could mix multiple remote streams into one. Would love to be able to self host something to do it

A simple switch is fine in this case, no overlays or anything

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#34
post #24
post #13

Earlier quoted context omitted.

This project is pretty cool, I’ll tinker around with it tomorrow. As an aside, I’ve noticed you’re building out your own stream protocol stack (FTL/LightSpeed). What’s the reasoning there? Seems slightly inconvenient to have to “hack” OBS to make the output stream work. Will FTL support be merged into OBS in the future? If you’re just trying to avoid the latency of RTMP then I might suggest considering the existing S…

SRT seems like an overly complicated solution that has already been solved by KCP protocol.

Yes to the first half of this at least (KCP is not something I've heard of).

Having recently attempted to use SRT for an event's backend restreaming stack, the low latency was nice but it's a pain in the ass. It's really not designed for links where latency isn't known and consistent. You have to bake an expected latency amount into initial protocol negotiation or you'll end up with problems, and OBS' support is quite poor (failure to establish a connection for whatever reason is likely to freeze it up completely, it sucks up a lot of cpu vs. rtmp, etc).

And the other end of the stack is either pretty immature and kind of wonky (haivision's own software, srt-live-server) or requires you to pay to use it or is very closed source.

WebRTC of some sort is definitely the future of this, imo. Even if the stack kind of sucks right now the results are fabulous (discord's video streaming for eg. is webrtc based and is easily the lowest latency free screen sharing I've seen outside share-my-desktop stuff like parsec or rdp).

It looks like this uses the already-built-into-obs support for the webrtc-based ftl protocol mixer used and microsoft killed. That's actually really clever and honestly I think this is far more appealing than SRT.

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#35
post #28

Very cool! If you want casual people to use this, I would look into simplifying the setup. Either by providing compiled binaries instead of having to set up go, rust etc oneself. Or by containerizing something.

I’d love to write an installer that would install and run everything for you

Another vote for some kind of deployment system, that would rock.

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#36
post #20

Earlier quoted context omitted.

I’ll get on that first thing tomorrow!

OBS runs on windows as well, this only runs on Linux? Can I run this in a VM of Linux easily - and have all deps there, including OBS? (I dont know anything about OBS just yet - I just looked at it and DL'd it now... Incidentally - I met the the producer of the podcast "moneypot" on the plane a few days ago and we talked a ton - I asked about how would one get into podcasting/streaming if they havent yet - and she me…

The idea is OBS runs broadcaster side and thus what send the stream. Lightspeed runs server side (like YouTube, Twitch, Facebook, etc). Your viewers then connect to that server running Lightspeed rather than your home machine broadcasting the stream.

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#37
post #24
post #13

Earlier quoted context omitted.

This project is pretty cool, I’ll tinker around with it tomorrow. As an aside, I’ve noticed you’re building out your own stream protocol stack (FTL/LightSpeed). What’s the reasoning there? Seems slightly inconvenient to have to “hack” OBS to make the output stream work. Will FTL support be merged into OBS in the future? If you’re just trying to avoid the latency of RTMP then I might suggest considering the existing S…

SRT seems like an overly complicated solution that has already been solved by KCP protocol.

SRT is massively complicated hence just the one implementation from one person. It’s based on a defunct file transfer protocol.

RIST adds nack based retransmissions to decades old RTP and has multiple implementations.

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#38
post #8

Earlier quoted context omitted.

YouTube and twitch use RTMP which operates over TCP. This means that each time we send a packet we need to ensure that it’s been received which adds latency overhead. Lightspeed uses the FTL protocol which operates over udp thus reducing the latency overhead

So assuming you have packet loss - you just get a paused/blank stream until the flow continues? How does it handle any network issues. Would it ever be possible to route two stream via different paths to the client and let the client just accept the first packet from either and drop the other in order to add some redundancy to delivery?

Multiple streams is BAU with RTP - using smpte-2022-7, or most of the time just firing the packet different times on different routing tables.

Sometimes network paths die. This could be a dodgy router in a third party network that drops streams for 150ms at a time, or a bgp recalculation that knocks it out for maybe a minute or so.

In both cases you need to have multiple routes to keep your latency low.

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#39
post #2

Welcome to Project Lightspeed. This is a project that allows anyone to easily deploy their own sub-second latency live-streaming server. In its current state you can stream from OBS [1] and watch that stream back from any desktop browser. This has been a super fun project which has taught me more than any other project I have done. It uses Rust, Go and React and can be deployed fairly easily on a very lightweight ser…

Really cool! You say you use Rust and Go. Why both? I imagine Rust for super performance sensitive stuff and Go for the rest, for faster development?

Re: Show HN: Lightspeed – subsecond, open source, self hosted stream from OBS

#40

Very cool - mind showcasing/telling us some use-cases? I'm thinking... if you pair this with a tool to control input (mouse/keyboard) you could have a ligth-fast (pun intended) VNC server with HD resolution?

Hmm, how would you go about doing that though? Would that not require admin/highest level privileges?
Post reply on HN