Musepack

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Musepack (formerly MPEGplus, MPEG+, MP+)
Filename extension .mpc, .mp+, .mpp
Internet media type audio/x-musepack
audio/musepack
Magic number MPCK, MP+
Latest release r475 (SV8)  / August 10, 2011; 2 years ago (2011-08-10)
Type of format Audio
Contained by MKA/MKV, NUT
Extended from MP2
Open format? LGPL, BSD license
Website www.musepack.net

Musepack or MPC is an open source lossy audio codec, specifically optimized for transparent compression of stereo audio at bitrates of 160–180 (manual set allows bitrates up to 320) kbit/s. It was formerly known as MPEGplus, MPEG+ or MP+.

Development of MPC was initiated in 1997 by Andree Buschmann and later assumed by Frank Klemm, and as of 2011 is maintained by the Musepack Development Team (MDT) with assistance from Buschmann and Klemm. Encoders and decoders are available for Microsoft Windows, Linux and Mac OS X, and plugins for several third-party media players available from the Musepack website, licensed under the GNU Lesser General Public License (LGPL) or BSD licenses, and an extensive list of programs supporting the format.[1]

Technical details[edit]

Musepack was developed using the MP2 codec as a starting point, but many features have since been added, including:

  • subband selectable M/S encoding (as in AAC)
  • Huffman coding (as in MP3 and AAC, but more efficient). Since SV8 the bitstream is compressed by highly optimized canonical huffman tables that yields 2% smaller files and faster decoding
  • noise substitution techniques (as in ATSC A-52 and MPEG-4 AAC V2)
  • pure variable bitrate between 0 and 1300 kbit/s (when needed)

The psychoacoustic model of MPC is based on MPEG ISO model 2, but is extended by CVD (clear voice detection). The quantization algorithm of the MPC encoder performs spectral shaping of the noise, called adaptive noise shaping (ANS), in order to overcome the low frequency resolution of the polyphase quadrature filter bands.

In the past, MPC has been under suspicion of violating multiple patents (MP2, PNS, subband). According to the developers of MPC, all patented code has been removed and it is now believed to be free of patent encumbrance. However, one PNS patent application is still active,[2] and it is not trivial to know if MPC's own "noise substitution techniques" avoid its scope or not.

MPC uses the APEv2 tag metadata container.

Musepack is mainly optimized for transparent encoding at the "--standard" preset (175-185 kbit/s). Very few optimisations have been made at lower bitrates (like 128 kbit/s). Nevertheless, various listening tests have been conducted in which Musepack has performed well at both lower and higher bitrates.[3][4]

Features[edit]

  • Container-independent format. An SV8 MPC is a container file for a Musepack stream. Raw stream encoding is possible.
  • Packetized stream allows muxing into audio and video containers (e.g. MKA/MKV, NUT).
  • Sample-accurate, fast seeking independent of file length.
  • Sample-accurate cutting. Application included in download package (mpccut) allows losslessly cutting stream segments based on selected start/end samples.
  • Chapters. Chapter editor (mpcchap) included, for embedding chapters into MPC files.
  • No internal clipping.
  • Streamable.

Test results[edit]

Despite being optimized for 100% transparency at moderately high bitrates, MPC has also scored highly on many 128 kbit/s tests. In May 2004, a series of double-blind listening tests[5] (as reported on Slashdot[6]) suggested that Musepack and Ogg Vorbis (which was the 1.1 "aoTuV" fork at the time) were the two best available codecs for high-quality audio compression at bitrates around 128kbit/s, beating MP3, AAC, WMA, and ATRAC.

Listening tests of MPC:

  • 2004 – rjamorim's second 128 kbit/s group listening test – between 14 and 27 listeners. MPC and Vorbis tied for first.[5]
  • 2003 – rjamorim's first 128 kbit/s group listening test – between 14 and 29 listeners. AAC, MPC, Vorbis, and WMA tied for first.[7]
  • 2002 – ff123's second 128 kbit/s group listening test[8]
  • 2001 – ff123's 128 kbit/s group listening test[9]

Hardware and software support[edit]

Devices supporting The Core Pocket Media Player can play MPC. This includes devices running Palm OS, Symbian OS, Windows, Windows CE and Windows Mobile (Pocket PC). All devices with software audio decoding that are supported by Rockbox, including older revisions of iPod, can also play Musepack files. Playback on Roku Photobridge HD is supported with a plugin. There is a plethora of media players for Android supporting Musepack (among them is the ported Rockbox media player).

Musepack distributes the libmpcdec library for decoding MPC content. Various plugins have been developed, using that library, including for the XMMS player (on Unix). Asunder and Jack! The Knife allows ripping Audio CD tracks directly into Musepack files.

References[edit]

  1. ^ "Source Code/Libs". musepack.net. Retrieved 27 August 2010. 
  2. ^ "United States Patent Application: 0050004791". Appft1.uspto.gov. Retrieved 2011-04-25. 
  3. ^ "Audio quality of encoders at 128 kbit/s". Soundexpert.org. Retrieved 2011-04-25. 
  4. ^ "MPC vs OGG VORBIS vs MP3 at 175 kbps, listening test on non-killer samples". Audiotests.free.fr. Retrieved 2011-04-25. 
  5. ^ a b "Results of Multiformat at 128kbit/s Listening Test". Listening-tests.freetzi.com. Retrieved 2011-10-04. 
  6. ^ "Vorbis And Musepack Win 128kbps Multiformat Test". Slashdot. 2004-05-24. Retrieved 2011-04-25. 
  7. ^ "Results of 128kbit/s Extension Listening Test". Listening-tests.freetzi.com. Retrieved 2011-10-04. 
  8. ^ "128 kbit/s Blind Listening Tests". Ff123.net. Retrieved 2011-04-25. 
  9. ^ "Group Listening Tests of Various Formats at 128 kbit/s". Ff123.net. Retrieved 2011-04-25. 

External links[edit]