With the mass migrations of Reddit users to Lemmy/Kbin, and Twitter now speedrunning its own mass extinction, it seems me that the eventual future of social media is de-centralized. I like how Lemmy is slowing turning out, even if it still has some work to do and growing pains to fix up. It’s still able to inform me of all of the current events I want and has a large enough community that it doesn’t feel empty.
I think a similar path will present itself for a de-centralized video media platform like PeerTube, since YouTube will eventually piss off enough of its users to cause a similar kind of exodus. Wanting to jump in on the concept at an early stage, I signed up for a channel on spectra.video and uploaded my video collection there.
But, I don’t really see the same kind of community and usefulness on PeerTube. I check out the Discover and Trending pages, and it just seems like the same set of videos, really. There’s not enough content to keep PeerTube from looking like a small indie project. I can click on Recently Added and it is usually other people just dumping their channel collections, instead of recent adds of new videos. It’s very easy to scroll down and find videos from months ago.
After poking around on various other PeerTube sites, I think I found the real problem with the platform: Federation.
For example, let’s look at how federated Lemmy’s community is:
All interconnected with hundreds and hundreds (if not thousands) of other instances. If you sign up for one Lemmy account, you have little risk in not being able to access a remote community elsewhere. It feels like a federated community, where everything is de-centralized, but communication is linked everywhere. I can even link to my own video channel from Lemmy.
Now, look at PeerTube’s instance lists, based on what I’ve seen on the Join PeerTube site:
- Spectra.video
- TILvids (basically non-existent)
- Neat.tube
- Video.blender.org
- BassPistol
- Diode.zone
- FTV
- PeerTube.io
- Review.PeerTube.biz
It’s all so bare. At most, 80-90 instances for some sites. I can’t see a lot of other instances’ videos, and they can’t see mine. Not from here or here or here or here or here or here or here or here.
It makes PeerTube a large collection of small silos, instead of a real federated community. People want to be able to sign on to an instance and find the content they want without having to jump through all of these different instances. Subscription feeds rely on having a unified list from many different instances. The technology has a lot of potential, but the PeerTube community is not nearly as organized as the rest of the Fediverse.
This sounds like a somewhat simple problem to solve, but I’m not sure what other kind of technological hurdles exist. How did the Lemmy community solve it?
Even if fully decentralized. Many vps providers and isp have bandwidth limits. One video on your self hosted channel goes viral and boom. Instance is down.
Thet’s where “Peer” in “PeerTube” comes in, while watching a video you automatically donate your own bandwidth to other people so that they can download it from your computer instead of from the server.
How does that work for people using things like cell phones and or streaming devices or those behind cgnat such as many cell carriers use?
A lot of folks that use services like YouTube are not doing so on devices equipped to donate bandwidth.
I don’t see how cellphones or CGNAT play into this. If you can send real-time voice data in a web call P2P in your browser (webrtc), you can send semi-real-time video data P2P aswell.
Cellphones and streaming devices often have extremely limited space allowed for caching content and aren’t designed for serving content but are heavily used for consuming content. Most younger users aren’t watching YouTube from a browser, it’s mostly coming from phones and streaming devices. Android may be less stringent but Apple is very aggresive in how the caching can be used and managed.
. Additionally because cell phone usage is often 99.99% used to download and bandwidth on a cell services is generally treated as aggregate they will often only Qos tcp acks and heavily deprioritize literally everything else to make room for download bandwidth.
Should be something like the system that torrents use: each instance provides the video at the same time to the same user. Some instance give 100kb/s and another 900 kb/s. In the end, the user streams the video with 1000kb/s
There is that issue as well! I forgot about bandwidth.
I mean just some basic calculations. 10 minute video at 1080p running 8 Mbps compression.
That’s 600 MB per video in bandwidth.
Times that by….30,000 streams and boom. 18 TB of data. And that’s probably not even “viral.”