WavPack

WavPack

Infobox Software
name = WavPack



caption =
developer = David Bryant
latest_release_version = 4.50
latest_release_date = June 13 2008
latest preview version =
latest preview date =
operating_system = Cross-platform
genre = Audio codec Encoder
license = BSD license
website = [http://wavpack.com/ www.wavpack.com]
Infobox file format
name = WavPack
icon =



caption =
extension = .wv
mime =
type code =
uniform type =
magic =
owner = David Bryant
genre = Audio
container for =
contained by =
extended from =
extended to =
standard =

WavPack is a free, open source lossless audio compression format developed by David Bryant.

Features

WavPack compression (.WV files) can compress (and restore) 8-, 16-, 24-, and 32-bit floating point audio files in the .WAV file format. It also supports surround sound streams and high frequency sampling rates. Like other lossless compression schemes, the data reduction rate varies with the source, but it is generally between 30% and 70% for typical popular music and somewhat better than that for classical music and other sources with greater dynamic range.Fact|date=May 2008

Hybrid mode

WavPack also incorporates a “hybrid” mode which still provides the features of lossless compression, but it creates two files: a relatively small, high-quality, lossy file (.wv) that can be used by itself; and a “correction” file (.wvc) that—when combined with the lossy file—provides full lossless restoration. This allows the use of lossy and lossless codecs together.

This “hybrid” feature is also offered by OptimFROG DualStream and MPEG-4 SLS.

ummary

* Open source, released under a BSD-like license
* Multiplatform
* Error robustness
* Streaming support
* Supports multichannel audio and high resolutions
* Hybrid/lossy mode
* Hardware supportwhat
* Metadata support (ID3v1, APE tags)
* Supports RIFF chunks
* Replay Gain compatible
* Ability to create self extracting files for the Win32 platform
* Supports 32-bit floating point streams
* Supports embedded CUE sheets
* Includes MD5 hashes for quick integrity checking
* Can encode in both symmetrical and asymmetrical (slower encoding to speed up decoding) modes

History

David Bryant started development on WavPack in mid-1998 with the release of version 1.0. This first version compressed and decompressed audio losslessly, but by then it had already featured one of the best efficiency vs. speed ratio among lossless encoders.Fact|date=May 2008

Very soon after the release of version 1.0, v. 2.0 was released, featuring lossy encoding (using only quantization of prediction residue for data reduction - no psychoacoustic masking model was applied to the stream).

In 1999, version 3.0 was released, with a new “fast mode” (albeit with reduced compression ratio), compression of raw (headerless) PCM audio files, and error detection using a 32-bit cyclic redundancy check.

WavPack development is ongoing. A feature added in late 3.x versions is the “hybrid” mode where the encoder generates a lossy file and a correction file such that both can be decompressed back to a PCM stream that is same quality as the original.

The current release, as of June 15, 2008, is version 4.50. [http://www.hydrogenaudio.org/forums/index.php?showtopic=63987]

A “roadmap” is also published by the author, containing possible hints on future development. [http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=50911&view=findpost&p=456571]

upport

oftware

Some software supports the format natively, while others require plugins. The official WavPack website offers plugins for Winamp, Nero Burning ROM, and several other applications, as well as a DirectShow filter.cite web
url=http://www.wavpack.com/downloads.html
title=WavPack downloads
]

Hardware

WavPack is supported by hardware media players that run the open source Rockbox firmware, such as iriver H100 series, H300 series, iPod (Video, Color, Photo, Nano) and more.cite web|url=http://www.rockbox.org/twiki/bin/view/Main/SoundCodecs|title=Sound Codecs, Rockbox Wiki] The WavPack website also includes a plugin that allows support for the format on the [http://www.rokulabs.com/products/photobridge/features.php Roku PhotoBridge HD] .

Technology

To ensure high-speed operation, WavPack uses a predictor that is implemented entirely in integer math.Fact|date=May 2008 In its "fast" mode the prediction is simply the arithmetic extrapolation of the previous two samples. For example, if the previous two samples were -10 and 20, then the prediction would be 50. For the default mode a simple adaptive factor is added to weigh the influence of the earlier sample on the prediction. In our example the resulting prediction could then vary between 20 for no influence to 50 for full influence. This weight factor is constantly updated based on the audio data's changing spectral characteristics.

The prediction generated is then subtracted from the actual sample to be encoded to generate the error value. In mono mode this value is sent directly to the coder. However, stereo signals tend to have some correlation between the two channels that can be further exploited.Fact|date=May 2008 Therefore, two error values are calculated that represent the difference and average of the left and right error values. In the "fast" mode of operation these two new values are simply sent to the coder instead of the left and right values. In the default mode, the difference value is always sent to the coder along with one of the other three values (average, left, or right). An adaptive algorithm continuously determines the most efficient of the three to send based on the changing balance of the channels.

Instead of Rice coding, a special data encoder for WavPack is used. Rice coding is the optimal bit coding for this type of data, and WavPack's encoder is less efficient, but only by about 0.15 bits/sample (or less than 1% for 16-bit data). However, there are some advantages in exchange; the first one is that WavPack's encoder does not require the data to be buffered ahead of encoding, instead it converts each sample directly to bitcodes. This is more computationally efficient and it is better in some applications where coding delay is critical. The second advantage is that it is easily adaptable to lossy encoding because all significant bits (except the implied "one" MSB) are transmitted directly. In this way it is possible to only transmit, for example, the 3 most significant bits (with sign) of each sample. In fact, it is possible to transmit only the sign and implied MSB for each sample with an average of only 3.65 bits/sample.

This coding scheme is used to implement the "lossy" mode of WavPack. In the "fast" mode the output of the non-adaptive decorrelator is simply rounded to the nearest codable value for the specified number of bits. In the default mode the adaptive decorrelator is used (which reduces the average noise about 1 dB) and both the current and the next sample are considered in choosing the better of the two available codes (which reduces noise another 1 dB).

No floating-point arithmetic is used in WavPack's data path because, according to the author, integer operations are less susceptible to subtle chip-to-chip variations that could corrupt the lossless nature of the compression,Fact|date=May 2008 the Pentium floating point bug being an example. It is possible that a lossless compressor that used floating-point math could generate different output when running on that faulty Pentium.Fact|date=May 2008 Even disregarding actual bugs, floating-point math is complicated enough that there could be subtle differences between "correct" implementations that could cause trouble for this type of application.Fact|date=May 2008 A 32-bit error detection code to the generated streams is included to maintain user confidence in the integrity of WavPack's compression. Fact|date=May 2008

WavPack source code is portable, and has been compiled on several Unix and Unix-like operating systems (Linux, Mac OS X, Solaris, FreeBSD, OpenBSD, NetBSD, Compaq Tru64, HP-UX...) as well as Windows, DOS, Palm OS, and OpenVMS. It works on many architectures, including x86, ARM, PowerPC, AMD64, IA-64, SPARC, DEC Alpha, PA-RISC, MIPS and Motorola 68k.

WavPack support was added to WinZip starting with version 11.0 beta, released in October 2006.cite web
url = http://www.winzip.com/comp_info.htm
title = WinZip - Additional Compression Methods Specification
accessdate = 2008-01-06
publisher = WinZip International LLC
date = 2006-11-15
] This extension to the ZIP file format was included by PKWARE, the maintainers of the format, in the official APPNOTE.TXT description file starting with version 6.3.2, released on September 28, 2007.cite web
url = http://www.pkware.com/documents/casestudies/APPNOTE.TXT
title = APPNOTE.TXT - .ZIP File Format Specification
accessdate = 2008-01-06
publisher = PKWARE Inc
date = 2007-09-28
]

