I'd like to stream media at specific time intervals - a sort of online radio if you will. I'm currently using Icecast but would much rather a peer to peer solution. I see there's a proof of concept for streaming on the Swarm roadmap but not much context around it.
Does the "holy trinity" (Ethereum, Swarm and Whisper) support multimedia streaming?
464 views Asked by Adam Soffer At
2
There are 2 answers
1
On
well as @coborsism says simple streaming is possible with swarm out of the box.
The roadmap item is referring to a project still very much in research stage, that will combine efficient multicast routing and adaptive bitrate encoding (e.g, MDASH, RT(S)P) to provide live one-to-many broadcast support for swarm.
A little bit more context is https://gist.github.com/zelig/74b3486bcd5523a0b61e12d804d3c00d and mention in my devcon2 slides http://swarm-gateways.net/talks/amsterdam-2016-09-07/web3.pdf
If your content is not live, the issue is much less problematic, broadcasting at a specific time then just requires timed release of your content's address and/or providing decrtyption keys. Both easily managed outside of swarm.
You can absolutely stream files over swarm.
While the routing protocol developed for swarm is likely to be abstracted out so that it can be used for any targeted data/message transfer (from one participating ethereum node to another) and this may be adaptable to streaming directly from you to your listeners, there is a simpler solution that will work right away:
The idea is that you upload your music / content ahead of time to swarm and then later release the swarm ids one at a time via a different channel, be it whisper messages or an ENS registration change. Coupled with a front-end JS app that subscribes to your feed of swarm hashes and loads the appropriate swarm content, this should make a functioning radio station even with the alpha proof-of-concept version of swarm.
good luck!