streamaserver / streama

Self hosted streaming media server. https://docs.streama-project.com/
MIT License
9.61k stars 986 forks source link

External relay server #596

Open ghost opened 6 years ago

ghost commented 6 years ago

I host my Streama instance on my trusty home server. I've only got an upload bandwidth of ~1 MB/s, so when I want to watch something with friends online, at most one or two people can join me. This problem could be solved by doing things the way Twitch.tv does: the Streama instance streams the video to a relay server running on a VPS with a more potent uplink. The relay server—ideally part of the main Streama WAR, e.g. java -jar streama.war --relay—then relays the video data to the actual clients.

I'm a decently capable developer myself, though I don't have prior experience with Groovy. If you think this is a feature that would suit Streama well, I'd be happy to learn some Groovy and work on a prototype.

pmjm commented 6 years ago

Another possibility to consider is throttling the speed at which Streama sends the video file to the remote browser. If Streama stores the bitrate of the file in the database then perhaps there can be an option to only upload data from the server to the client at that rate plus a certain percentage.

Shrinks99 commented 5 years ago

This would be an interesting application for IPFS with the external server and the original server acting as both a gateway and a content host.

JohnnyKetch commented 4 years ago

This would be an interesting application for IPFS with the external server and the original server acting as both a gateway and a content host.

good idea

I host my Streama instance on my trusty home server. I've only got an upload bandwidth of ~1 MB/s, so when I want to watch something with friends online, at most one or two people can join me. This problem could be solved by doing things the way Twitch.tv does: the Streama instance streams the video to a relay server running on a VPS with a more potent uplink. The relay server—ideally part of the main Streama WAR, e.g. java -jar streama.war --relay—then relays the video data to the actual clients.

I'm a decently capable developer myself, though I don't have prior experience with Groovy. If you think this is a feature that would suit Streama well, I'd be happy to learn some Groovy and work on a prototype.

good idea!