References

See also

* FLAC
* TTA
* Monkey's Audio
* Meridian Lossless Packing

External links

* [http://www.wavpack.com/ Official website]
* [http://www.hydrogenaudio.org/forums/index.php?showforum=68 WavPack forum at Hydrogenaudio Forums]
* [http://www.rjamorim.com/rrw/wavpack.html Historical versions at ReallyRareWares]
* [http://wiki.hydrogenaudio.org/index.php?title=Lossless_comparison A comparison of several Lossless Audio encoders] at Hydrogenaudio Wiki.
* [http://wiki.multimedia.cx/index.php?title=WavPack WavPack on MultimediaWiki]
* [http://members.home.nl/w.speek/wavpack.htm WavPack frontend]


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Look at other dictionaries:

  • Wavpack — Entwickler: David Bryant Aktuelle Version: 4.50.1 (3. Juli 2008) Betriebssystem: plattformunabhängig Kategorie: Encoder …   Deutsch Wikipedia

  • WavPack — Entwickler David Bryant Aktuelle Version 4.60.1 (29. November 2009) Betriebssystem plattformunabhängig Kategorie Encoder Lizenz BSD Lize …   Deutsch Wikipedia

  • Wavpack — est un format de fichier ainsi qu un outil de compression audio permettant d encoder (et de restaurer) un flux PCM sans perte ou avec pertes et même de cumuler les deux aspects (format hybride, voir ci dessous). Le format est ouvert, et l outil… …   Wikipédia en Français

  • WavPack — est un format de fichier ainsi qu un outil de compression audio permettant d encoder (et de restaurer) un flux PCM sans perte ou avec pertes et même de cumuler les deux aspects (format hybride, voir ci dessous). Le format est ouvert, et l outil… …   Wikipédia en Français

  • Wavpack — Тип Аудиокодек Разработчик David Bryant ОС Кроссплатформенное ПО Версия 4.50 13 июня 2008 Лицензия Лицензия BSD Сайт …   Википедия

  • WavPack — Тип Аудиокодек …   Википедия

  • .wv — WavPack Entwickler: David Bryant Aktuelle Version: 4.50.1 (3. Juli 2008) Betriebssystem: plattformunabhängig Kategorie: Encoder …   Deutsch Wikipedia

  • WV — WavPack Тип Аудиокодек Разработчик David Bryant ОС Кроссплатформенное ПО Версия 4.50 13 июня 2008 Лицензия Лицензия BSD Сайт …   Википедия

  • Comparison of audio formats — The following tables compare general and technical information for a variety of audio formats and audio compression formats. For listening tests comparing the perceived audio quality of audio formats and codecs, see the article Codec listening… …   Wikipedia

  • Rockbox — Infobox OS name = Rockbox caption = iPod Video using default theme developer = The Rockbox Project source model = Open source kernel type = supported platforms = Various Digital Audio Players ui = Graphical user interface family = Embedded… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”