无损音频好多是直接抓轨保存的,一个文件就是一张CD,因此需要分轨文件来描述这个文件中的音轨是从哪里开始,哪里结束,一般的分轨文件是cue格式,普通的文本格式,这种文本文件格式,使用起来并不方便,典型的文件格式如下所示:
REM GENRE "Chinese Qin"
TITLE "中国国乐大师·古琴名家赵家珍"
FILE "中国国乐大师.flac" WAVE
TRACK 01 AUDIO
TITLE "梅花三弄"
PERFORMER "赵家珍"
INDEX 00 00:00:00
INDEX 01 00:00:01
这样的文件格式解析起来特麻烦,且编写很容易出错,因此我设计了一种xml格式的分轨文件,用作自己的播放器用,xml文件格式比较严谨且很容易解析,编写也不容易出错,并且我加了歌词的节点,这样就可以存储歌词了,格式如下所示
<?xml version="1.0" encoding="utf-8" ?>
<Disc version="1.0">
<DiscInfo>
<Album></Album>
<Year></Year>
<File></File>
</DiscInfo>
<Track index="1">
<Title></Title>
<Artist></Artist>
<Genre></Genre>
<Comment></Comment>
<Lyrics type=""></Lyrics><!--歌词,type:歌词类型,暂不获支持,定义0:lrc歌词,1:xml歌词,2-n:else-->
<StartTime></StartTime><!--索引起点-->
<EndTime></EndTime><!--索引终点-->
</Track>
</Disc>
歌词可以动态读取也可以写入,通过type属性可以标识歌词的类型,这样就可以支持多种格式的歌词了.