How to Distribute DIY TV

Until you distribute it, it’s not DIY TV, it’s just some videos. It is the act of broadcasting (or Narrowcasting, as the case may be) that transforms some random videos in to Television. This recontextualization of a video in to a broadcast transforms that video from something that simply exists into something that lives a life of it’s own. It takes something personal and transforms it in to something social.

As a small anecdote, we do a weekly news broadcast. It is hosted by my good friend and trusted associate Will Dover. Even just a few weeks into that news broadcast, Will is recognized and greeted around town as a result of his participation in that broadcast. He has become the face of local news!

This recontextualization can be difficult and scary, but it is part of the transformative power of Television to bring people together.

But Distribution is a complicated topic full of lots of potential expenses and pitfalls, and that’s why most people turn to youtube. While I find youtube to be a large part of The Problem, I also understand that many people feel they do not have the technical expertise to use anything else, and youtube is where the audience is. I will not fault someone for using youtube, but I have some suggestions on how to use it (see POSSE) and some alternatives.


Hosting can be scary! But it doesn’t have to be. We use a tool called Yunohost which makes installing and maintaining complex software packages simple. We use yunohost to install:

  • Peertube – A federated Youtube alternative
  • Nextcloud – file sharing and syncing (like dropbox)
  • Hedgedoc – a collaborative text editor (like a simple Google Docs)
  • WordPress – The engine that powers our website

Yunohost is very easy to install and manage most of the time. Sometimes it isn’t, but the community forums usually prove to be pretty helpful in those situations.

Today, we spend approximately $40/month to host the infrastructure that powers New Ellijay Television, including our website, our live stream, our roku app, our document storage, our file sharing, storage for our VOD and all of the storage for our collaboration tools and backups.


Peertube is a free, open source, federated youtube alternative. It provides a way for people to publish videos on the internet, both VOD and live stream. It works well, and does some tricks that mean that it will scale better than any previous self hosted video solution. I won’t get in to the technical details here, go look them up for yourself if that’s your bag.

We use peertube because it takes care of a lot of the things that make managing a video website hard. It still needs a lot of storage, and it still needs some technical expertise.

There are a few ways you could approach the problem of needing a lot of storage. We get around it by using a cheap cloud provider based out of Bulgaria called AlphaVPS which provides 4TB of storage for around 25 dollars a month. This isn’t an endorsement, that’s just who we’re using at the moment. Alternately, you could use block storage from one of several cloud providers for a fairly reasonable price, or you could self host if you have a fast enough internet connection.

True selfhosting is beyond the scope of this text, but I’m sure I’ll cover it in something else eventually.

Peertube provides a way to do both VOD and Live Streams, and makes it fairly easy to share your videos. It provides an RSS feed for each video channel that people can subscribe to like a podcast. It provides a plugin which makes it compatible with chromecast. It is under active development, and it’s getting better all the time.


Roku, for better or worse, is the defacto standard for accessing people’s televisions today. Roku provides a set top box, or comes integrated in to people’s TVs. They’re not a great platform, and they collect a ton of telemetry about viewers, but they are very wide spread and in the spirit of being accessible, it makes sense to publish a roku channel.

We use a fork of peervue which can be found at (eventually). That page should provide step by step instructions for configuring your own Roku channel and getting it submitted to the roku store. It’s fairly straight-forward, but there are a few pitfalls to watch out for around “trickplay” thumbnails, and “deeplinks”, both of which are will be covered in our guide.

Roku isn’t the only set top box platform, but it is the most common and it was the easiest for us to support. Our implementation is imperfect, we don’t have any developers working on it, just a couple of folks who really wanted to make it work. We’d appreciate your assistance on that front, if you’re a developer who wants to improve the set top box landscape for DIY TV.

Livestream and playout

Peertube has built in support for livestreams. If you only want to go live occasionally, you can do that from OBS (Open Broadcasters Studio). This combination works pretty well, and is incredibly simple to set up.

