FLAC简介

FLAC即是Free Lossless AudioCodec的缩写,中文可解为无损音频压缩编码。FLAC是一套著名的自由音频压缩编码,其特点是无损压缩。不同于其他有损压缩编码如MP3 及 AAC,它不会破坏任何原有的音频资讯,所以可以还原音乐光盘音质。现在它已被很多软件及硬件音频产品所支持。


FLAC[1]与MP3相仿,都是音频压缩编码,但FLAC是无损压缩,也就是说音频以FLAC编码压缩后不会丢失任何信息,将FLAC文件还原为WAV文件后,与压缩前的WAV文件内容相同。这种压缩与ZIP的方式类似,但FLAC的压缩比率大于ZIP和RAR,因为FLAC是专门针对PCM音频的特点设计的压缩方式。而且可以使用播放器直接播放FLAC压缩的文件,就象通常播放你的MP3文件一样(现在已经有许多汽车播放器和家用音响设备支持FLAC,在FLAC的网站上你可以找到这些设备厂家的链接)。

FLAC是免费的并且支持大多数的操作系统,包括Windows,

 FLAC

基于Unix Like内核( (Linux,BSD,Solaris,IRIX, AIX等)而开发的系统,BeOS,OS/2,Amiga。并且FLAC提供了在开发工具autotools,MSVC,Watcom C,Project Builder上的build系统。

现各大网站都有FLAC音乐下载,发布者一般是购买CD后把.cda文件直接转换成.flac,以保证光盘的原无损质量。

无损格式配上好耳机的效果是非常棒的!


FLAC 数据流的格式

以库的形式提供的参考编码器和解码器;

flac,一个以命令行方式工作的可以编解码FLAC文件的程序;

metaflac,以命令行方式工作的FLAC文件的metadata编辑器。

FLAC 不同音频播放器的输入插件

我们所说的“FLAC是免费的”不仅仅意味着你可以不花钱而得到它。更重要的是FLAC的文件格式是对公众完全开放的,你可以以任何目的使用它(FLAC 项目只

 FLAC

保留维护 FLAC 格式规格和确认兼容特性的权利),FLAC的文件格式和编码/解码的实现方式都不受任何已知专利的限制。还有,所有的源代码都在开放源代码的授权方式下可以得到。


 

FLAC项目由Josh Coalson于2000年启动。进入beta阶段后并在2001年1月15日发布的0.5版的参考实现时,FLAC位流格式冻结。

2001年6月FLAC发布了1.0版。

2003年1月29日,"Xiph. Org"基金会和FLAC项目宣布FLAC成为

 FLAC

"Xiph. Org"旗下的独立公司banner. 除此之外,"Xiph. Org"还对许多免费压缩格式提供支持,如Vorbis、Theora、Speex等等。

2007年9月17日FLAC发布了1.2.1版。



编码

跨平台

Audacity

1.2.5版之后

KMPlayer

通过官方解码器

Flake(libFlake)

一个第三方开发的实验性的版本对多线程/核提供支持。

Windows平台

ALLPlayer

通过外部解码器

12.0.3xx版以后

通过可选的外部分离器插件

10.2版以后

Producer版,7版以后

9版以后

Pro 8/Pro 9

5.35版之后通过Flake,5.54版之前会产生不正确的MD5检验

Mac OS X

Toast Titanium

版本7开始支持

xACT

不要与微软的XACT库混淆

解码

跨平台

Boxee

FFmpeg

aTunes

PS3 Media Server

Adobe Audition

Audacity 1.3.5 Beta

MPlayer

Songbird

Squeezebox

The Core Pocket Media Player with FLACplugin

VLC media player

XBMC Media Center

Mixxx Digital DJ software

Windows平台

Ableton Live

类Unix

GnomeBaker

GNOME

Quod Libet

GNOME

Rhythmbox

GNOME

Totem Movie Player

GNOME

Serpentine

GNOME

Amarok

KDE

JuK

KDE

Audiokonverter

KDE

Mac OS X

Fluke

Quicktime

Ableton Live

Cog

Plex Media Center

xACT

TRAKTOR 3

TRAKTOR Scratch

Palm OS

TCPMP

0.72rc1版,开源,通过插件

CD抓轨

跨平台

Songbird

aTunes

Windows平台

Audiograbber

AudiTranscoder

BonkEnc

CDex

DBpoweramp

Exact AudiCopy

Easy CD-DA Extractor

foobar2000

iriver plus 3

JetAudio

MediaMonkey

Winamp

Yahoo! Music Jukebox

类Unix

ABCDE

Asunder

Banshee

Cdda2wav

Cdparanoia

Mencoder

crip

Grip

Sound Juicer

K3b

Konqueror

soundKonverter

Mac OS X

Max

Mac OS 10.4版或更高版本


 

原生支持

TRAXMOD

支持44.1 kHz/16位立体声回放

Onkyo TX-NR906

支持播放外部USB设备上的16位/24位

Pioneer SC-05, SC-07, SC-25, SC-27 以及 SC-09TX

支持外部USB设置(网络支持特性待验证)

Denon AVP-A1HDCI, AVR-4810, AVR-4310,AVR-3310等

 

Yamaha RX-V2065 功放

 

Meridian Sooloos

 

Escient

 

iAudio (Cowon) - A2, A3, 6, 7, F2, M3, M5,X5, U3, U5

通过刷入最新固件可以实现原生播放

Olive (Symphony, Musica, Opus)

 

PhatBox

 

Rio Karma

 

SanDisk Sansa Fuze

更新固件后支持

Squeezebox 和Transporter(Logitech的网络音乐播放器)

最新产品支持原生解码。早期产品需要在服务器端转换为PCM编码

Sonos

 

魅族(Meizu) M6 Mini Player, M3 Music Card, M8, M9

 

VEDIA A10, B6

 

Pixel Magic Systems' HD Mediabox

1.3.4版或之后的固件

嵌入式Waveplayer

支持FLAC 0-2级

Teclast T29, T39, C260, C280, C290

 

Trekstor Vibez

 

T+A Music Player

 

Linn Klimax DS (Digital Stream)

 

Linn Akurate DS

 

Linn Majik DS

 

Linn Sneaky Music DS

 

iriver E100, E50, E30, Lplayer, SPINN

 

NMT players

 

Archos 5 互联网平板电脑

 

Archos互联网多媒体平板电脑

 

Naim Audio HDX 硬盘播放器

 

Samsung YP-U5

 

Creative Zen X-Fi 2

 

WD TV

 

其他平台

Nintendo Wii

通过Wii自制程序,MPlayerWii或MPlayer CE

Apple TV,BMC Media Center 或 Boxee

 

1-5.5代iPod, iPod Mini,1代iPod nano

通过第三方Rockbox固件

绝大多数兼容Rockbox的数码音乐播放器(DAP)

包括iriver和Gigabeat (东芝公司)的产品,以及上面提到的iPod

Sound Devices 7-Series专业音频录音机

通过更新"badger" 固件 (v.2.24版)

Sony PlayStation Portable(PSP)

使用自制LightMP3程序

Samsung YP-P3, YP-Q1, YP-Q2, YP-U5, YP-S5

通过三星网站上发布的新版固件

Windows Mobile, Symbian OS(S60, S80 和 S90平台),

通过免费的开源音乐播放程序OggPlay。

Google Android 设备

通过运行CM 3.9.6版(或更高版本)


FLAC可以通过很多播放器直接播放,比如千千静听,Foobar等,甚至部分视频播放器如KMPlayer都能直接播放。当然,为了音质考虑,建议使用专业音乐播放器进行播放。

在特殊情况下,可以将FLAC文件视为一个光盘镜像,并加载到虚拟光驱上,这可以通过Nero将FLAC文件刻录到映像文件然后通过虚拟光驱(如DaemonTools)加载来实现,也可以通过WinMount软件可以直接把Flac文件挂载到一个虚拟光驱。但是因为操作繁琐,所以除非在必要情况下,一般我们都是通过播放软件直接播放的。

 

无损失压缩:被编码的音频(PCM)数据没有任何信息损失,解码输出的音频与编码器的输入的每一个字节都是一样的。每个数据帧都有一个当前帧的 16-bit CRC校验码,用于监测数据传输错误。对整段音频数据,在文件头中还保存有一个针对原始未压缩音频数据的MD5

 FLAC

标记,用于在解码和测试时对数据进行校验。电脑在播放WAV文件时,是把WAV文件中的PCM数据直接发送给声卡,而电脑在播放FLAC时,需要先把FLAC解码为PCM数据,然后在发送给声卡。就是多了一个解码的环节,就像是给RAR文档解压一样。其PCM数据是与压缩前的WAV没有区别的。

快速:FLAC更看重解码的速度。解码只需要整数运算,并且相对于大多数编码方式而言,对计算速度要求很低。在很普通的硬件上就可以轻松实现实时解码。

硬件支持:由于FLAC提供了免费的解码范例,而且解码的复杂程度低,所以FLAC是目前唯一获得广泛且良好的硬件支持的无损压缩编码。

可以用于流媒体:FLAC的每个数据帧都包含了解码所需的全部信息。解码当前帧无需参照它前面或后面的数据帧。FLAC使用了同步代码和CRC(类似于MPEG等编码格式),这样解码器在数据流中跳跃定位时可以有最小的时间延迟。

可以定位:FLAC支持快速采样精确定位。这不仅对于播放有益,更使得FLAC文件便于编辑。

富于弹性的metadata:可以定义和实现新类型的metadata数据块,而不会影响旧的数据流和解码器的使用。目前已有的metadata类型包括tag,cue表,和定位表。已经注册的应用程序可以定义自己专用的metadata类型(译注:这一点与MIDI标准相似)。

非常适合于存档应用:FLAC是一个开放的编码格式,并且没有任何数据的损失,你可以将它转换为你需要的任何其他格式。除了每个数据帧的CRC和MD5标记对数据完整性的保障,flac(译注:FLAC项目提供的命令行方式编码工具)还提供了一个verify(校验)选项,当使用该选项进行编码的时候,编码的同时就会立即对已编码数据进行解码并与原始输入数据进行比较,一旦发现不同就会退出并且报警提示。

便于对CD进行备份:FLAC有一个“CUE表”metadata数据块用于保存CD的内容列表和所有音轨的索引点。你可以将一张CD保存到一个单一文件,并导入CD的cue表格,这样一个FLAC文件就可以完整地记录整张CD的全部信息,也就是说,可以把平时单独存放的CUE文件嵌入到FLAC文件里。当你的原来的CD损坏的时候,你就可以用这个文件恢复出与原来一模一样的CD副本。

抗损伤:由于FLAC的帧结构,使得一旦发生数据流的损坏,损失会被限制在受损伤的数据帧之内。一般只是会丢失很短的一个片段。而很多其他无损音频压缩格式在遇到损伤的时候,一个损伤就会造成后面所有数据的丢失。


缺点

 

FLAC仅仅是一个无损音频编码,不含有有损压缩的功能。因此当需要小体积有损编码的音频文件时,你将仍然需要MP3、AAC、Vorbis等编码。

FLAC目前不支持任何版权保护(防复制)方法,自行尝试对FLAC文件进行保护是徒劳无功的。


APE

 

在音频压缩领域,有两种压缩方式,分别是有损压缩和无损压缩!我们常见到的MP3、WMA、OGG被称为有损压缩,有损压缩顾名思义就是在压缩过程中会让原始音频信息受损和失真,意义在于输出的音频文件可以比原文件小很多。另一种音频压缩被称为无损压缩,也就是我们今天所要说的主题内容。无损压缩能够在100%保存原文件的音频数据的前提下,将音频文件的体积压缩的更小,而将压缩后的音频文件还原后,能够得到与源文件完全相同的PCM数据。目前无损压缩格式有APE、FLAC、WavPack、TAK、TTA、WMA Lossless、Apple Lossless、La、OptimFROG、Shorten等,而在中国最流行的无损压缩格式是APE和FLAC。下面就针对这两种无损压缩格式进行一下对比。

APE即Monkey's Audio,一种无损音频压缩编码。这种格式的压缩比远低于其他有损音频格式(就是说压缩出的文件会比有损压缩的文件大),但能够做到真正无损,同时它提供的开源开发包使得播放器开发者们可以较容易的让播放器产品支持APE格式。在现有不少无损压缩方案中,APE是一种有着不错性能的格式,非常好的压缩比以及可以接受的压缩和解码速度,在国内应用非常广泛,成为了不少朋友私下交流发烧音乐的选择之一。

目前,基于国产炬力ATJ 2097解码芯片的MP3大厂中,已有厂商如

 FLAC

:魅族的M6MiniPlayer(三星主控+欧胜DAC)支持APE、FLAC、WAV三种无损音乐格式,昂达的VX939、台电科技的C133+、oppo支持APE和flac格式。

FLAC是Free Lossless AudioCodec的简称,是一种非常成熟的无损压缩格式,名气不在APE之下。该格式的源码完全开放,而且兼容几乎所有的操作系统平台。它的编码算法相当成熟,已经通过了严格的测试,当在FLAC文件受损时依然能正常播放。另外,该格式是最先得到广泛硬件支持的无损格式,世界知名数码产品如:Rio公司的硬盘随身听Karma,建伍的车载音响MusicKeg以及PhatBox公司的数码播放机都能支持FLAC格式。

目前采用闪存芯片的随身听还少有支持FLAC无损压缩格式,而且就在近日,国内知名厂商台电科技的TL-T19第二代双核心电影MP3,已经宣布对FLAC无损压缩格式的支持,这是国内目前为止第一款支持FLAC无损压缩格式的电影MP3,也是目前世界上少有的几款支持FLAC音乐的闪存MP3。

前面已经说明,无损压缩是在保证不损失源文件所有码率的前提下,将音频文件压缩的更小,也就是说这两种音频格式都能保证源文件码率的无损。但两种压缩格式毕竟为两种压缩算法,下面比较一下这两种压缩格式的特点:

一、压缩比决定无损压缩文件所占存储空间

所有的无损压缩编码的压缩比都差不太多,但在这些无损压缩编码之中,APE具有更好的压缩率,FLAC的压缩率稍差。就是说一个音频文件用APE压缩后得到的APE文件,会比FLAC文件稍微小一些。不同的WAV文件信息量不同,所以无法提供确切数字,一般来说,FLAC文件要比APE文件大 1/20 左右。

二、编码速度考验用户的耐心,速度快者优

FLAC的压缩和解码速度均显著优于APE,APE只有在FAST的编码强度下,速度才能和FLAC一拼。但相应的,APE的压缩率一直高于FLAC,APE的FAST压缩下得到的文件体积已经可以和FLAC最高压缩比的文件体积媲美。也就是说,如果以速度为基准比较的话,在相同压缩速度的设定下,两者的压缩比差不多。

三、平台的支持决定普及度

各个平台都有支持APE和FLAC的播放器。这两种压缩格式已经非常普及。

四、两者的开源特性,完全免费的技术

两者的开源或部分开源,对音频软硬件的设计们提供了很大的便利,目前不但几乎所有主流播放软件都支持二者,硬件方面也有很多播放器支持了FLAC和APE。只不过因为APE解码的运算量太大的问题,导致并不是每一个APE文件都可以被硬件播放器流畅播放。

五、容错能力

FLAC因为每帧数据之间无关联。因此当FLAC文件在传播过程中受损,导致某帧数据损坏缺失的话,只会损失该帧的音频信息,不会影响到前后的数据。这是FLAC的优势,但也因此FLAC的压缩率稍低。

总结:

无论FLAC还是APE,因为所占空间都比有损音乐大很多,所以都不是主流的音频格式,所以我们在网络上很难获取到FLAC和APE格式的音乐资源。但通过上面的对比,相信很多用户对FLAC和APE的认识更深了一些,单从技术角度讲,FLAC要比APE更有优势,因为FLAC完全开源,许多播放器可以自由地将FLAC解码功能内建在自己的解码器中。同时,FLAC有广泛的硬件平台的支持,几乎所有采用便携式设计的高端解码芯片都能够支持FLAC格式的音乐,FLAC第三个优势在于:优秀的编码使得硬件在解码时只需采用简单的整数运算即可,这将大大降低所占用的硬件资源,解码速度极快,这也是硬件播放器对FLAC支持更好的原因。


分析软件

 

FLAC(Fast LagrangianAnalysis of Continua)是由Itasca公司研发推出的连续介质力力学分析软件,是该公司旗下最知名的软件系统之一,是国际通用的岩土工程专业分析软件,具有强大的计算功能和广泛的模拟能力,尤其在大变形问题的分析方面具有独特的优势。软件提供的针对岩土体和支护体系的各种本构模型和结构单元更突出了FLAC的“专业”特性,因此在国际岩土工程界非常流行。在国内FLAC的应用也日渐广泛,拥有越来越多的用户群。FLAC目前已在全球七十多个国家得到广泛应用,在国际土木工程(尤其是岩土工程)学术界和工业界享有盛誉。 FLAC有二维和三维计算软件两个版本,即FLAC2D(1984)和FLAC3D(1994)。FLAC V3.0以前的版本为DOS版本,V2.5版本仅仅能共使用计算机的基本内存(64KB),因而求解的最大节点数仅限于2000个以内。1995年,FLAC2D升级为V3.3的版本,由于能够扩展内存,因此大大增加了计算规模,FLAC2D目前已发展到V5.0版本。FLAC3D作为FLAC的扩展程序,不仅包括FLAC的所有功能,并且在其基础上进行了进一步开发,使之能够模拟计算三维岩、土体及其他介质中工程结构的受力与变形形态。FLAC3D目前已发展到V3.1版本。FLAC可以模拟由土、岩石和其他在到达屈服极限时会发生塑性流动的材料所建造的建筑物和构筑物。FLAC将计算区域划分为若干四节点平面应变等参单元,每个单元在给定的边界条件下遵循制定的线性或非线性本构关系,如果单元应力使得材料屈服或产生塑性流动,则单元网格及结构可以随着材料的变形而变形,这就是所谓的拉格朗日算法。拉格朗日算法非常适合于模拟大变形问题,FLAC采用了显示有限差分格式来求解场的控制微分方程,并应用了混合单元离散模型,可以准确地模拟材料的屈服、塑性流动、软化直至大变形,尤其在材料的弹塑性分析、大变形分析以及模拟施工过程等领域有其独到的优点。在求解过程中,FLAC又采用了离散元的动态松弛法,不需求解大型联立方程组,没有形成矩阵,因此不需要占用太大内存,便于计算。显示公式的缺点(即小时步的局限性和需要阻尼的问题)在一定程度上可以通过自动惯性缩放和自动阻尼来克服,而这并不影响破坏的模式。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值