Oddbean new post about | logout
 When trying to replace YouTube, would streaming with Bittorrent make technical sense?

I imagine a bittorrent based streaming client, with nostr discovery, would be the only thing that could scale while being censorship resistant and offer good UX/speed?

Probably not the best for small creators with only themselves seeding, but if 100 subscribers seed a video I imagine it could be fast.

#asknostr 
 There is major downside - once viewers seen the full video they won't share it. Thus I think that this approach is more suitable for livestreaming scenario. 
 Yeah that's what I thought, but maybe it would be possible to build clients that cache the last X videos and seed them while tab is open.

Another solution I could imagine people offering high bandwith seeding of torrents creators could pay for, maybe as DVM.
You upload a video, pay 1000sats for seeding in Europe + US for 30days. Then hopefully it should have enough natural seeders. You think this would work?
Nice thing with torrents is they are so interoperable so everyone can offer seeding etc. no special APIs or closed providers.
 
 Sounds like Internet providers might shrink upload rates once your idea takes off 🤣 
 I think some already do this for torrents, but customers would probably switch to other providers if it gets too annoying😄 
 Isn't that how popcorn time worked? It was so glorious. This is what they have taken from us. 
 Didn't know about popcorn time, the concept looks seems cool👀 
So technically this should work... 
 Yes and there was widely deployed and supported code for it. 
 Nobody's going to host content like that for free. 
 People run Nostr Relays for free too. And if the content you host relevant to you personally (subscriber of the channel) the incentive may is higher too. 
Ofc not forever etc but if enough users seed their favourite videos it could maybe work. Maybe clients could handle this intelligent, just allocate 10gb storage for NosTube and it seeds some stuff in the background. 
 There's like a couple dozen of us who would even actually entertain the idea of becoming a CDN for this platform.

I think you'd have better luck trying to squeeze blood from a stone, but that's just me.

Nostr and other social media requires effort and resources. Do you think there are enough altruistic sources who would offer this service for the masses?

🤣🤣🤣🤣😅😅😅🤣🤣😅🤣😅🤣😅🤣🤣😅😅 
 The torrent protocol downloads chunks in random order. You can't play until a file is complete since there are chunks missing.

If it's a multifile torrent, then it's possible to, say, prioritise certain files over others, and when these files are complete, you may play them.

Download rates are not great unless there's a seedbox among your uploading peers.

Typically seed/leech ratios aren't great either, particularly for older stuff. 
 You can stream torrents, most clients have an option to download from beginning and end instead of randomly so you can play the video directly after starting the download, just not possible to forward etc, but maybe it would be possible to do this too?👀 
 The random order adds to the speed, if you take that away, the file download will be slower, or at least will need more seeders. Why would you use torrent in that case anyway, a simple mirroring system would be enough. Mirrorlists allow for updating the list of "currently online hosts", linux package repos use this setup, and it's very reliable.

As for random seek (what you describe at the end), you need an index. AFAIK, an index can't really work without the complete file.

Technology enables a lot of things, but it's not magic, can't really make things happen that are physically impossible. 
 I understand that taking away the random order makes it slower but still like the idea of torrents because of the big amount of available clients / implementations already available. 
Was wondering how YouTube etc do the random seek as they don't have do download the whole file for that either, maybe it would be possible to do something similar with torrents, idk. You know the file size, and length of the video from headers, so you could tell the torrent client to download from byte X which should be around minute Y of the video.
I'm not very knowledgeable about torrents in detail, so thanks for the input. 
 Could we bittorrent something like a yewtube?
https://github.com/mps-youtube/yewtube 
 Would be pretty cool. I think the concept would be the same, just with a Terminal interface.

I think the concept would work better for large creators/influencers/movies but for small creators without seeding followers or paying for seeding it wouldn't work so well 
 For the small creators to have a voice to their followers (equal or above the larger), itd be cool to have WoT's prioritise the new users first 100 connections via a relay, then maybe if you wanted your content in 4k yes you'd pay 
 The problem would still be that someone has to seed the torrents. Maybe it'd be possible to build a torrent client that signals he has the file available but only seeds it is paid for. Would be cool to have an incentive for seeding but still keeping the unmodified bittorrent protocol below for compatibility. This way infrastructure could emerge by itself mhh
I hope something like this will be built, would love to stream some ecash for a torrent 
 I left out the most important part; the relay(s) would be seeding all the torrents. Probably impractical but This is interesting yes I'll keep thinking more on this

Great idea to get the ball rolling 💪