My perfect TV setup Updated

XBMC's home screenThis is an update to an older post: My perfect TV setup

I recently upgraded the whole media consumption set-up in my apartment. This post describes all of the different aspects, hardware and software components in use.

Hardware

  • Mac Mini – this is the main hub of the whole operation. It sits in my living room, connected to sound system and projector.
    Specs: 2.3GHz i5, 2GB RAM, 500GB HD, Intel HD 3000 Graphics.
  • Apple TV – the new 1080p one. Connected to the LCD TV in my room.
  • iPad – also the new one.
  • Projector – still the same old one that won’t die. Only 720p, but I refuse to replace it before it has reached the end of it’s lifetime.
  • Logitech Harmony – universal remote to control the cable box, sound system, projector and XBMC (via Mac Mini’s infra red port) in the living room.
  • 2TB harddisk – connected to Mac Mini via USB.
  • 2x AirPort Express – connected to speakers in the kitchen and bathroom.

Software on Mac Mini

  • XBMC – with it’s recent Eden release and a few configuration tweaks the perfect, easy to use frontend for all my movies & TV shows.
  • Transmission – Torrent client with a nice web based remote frontend.
  • Catch – to automatically download new TV show episodes.
  • Air Media Server – serves media to iOS devices.
  • AirServer – receives AirPlay streams from iOS devices.

Software on iOS

Outline

Mac Mini is my always-on media server. It serves it’s video signal, running XBMC, to the projector. XBMC periodically scans all the appropriate directories on the external harddisk for new movies and TV show episodes.

iTunes is running with a copy of all of my music and Home Sharing turned on. That way I can listen to music on my iPad, iPhone or Apple TV whenever I’m at home and also stream it to AirPlay receivers in the living room (AirServer), my room (Apple TV), kitchen (AirPort Express) & bathroom (AirPort Express).

Further Mac Mini checks the showRSS website via Catch for my subscribed TV shows and downloads new episodes via Transmission. The finished episodes are sorted into the correct directories on the external harddisk. I can also add new downloads via Transmission’s web frontend that’s accessible from the outside and very usable even on small smartphone screens. That way, whenever I turn on the projector in the living room, I get greeted by XBMC with all new and unwatched content in my library.

To tie in all iOS devices, I am running Air Media Server and AirServer.
The first serving the same media as XBMC’s library to iOS devices connecting via Air Media Center iOS App. This also works remotely since Air Media Center automatically configures port forwarding on my Time Capsule. AirServer enables me to send media via AirPlay from my iPad or iPhone to the projector’s output in the living room. AirServer also supports AirPlay mirroring in it’s latest version, which is really awesome for games like Real Racing 2 HD which I can now play on the big screen.

If I want to watch a movie or TV show in my room, I just fire up Air Media Center on my iPad and send it’s video output via AirPlay to the Apple TV.

 

With all those devices interconnected and relying, as much as possible, on Apple’s protocols, there is a myriad of different possibilities: from having different music playing on varying combinations of speakers throughout the apartment, to streaming movies to my tiny iPhone screen over 3G while riding the subway to work and everything in between. I think I’m quite happy with the way it’s all working together now, I think this might finally be a system sustainable a bit longer than all the previous hacked together arrangements.

Remote controlling computers via Synergy

Yesterday I finally set up my good old iBook as juke box. It now sits on a shelf besides my working table and runs iTunes fullscreen wirelessly connected to the net and the stereo via my AirpotExpress. It’s working perfectly and I am really satisfied with it. The only downside was, that when I wanted to control anything on the iBook I had to reach over there.

I evaluated several different utilities for remote control but wasn’t really satisfied with any of them, then I remembered about Synergy. What it does is best quoted from it’s page:

Synergy lets you easily share a single mouse and keyboard between multiple computers with different operating systems without special hardware. It’s intended for users with multiple computers on their desk since each system uses its own display.

That’s exactly what I was going for and luckily setup was really easy (instructions for Mac OS X).

  1. Download Synergy from Sourceforge.net
  2. Unzip the archive and copy the resulting folder wherever you want (“Applications” might be a good idea ;) )
  3. Decide on your “Server” (= the computer who’s keyboard and mouse will control all the other machines). On this machine you need to make a file named synergy.conf with the following contents
    section: screens
    screen1:
    screen2:
    end
    section: links
    screen1:
    left = screen2
    screen2:
    right = screen1
    end

    Substitute screen1 and screen2 with the hostnames of your computers (just punch in hostname in your Terminal and find out). Note that there is no implicit logic in the config file about the placement of the screens. So you have to tell Synergy that screen1 is right of screen2 and the opposite or you won’t be able to leave one of the screens with your mouse.
    The provided sample config is pretty well documented so you should be able to figure out the appropriate positioning for your particular set up very easily.
  4. When you’re done with the config, all there’s left to do is start Synergy. Just execute the following in your Terminal.
    First on the Server (alter the program path to match your system):
    /Applications/Synergy/synergys -c synergy.conf
    and then the client(s):
    /Applications/Synergy/synergyc screen1
    again substitute screen1 with the hostname of your server

If you didn’t make any mistakes in the config file you should be up and running by now and be able to move freely between all of your screens no matter to what machine they are connected.

The best thing about Synergy is that it is cross platform compatible, meaning you can connect Windows, Linux and Mac machines in a similar manner. To know more about the program consult the documentation provided in the installation directory.

UPDATE:
For the lazy, there is even a Mac OS X GUI Programm to do the configuring: SynergyKM ;)