wv(音频压缩格式)

一种相当有特点的音频压缩格式,WavPack不仅仅是一个无损压缩格式,它还能同时作为有损压缩格式。在其独特的“hybrid”模式下,WavPack可以压缩成wv文件(有损压缩格式,大小一般相当于WAV文件的23%左右)+wvc文件(修正文件,大小一般相当于WAV文件的41%左右)的组合。

有了对应的wvc文件,有损压缩格式的wv文件就变成了无损格式,播放时和普通的无损压缩格式完全一样。如果为了减少文件体积,你可以去掉这个wvc文件,这时wv文件就变成有损格式了,播放效果和高比特率的MP3完全一样。

据此,WavPack同时包容了无损格式和有损格式。通过WavPackFrontend前台程序,我们可以方便地使用WavPack格式。/nWavPack是主流的无损压缩格式之一,编码速度和算法都相较APE要好。

历史

David Bryant在1998年年中开始了WavPack的开发并发布了1.0版,这第一个版本只有无损压缩解压音频这项功能,但是当时它就已经跻身效率与速度比最好的编码器之列了。/n

在1.0版之后,很快Bryant就发布了2.0版,这个版本的特点是使用了有损编码,它直接对预测残余进行了量化以减少数据量,而没有使用心理声学masking模型。/n

1999年,他发布了3.0版,新颖的功能成为这个版本的特点,例如通过减小压缩比实现的快速模式、压缩无头原始PCM音频文件以及使32位循环冗余校验的错误检测功能。/n

WavPack的开发仍在继续,在后面的3.x版本中添加的一个主要特点就是混合模式,在这种模式下编码器生成一个有损文件以及一个纠正文件,这样它们就可以经过解压还原出原始的PCM数据流。/n

WavPack 4最近才发布,这个版本包括许多重要的改进,如快速搜索、多声道支持、高分辨率音频支持等等,这些特性使它成为功能最全的时髦无损音频压缩器之一。最近的4.x稳定版本是4.31,针对Linux/OSX的错误修正之后得到用于这些系统的4.32版,但是它没有与质量相关的更改。/n

Bryant最近发布了未来WavPack 4.4的测试版以先睹为快,它包括的功能有针对单声道或者接近单声道的音频数据的改进处理、以及重新设计的压缩质量系统,这种改进可以以大幅增强的效率实现类似的压缩。

支持

软件支持 /n

由Speek开发的自定义Windows前端/n

NullSoft Winamp(插件w/ ReplayGain & Media Library支持)/n

foobar2000-Advanced Audio Player(官方插件,w/ ReplayGain & Cuesheets支持)/n

Windows Media Player (带有CoreWavPack directshow滤波器)/n

XMMS(带有Kuniklo的插件)(源代码)/n

LAMIP(官方插件)-用于Linux及相关系统的模块化音频播放器-主页/n

Adobe Audition (and CoolEdit) (filter w/32-bit floats&extra info save support)/n

dBpowerAMP-Music Converter/Audio Player/CD Writer(官方插件)/n

Apollo Audio Player(插件支持 w/ ReplayGain )/n

MusikCube-自由音频播放器(w/WavPack插件)/n

Ahead Nero Burning ROM(w/插件)/n

MrQuestionMan-Audio Identifier/n

Burrrn-直接从不同的格式烧制音频CD/n

Mp3tag-通用标签编辑器/nExact Audio Copy-CD Ripper(w/wavpack.exe是外部压缩程序)/n

VUPlayer-自由的多种格式音频播放器与转换器/n

Xist(beta)-支持WavPack的OS X播放器(源代码)/n

带有官方插件的XMPlay,用于Windows的自由小播放器/n

Cog-支持WavPack的用于OS X的新播放器/n

MPXPlay-支持WavPack的基于DOS(MS-DOS、FreeDOS、DR-DOS)的播放器/n

1by1与Coolplayer,带有Winamp WavPack插件/n

不同平台的WavPack编译版本/n

The GodFather-标签与音乐管理器/n

Wavpack4Wavelab-第一款商用/专业波形编辑的第三方文件输入输出插件Steinberg Wavelab 5/6/n

Easy CD-DA Extractor-商业CD音轨抓取、编码及转换工具/n

OggdropXPd-直接从包括WavPack在内的各种无损格式转换成有损开放源代码Ogg Vorbis格式/n

Quintessential Player带有插件/n

KSP Sound Player中缺省支持/n

硬件支持 /n

运行开放源代码Rockbox固件的播放器,如iriver ihp100、ihp120、ihp140、H320、H340以及iPod Video/Color/Photo/Nano(Rockbox主页)/n

Roku PhotoBridge HD(w/插件)/n

自从2005年起,WavePack就开始用于DVD+Audio上的音频压缩取代DVD-Audio上昂贵的Meridian Lossless Packing。

技术

为了保证高速运算,WavPack完全使用整数算术这样一种简单的预测,在“最快”模式下,预测值是前面两个采样的简单数学外推。例如,如果前面两个采样是-10与20,那么预测值就是50。

在缺省模式下,使用一个简单的自适应因子衡量前面采样对于预测影响的权重。在我们的这个例子中预测值可能从20到50之间变化,也就是前面的采样从没有影响到影响最大这样一个范围变化。这个权重因子随着音频数据频谱特性的变化而不断更新,所以它是“自适应”的。/n

然后从待编码的实际采样中减去生成的预测值得到误差,在单声道模式下这个值直接送到编码器去,但是立体声信号通常在两个声道之间有一些能在后面使用的相关性,所以左右声道分别计算出各自的误差值。在“快速”运算模式下这两个新生成的值直接送到编码器而不管它是左声道还是右声道。

