分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

Lrc歌词解析器发布

最近一段时间专心学习英语,主要是想提高听说能力。从网上下载了《走遍美国》的mp3来听,比较简单,基本上可以听懂。偶尔遇到一个句子比较生僻,我想重新听一遍,我的意思是仅仅是重放一个最近一个句子或者一个段落,而mp3播放器上只能从头播放整个文件,极为不爽。

我想可以运用LRC来控件MP3播放器,让它前后跳动时,不但可以一个文件一个文件的跳,而且可以一个句子一个句子的跳,这样可能比较人性化一点。

解析LRC并不难,以前写过一个LRC歌词解析器,并在几款手机上使用。今天重新实现了一个LRC解析器,主要是想换一种方式实现它,以便验证一些设计上的想法。

重复发明轮子的唯一好处是可以从中得到乐趣、验证自己的想法。这也是我重新实现Lrc歌词解析器的目的。在编程时,同时考虑了资源受限情况下的应用,可以很容易的移植到mp3播放器上。基本测试用例已经通过了,占用了周五晚上和周六整一天,等有时间了再完善。有兴趣的朋友可以到这里下载。

修改历史:

2006-8-24 0.2 修改lrc_default_builder_on_lrc中一个BUG,谢谢网友Jqliao <liaojianqiu#163.com>

附录(不好意思,忘了原文的出处了):

1.LRC歌词格式

LRC 歌词是一种包含着"[*:*]"形式的"标签(tag)"的、基于纯文本的歌词专用格式。最早由郭祥祥先生(Djohan)提出并在其程序中得到应用。这种歌词文件既可以用来实现卡拉OK功能(需要专门程序),又能以普通的文字处理软件查看、编辑。当然,实际操作时通常是用专门的LRC歌词编辑软件进行高效编辑的。以下具体介绍LRC格式中的"标签"。

2.时间标签(Time-tag)

形式为"[mm:ss]"或"[mm:ss.fff]"(分钟数:秒数)。

数字须为非负整数,比如"[12:34.5]"是有效的,而"[0x0C:-34.5]"无效。

它可以位于某行歌词中的任意位置。一行歌词可以包含多个时间标签(比如歌词中的迭句部分)。根据这些时间标签,用户端程序会按顺序依次高亮显示歌词,从而实现卡拉OK功能。另外,标签无须排序。

3.标识标签(ID-tags)

其格式为"[标识名:值]"。大小写等价。以下是预定义的标签。

[ar:艺人名]

[ti:曲名]

[al:专辑名]

[by:编者(指编辑LRC歌词的人)]

[offset:时间补偿值] 其单位是毫秒,正值表示整体提前,负值相反。这是用于总体调整显示快慢的

[ti:i swear]

[ar:kenny rogers]

[al:]

[offset:2500]

[00:15.85]I see the questions in your eyes

[00:20.87]I know what's weighin' on your mind

[00:26.72]You can be sure I know my heart

[00:33.41]And I'll stand beside you through the years

[00:40.93]You'll only cry those happy tears

[00:46.78]And though I would make mistakes

[00:50.96]I'll never break your heart

[00:55.98]I swear by the moon and the stars in the sky ... I'll be there,

[01:06.84]I swear, like a shadow that's by your side ... I'll be there

[01:18.55]For better or worse, till death do us part

[01:24.40]I'll love you with every beat of my heart ... and I swear

[01:42.79]I'll give you every thing I can

[01:48.64]I'll build your dreams with these two hands

[01:54.49]We'll hang some memories on the walls

[02:01.18]And when there's silver in your hair

[02:07.86]You won't have to ask if I still care

[02:13.72]'Cos as the time turns the page, my love won't age at all

[02:22.91]And I swear by the moon and the stars in the sky ... I'll be there

[02:34.61]I swear, like the shadow that's by your side ... I'll be there

[02:46.32]For better or worse, till death do us part

[02:52.17]I'll love you with every beat of my heart ... and I swear

[03:20.17]For better or worse, till death do us part

[03:25.60]I'll love you with every beat of my heart

[03:30.62]I swear, I swear, oh ... I ... swear...

分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

