Getting started with PeerTube

Fediverse TV

Article from Issue 269/2023

PeerTube, the Fediverse's video platform, offers a decentralized, open source way to watch videos and live stream your own content. We'll show you how to get started and even set up your own instance.

The Fediverse community is building a parallel Internet based on ActivityPub, a W3C-recommended standard for social media, and PeerTube [1] is the Fediverse's video service for individuals, communities, and other organizations.

As with Mastodon, it would be understandable to think of PeerTube as a Fediverse drop-in for the popular closed, proprietary alternatives such as YouTube. And, sure, you can use PeerTube that way, but you would be ignoring its merits and how it can deliver video streaming that takes control from powerful corporations and puts it into the hands of users.

Running a service that delivers video on the scale of YouTube requires an immense amount of bandwidth and storage, unless you decentralize the whole thing. To be clear, PeerTube does not offer an amount of media on the scale of YouTube. However, PeerTube does offer an ingenious way of growing the resources it needs along with the amount of media it serves. By using peer-to-peer (P2P) technology, PeerTube shares the load over instances (servers run by PeerTube community members). Counterintuitively with instances, the more viewers a video has, the lighter the load on the server where the instance is hosted, because the load is spread over more nodes in the network. In addition, PeerTube's federated nature makes it possible for one instance to offer its visitors a much larger catalog of videos than it could if it were isolated and relied exclusively on its own storage.

In this article, I'll show you how to find a PeerTube instance to join, set up an account, live stream video, and even run your own instance.

Be a Viewer

Indeed, when you visit a PeerTube instance for the first time (Figure 1), unless the owner has changed the default configuration, you will see the most popular videos trending on the federation. It is entirely possible that none of these videos are being hosted on the instance you are visiting, but you can still watch them from that instance.

Figure 1: A PeerTube instance will display by default the most popular videos trending in the federation.

To see what is hosted on the instance itself, click on Local videos in the sidebar on the left. A click on Discover, on the other hand, will show a selection of videos from the federation split into categories. Trending is the default view previously mentioned, and Recently added shows you new videos from across the Fediverse.

If you want to know more about the instance you are visiting, click About at the bottom of the sidebar. The About page tells you why the maintainers created this instance, what the rules are, and, on the right, the instance's technical specs. Scrolling down, you will also be able to browse the instance's statistics (Figure 2), including how many users and videos are hosted on this site, among other details.

Figure 2: Kockatoo Tube is a small instance, with nine users and some 500 videos.

Knowing what sort of content the instance publishes, the rules and intentions laid out by the creators, and the size of the local library can give you an idea of whether you would like to join the PeerTube network via that instance or not.

Choosing a good instance to get started with is not hard, but it does require a bit of research. As with other Fediverse services, if you find the content unsavory, you may want to look elsewhere. Besides, a PeerTube instance that publishes extremely controversial content (wild conspiracy theories, not-safe-for-work content, racist rants, etc.) could find itself cut off from large chunks of the PeerTube network when other instances refuse to federate with them. If your account is on that server, you will be cut off too.

While you may think that a large instance is a good choice, more users and content makes an instance harder to police, and, therefore, at more risk from spam, trolls, and unsavory content. A large library may also mean that an instance's maintainers use lax criteria for approving accounts, which, again, may lead to less-than-ideal content.

To help you choose, PeerTube offers an instance searcher [2]. You can search as a viewer or video maker and filter the instances by topic. The searcher also tells you how much space an instance gives you, the preferred language, if the instance offers live streaming, whether the submitted videos are moderated before publication or not, and more.

Your Account

Once you have picked and registered with an instance (which follows the typical sign up or request to sign up/get confirmation email/log in pattern), you can set up your account. Again, this step is quite standard: Visit Account | Settings to set an avatar, display name, description, notification preferences, and more.

PeerTube differs slightly from other user-oriented video services: Each PeerTube account can manage several channels (Figure 3), each with a distinct look, description, libraries, and web address. As with its corporate-owned counterparts, PeerTube also lets you further classify videos into playlists.

Figure 3: The kde_community account maintains three distinct channels: KDE, LabPlot, and Akademy.

Publishing a video is straightforward. While logged in, hit the Publish button in the upper right-hand corner of the PeerTube interface and select the video you want to upload or drag-and-drop a video onto the upload area.

If you maintain a channel on YouTube, for example, many instances offer the possibility of importing videos from there. Hit Publish, click on the Import URL tab, and input the link to the video, and PeerTube will import the clip, description, and even the thumbnail. Furthermore, some instances offer the service of monitoring a YouTube channel and automatically importing any new videos that land on it. If you want to maintain channels both on YouTube and PeerTube, this makes it very convenient, as you only have to post to YouTube and PeerTube will do the rest.

To take advantage of this feature, go to Channels in the left sidebar, and click on My synchronizations in the upper right-hand corner of the page. On the page that opens, click on Add synchronization and add the address of your YouTube channel. Then, indicate the PeerTube channel where you want the imported videos to land. If you are just starting out, you may want to choose the Import all and watch for new publications option, because that option will import all of your current videos and then start monitoring for new ones. Otherwise, you can choose Only watch for new publications, which will only import new videos as they are published. When you are done, click Create and your instance will start to follow the channel on the other service and will import videos from there.

The Import with torrent tab does what it says on the box: It lets you upload a video that is being shared over a torrent. Upload the torrent file from your local storage or paste a magnetic link and the video will appear after a while.


You can also create content via live streaming. Choose the Go live tab, and select This is a normal live if your live stream will be a one-time event or This is a permanent/recurring live if you plan to make this your regular streaming platform.

If you choose a one-time live stream, the key PeerTube provides you for the stream is good for one live session. If you use the key again, it will overwrite the earlier recording. If you choose a recurring live stream, each time you start live streaming, even with the same key, PeerTube will generate a different recorded video.

Click on the Go live button and configure the stream as if it were a regular video by setting its title, a description, tags, the channel where it should be published, and so on. The Live settings tab is where you can find the live RTMP URL and the key that you will need to feed to your streaming software. In Open Broadcaster Software (OBS), for example, you will find the options under Settings | Stream. Select Custom from the Service drop-down list and then add the RTMP URL to the Server text box, and the key to the Stream Key password box (Figure 4).

Figure 4: Setting up a live stream to PeerTube from OBS.

Advanced settings allows you to add a thumbnail, which appears when the stream is not active or when the recording joins your library of prerecorded videos upon completion. Plugin settings lets you establish which plugins will be available to viewers during the stream. For example, many PeerTube instances provide a very decent chat plugin [3], which allows viewers to interact with the streamer (Figure 5).

Figure 5: Streaming to PeerTube: Notice the live chat panel to the right of the stream.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More