]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - FAQ.md
Refactor video playlist middlewares
[github/Chocobozzz/PeerTube.git] / FAQ.md
CommitLineData
3266ad7c
C
1# FAQ
2
2db6f2b0
RK
3<!-- Table of contents generated with DocToc: https://github.com/thlorenz/doctoc -->
4<!-- START doctoc generated TOC please keep comment here to allow auto update -->
5<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
6
7
f95cb03a 8- [Why did you create PeerTube?](#why-did-you-create-peertube)
073279d5 9- [I don't like the name "PeerTube"](#i-dont-like-the-name-peertube)
2db6f2b0
RK
10- [If nobody watches a video, is it seeded?](#if-nobody-watches-a-video-is-it-seeded)
11- [What is WebSeed?](#what-is-webseed)
12- [If a client requests each chunk of a video through HTTP, will the server be overloaded?](#if-a-client-requests-each-chunk-of-a-video-through-http-will-the-server-be-overloaded)
13- [Will an index of all the videos of servers you follow be too large for small servers?](#will-an-index-of-all-the-videos-of-servers-you-follow-be-too-large-for-small-servers)
049539eb 14- [Which container formats can I use for the videos I want to upload?](#which-container-formats-can-i-use-for-the-videos-i-want-to-upload)
bd8ab662 15- [I want to change my domain name, how can I do that?](#i-want-to-change-my-domain-name-how-can-i-do-that)
8f6e554b
C
16- [Why do we have to put our Twitter username in PeerTube configuration?](#why-do-we-have-to-put-our-twitter-username-in-peertube-configuration)
17- [How video views are calculated?](#how-video-views-are-calculated)
2db6f2b0 18- [Should I have a big server to run PeerTube?](#should-i-have-a-big-server-to-run-peertube)
bd8ab662 19- [Can I seed videos with my classic BitTorrent client (Transmission, rTorrent...)?](#can-i-seed-videos-with-my-classic-bittorrent-client-transmission-rtorrent)
97b72ed1 20- [Why host on GitHub and Framagit?](#why-host-on-github-and-framagit)
2db6f2b0
RK
21- [Are you going to use the Steem blockchain?](#are-you-going-to-use-the-steem-blockchain)
22- [Are you going to support advertisements?](#are-you-going-to-support-advertisements)
23- [What is "creation dynamic" and why not modify it?](#what-is-creation-dynamic-and-why-not-modify-it)
e2dc00a8 24- [I have found a security vulnerability in PeerTube. Where and how should I report it?](#i-have-found-a-security-vulnerability-in-peertube-where-and-how-should-i-report-it)
2db6f2b0
RK
25
26<!-- END doctoc generated TOC please keep comment here to allow auto update -->
27
f95cb03a
RK
28## Why did you create PeerTube?
29
30We can't build a FOSS video streaming alternative to YouTube, Dailymotion,
31Vimeo... with centralized software. One organization alone may not have
32enough money to pay for bandwidth and video storage of its servers.
33
34Our stance is that only a decentralized network of servers can provide an
35acceptable answer to technical issues (bandwidth, transcoding expenses, etc.)
36and social answers (need for a particular moderation policy, preserving
37content, etc.).
38
39While a paragraph is not enough to answer all these problems, PeerTube has
40very early prouded itself for using a contributory design, both for creating
41communities as federated nodes (as [Mastodon](https://joinmastodon.org/) for
42example), and for seeding videos (instances can seed each other's videos). But it's not
43enough because one video could become popular and overload the server. That is
44why we need to use a P2P protocol to limit the server load. Thanks to
45[WebTorrent](https://github.com/feross/webtorrent), we can use BitTorrent
46inside most modern web browsers, and users become seeds as the video gets
47more viewers.
48
49
073279d5
C
50## I don't like the name "PeerTube"
51
52PeerTube is just the name of the software. You can install it on your
c9e96ead 53server, and choose a name you want. For example, [this instance](https://framatube.org/)
073279d5
C
54is named "Framatube".
55
97b72ed1 56
343ad675 57## If nobody watches a video, is it seeded?
3266ad7c 58
e755a63a
BB
59Yes, the origin server always seeds videos uploaded on it thanks to
60[Webseed](http://www.bittorrent.org/beps/bep_0019.html).
3f82804c 61It can also be helped by other servers using [redundancy](https://docs.joinpeertube.org/lang/en/devdocs/architecture.html#redundancy-between-instances).
3266ad7c
C
62
63
64## What is WebSeed?
65
e755a63a
BB
66It is a BitTorrent extension that allows a server to seed a file through HTTP.
67It just needs to statically serve a file, then the clients will request chunks
68with a `Content-Range` HTTP header.
3266ad7c
C
69
70
e755a63a 71## If a client requests each chunk of a video through HTTP, will the server be overloaded?
3266ad7c 72
e755a63a
BB
73Not really. Reverse proxies like Nginx handle very well requests of static
74files. In my tests, it can send chunks at 10MB/s without consuming more than 5%
75of CPU on a very small VPS.
3266ad7c
C
76
77
e755a63a 78## Will an index of all the videos of servers you follow be too large for small servers?
3266ad7c 79
e755a63a
BB
80In our benchmarks, 1,000,000 videos takes around 2GB of storage on PostgreSQL.
81We think it is acceptable for a video platform.
3266ad7c
C
82
83
049539eb 84## Which container formats can I use for the videos I want to upload?
3266ad7c
C
85
86WEBM, MP4 or OGV videos.
87
88
bd8ab662 89## I want to change my domain name, how can I do that?
3266ad7c 90
c9e96ead 91You can't. You'll need to reinstall an instance and reupload your videos.
588d837c 92
bd8ab662 93
8f6e554b
C
94## Why do we have to put our Twitter username in PeerTube configuration?
95
96You don't have to: we set a default value if you don't have a Twitter account.
97We need this information because Twitter requires an account for links share/videos embed on their platform.
98
99
100## How video views are calculated?
101
102Your web browser sends a view to the server after 30 seconds of playback. Then, the IP cannot send another view in the next hour.
103Views are buffered, so don't panic if the view counter stays the same after you watched a video.
104
105
588d837c
C
106## Should I have a big server to run PeerTube?
107
108Not really. For instance, the demonstration server [https://peertube.cpy.re](https://peertube.cpy.re) has 2 vCore and 2GB of RAM and consumes on average:
109 * **CPU** -> nginx ~ 20%, peertube ~ 10%, postgres ~ 1%, redis ~ 3%
110 * **RAM** -> nginx ~ 6MB, peertube ~ 120MB, postgres ~ 10MB, redis ~ 5MB
2db6f2b0 111
588d837c 112So you would need:
21c54ac5 113 * **CPU** 1 core if you don't enable transcoding, 2 at least if you enable it (works with 1 but this is really slow)
588d837c
C
114 * **RAM** 1GB
115 * **Storage** Completely depends on how many videos your users will upload
116
2db6f2b0 117
bd8ab662
C
118## Can I seed videos with my classic BitTorrent client (Transmission, rTorrent...)?
119
120Yes you can, but you won't be able to send data to users that watch the video in their web browser.
121The reason is they connects to peers through WebRTC whereas your BitTorrent client uses classic TCP/UDP.
21c54ac5 122To check if your BitTorrent client supports WebTorrent you can see this issue: https://github.com/webtorrent/webtorrent/issues/369
bd8ab662
C
123
124
97b72ed1
RK
125## Why host on GitHub and Framagit?
126
127The project has initially been hosted on GitHub by Chocobozzz. A full migration to [Framagit](https://framagit.org/chocobozzz/PeerTube) would be ideal now that Framasoft supports PeerTube, but it would take a lot of time and is an ongoing effort.
128
129
2db6f2b0
RK
130## Are you going to use the Steem blockchain?
131
132Short 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](#what-is-creation-dynamic-and-why-not-modify-it).
133
134Long 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](https://decentralize.today/the-ugly-truth-behind-steemit-1a525f5e156)).
135Worse, money generated primarily goes to stakeholders ([source here](https://steemit.com/steemit/@orly/how-the-steem-pyramid-scheme-really-works) ).
136For more information, read the complete whitepaper analysis done by [Tone Vays](https://twitter.com/ToneVays/status/761975587451928576).
137
138## Are you going to support advertisements?
139
140Short answer: no, we don't want advertisers to dictate which content should be financed.
141That would modify the dynamic of creation; as such it cannot be integrated into mainline PeerTube.
142Read more about that in [the dedicated section](#what-is-creation-dynamic-and-why-not-modify-it).
143
144The long answer is probably more subtle. YouTube has shaped generations of video creators by making it easy to place ads;
145but making big money with the platform can be a challenge.
146A typical video ad runs between $.10 and $.30 per 1000 views (as of March 2018).
147More 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%).
148Read more about it in the 2018 study by Mathias Bärtl, [*YouTube channels, uploads and views: A statistical analysis of the past 10 years*](https://www.dropbox.com/s/0cq4wtxm83s95t2/10.1177%401354856517736979.pdf?dl=0).
149To 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.
150Moreover, 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.
151
152## What is "creation dynamic" and why not modify it?
153
154We define creation dynamic as the way any original content, regardless of its monetary value, is created and incentivized.
c9e96ead 155We 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.
2db6f2b0
RK
156
157If 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.
158
159With that being said, know that we are not against these features *per se*.
160We 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.
e2dc00a8
RK
161
162## I have found a security vulnerability in PeerTube. Where and how should I report it?
163
164We have a policy for contributions related to security. Please refer to [SECURITY.md](./SECURITY.md)