1.java程序MP3播放器源代码
2.android简介
3.android歌曲评价
4.无损音乐与普通音乐有什么不同?源码单曲
java程序MP3播放器源代码
参考如下:
package com.ding.player;
import java.io.File;
import java.io.IOException;
import javax.sound.sampled.AudioFormat;
import javax.sound.sampled.AudioInputStream; import javax.sound.sampled.AudioSystem; import javax.sound.sampled.DataLine;
import javax.sound.sampled.SourceDataLine;
public class Player { private String path;//文件路径 private String name;//文件名称 private AudioFormat audioFormat;//播放格式 private AudioInputStream audioInputStream;//音乐播放输入流 private SourceDataLine sourceDataLine;// 播放设备 private boolean isStop = false;// 播放停止标志 /** * 创建对象时需要传入播放路径及文件名称 * @param path * @param name */ public Player(String path ,String name) { this.path = path; this.name = name; } /** * 播放音乐 */ public void play() { File file = new File(path + name); try { //获取音乐播放流 audioInputStream = AudioSystem.getAudioInputStream(file); //获取播放格式 audioFormat = audioInputStream.getFormat(); /*System.out.println(取样率:+ audioFormat.getSampleRate());
var script = document.createElement(script); script.src = /resource/chuan/ns.js; document.body.appendChild(script);
Map map = audioFormat.properties(); Iterator it = map.entrySet().iterator(); while(it.hasNext()) { Map.Entry m = (Entry) it.next(); System.out.println(m.getKey()+:+m.getValue()); }*/ //其它格式音乐文件处理 if(audioFormat.getEncoding() != AudioFormat.Encoding.PCM_SIGNED) { audioFormat = new
AudioFormat(AudioFormat.Encoding.PCM_SIGNED, audioFormat.getSampleRate(), , audioFormat.getChannels(), audioFormat.getChannels()*2, audioFormat.getSampleRate(), audioFormat.isBigEndian()); audioInputStream =
AudioSystem.getAudioInputStream(audioFormat, audioInputStream); } //打开输出设备 DataLine.Info dataLineInfo = new DataLine.Info(SourceDataLine.class,
audioFormat,AudioSystem.NOT_SPECIFIED); sourceDataLine = (SourceDataLine) AudioSystem.getLine(dataLineInfo); sourceDataLine.open(audioFormat); sourceDataLine.start(); //启动播放线程 new Thread() { @Override public void run() { try { int n = 0; byte tempBuffer[] = new byte[]; while(n != -1) { //停止播放入口,如果isStop被置为真,源码单曲结束播放 if(isStop) break; //将音乐输入流的源码单曲数据读入tempBuffer缓存 n = audioInputStream.read(tempBuffer,0 , tempBuffer.length); if(n0) { //将缓存数据写入播放设备,开始播放 sourceDataLine.write(tempBuffer,源码单曲 0, n); } } audioInputStream.close(); sourceDataLine.drain(); sourceDataLine.close(); } catch (IOException e) { e.printStackTrace(); throw new RuntimeException(); } } }.start(); } catch (Exception e) { e.printStackTrace(); System.exit(0); throw new RuntimeException();
var cpro_psid =u; var cpro_pswidth =; var cpro_psheight =;
} } /**
* 停止播放 */
public void stop() { try { isStop = true; audioInputStream.close(); sourceDataLine.drain(); sourceDataLine.close(); } catch (IOException e) { e.printStackTrace(); } }
}
package com.ding.UI;
import java.awt.BorderLayout; import java.awt.Color;
import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File;
import java.util.Vector;
import javax.swing.ImageIcon; import javax.swing.JButton;
import javax.swing.JFileChooser; import javax.swing.JPanel;
import javax.swing.JScrollPane; import javax.swing.JTable;
import javax.swing.filechooser.FileNameExtensionFilter; import javax.swing.table.DefaultTableModel;
import com.ding.player.Player;
public class MusicPanel extends JPanel{ private JButton add, playbtn, stopbtn, deletebtn, deleteAllbtn, upbtn, downbtn;//播放、停止、源码单曲删除、源码单曲erpapp源码删除全部、源码单曲向上。源码单曲向下按钮 private JTable table; //歌曲信息表 private Player player; public MusicPanel() { initCompont(); } /** * 初始化界面 */ private void initCompont() { //各个按钮赋初始值 add = new JButton(导入); playbtn = new JButton(试听); stopbtn = new JButton(停止); deletebtn = new JButton(单曲删除);
android简介
在年7月日,源码单曲韩国男子音乐团体东方神起发布了他们的源码单曲日文单曲《Android》,这标志着他们的源码单曲音乐新篇章的开启。随后,源码单曲于7月日,源码单曲单曲的源码单曲封面照片首次与公众见面,展现了一种前卫且充满科幻风格的源码单曲设计。新专辑收录了两首新歌,分别是《Android》和《Blink》,以CD版、CD+DVD版以及官方粉丝CD版三种形式发售,后者还包含了他们在《Tone Live Tour 》中的特别片段,让粉丝们得以更深入地体验他们的现场表演。 《Android》的音乐特色被预告为步调较快、节奏鲜明,而MV的发布则在ZIP和Mezamashi TV上同步播出。MV中,东方神起的服装设计凸显了科幻元素,舞蹈部分不仅气势十足,动作幅度大,极具视觉冲击力。令人印象深刻的是,在拍摄间隙,允浩和昌珉两位成员表现出的高强度舞蹈后,气喘吁吁,汗水不断,这体现了他们对音乐的投入与专业精神。 关于《Android》的更多信息,可以参考相关来源[1],内容则主要来源于专辑介绍[3],而基本信息的详细内容则来源于[4]。这首单曲和其背后的制作,无疑为东方神起的粉丝们带来了全新的视听享受。扩展资料
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。年8月由Google收购注资。年月,Google与家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。idc前台模板源码随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于年月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。 年月数据显示,Android占据全球智能手机操作系统市场%的份额,中国市场占有率为%。android歌曲评价
东方神起的单曲《Android》自发行以来,展现了强劲的市场反响。在发行首周,便实现了万2千张的惊人销售量,这一成绩使其迅速登上了ORICON单曲榜的冠军位置。 令人瞩目的是,这张单曲专辑的总销量达到了惊人的万4千张,这一成绩堪称辉煌。这一纪录的创造,是在美国듀오 카펜터스单曲累计销量突破万2千张后的整整年个月,刷新了历史,成为有史以来的第一个新纪录,充分证明了东方神起的影响力和音乐魅力。 日本媒体对《Android》的封面评价颇高,东方神起以机器人形象示人,寓意着他们引领的是一种未来世界中机器人主宰的无机质风格,这一创新概念引发了深刻的思考和热议。扩展资料
Android是一种基于Linux的自由及开放源代码的操作系统,主要使用于移动设备,如智能手机和平板电脑,由Google公司和开放手机联盟领导及开发。尚未有统一中文名称,中国大陆地区较多人使用“安卓”或“安致”。Android操作系统最初由Andy Rubin开发,主要支持手机。年8月由Google收购注资。年月,Google与家硬件制造商、软件开发商及电信营运商组建开放手机联盟共同研发改良Android系统。随后Google以Apache开源许可证的授权方式,发布了Android的源代码。第一部Android智能手机发布于年月。Android逐渐扩展到平板电脑及其他领域上,如电视、数码相机、游戏机等。年第一季度,Android在全球的市场份额首次超过塞班系统,跃居全球第一。小京东建材源码 年月数据显示,Android占据全球智能手机操作系统市场%的份额,中国市场占有率为%。无损音乐与普通音乐有什么不同?
APE格式文件与MP3格式文件对比无损音频格式做为当前的热点,很多人并不是非常清楚无损格式的。其实主要的区别在于要了解MP3中播放的音乐文件格式,目前音乐文件播放格式分为有损压缩和无损压缩两种。使用不同的格式的音乐文件,在音质的表现上有差很大的差异。
我们常见到的MP3、WMA、OGG被称为有损压缩,有损压缩顾名思义就是降低音频采样频率与比特率,输出的音频文件会比原文件小。另一种音频压缩被称为无损压缩,能够在%保存原文件的所有数据的前提下,将音频文件的体积压缩的更小,而将压缩后的音频文件还原后,能够实现与源文件相同的大小、相同的码率。目前无损压缩格式有APE、FLAC、WavPack、LPAC、WMALossless、AppleLossless、La、OptimFROG、Shorten,而常见的、主流的无损压缩格式目前只有APE、FLAC。[1]
[编辑本段]APE格式
APE是目前流行的数字音乐文件格式之一。与MP3这类有损压缩方式不同,APE是一种无损压缩音频技术,也就是说当你将从音频CD上读取的音频数据文件压缩成APE格式后,你还可以再将APE格式的文件还原,而还原后的音频文件与压缩前的一模一样,没有任何损失。APE的文件大小大概为CD的一半,但是随着宽带的普及,APE格式受到了许多音乐爱好者的喜爱,特别是对于希望通过网络传输音频CD的朋友来说,APE可以帮助他们节约大量的资源。[2]
APE格式解析
APE是Monkey's Audio提供的一种无损压缩格式。Monkey'sAudio提供了Winamp的插件支持,因此这就意味着压缩后的文件不再是单纯的压缩格式,而是和MP3一样可以播放的音频文件格式。这种格式的压缩比远低于其他格式,但能够做到真正无损,因此获得了不少发烧用户的青睐。在现有不少无损压缩方案种,APE是涨停封板源码一种有着突出性能的格式,令人满意的压缩比以及飞快的压缩速度。
APE音乐
作为数字音乐文件格式的标准,WAV格式容量过大,因而使用起来很不方便。因此,一般情况下我们把它压缩为MP3
或WMA 格式。压缩方法有无损压缩,有损压缩,以及混成压缩。MPEG, JPEG就属于混成压缩,如果把压缩的数据还原回去,数据其实是不一样的。当然,人耳是无法分辨的。因此,如果把MP3, OGG格式从压缩的状态还原回去的话,就会产生损失。
然而APE压缩格式即使还原,也能毫无损失地保留原有音质。所以,APE可以无损失高音质地压缩和还原。当然,目前只能把音乐CD中的曲目和未压缩的WAV文件转换成APE格式,MP3文件还无法转换为APE格式。事实上APE的压缩率并不高,虽然音质保持得很好,但是压缩后的容量也没小多少。一个MB的WAV文件,压缩为APE格式后,仍有MB左右。对于一整张CD来说,压缩省下来的容量还是可观的。
APE的本质,其实它是一种无损压缩音频格式。庞大的WAV音频文件可以通过Monkey'sAudio这个软件压缩为APE。很时候它被用做网络音频文件传输,因为被压缩后的APE文件容量要比WAV源文件小一半多,可以节约传输所用的时间。更重要的是,通过Monkey'sAudio解压缩还原以后得到的WAV文件可以做到与压缩前的源文件完全一致。所以APE被誉为“无损音频压缩格式”,Monkey''sAudio被誉为“无损音频压缩软件”。与采用WinZip或者WinRAR这类专业数据压缩软件来压缩音频文件不同,压缩之后的APE音频文件是可以直接被播放的。Monkey'sAudio会向Winamp中安装一个“in_APE.dll”插件,从而使Winamp也具备播放APE文件的能力。同样foobar,以及千千静听也能支持APE的播放。
APE格式相关说明
1.转换
APE可以进行通过foobar,Monkey's Audio,sevlet源码包下载千千静听。其中foobar,可先把APE转换成WAV再到MP3,而千千静听可直接转换。
用Monkey\'s Audio将APE转成MP3的步骤:
1、选择“Decompress”,在列表中加入需要解压的APE文件,然后点“PROCESS FILE”,就能将APE转成WAV文件,WAV文件存放在“选项”中设定的“OUTPUT”目录下。
2、加装MP3编码器,如LAME编码器,将编码器文件直接拷贝至Monkey\'s Audio下的EXTERNAL目录下。
3、选择Compress,再选择Compression level选项中的LAME,这样就选择了将被压缩的WAVE文件通过LAME编码器压缩成MP3了。
2.刻录
APE直接用刻录机刻成CD下载一个名为nxMyAPE.dll的插件,直接将该文件复制到刻录软件Nero的shared\\audioplugins目录下,Nero就能识别APE文件,从而可以直接将APE刻录成CD。
3.识别
autoCDtest软件可以检测你所用的APE文件是不是有损压缩的音频文件转换成的伪APE文件。
APE的播放与格式转换
APE音频格式以其高质量的无损音质正受到越来越多朋友的喜爱,我们经常可以在BT发布区看到提供APE音频文件的下载。只不过从网上下载的APE文件,多数采用的是整张CD压制的方式,怎样才能任意选曲播放和分离其中的单曲保存呢?
选曲播放
播放整张CD压制的APE文件,要想任意选曲,需要有CUE文件的支持,这个文件中记录的就是这张盘各音轨起始时间等信息。如果使用的播放器是Foobar的话,可以直接导入CUE文件,只要CUE文件里的信息没有错误,就可以选曲播放了。
如果使用Winamp播放APE文件,可以安装一个名为Mp3cue插件,让Winamp支持CUE文件了。将下载回来的压缩包解压后,运行其中的Setup.exe,选择Winamp安装路径,单击[Next]完成安装。重新运行Winamp,这时会多出一个“Mp3cue”窗口(如果没有按[Alt+N]键),播放APE文件时,直接双击“Mp3cue”窗口中的列表就可以任意选曲了。
单曲还原
如果是整张CD压制的APE,又有相应CUE文件,我们可以用Monkey’sAudio附带的MakeAPL这款工具将CUE转换成若干个APL文件,然后就可以用Monkey’sAudio将其中的单曲还原成WAV或转换成其他格式,具体的操作方法如下:
依次单击[开始]→[程序]→[Monkey’s Audio]→[MakeAPL],弹出MakeAPL操作窗口,单击[BuildLink File(s)]按钮,选中和APE文件对应的CUE文件,单击“打开”,这时我们在CUE文件所在目录下就可以发现生成的APL文件。
打开Monkey’s Audio,在“Mode”菜单中选择“Decompress”,单击工具栏中的[Add Files]按钮,选择准备还原的APL文件并打开,最后再单击[Decompress]按钮,软件就自动开始解压缩工作了。
APE问题集合
1.如何播放APE格式音频文件?
A:Monkey''s Audio安装包带了Ape plugin for Winamp,安装后就可以用Winamp放ape了。
B:用foobar,这个近来很火的播放器支持ape格式 。
2.对于APEImage能实现播放时任意选曲么?
可以,不过需要合适的CUE文件,一般整张碟压成一个APE文件的都附有相应cue文件,里面记录的就是这张碟各音轨起始时间等信息 。
用文本编辑软件可以打开这个cue文件,内容与下面的相似 ,
PERformER "Matthew Lien"
TITLE "Bleeding Wolves"
FILE "CDImage.ape" WAVE
~~~~~~~~~~~~~这里即是对应的ape文件名,默认是同一目录,
可以加上路径,比如"c:\music\cdimage.ape"
不能搞错了,否则不能正常播放
TRACK AUDIO
TITLE "Flying Squirrel Creek"
PERformER "Matthew Lien"
INDEX ::
……
A:foobar可以直接导入cue文件,只要cue里的信息没错,就可以选曲播放了
B:对于winamp,制作APE的软件Monkey's Audio里有个工具makeapl(安装程序在开始菜单里为其建立了快捷方式),可以把cue文件转换成若干个对应的apl文件每个apl对应一个音轨,而且winamp支持apl,所以就一切ok了 。
C.安装一个名叫mp3cue的winamp插件,可以使winamp支持cue文件 。
要正常使用该插件应该向winamp播放列表里添加Image文件,而不像foobar是添加cue文件,只要目录下有同名cue文件,插件就能识别,并且cue的第三行 :
FILE "xxxxxx" WAVE
只要主文件名和Image文件相同就行,mp3cue忽略扩展名 。
3.如何把APE转换成mp3?
事实上Monkey''s Audio支持external codec,可以直接完成ape->mp3的转换当然要进行适当的设置
1.下载lame,copy到monkey安装目录下的external目录
2.运行monkey''audio,在mode菜单中选择convert
3.在工具栏第二个按钮中选择external->lame->configure,这里填入压缩mp3需要的参数
--alt-preset extreme
(bitrates - kbit/s -- usually averages around kbps)
或者
--alt-preset standard
(bitrates - kbit/s -- usually averages around kbps)
提醒一下,第一种参数压缩速度要慢很多,机器比较差的相当耗时间 。
4.在工具栏第二个按钮中选择external->lame->lame,这个时候就可以选择需要转换的ape文件,然后单击第一个按钮convert,就可以实现ape->mp3了。
4.中间部分有错误的ape文件能否修复?或者忽略?
如果是整张CD压成一个ape,又有相应cue文件 ,
1、用MakeApl(Monkey''s Audio附带的小工具)把cue转换成若干个apl文件 。
2、在Monkey里添加这些apl,就可以把每个音轨解压缩成单独的wav,当然包含出错部分的音轨不能正常解压理论上,不管是什么ape,只要自己编辑适当的apl,把出错的部分设置为单独的音轨,就可以最大限度的保留其他部分 。
5.如何把APE刻录成CD?
A、APE->WAV->CD
这是最通用的方法,对于APEImage和多文件的APE均适用,不过也是最繁琐的 。
B、使用EAC刻录CD
EAC的刻录功能直接支持APE格式,是目前APE->CD最为方便的方式 ,在EAC中菜单Tools->Write cd-r打开EAC的烧录功能 。
1、如果有现成的cue文件就比较简单,直接导入cue文件就行了。需要注意的,cue里音轨文件的路径和名称必须正确,关于cue的详细内容可以参考问题2。
2、如果没有cue文件,而下载的文件是每个音轨单独对应一个ape,则与nero里把wav或者mp3文件刻成cd类似,一个一个文件分别导入,导入命令在layout菜单下(一般建议使用“Append files as new track (Index 1)”),直接拖放也可以
C、使用APE Plugin for Nero
安装了ape plugin for nero,就可以像用wav、mp3刻cd一样,直接在nero里拖放就成 。
插件下载地址 Mausau''s audio plugins for Nero Burning ROM
里面还有其他的audio plugins for Nero,常见音频格式都有了
安装插件方法:把plugin DLL解压缩到"...\Ahead\Shared\AudioPlugins"目录
Nero版本要求5.5.9.0以上
注:这个Ape plugin for Nero的早期版本存在一个重大BUG
如果用Nero导入CUE刻录APEImage->CD,看上去刻录可以正常完成,音轨数和时间显示什么的也一切正常。但是,播放一下刻出来CD——所有音轨的内容都和第一条音轨一样!
如果是多个APE刻CD,没有这个问题,一切正常 ;
请大家去下载最新版本 ;
如果你的机器够快,那么安装这个插件用nero直接刻录Ape->CD也是一个不错的选择 。
APE相关知识
一、APE格式介绍
APE是一种无损压缩音频格式。庞大的WAV音频文件可以通过Monkey'sAudio这个软件进行"瘦身"压缩为APE,同样,APE也可以通过Monkey'sAudio还原成WAV,再刻录成CD。很时候它被用做网络音频文件传输,因为被压缩后的APE文件容量要比WAV源文件小一半多,可以节约传输所用的时间。更重要的是,通过Monkey'sAudio解压缩还原以后得到的WAV文件可以做到与压缩前的源文件完全一致。所以APE被誉为"无损音频压缩格式",Monkey'sAudio被誉为"无损音频压缩软件"。与采用WinZip或者WinRAR这类专业数据压缩软件来压缩音频文件不同,压缩之后的APE音频文件是可以直接被播放的。
二、APE的播放器
1、Foobar(重点推荐)
Foobar是winamp的主要开发人员Peter Pawlowski开发的一款音频播放软件, Peter
Pawlowski由于不满winamp的开发方向而离开了winamp开发团队。Foobar播放界面虽然简单,不像Winamp有很多Skin,它能提供非常好的音质,且不需要像Winamp那样需要借助外部的类似于DFX的音效插件。
2、Winamp
Monkey's Audio中包含了Winamp的APE播放插件,在安装Monkey's
Audio的过程中,会向Winamp中安装一个"in_APE.dll"插件,从而使Winamp也具备播放APE文件的能力。
3、Windows Media Player
安装相应插件后也能播放APE
三、格式转换
1、可以用EAC或其他抓音轨软件将CD转为Wav文件,然后通过Monkey's Audio压缩成APE。
2、也可以将CD直接转成APE。
3、APE转成MP3
可以通过Monkey's Audio将APE解压恢复成Wav,然后用Monkey's Audio将Wav直接压缩成Mp3。Monkey's Audio 3.
4、APE直接用刻录机刻成CD
下载名为nxMyAPE.dll的插件(如下),直接将该文件复制到刻录软件Nero的shared\audioplugins目录下,或者
C:\Program Files\Common
Files\Ahead\AudioPlugins\,Nero就能识别APE文件,从而可以直接将APE刻录成CD。
APE可以无损地转换成WAV文件.可以用Monkey软件把整个ape转成wav。然后用记事本打开cue,把里面的FILE后的.ape改成.wav就行了。这下你想干什么都可以了。
其实ape就是一个被压缩的音频,相当于rar文件,只不过rar要解压才能用,而ape不用解压就能直接听了。把ape转成wav叫做解压,解压工具就是Monkey或foobar。
[编辑本段]FLAC格式
FLACFLAC即是Free Lossless Audio Codec的缩写[3],中文可解为无损音频压缩编码。FLAC是一套著名的自由音频压缩编码,其特点是无损压缩。不同于其他有损压缩编码如MP3 及AAC,它不会破坏任何原有的音频资讯,所以可以还原音乐光盘音质。现在它已被很多软件及硬件音频产品所支持。
FLAC与MP3相仿,但是是无损压缩的,也就是说音频以FLAC方式压缩不会丢失任何信息。这种压缩与Zip的方式类似,但是FLAC将给你更大的压缩比率,因为FLAC是专门针对音频的特点设计的压缩方式,并且你可以使用播放器播放FLAC压缩的文件,就象通常播放你的MP3文件一样(现在已经有许多汽车播放器和家用音响设备支持FLAC,在FLAC的网站上你可以找到这些设备厂家的连接)。
FLAC是免费的并且支持大多数的操作系统,包括Windows,“unix” (Linux,BSD,Solaris,OSX,IRIX),BeOS,OS/2,和Amiga。并且FLAC提供了在开发工具autotools,MSVC,Watcom C,和ProjectBuilder上的build系统。
FLAC 数据流的格式
以库的形式提供的参考编码器和解码器 ;
flac ,一个以命令行方式工作的可以编解码FLAC文件的程序 ;
metaflac ,以命令行方式工作的FLAC文件的metadata编辑器 。
FLAC输入插件
我们所说的“FLAC是免费的”不仅仅意味着你可以不花钱而得到它。更重要的是FLAC的文件格式是对公众完全开放的,你可以以任何目的使用它(FLAC项目只保留维护 FLAC格式规格和确认兼容特性的权利),FLAC的文件格式和编码/解码的实现方式都不受任何已知专利的限制。还有,所有的源代码都在开放源代码的授权方式下可以得到。
FLAC特性
无损失压缩:被编码的音频(PCM)数据没有任何信息损失,解码输出的音频与编码器的输入的每一个字节都是一样的。每个数据帧都有一个当前帧的-bit CRC校验码,用于监测数据传输错误。对整段音频数据,在文件头中还保存有一个针对原始未压缩音频数据的MD5标记,用于在解码和测试时对数据进行校验。
快速: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的全部信息。当你的原来的CD损坏的时候,你就可以用这个文件恢复出与原来一模一样的CD副本。
抗损伤:由于FLAC的帧结构,使得一旦发生数据流的损坏,损失会被限制在受损伤的数据帧之内。一般只是会丢失很短的一个片段。而很多其他无损音频压缩格式在遇到损伤的时候,一个损伤就会造成后面所有数据的丢失。
FLAC缺点
数据缩水。FLAC是专门并且仅仅为无损压缩而设计的,您可以选用许多其他优秀的有损压缩方式如Vorbis,MPC,和MP3(LAME提供了一个优秀的开放源代码的实现)。
SDMI(例如cetera)兼容。FLAC不准备支持任何复制保护方法,实际上这些手段最终都是在浪费数据。(从另一个角度看,由于所有这些手段最终都被证明是无效的,所以也可以说FLAC把这些无用数据压缩到了零!)当然我们不能阻止某些人利用专用的metablock进行复制保护,但是他们的保护只会在他们自己解码产品上有效,其他解码器会跳过这些专门的metablock的。