在缺省模式下,这个误差值总是随着平均、左或者右三者之一发送到编码器。自适应算法根据声道不断变化的平衡性确定发送三者中最有效的一个。/n

David Bryant为WavPack开发了一个独特的数据编码器,他认为这个编码器有两个方面要比Rice编码优秀。由于对于这种类型的数据来说Rice编码代表了最优的位编码(有时也称作哈夫曼编码)。WavPack编码要比它稍稍逊色一点,大约差距是0.15位/采样,也就是说16位数据大约差1%。WavPack编码器的第一个优点是在编码前数据无需缓存,它将每个采样直接转换成位码。这从计算的角度来讲效率更高,在一些延迟控制很关键的应用中表现更好。

它的第二个优点是很容易适应有损编码,这是因为除了隐含的一个最高位之外所有重要的数据位都直接进行发送。按照这种方法,就可以只传送每个采样中带有符号的最高3位。实际上,可以只传送符号位以及用平均3.65位/采样表示的使用隐含最高位的采样值。/n

这个编码机制用于实现WavPack的“有损”模式。在“快速”模式下,非自适应去相关的输出只是简单地四舍五入到最近的特定位数的编码值。在缺省模式下,使用自适应的去相关,它可以将噪声平均减小1dB,并且当前以及下一个采样在选择两个可用的编码值时都参与衡量,这又将噪声减小1dB。/n

由于开发者认为整数运算受不同芯片的影响较小,而芯片的不同可能带来无损压缩特性的变化,如Pentium浮点运算的缺陷就是一个明显的例子,所以他决定在WavPack算法的数据处理中不使用浮点运算。使用浮点运算的无损压缩工具如果运行在有缺陷的Pentium芯片上可能就会生成不同的结果。

即使我们不考虑这些已经存在的缺陷,浮点运算也很复杂,在不同的“正确”实现之间也可能有微小差别,对于这类应用可能会带来麻烦。为了进一步加强WavPack压缩数据的完整性,编码器在生成的数据流后包括有一个32位的错误检测码。/n

WavPack的源代码非常易于移植到其它平台,它已经可以在几种不同的Unix系统上编译,如Linux、Mac OS X、Solaris、FreeBSD、OpenBSD、康柏Tru64、HP-UX等等,另外它也可以在Microsoft Windows、DOS、Palm OS以及OpenVMS上编译。它可以在许多平台上工作,如x86、ARM架构、PowerPC、AMD64、IA-64、SPARC、DEC Alpha、PA-RISC、MIPS以及Motorola 68k。

特点

WavPack允许用户压缩、恢复8、16、24位以及32位浮点表示的WAV格式音频文件,另外它还支持多声道数据流以及非常高的采样率。与其它无损压缩机制一样,这种算法的压缩比例也随源数据的不同而变化,但是对于普通的流行音乐来说通常介于30%到70%之间,对于古典音乐及其它音域较宽的音乐来说通常能得到更高的比例。

优点

*Open source(开放源码)/n

*Very fast decoding(快速解码)/n

*Good efficiency(高压缩率)

*Error robustness(容错)/n

*Streaming support(支持流媒体)/n

*Hardware support(RockBox)(硬件支持)

*Supports multichannel audio and high resolutions(多声道)/n

*Hybrid/lossy mode(有损/无损模式)/n

*Tagging support(ID3v1,APE tags)(D3v1、APE标签支援)/n

*Supports RIFF chunks(支持RFF)/n

*Ability to create self extracting files for Win32 platform(win32系统支持产生自解压档案)/n

*Pipe support(支持管道,进行编解码操作时可不产生中间文件)/n

*Good software support(相当不错的软件支持)/n

*ReplayGain compatible(兼容ReplayGain技术,实现播放增益)/n

WV Other features(其它功能)/n

Supports 32bit float streams(支持32bit浮动串流)/n

*Supports embedded CUE sheets(支持cue清单)/n

*Includes MD5 hashes for quick integrity checking(支持MD5校验)/n

*Can encode in both symmetrical and assymmetrical modes(对称与不对称模式均可编码)/n

*Fits the Matroska container(可放入Matroska外壳,也就是MKV)

“混合”模式

另外WavPack引入了一种独特的“混合”模式,它使用一个附加的文件从而也具有了有损压缩的优点。与其它方法只生成一个文件不同,这种模式生成两个文件,其中一个是相对较小、可以单独使用的高质量有损压缩文件,另外一个是与有损文件一起使用,实现无损数据恢复的“修正”文件。对于一些用户来说,这就意味着他们不必再考虑使用有损还是无损压缩这样一个问题。

播放

各种常用音乐播放软件都可以播放,例如:foobar2000、Winamp/n

执行*.cue即可直接播放。如果遇错误,请查看*.cue文件。/n

FILE"*.wv"WAVE为正确格式,如果是其他后缀名,改为.wv即可。/n

例如:/n目录下为Macross The Tribute.wv,cue里则应该是:FILE"Macross The Tribute.wv"WAVE/n

对于Foobar 2000,可以下载专用插件foo_wavpack.dll。

同理,在Winmap以及用来刻录CD的NERO里,也有相对应的插件。/n

此外,可以用WinMount挂载到虚拟CD后,用Windows自带的WMPlayer播放,音质很好。/n

另外,将wv文件的后缀名由.wv改成.zip后,双击就可以将wv文件解压。

该文章由作者:【李智慧】发布,本站仅提供存储、如有版权、错误、违法等相关信息请联系,本站会在1个工作日内进行整改,谢谢!

发表回复

登录后才能评论