Boredom is certainly a problem while doing long haul flights, say between Japan and Switzerland. Flying with Swiss, the food is nothing to brag about and the service was mediocre – more or less once you are used to the level of service in Japan. Thankfully, most flight nowadays have inflight entertainment systems. You seat is equipped with a screen and a remote control and the system let you watch movies, play simple games and get some inflight information.
This is the theory at least, I both times had lousy earphones and the system crashed at least once during each of my flights. Given the record of Swiss airlines with entertainment systems having to wait for the system to reboot and skipping back to the point of the movie when the crash occurred is certainly a minor issue. But it gives you time to consider the design of the system. In appearance the system is quite simple, each seat has simple media-player that can display basic data types: video, audio, some hyper-linked data pages. Nothing that cannot be done by a simple iPod. The only architectural constraint is that playback can be overridden for cabine announcement, playing the safety film nobody watches. Also the system can control the seat’s light and the call for the flight attention (this will be ignored).
The naive solution would be to install a media-player with some reasonable amount of flash memory on each seat connect it to a streaming server using plain ethernet cabling and add the missing control features in the player’s firmware. This way, each seat could function independently, and the load could be distributed. Textual content could be authored and distributed using html. This means the system could also have a copy of the airline’s company’s web-site and similar stuff.
Of course, the system does not seem to be designed in that way. There is clearly a centralized server which has to be quite powerful as it has to decode up to one video stream per passenger. The thing also needs between ten to twenty minutes to boot, which is quite a lot of a glorified terminal server. Each of those video streams is then transported in analogic format to the seats (you can see noise on the screens). The server also has to handle user-input, and in my experience, the response time varies quite a lot. The audio stream is also sent over in analogic format, and output in those stupid airline-only jacks. There are probably historical and political reasons to this design, but it seems to maximize the amount of cabling (and thus weight) the load on the server, and implies a huge point of failure. The main point I see is that the system is proprietary and centralized, which big companies like airlines seem to like.
Will a decentralized design ever be implemented in airlines. Maybe, but the truth is, by the next generation of such system, the capacities of the devices carried by most passenger will largely surpass whatever the airline companies will be able to provide. In that time-frame, the most rational option will probably to have each seat provide power (by the way of an USB port) and have an on-board Wifi network that will stream whatever content to the passenger’s devices. It will be probably simpler to lend or rent devices to the few passengers that don’t have one…