We can't build a FOSS video streaming alternative to YouTube, Dailymotion, Vimeo... with centralized software. One organization alone may not have enough money to pay for bandwidth and video storage of its servers.
Our stance is that only a decentralized network of servers can provide an acceptable answer to technical issues (bandwidth, transcoding expenses, etc.) and social answers (need for a particular moderation policy, preserving content, etc.).
While a paragraph is not enough to answer all these problems, PeerTube has very early prouded itself for using a contributory design, both for creating communities as federated nodes (as Mastodon for example), and for seeding videos (instances can seed each other's videos). But it's not enough because one video could become popular and overload the server. That is why we need to use a P2P protocol to limit the server load. Thanks to WebTorrent, we can use BitTorrent inside most modern web browsers, and users become seeds as the video gets more viewers.
PeerTube is just the name of the software. You can install it on your server, and choose a name you want. For example, this instance is named “Framatube”.
It is a BitTorrent extension that allows a server to seed a file through HTTP.
It just needs to statically serve a file, then the clients will request chunks
Content-Range HTTP header.
Not really. Reverse proxies like Nginx handle very well requests of static files. In my tests, it can send chunks at 10MB/s without consuming more than 5% of CPU on a very small VPS.
In our benchmarks, 1,000,000 videos takes around 2GB of storage on PostgreSQL. We think it is acceptable for a video platform.
WEBM, MP4 or OGV videos are supported by default (they are streamable formats), but instance administrators can additionally enable support for MKV, MOV, AVI and FLV formats when transcoding is enabled on their instance.
It's not officially supported, but you can try the
update-host script: https://docs.joinpeertube.org/#/maintain-tools?id=update-hostjs
You don't have to: we set a default value if you don't have a Twitter account. We need this information because Twitter requires an account for links share/videos embed on their platform.
Your web browser sends a view to the server after 30 seconds of playback. If a video is less than 30 seconds in length, a view is sent after 75% of the video. After giving a view, that IP address cannot add another view in the next hour. Views are buffered, so don't panic if the view counter stays the same after you watched a video.
Not really. For instance, the demonstration server https://peertube.cpy.re has 2 vCore and 2GB of RAM and consumes on average:
So you would need:
Yes you can, but you won't be able to send data to users that watch the video in their web browser. The reason is they connect to peers through WebRTC whereas your BitTorrent client uses classic TCP/UDP. To check if your BitTorrent client supports WebTorrent you can see this issue: https://github.com/webtorrent/webtorrent/issues/369
The project has initially been hosted on GitHub by Chocobozzz. A full migration to Framagit would be ideal now that Framasoft supports PeerTube, but it would take a lot of time and is an ongoing effort.
Short answer: no, since like most appchains/votechains, it modifies the dynamic of creation, and as such cannot be integrated into mainline PeerTube. Read more about that in the dedicated section.
Long answer is that the Steem blockchain goes astray of its promises of fairness and decentralization: the deliberate relaunching of the currency to ensure centralization, and the stake-based voting power, makes manipulation by wealthy users inevitable (source here). Worse, money generated primarily goes to stakeholders (source here ). For more information, read the complete whitepaper analysis done by Tone Vays.
Short answer: no, we don't want advertisers to dictate which content should be financed. That would modify the dynamic of creation; as such it cannot be integrated into mainline PeerTube. Read more about that in the dedicated section.
The long answer is probably more subtle. YouTube has shaped generations of video creators by making it easy to place ads; but making big money with the platform can be a challenge. A typical video ad runs between $.10 and $.30 per 1000 views (as of March 2018). More than 70% of video creators use ads as the main way to make money on YouTube, yet less than 3% of video creators make a living out of their YouTube activity (with partnerships and commissions, otherwise counting only ad revenue it drops to 1%). Read more about it in the 2018 study by Mathias Bärtl, YouTube channels, uploads and views: A statistical analysis of the past 10 years. To the best of our knowledge, small and medium-community creators are better off getting support from their community on platforms such as Liberapay, Tipeee or Patreon. Moreover, don't forget that advertisers already pay considering YouTube's large user base; with PeerTube's way smaller user base and refusal of user profiling, a pay-per-view that's lower than YouTube's could only be expected.
We define creation dynamic as the way any original content, regardless of its monetary value, is created and incentivized. We want to stay neutral by limiting the influence of our platform on authors as much as possible. We are not curators, and want to limit the scope of PeerTube instance owners and administrators’ responsibilities to moderation tasks only.
If you still want to use a functionality potentially altering that state of things, then you could interface with our upcoming plug-in system, which will be the place to integrate such features in the near future.
With that being said, know that we are not against these features per se. We are always open to discussion about potential PRs bringing in features, even of that kind. But we certainly won't dedicate our limited resources to develop them ourselves when there is so much to be done elsewhere.
We have a policy for contributions related to security. Please refer to SECURITY.md
We try to keep compatibility with the latest minor version (2.3.1 with 2.2 for example). We don't have resources to keep compatibility with other versions.