[android]Lyric LRC格式文件解析

这篇博客介绍了如何解析LRC格式的歌词文件,包括从文件内容到可读歌词的转换,详细信息,ID标签以及更多实用方法。作者因为网上现有的解析代码质量不高,决定自己编写一个,并在GitHub上开源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Lyric LRC格式文件解析

LRC格式没有多少复杂,因此希望找一个简单易用的程序。不过网上找到的代码不是捆绑了其它的逻辑,封装太差,就是容错太少,因此萌生了自己写一个的念头。

没有找到标准,只有一个 维基简介

项目在 https://github.com/authorfu/LrcParser

1. From a lyric file content to all readable lyric
String lyricString="[00:12.00]Line 1 lyrics\n"+
         "[00:17.20]Line 2 lyrics\n"+
         "[00:21.10]Line 3 lyrics";
BufferedReader reader =new BufferedReader(new StringReader(lyricString));
Lyric lyric;
try{
    lyric=LrcParser.create(reader);
    String[] contents=lyric.findAllContents();
    System.out.println(Arrays.toString(contents));
}catch(IOException e){
    e.printStackTrace();
}

result:

[Line 1 lyrics, Line 2 lyrics, Line 3 lyrics]

2.More info
卡拉歌词编辑器 配合播放器使用的歌词编辑器,除了有普通的歌词编辑器的逐行添加时间标记的功能外,还能为每个字添加时间标记,从而生成能为播放器识别的kok歌词文件。在歌词编辑器中内置了播放器,使编辑过程更方便。 【使用技巧】: 1、在普通歌词编辑状态下,每插入一个时间标记,光标会自动移到下一行 2、要进行精确到字的歌词编辑,请打开“精确到字”开关,此时,每插入一个时间标签,光标会自动移到一下个字(标点等不重要的字会被自动跳过),到了一行的结束时会自动跳到一下行。 3、在精确到字的模式下关于空格的处理。本编辑器对于英文是以空格作为单词的分格符的,因此每个单词之间的空格是不可缺少的。在英文中的空格是会被自动跳过的。但在中文中,空格也有重要的用途,那就是有时候在唱完一句之后需要换气,这就有个停顿,这时就可以为空格加上时间标记。但有时在一句话中并不需要停顿,但为了语义的需要,原始歌词文件(比如txt)中会有空格,在这种情况下,如果跟着节怕走,就会在有空格的地方出现乱子。因此建议在这些地方把空格去掉,或加上标点(中英文的标点都可以,标点会被自动跳过的)。如下面的这句(S.H.E的长相思): “若拥抱时光太少 太短 青春多荒凉” 原始歌词中可能会有两个空格,但实际上唱的时候中间是没有间断的,因此可以把上面的空格去掉或是加上标点。最好还是去掉空格,因为标点显示也会占用时间。 4、在英文的句子中如果需要换气,可以在换气的地方多加一个空格。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值