If, on the other hand, you want to step beyond VOD with the occasional live stream and move closer to traditional broadcast television, you’re going to need something to manage your schedule and playout.

We use a piece of software called FFPlayout. It is not currently packaged for yunohost, but instructions to install and configure it alongside yunohost are available at (eventually)

FFPlayout works more or less exactly like a live stream from OBS, but has a front end through which you can build a schedule. It’s a functional solution, but it’s not perfect, and we are looking to improve it, or to find an alternative. For now, though, it’s the simplest way to achieve our goals.


There’s this concept in the world of independent web publishing called POSSE. POSSE is an abbreviation for Publish (on your) Own Site, Syndicate Elsewhere. It represents the practice of posting your content (in this case Videos) on your own site first, then publishing excerpts, copies, or links to third parties (like youtube, facebook, tiktok, instagram, etc.) with links back to your original post on your site, to bring viewers back to your site.

This can work, but we put a small spin on it. Every video we publish to, for example, youtube is an excerpt or a trailer that ends with a 15 second explanation of why that video is only an excerpt and where the full video can be found. Something to the effect of: If you want to see the full version of this video you’ll have to go to our website. We can’t trust youtube to act in the best interest of video creators.

We use a similar technique to share written content to sites like facebook.

On the other hand, we also have a presence on Mastodon, a free and open source, self-hostable, federated social media network and we share full videos there. We feel comfortable doing that because Mastodon provides a platform for social media that we can wholly own and control in the same way that peertube provides a video distribution platform that is fully within our control.

The Internet Archive and Other Options

The Internet Archive offers digital storage for all kinds of media. They are a non-profit, and provide a video player and embed links. If you don’t have another way to host videos, they’re a great option. You can host videos on the internet archive, and embed them in to a static website hosted through a service like neocities, effectively creating a free video distribution solution.

Video files are big, and storage and bandwidth are still somewhat expensive. The Internet Archive offers this hosting as a free service, and depends on donations to stay afloat.

If you don’t want to depend on a third party, you can also distribute video via Torrents. This won’t allow embedding a video stream on a website (unless you get creative) but torrents are a very resilient way to distribute media without depending on much existing infrastructure. This kind of peer-to-peer file sharing is perfectly legal, and a great way to distribute your own Community Media.


Sometimes distributing Community Media via the internet is cumbersome or otherwise undesirable. In those cases, we can learn from the VHS Days, and turn to the postal service or Sneakernet. This is a perfectly valid distribution method, and has been widely utilized. There are lots of ways to go about Flash Drive distribution, ranging from just dropping a bunch of files directly in to the root of a flash drive and plugging it in to the USB port of a TV or bluray player, to building a full website that runs locally on the flash drive, with several options in between.

When we’re showing our programming in locations that do not have consistently available internet connections, a flash drive directly in to a television is often not only the simplest way to get these videos playing, but it’s also usually significantly more reliable than our usual internet based distribution.

Index and Document

Regardless of what path you take, it’s important to index your work. Keep a list of what you’ve released, and link to the canonical versions of them, in a public and indexed place. Make it easy to find what you’ve released, make the terms under which you’ve released it very obvious, make it easy for people to support you.

This might mean a website! You can make a website with github pages, or neocities, or for free, you can self host a website, you can use a tilde server, or you can pay for hosting from one of dozens of hosting companies. You might make your website directly in HTML, or you might use a template, or a site builder. Any of these options are valid, and I’m not going to get in to how to build a website, or who to host your website with here.

We mostly use alphaVPS, because they’re cheap. We mostly use yunohost to install wordpress, because I’m familiar with it. This is fine.

Alternately, maybe a website is overkill. Maybe you want a mardkown file in a git repo, or a social media account that only posts video links, or an index on gopher, or a gemini capsule. That’s fine! Sometimes using a nontraditional approach to indexing and sharing videos is exactly what you need. Other times, a more traditional approach is better. You do what feels right for your project.