open source Lrc歌词解析器发布相关推荐

  1. [open source]Lrc歌词解析器发布

    Lrc歌词解析器发布 最近一段时间专心学习英语,主要是想提高听说能力.从网上下载了<走遍美国>的mp3来听,比较简单,基本上可以听懂.偶尔遇到一个句子比较生僻,我想重新听一遍,我的意思是仅 ...

  2. 用javaScript编写lrc歌词解析器

    如果想要了解如何编写的请继续往下看,如果只需要代码,请点击这里Github lrc歌词文件介绍 来先看一下以下歌词 Heart To Heart.lrc [ti:Heart To Heart] [ar ...

  3. Qt正则表达式学习之LRC歌词解析器

    正则表达式,又称规则表达式.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表通常被用来检索.替换那些符合某个模式(规则)的文 ...

  4. 学会在Linux环境下用c语言多文件制作lrc歌词解析器

    效果: 需要掌握的知识 1. 链表的熟悉运用. 懂得在链表的插入,排序. 2. 学会Linux下基本命令指令. sudo apt-get install vim //下载vim sudo apt-ge ...

  5. 设计模式学习(四):基于Builder模式的歌词解析器

    一.前言 上篇文章(设计模式学习(三):生成器(Builder)模式)记录了 Builder 模式的具体内容,这次使用C语言来实现一个实际的例子--基于Builder模式的歌词解析器. 本文的示例来自 ...

  6. python歌词解析器

    python实现歌词解析器 今天掌握到了歌词解析器的python基础语法代码实现,个人觉得挺有意思,便展示出来分享分享 注:展示结果为每过相应的时间,输出端打印相应的歌词 import time #导 ...

  7. [open source]点阵字体产生器发布

    [open source]点阵字体产生器发布 转载时请注明出处:http://blog.csdn.net/absurd N年以前写的一个点阵字体产生器,主要是给自己用的,花了一天时间就搞定了,后来没有 ...

  8. Python 歌词解析器 音乐与歌词同步播放

    python 歌词解析器 前言 歌词解析器,顾名思义就是在播放歌曲的时候,音乐播放器放到那一句就显示对应的歌词. *在 python中歌词解析器并不难写,运用 time模块来编写歌词解析器, time ...

  9. python 歌词解析器传奇 歌词音乐同时输出

    ''' 歌词解析器:把歌词按照时间节点进行显示. 1.把歌词进行解析切片处理,把时间转成对应的浮点数 2.使用字典将时间与歌词进行存储{时间:歌词} 3.循环自动打印歌词[结束循环的条件,key为No ...

  10. lrc 歌词解析项目

    lrc 歌词解析项目 步骤: 0.先上网查找lrc歌词的格式,链接http://baike.baidu.com/view/80650.htm ,分析歌词格式 1.下载歌词文件 2.将歌词文件内容 通过 ...

最新文章

  1. 关于批量修改AD域用户的脚本
  2. 机器学习XGBoost——后面的明天更
  3. python 文件流
  4. Swift基本语法学习笔记
  5. python人工智能面试题_人工智能面试题分享(含答案)
  6. JDK8和JDK1.8有何区别
  7. JavaScript从父页面获取子页面的值(子页面又如何访问父页面)
  8. SHELL 读取文件的每一行内容并输出
  9. 线上故障排查大体思路
  10. html5show()函数怎么写,实例:用JavaScript来操作字符串(一些字符串函数)_基础知识...
  11. Fiddler4的下载与安装
  12. 【笔记】《离散数学》第十章 递推方程与生成函数
  13. 0的ascii码值(0的ascii码值)
  14. usb为什么计算机无法识别网络,电脑的usb网卡无法识别怎么办
  15. 【保姆级入门系列】阿ken教你学Python(六) ——组合数据类型
  16. c语言正方形内切圆面积,c语言计算并输出某正方形内切圆的面积
  17. 前端开发-CSS快速掌握上手知识详细总结
  18. 淘宝购买的ESP-CAM+SD内存卡做一个200W像素的相机arduino IDE开发过程
  19. 2018年大连海事大学校赛(ACM竞赛高校联盟训练赛 第11场)题解
  20. C#实现SqlServer连接查询

热门文章

  1. 力扣-剑指offer所有题
  2. U盘越狱iPhone绕ID最新教程及各种坑解决,吐血之作(超详细超简单教程)
  3. 什么是p12证书?ios p12证书怎么获取?
  4. c libxml2库的编译和使用
  5. Linux程序设计第二版练习题(第五章)
  6. python应用学习(五)——requests爬取网页图片
  7. iOS支付知识及调试技巧:【支付流程 预授权 银行卡验证反洗钱敏感信息的脱敏规范】2、安全设计Checklist(短信验证码、图形验证码、密码管理、身份验证、会话安全、敏感信息、接口安全)
  8. sap hana安装教程
  9. office 2010 安装
  10. 数车计算机编程教学caxa,CAXA数控车(数控车床编程工具)V2018.1.0 正式版