CHAPTER 3 ■ MEDIA SYSTEMS 103 Other Functionality Other features available in MVPMC include the following: • Access of data from MythTV or ReplayTV • VNC Viewer • Streaming live web radio Their setup requirements are straightforward enough and covered in the online documentation and so won’t be covered here. The Xtremer This is one of several devices that plays back media files through a TV or HiFi system. Its low price point and inclusion of HDMI make it a good foray into media streamers. It is a good test unit since it supports media playback from its internal disk, an external drive, or the network—both wired and wireless. This makes it suitable for trying different configurations, without buying additional boxes. In addition to music and movies, it also supports image previews, weather reports, and live streaming from YouTube, Picasa, and Flickr. Squeezebox This device was launched in 2003 and is one of several that acts like an audio-only version of the MediaMVP with a similar scope for “hackability.” It also works on a client/server arrangement. The server in this case is a set of open source Perl scripts called SqueezeCenter (formerly SlimServer) running on Linux, Mac OS X, and Windows. This provides the clients with the audio data for your locally stored music and a way of connecting to external sources such as Internet radio or your MP3tunes music locker. It is also able to control the client machines by sending them commands. The server itself doesn’t play audio, although you could run a software client on the same physical machine to transparently achieve the same result. You then need one or more client machines (that is, head units) to play the music in a remote room, connected by either a wired or wireless network. This head unit can be as follows: • Squeezebox Classic, with display and outputs to a HiFi amplifier • Squeezebox Receiver, without display, controlled remotely • Squeezebox Boom, with display, built-in amplifier, and speakers • Transporter, reportedly a higher-quality playback engine • A software client With an appropriate remote control, you can link the Squeezebox instances together so that they all play the same music, providing a full, whole-house audio system. CHAPTER 3 ■ MEDIA SYSTEMS 104 Server Software Installation under Linux is straightforward, and by using the software client, you can test the environment without purchasing any hardware. First, go to /etc/apt/sources.list, and add the following anywhere in the file: deb http://debian.slimdevices.com stable main Next, do this: apt-get update apt-get remove purge slimserver # in case of an old install apt-get install squeezeboxserver And, after ensuring your music collection has the appropriate read and execute permissions set for the (new) SqueezeCenter user, you can connect to its web server (on port 9000) and configure the server. Other Software SoftSqueeze is a software emulation of the Squeezebox hardware and available from http://softsqueeze.sourceforge.net; it supports Linux, Mac OS X, Windows, and most platforms with a good Java implementation. This is good for testing a new server and for using as a standard media player; however, because of its overzealousness at emulating the two-line LCD emulation, navigation is a little tiresome. However, you can use the SqueezeCenter software—through its web interface—to control the playlist if you like. Naturally, by opening the appropriate ports, you can do this remotely. Videobox (http://videobox.sf.net) is a means of using a (hardware) Squeezebox to pass its IR signals back to the server so it can trigger external scripts and code. One example given is that of starting movie playback on the server so it can be viewed on-screen. Emprex ME1 This modern device hails from 2007 and is one of several media playback devices now available. It claims to support HD output but lacks an HDMI port; therefore, it provides its highest quality through upscale via YPbPr in 720p or 1080i. It can also function as an AV recorder, but only through composite inputs. Where this unit benefits most users is in its low cost and local storage support. This can be with either IDE hard disks (or SATA disks, with more recent versions, which also increases the storage space from 500GB to 750GB) or through USB, be they memory sticks or USB hard drives. As with much technology, utilizing the latest firmware is recommended; it now supports NTFS (the default filesystem was the ill-chosen FAT32, which limits the maximum file size), and there have been stability issues with the internal hard disk. Fortunately, an internal disk is optional on later firmwares, allowing you to use one attached to USB. Naturally, the device can also read movie files from the network, and you can also use it to remove movies recorded on the ME1’s local storage for archive elsewhere. This method is detailed on the (very) low-traffic web page http://emprex-me1.blogspot.com along with their Google Groups lists. CHAPTER 3 ■ MEDIA SYSTEMS 105 Just Linux The GNU/Linux operating system has appeared in so many distributions (aka distros) over the years that it’s difficult to keep up with them. Many people adopt one early in their careers and never change. When using a Linux machine as the basis for a media player, these rules need to be reconsidered because what’s good for the desktop isn’t necessarily good for media playback. Consequently, I’ll consider the necessary benefits and features of a suitable Linux distribution and only mention specifics as examples because, as in the case of hardware, the field moves too quickly to give definitive “best” answers. The Operating System The OS comprises, in the truest sense, a kernel, its drivers, its modules, and its associated software. These components are packaged in distributions to make them easy to install. Consequently, there are very few variables to consider when choosing a suitable distribution. First, and most obviously, you need to have access to a healthy supply of drivers built for the supplied kernel. Hardware, especially in high-end fields such as graphics, requires high performance and specific drivers to ensure that it is utilized effectively. Although most graphics cards don’t have accelerated onboard video decompression, they do have hardware acceleration for a lot of other features, which will show a marked improvement in performance for video. Second, you should consider the bootup time. xPUD, for example, takes around ten seconds, making it appear like a true set-top box, rather than a small computer. XBMC, as you saw in Chapter 2, is also in this range. And finally, the total size of the distribution needs to be determined. This is always the last consideration since it can be solved with very little effort, namely, with an extra few pence on a larger hard drive or solid-state memory card. The latter is preferable for most media streamer machines since you can boot quicker from them, they last longer (since more of the operations are memory reads, not memory writes, and have no moving parts), and they allow for a much smaller form factor. If you are building your own Linux machine specifically for media streaming, then make sure it can support booting from compact flash or a USB memory stick. The Software A good media player distribution depends not primarily on the operating system but on the software. It is, after all, the software with which you will be interacting. Most media streamers start life as media players. These are completely wrong for a streamer. Consider the basic scenario—you have a media player on your desktop controlled by a mouse and keyboard while sitting on a chair and watching a monitor from 2 to 3 feet away. Alas, most software is developed and tested on a desktop PC where the subtle differences might be overlooked. Remember to consider the following: The visuals: You will be generally using the interface from a long distance away in a comfy chair. Therefore, the buttons and font need to be large and legible, placed on a screen that is uncluttered and moderately high contrast, with antialiasing. The screen: Unless you have the latest LCD technology in your living room, your TV will generally be of a much lower quality than your monitor, so small details (especially thin horizontal lines) will get lost or be indistinguishable on-screen. CHAPTER 3 ■ MEDIA SYSTEMS 106 Control: Without exception, any home theater PC without a remote-control option is going to fail. No one will get out of that comfy chair to press buttons on the machine or will want a keyboard or mouse on their lap. Navigable interface: Going hand in hand with control, there must be a clean way of moving between menu options. Entering the server IP with a keyboard is only acceptable during initialization. All of these points have been classified together as an approach known as the “10-foot user interface.” This is not to say that these rules are golden or immutable, but spotting several contraventions to this in a single piece of software can be a clue that the project is not yet particularly mature and has been used little in the real world. MythTV Of all the Linux PVRs out there, the most famous is probably MythTV (http://www.mythtv.org). This consists of two parts—a back end (mythback) that allows you to record shows from a TV card into the local hard disk and a front end that plays back the media files from a mythback server. In this way, you can have a powerful single server containing many TV cards with the software coordinating the best way to record channels with them and a number of smaller front end units placed in the various rooms of the house all taking their data from the server. This also provides a way of streaming live TV around the house. In addition to media playback, MythTV supports alternative skins and plug-in modules, allowing the front-end units to display the weather, show a photo gallery, play games, and surf the Web. If you are looking for a PVR stand-alone form-factor, you can incorporate both mythback and mythfront into the same machine, provided it is powerful enough. A TV card with hardware encoding (such as the newer Hauppauge’s) can help reduce the size and power of this machine, allowing you to get away with a fanless system. The software approach to PVRs will always win out over hardware, because new features can be added more efficiently and vagaries in codecs can be catered for. I’ll now briefly cover some examples. Freevo Freevo (http://freevo.sourceforge.net) is a play on the name of the infamous hardware PVR called TiVo. 7 It consists of an all-in-one approach, with video capture, recording, and playback existing within the same piece of software. (But under the hood it has a separate TV server section.) This makes it a closer relative to the Xtreamer type of device and especially suited more controlled installations. Like MythTV (and most software PVRs, if I’m being honest), it can also support skinned interfaces and plug-ins, although most have been folded into freevo1, the stable version of the software, so any changes will require a bigger recompile than usual. This can make it more difficult for casual developers to make changes. These plug-ins include the usual array of weather reports, X10 control (through heyu), Skype, and Flickr. 7 It even inspired its own term, tivoization, to cover any device that runs using free software but prevents you from exercising your rights to modify and reuse it through hardware chicanery. CHAPTER 3 ■ MEDIA SYSTEMS 107 It also has images for LiveCD versions (again, like most software PVRs, if we’re honest) so you can test it without installation on your hardware. Xbox Media Center This is to remind those of you who skipped Chapter 2 to go back and read it! XBMC supports and runs on more non-Xbox platforms than it does on Xbox. It supports the usual array of plug-ins and has a LiveCD version. The Video Disk Recorder Project The project at http://www.tvdr.de is for the most hands-on developers, because it also includes a suggested hardware component. It is this hardware that is the main draw to this project because it is based on a DVB-S satellite receiver (its primary concern, because analog and digital TV are provided by plug-ins) and a custom-made remote-control unit using a PIC chip. Although this level of custom hardware is largely unnecessary in today’s world, it works well and gives the users an extra reason to feel passionate about their VDR. It also uses a lower spec than most current systems. Software-wise, it has a decent (if slightly too small) interface that looks like the Star Trek: The Next Generation LCARS system and a much wider range of plug-ins over most over PVRs, including games, e-mail, and web browsing. Distribution This is the third step of our data chain. Having got our media data served and decoded, we are left with an AV signal ready to be plugged into a TV or HiFi. But we still have choices. Local Processing vs. Remote Processing This refers to where the media data is decoded and slightly overlaps with our second step. The equipment covered earlier is all locally processed. That is, we decode the data in a location that is physically connected to the TV or HiFi. This is usual, since it gives us greater fidelity and means that controlling the unit is much easier, but there are cases where the processing is better done remotely and only the resultant AV signal is sent. AV Distribution The output from nearly all media playback devices is our first port of call. This usually comprises RCA phono sockets for stereo audio or composite video, S-Video, EIA interface, SCART, or something of that ilk. This carries a fairly low-power, analog signal over short distances to an amplifier—be it TV or HiFi. Since these signals always need a power amplifier, we call this active distribution. Providing distribution in this manner requires various interconnects and many cables. There is no upper limit on the length of these cables, so extensions and distribution boxes are possible, allowing the same image to be viewed in multiple places. Naturally, being an analog signal, the audio (or picture) will become softer as you get farther away from the source. Only you can determine what quality loss is acceptable for you. CHAPTER 3 ■ MEDIA SYSTEMS 108 If you are wanting to distribute high-definition images around your house, then you currently have to consider the more expensive options, such as matrix switchers, because the current crop is focused around RCA sockets. Switching The cheapest piece of necessary equipment is an AV switch box, or AV source selector box. This provides multiple inputs for your various devices, DVD, PVR, VCR, and so on, and routes one of these to the TV output. Most equipment give you the option of using either S-Video, RCA, or SCART inputs. This naturally requires that the TV is always set to receive the input from the box, not its internal tuner. There are many switch boxes available, so the features to consider are as follows. Infrared remote control: This is a necessity, really. Since this box is now taking the place of your TV channel changer, it must have the functionality you’d expect from the TV which at a bare minimum is a remote control. Active or passive devices: Active units have a small amplifier in them and therefore need power. These ensure a strong signal but at the expense of a lower quality on the cheaper models, since their internal amplifier isn’t as good as the ones on the DVD player or on a TV. Passive devices have no such amplification and are more likely to lack an IR remote. Input connections: Although some boxes provide S-Video, RCA, and SCART, for each input they might not be interconnected. That is, the RCA input socket might only be connected to the RCA output socket, and not to the S-Video or SCART. Since you only have one output to the TV, this requires you to compensate for adapting your interconnects to the most common form factor and to convert every other input into the same type of plug (there are converters available in most electronic shops). You then use the equivalent output. This part of the specification isn’t usually well documented, so check the shops return policy first. Number of inputs: Count the devices you have, add to this the number of devices you want to buy, and add two more for good measure! Once this limit has been exceeded, you have no real choice but to buy a bigger switch box. You can chain them, which is troublesome and lowers quality, or you can use a separate EXT input on the TV for each switch box, which is equally annoying but has fewer electronics in the signal chain. The biggest omission on the entry-level switch boxes is the facility to switch between stereo audio and 5.1 surround. Consequently, you will need a separate set of cables from the 5.1 output of the DVD (controlling the 5.1 speakers) and the stereo output of the DVD connected to your switch box. Splitting and Merging Once you have the AV signal ready, you might want to split it so that the video part of the signal goes the TV, while the audio makes its way into the line-input on a HiFi. There are two main ways of achieving this. The first is the easy way and works if your TV has its own stereo-out sockets, since they can be connected from the TV to the HiFi directly without a problem. The other way is to split the signal coming out the switch box into two (or more) outputs—one for the TV and one for the HiFi. This approach CHAPTER 3 ■ MEDIA SYSTEMS 109 means you won’t be able to use the HiFi to amplify any stations selected using the TV’s internal tuner, but this can be rectified by watching the TV solely through a receiver (such as a cable tuner or digibox) or VCR, which has been plugged into the switch box. This can be done in a variety of ways. The cheapest is the use two Y-cables (aka Y-adapters), one each for the left and right audio signals. These provide two identical outputs from one input and require no power. These work well when splitting audio signals but can be less than satisfactory when used on video signals because of impedance problems. If the quality isn’t good enough, then you need a more involved splitter box. A splitter box acts like its Y-cable counterpart but usually has an amplifier in it to stop signal degradation. This also allows it to provide more outputs for very little extra cost, allowing you to run a separate pair of cables into the kitchen and dining room, say. If neither of these is suitable, you can split the output after the amplifier stage by running multiple speaker cables. Wiring Looms Wiring looms is where cables carry a powerful signal (pun intended!) to drive various passive speakers around your house. Consequently we call this passive distribution. You should create one loom for each area of the house where the same audio content is likely to be heard, because local control here is more difficult (unless you get speakers with a volume control or want to hack one yourself). In a room layout as shown in Figure 3-1, you have little privacy between the living room and the dining area, so these would be on the same loom, as would the kitchen since you probably want to pop in and out of the kitchen without missing the music or TV output. If an extension, such as a sun room or den, were added to the rear of the house, on the other hand, it would be considered a separate area with a different lifestyle purpose and would not be on the same loom. Instead, any music in there should be provided over IP. Figure 3-1. A standard downstairs plan CHAPTER 3 ■ MEDIA SYSTEMS 110 The first component in a wiring loom is the main power amplifier, taking its input from the switch box we covered previously. Normally, this will drive one set of speakers, although some amplifiers provide extra outputs for additional sets. It’s rare to have more than two and even rarer to have more than a couple of rooms on the same loom, so you don’t often need any more equipment. In those cases where you need more outputs, you can add a speaker control box into the chain. This takes a single speaker output and splits it into many. These additional speaker cables can be run into the other rooms and wired directly into other speakers without the need for power. This is the main advantage of this approach; namely, the cables are easier to run (the holes are smaller because there are no bulky plugs on the end), and there’s no need for power sockets nearby, enabling you to add music to the bathroom where media players would not be practical or possible. ■ Note Special waterproof speakers are necessary for bathroom use, which have sealed cones and baskets so they can cope with water and humidity. Various models exist, including flush-mounting ones that can be placed in the ceiling. Provided you use a reasonable quality of speaker cable, the signal will not dissipate over the distances involved. ■ Note If you have two outputs on your amplifier but want to control three sets of speakers, then connect the control box to the second of the outputs and your primary speakers (on which you’re more likely to do critical listening) on the first. There’s no point in adding a step in the chain if you don’t need to do so. Wireless AV Distribution Running cables is not difficult but should be done with care to avoid drilling through power cables, water, and gas pipes. With this in mind, there are a few pieces of hardware now available, such as the AV video senders you saw in Chapter 1, built to solely wirelessly distribute audio signals. For the most part, they offer a solution of convenience, but landscape speakers, which are built to exist outside and made to look like rocks (for example), provide the only practical solution. They must also be powered from batteries. Matrix Switchers For most home applications, a standard switch box is enough to control your AV setup. If you have a Blu- ray player or other high-definition equipment, you will generally plug it straight into the TV using HDMI CHAPTER 3 ■ MEDIA SYSTEMS 111 because this eliminates all other components from the signal chain. And, alas, none of the reasonably priced switch boxes I’ve seen support HDMI. 8 Furthermore, if you want to distribute two of your input devices (such as PVR or DVD) to two different places, then you’ll find that you can’t, because the switch only provides a single output. Both of these limitations can be overcome with matrix switchers. They have a broader range of inputs (often including VGA) and can send the input signal from any one of (say) eight inputs to any (or all) of the outputs, which often number four or more. This allows the most powerful AV control method possible, with all your hardware being located in a single place and the results carried by cable to each room in the house. Also, since this is professional-level equipment, it usually comes with a serial port, making it easy for a computer to control it directly. Utilizing a matrix switcher in your setup is a big step, not just financially. To make full use of the device, you will need to keep your AV equipment in close proximity to the switcher. Furthermore, not only will you have the usual mess of cables entering the switcher, but you’ll have an additional mess of cables leaving it—one set to every room. And for the most part, matrix switchers are not small. Consequently, it is impractical to have them in the living room. Instead, you need to consider a room or a hidden cabinet into which the switcher and AV equipment can be placed. With the equipment now hidden away, the purchase of an IR relay or gateway to retransmit IR signals to the devices inside the cabinet is essential. It will be needed for the matrix switcher and may come as part of the package, so buy it second! The output connectors vary between matrix switchers. Some provide the output as an AV signal, like S-Video or other domestic formats, making it very simple to connect other receivers into your home and have it work. Others are intended for hotels and conference centers and encode each input into a proprietary protocol so the output can be transmitted over Ethernet. This case requires an additional receiver unit for each room, thus saving the effort of running specific AV cables around your house. And because the data is traveling over your existing Cat5 cables, you can usually send the IR control data back the same way, saving you on the IR relays that are so often necessary. ■ Note If the majority of your source media is stored on a hard drive, then you probably won’t need a matrix switcher at all, since it can be transmitted by Cat5 to small Linux-based head units using software-streaming solutions such as VLC. For those evil geniuses living in an underground volcano, a matrix switcher provides a mission- control room scenario for very little extra cost! After all, you can connect one set of outputs to a row of small, cheap TV sets and watch multiple sources at the same time. 8 There are a few HDMI switch boxes now appearing on the market, but these contain only HDMI switching such as the one shown at http://www.tvcables.co.uk/cgi-bin/tvcables/hdmi-matrix-switch-4x2.html. They are still hugely expensive, so realistically the choice now is either to have local processing of data or to distribute only a standard-definition version of the picture around the house. CHAPTER 3 ■ MEDIA SYSTEMS 112 Control Having the ability to play music in every room is one thing. Being able to control from every room is something else. This is the next step in the chain but one that is not always necessary. Imagine the house layout shown in Figure 3-1. This needs no complex control systems since the living room is controlled locally, and the kitchen audio stream is usually switched on when you start preparing dinner and switched off once you’ve finished. Consequently, being forced to control the AV from the living room is not an issue. Nor is it an effort to wire several rooms together (for example, the master bedroom, bathroom, and den) with a speaker control box and leave them on all the time. In this case, it is likely that although two of the three rooms may be unoccupied for most of the day, when one of them is in use, it is at the exclusion of the others, making it unnecessary to apply the cost or effort in providing separate controls for each room. Local Control Being able to control the device (such as a speaker or stereo amplifier) from the device itself is the most logical solution, and fortunately most head units provide this automatically. A local amplifier or set of powered (active) speakers, for example, will have a volume control on its front and a means to change the source input. Therefore, any distribution system using AV or Cat5 cables will have control built in. To affect the volume of a passive speaker (maybe one fed from a remote speaker control box), you need an attenuator placed in series with the speaker. For low-power solutions, it is possible to mount a double logarithmic potentiometer directly into the speaker mountings. (You need logarithmic because this is the way volume works, and you want double for stereo volume control.) This won’t give you particularly good fidelity, since the two tracks inside the device won’t be well matched with each other and some frequencies made be lost, but it will be cheap. For a better solution, there are custom attenuators that come in a basic wall unit and provide a better-looking control mechanism, with improved quality. If your speakers are not wall-mounted, then you will have to run an extra set of cables either inside the wall cavity or in external tracks. Consequently, the cable runs from the speaker control box to the switch and then to the speaker. It is better to consider this approach before laying other cables. Apart from the bathroom (where such attenuators need to be waterproof), this method of control is usually impractical and better served with active head units or no form of local control at all. Remote-Control Methods Your house will come alive with the sound of music. Until you’ve lived with music in every room, you cannot underestimate the difference it makes. Being able to change the volume is nice, but not necessary, because each album is normalized to be consistent within itself. However, if you’re randomizing the tracks, then the volume can vary wildly, necessitating a local volume control. And if you’re introducing such functionality, you’ll often want more involved local control to skip those random tracks you don’t want to hear. Such functionality requires more hardware. Direct Control Standard HiFi equipment is invariably supplied with an IR remote, making it possible to place an IR relay receiver in each room and line up its transmitter with the receiver eye on the device. Small receivers can be mounted in-wall alongside, or instead of, a light switch and be powered by batteries. . follows: • Squeezebox Classic, with display and outputs to a HiFi amplifier • Squeezebox Receiver, without display, controlled remotely • Squeezebox Boom, with display, built-in amplifier,. be indistinguishable on-screen. CHAPTER 3 ■ MEDIA SYSTEMS 106 Control: Without exception, any home theater PC without a remote-control option is going to fail. No one will get out of that. and better served with active head units or no form of local control at all. Remote-Control Methods Your house will come alive with the sound of music. Until you’ve lived with music in every