iPeng Goes Audiophile

With versions 1.5 (iPeng for iPhone) and 1.3 (iPeng for iPad), iPeng’s playback feature (In-App-Purchase) has been completely rewritten, now providing full support for functions like synchronization, gapless playback and a larger buffer for remote streaming. Now version 1.6/1.4, again, will add to the playback capabilities allowing you to get a true audiophile experience out of iPeng by allowing for un-altered pass-through of audio with up to 24 bit sample-size and 96 kHz sample rate on iPad (48 kHz on other devices).

While some of the following was mentioned in the announcement of the 1.5/1.3 release, I did not really elaborate on it. Now, with all the additional refinements, it’s really worth writing a bit more about.

What is iPeng Playback?

iPeng Playback is an add-on feature (to be purchased separately from within the App) that makes your iPhone/iPod/iPad into a Squeezebox compatible music player for your Logitech Media Server/Squeezebox Server.

What this means is that you can now use your iThingy just like you would use a Squeezebox and control it through iPeng, you could even remote control it. So for example, you could leave an iPod playing in a dock and control it with an iPad (see below on the few limitations it has).

And if you configure your server for remote access and streaming, you can even listen to all your music while you are away from home.

Here you can find a more detailed description of iPeng Playback as an In-App purchase feature.

What’s new about the playback now?

Now, iPeng Playback has been there for over a year but version 1.5/1.3 and 1.6/1.4 introduced new capabilities. What do they add?

1.     Digital pass-through for HD audio formats with USB DACs for audiophile quality

This sounds like some secret language to you? Well, here’s what it means:

Your iPhone/iPad/iPod, when used with headphones or an analog output (“line out”), will always play your music using a CD quality encoding with a sample rate of 44.1 kHz and a sample size of 16 bits.

This is OK for analog since it’s what your Apple device’s analog output can process. But if you connect your iThingy using a digital connection, e.g. through a dock, supporting USB audio, HDMI, AirPlay or the Camera Connection Kit for iPad and if you own music in higher definition formats, for example using 48 kHz sample rate and 24 bit sample size, then this might not be what you want since it means you are losing audio quality on the way.

Now since version 1.6/1.4, this has changed. When used with digital outputs, iPeng will use the same format in which your files are encoded up to the physical capabilities of the devices you use (up to 24 bit / 48 kHz on iPad and iPhone, up to 24 bit / 96 kHz on iPad using the Camera Connection Kit). So using iPeng and the kit like this, you can stream music without any loss of quality, no bits will be lost or altered on the way.

Note: To assure that the audio is completely unaltered, you need to set the volume in iPeng to 100% because any volume change on digital data means that this data is being changed. In this case, you need to use analog volume control on your speaker or amplifier equipment.

2.     Gapless Playback (1.5/1.3)

Gapless playback is a feature still not supported by a lot of streaming devices, let alone mobile Apps. iPeng now has it. What it means is that if your music is encoded to be gapless – which is the case with a lot of live albums or classical music recordings – you can now listen to it without having a pause between the track which is really improving the authenticity of the reproduction. How well this works mainly depends on your music files. Generally, all lossless formats (FLAC, AIFF, ALAC and WAV) as well as AAC and OGG support completely gapless playback while for mp3 there will be a very brief pause between the tracks. But even that will be nowhere near to what you are used to for normal pauses between tracks, it’s in the range of 2-3 thousands of a second. The latter will also apply if you use any bitrate limiting (e.g. over 3G networks) since this will transcode the music to mp3.

3.     Active Player Synchronization (1.5/1.3)

Player synchronization means that some or all of your players will play the same music simultaneously.

Now this can’t be too difficult, can it? Well, it turns out that it is, and there are few systems that really do it well with the Squeezeboxes, iPeng now being one of them.

The problem is that your ears are very sensitive to time differences between sounds – this is how we detect the direction a sound comes from. On a short distance even differences below one hundredth of a second can be noted, and if the differences get bigger, we start to hear an echo.

Now, every network system as well as any kind of electronic inherently has delays that can get as big as a second or even more. So something needs to be done about this, and that’s where the “active” part of “active player synchronization” enters the game.

iPeng, your Squeezeboxes and the server will determine and negotiate the exact time when a certain tone has to be played, and if they find a difference between players, they will compensate by cutting out a short amount of music on the lagging player. And if over the course of the playback it turns out that one of the players gets delayed over a certain threshold, the difference will also be compensated so that your playback always stays in sync. The default value for this is 10ms (1/100th of a second), but you can even try to tweak this in your Player Settings in Logitech Media Server.

4.     Large Buffer for Mobile Streaming (1.5/1.3)

The Squeezebox system is designed for streaming in a home environment and works fine for a stationary device. But if you use it with an iPhone or iPad, you might have changing WiFi connection quality, and especially if you use it remotely, the available bandwidth can vary massively, and you might even have short outages.

To help with these challenges, iPeng now stores a bigger part of the stream in a large internal buffer which – depending on the music format – will store between 45s and several minutes of music and improve your chances for interruption-free listening.

Now, there’s a reason why the Squeezeboxes don’t all do this, and it’s not only the lack of memory. While a large buffer helps with bad connections, it puts more load on the music source; the buffer needs to be filled to be of any use and since you don’t want to wait for your music, this has to happen in addition to the “normal” data transfer you need for your stream, so you need more bandwidth at first. Another problem is that for synchronization now different players might request different parts of the stream at the same time which can also create conflicts. Especially some online sources such as Pandora or internet radios can be affected as well as lower powered servers when transcoding music to mp3, for example to use the bitrate limiting feature.

Should any of this ever cause trouble (such as stuttering playback or distorted sound), there’s an option to use a minimum buffer size instead. While this will strip you of the advantages of the large buffer, it will make sure it works with all sources and even in complicated synchronization setups. You can find this setting under “Bitrate Limiting” in the player settings.

5.     Equalization

Equalization means that you adapt the characteristics of the sound to match a certain profile, e.g. to adapt to headphone listening vs. an external amplifier or to match the type of audio you are listening to, for example audio books or Jazz.

This is an entirely new feature since most Squeezeboxes don’t support equalization and expect this to be done by an amplifier or speaker. However, your iPhone/iPad/iPod does support it (they are designed to be used with headphones), and so iPeng now allows you to select from the default iOS equalizer profiles. Or – if you are using iOS 5 or newer – through a fully customizable 10-band-equalizer that also allows you to add your own profiles to the existing ones.

Of course you can also turn it off to get unaltered passthrough sound.

This is another new menu, and you can find it under “Audio->Equalizer” in your player settings.


Now, even though we have improved a lot of things around the playback feature, there are still a few limitations.

No MySqueezebox.com support

The biggest one is probably that iPeng requires a local server for playback, it will not work directly with MySqueezebox.com. This is a requirement by Logitech.

No WMA without transcoding

The WMA file format is not being supported by iPeng. On some platforms, the server can transcode WMA files so that they can be played by iPeng, too (most notably Windows), but on others it might not work at all. For WMA radio streams, the “PlayWMA” plugin will be needed in any case.

WMA licensing conditions do not allow us to include this format in iPeng.

Some streaming services will not work

Some streaming services, such as Rhapsody/Napster or Spotify require end-to-end encryption and hardware players and so don’t work with iPeng. For Spotify there is a workaround through the use of the “3rd Party Spotify Plugin” but Rhapsody/Napster will definitely not play through iPeng playback.

Have fun!

About Author: coolio