如何制作LRC歌词文件?这个小工具你一定不能错过

1、双击打开软件:

2、将提前准备好的歌词复制进去:

3、将要编辑歌词的歌曲拖入黑色播放器

4、点击【播放】按钮,播放歌曲

5、每开始唱一句歌词之前,点击一下【加入标签】按钮

6、全部添加完毕之后,点击【保存】按钮

7、这样你就得到了一份lrc歌词文件,大功告成

工具下载链接:

https://pan.baidu.com/s/12sE9IlnGDqExkaocF0Uu7w?pwd=hz47 
提取码:hz47 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
卡拉歌词编辑器 配合播放器使用的歌词编辑器,除了有普通的歌词编辑器的逐行添加时间标记的功能外,还能为每个字添加时间标记,从而生成能为播放器识别的kok歌词文件。在歌词编辑器中内置了播放器,使编辑过程更方便。 【使用技巧】: 1、在普通歌词编辑状态下,每插入一个时间标记,光标会自动移到下一行 2、要进行精确到字的歌词编辑,请打开“精确到字”开关,此时,每插入一个时间标签,光标会自动移到一下个字(标点等不重要的字会被自动跳过),到了一行的结束时会自动跳到一下行。 3、在精确到字的模式下关于空格的处理。本编辑器对于英文是以空格作为单词的分格符的,因此每个单词之间的空格是不可缺少的。在英文中的空格是会被自动跳过的。但在中文中,空格也有重要的用途,那就是有时候在唱完一句之后需要换气,这就有个停顿,这时就可以为空格加上时间标记。但有时在一句话中并不需要停顿,但为了语义的需要,原始歌词文件(比如txt)中会有空格,在这种情况下,如果跟着节怕走,就会在有空格的地方出现乱子。因此建议在这些地方把空格去掉,或加上标点(中英文的标点都可以,标点会被自动跳过的)。如下面的这句(S.H.E的长相思): “若拥抱时光太少 太短 青春多荒凉” 原始歌词中可能会有两个空格,但实际上唱的时候中间是没有间断的,因此可以把上面的空格去掉或是加上标点。最好还是去掉空格,因为标点显示也会占用时间。 4、在英文的句子中如果需要换气,可以在换气的地方多加一个空格。
要在Android Studio中显示LRC歌词文件,可以按照以下步骤进行操作: 1.在布局文件中添加一个TextView,用于显示歌词。 2.在Java代码中读取LRC文件并将其解析为Map,其中键为时间戳,值为歌词文本。 3.在MediaPlayer的OnPreparedListener中启动一个线程,该线程将定期更新TextView以显示当前播放时间的歌词。 下面是一个简单的示例代码,可以帮助你实现这个功能: ```java // 在布局文件中添加一个TextView,用于显示歌词 TextView lrcTextView = findViewById(R.id.lrcTextView); // 在Java代码中读取LRC文件并将其解析为Map Map<Long, String> lrcMap = new HashMap<>(); try { BufferedReader br = new BufferedReader(new FileReader(lrcFile)); String line; while ((line = br.readLine()) ! null) { Matcher matcher = Pattern.compile("\\[(\\d{2}):(\\d{2})\\.(\\d{2})\\](.*)").matcher(line); if (matcher.find()) { long time = Long.parseLong(matcher.group(1)) * 60 * 1000 + Long.parseLong(matcher.group(2)) * 1000 + Long.parseLong(matcher.group(3)) * 10; String text = matcher.group(4); lrcMap.put(time, text); } } br.close(); } catch (IOException e) { e.printStackTrace(); } // 在MediaPlayer的OnPreparedListener中启动一个线程,该线程将定期更新TextView以显示当前播放时间的歌词 MediaPlayer mediaPlayer = new MediaPlayer(); mediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() { @Override public void onPrepared(MediaPlayer mp) { new Thread(new Runnable() { @Override public void run() { while (mediaPlayer.isPlaying()) { long time = mediaPlayer.getCurrentPosition(); if (lrcMap.containsKey(time)) { runOnUiThread(new Runnable() { @Override public void run() { lrcTextView.setText(lrcMap.get(time)); } }); } try { Thread.sleep(100); } catch (InterruptedException e) { e.printStackTrace(); } } } }).start(); } }); // 播放音乐 mediaPlayer.setDataSource(audioFile); mediaPlayer.prepare(); mediaPlayer.start(); ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值