How to create your own awesome media server

Today we’ll be building and configuring a Windows PC which automagically downloads our favourite TV shows (via ShowRSS) and movies (via IMDB watchlist) using BitTorrent. We want it to be hastle-free, and once it’s up and running, everything should be accessible via a web browser. If you’ve got a decent enough Internet connection, you’ll even be able to watch your media while you’re not at home.

If you get stuck, feel free to leave a comment below or ping me a message on twitter.

You will need

  • DLNA compatible TV, game console, or mobile device
  • Desktop computer or server capable of running Windows
  • Windows Server 2012 (Windows 7 will do in a pinch)
  • Plex Media Server
  • CouchPotato
  • qBittorrent
  • theRenamer
  • cURL
  • An account with ShowRSS (free)
  • An account with IMDB (free)
  • 2-3 hours of spare time (mostly to install Windows)

Instructions

1. Build your media server, or you could buy something like the Acer Veriton. I up-cycled an old Dell desktop that I had spare, and bought a cheap Core 2 Quad CPU 2.66GHz processor on eBay. Even with only 2GB of RAM in it, I’ve not had any problems with performance. You’ll be needing plenty of disk space though – 500GB is entry level, and I have 4TB of network attached storage.

2. Install Windows on your new server. Or, if you’re comfortable with Linux, install your preferred distro.

3. Create these folders –

  • c:\media
  • c:\media\movies
  • c:\media\movies\downloads
  • c:\media\tv shows
  • c:\media\tv shows\downloads

4. Go sign up for ShowRSS.

Once you’ve created your account, find a show that you want to subscribe to, and add it. Make sure you choose HD only, otherwise the low-res files may look blurry on your TV.

Go here, choose personal feed with these settings “Only 720p HD torrents” : “PROPER/REPACK” and click Generate.

Copy the custom RSS feed URL to your clipboard.

5. Install and run qBittorent.

Why not use uTorrent, Vuze, [insert your favourite client]? qBittorent is a very close approximation of uTorrent, without all the ads and it has better task execution, email notification and RSS feed support – important for fetching our TV feed.

Click on the RSS tab. Add a new subscription, and paste the ShowRSS URL from your clipboard.

Click “RSS Downloader…” and create a new rule. Use the settings in this screen shot –

qBittorrent RSS configuration

Close the window, and click Settings… and change the RSS refresh interval to 15 minutes.

6. Configure the rest of qBittorrent. Goto Tools > Options.

Downloads:

Save files to location: c:\media\movies\downloads

[check] Append .!qB extension to incomplete files

[check] E-mail notification upon download completion

Destination email: your@email.com

SMTP server: smtp.gmail.com

[check] This server requires SSL

[check] Authentication

Username: your.gmail.username@gmail.com

Password: yourpassword

[check] Run an external program on torrent completion

“c:\media\updatemedia.bat”

BitTorrent:

[check] Torrent Queueing

Max active downloads: 3

Max active uploads: 3

Max active torrents: 5

[check] Seed torrents until their ratio reaches 0.01then remove them

Web UI:

[check] Enable web user interface

Port: 58846

Authentication

Username: admin

Password: yourchoice

7. Install and run Plex Media Server

Create two new libraries;

Movies in c:\media\movies of type movies

TV Shows in c:\media\tv shows of type tv shows

Go to Settings…

Connect

Make sure you’re signed into Plex with an account

Library

[uncheck] Update my library automatically

[check] Update my library periodically

Library update interval: daily

You should now be able to connect to Plex via a web browser, test it now http://localhost:32400.

8. Install and run theRenamer

Personally, I hate the interface, but it’s great at renaming and moving media files, so let’s get through this. Configure theRenamer as per these screenshots…

theRenamer - config 1

 

Update: in the Ignore files box, add “!qB” to the end of the list of extensions. This will prevent TheRenamer moving files while they’re still downloading.

theRenamer - config 2

9. Install, run and configure CouchPotato

CouchPotato - config

CouchPotato - config

CouchPotato - config

Whenever I hear about a good movie, or watch a good trailer, I add it to my IMDB watchlist and CouchPotato will email me when it’s available and automatically download it.

To find your user IMDB user id, log in to IMDB, click on your watchlist, and find the part in bold: http://www.imdb.com/user/ur00000000/watchlist?ref_=wt_nv_wl_all_0

Don’t forget to set the watchlist as public, otherwise Couchpotato will receive a 404 error.

Use this URL in CouchPotato: http://www.imdb.com/list/export?list_id=watchlist&author_id=replace_with_your_IMDB_user_id

CouchPotato - config

10. Install cURL

Curl is a handy command-line utility for retrieving web pages, and we’ll use it in the next step.

11. When a torrent finishes downloading, let’s move the file to the correct folder and tell Plex to update its media library.

Open Notepad, copy and paste this batch file, and save the file as c:\media\updatemedia.bat

12. Congratulations, you’ve finished! Sit back, relax, and enjoy your new fully automated media server on your smart TV, Xbox One/Playstation 4, iPad/iPhone/Android device.

Bonus step: if you want to reduce the amount of electricity your PC consumes, install WakeOnStandBy and put your PC into stand-by during the night or when you’re at work.

One thought on “How to create your own awesome media server

Leave a Reply

Your email address will not be published. Required fields are marked *