Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
SONGS PLAYING METHOD FOR MOBILE TERMINAL AND MOBILE TERMINAL CAPABLE OF PLAYING SONGS
Document Type and Number:
WIPO Patent Application WO/2011/124110
Kind Code:
A1
Abstract:
The present invention discloses a songs playing method for a mobile terminal and a mobile terminal capable of playing songs, which solve the problem that the display effect is not ideal, when a traditional unintelligent mobile terminal plays songs and synchronously displays lyrics. The method includes the following steps: a buffer area is created according to the size of a display area and the lyric file corresponding to a song which is to be played; when the song is played and the current playing time reaches the time identified by a time tag, data to be displayed is extracted from the buffer area and displayed successively, with a scheduled screen refreshing period, and the starting position where the data to be displayed is extracted is the sum of the starting position where the data to be displayed was extracted last time and a second offset, and the second offset is the product of a scrolling speed in a second direction perpendicular to the first direction and the scheduled screen refreshing period, and the scrolling speed is the result of the total bit number, which is occupied by the pixel data of the lyrics corresponding to the time tag in the buffer area, divided by the remainder of the time identified by the next time tag and the time identified by the time tag.

Inventors:
JIAO YUZHI (CN)
Application Number:
PCT/CN2011/072101
Publication Date:
October 13, 2011
Filing Date:
March 24, 2011
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HISENSE MOBILE COMM TECHNOLOGY (CN)
JIAO YUZHI (CN)
International Classes:
G11B27/10; H04M1/72442
Foreign References:
CN101808162A2010-08-18
CN101656792A2010-02-24
CN101615418A2009-12-30
CN101149957A2008-03-26
JP2004356690A2004-12-16
US20080053294A12008-03-06
Attorney, Agent or Firm:
BEIJING TONGDAXINHENG INTELLECTUAL PROPERTY AGENCY LTD. (CN)
北京同达信恒知识产权代理有限公司 (CN)
Download PDF:
Claims:
权 利 要 求

1、 一种移动终端播放歌曲的方法, 其特征在于, 包括:

根据待播放歌曲对应的歌词文件、 以及显示区域的尺寸, 创建緩冲区, 该緩沖区以显示区域中第一方向上每行像素的像素数据占用的比特数为第一 偏移量, 按照所述歌词文件中时间标签标识的时间先后顺序存储每个时间标 签对应的歌词的像素数据;

播放歌曲时, 在当前播放时间到达一个时间标签标识的时间时, 执行: 以预定刷屏周期, 逐次从所述緩沖区中取出待显示数据并显示, 所述待 显示数据的比特数为显示区域包含的全部像素的像素数据占用的比特数, 取 出待显示数据的起点位置为前一次取出待显示数据的起点位置与第二偏移量 之和, 所述第二偏移量为在与所述第一方向垂直的第二方向上当前滚屏速度 与预定刷屏周期的乘积, 所述当前滚屏速度为緩冲区中该时间标签对应歌词 的像素数据占用的总比特数除以时间顺序上下一时间标签标识的时间与该时 间标签标识的时间之差的结果, 其中第一次从緩冲区中取出待显示数据时的 起始位置为緩冲区的起点位置。

2、 如权利要求 1所述的方法, 其特征在于, 所述根据待播放歌曲对应的 歌词文件、 以及显示区域的尺寸, 创建緩冲区之前, 还包括:

在移动终端中存在与待播放歌曲的音频文件文件名相同且后缀为预定字 符或预定字符串的文件时, 确定出存在待播放歌曲对应的歌词文件, 并根据 所述预定字符或预定字符串获取与待播放歌曲的音频文件文件名相同且后缀 为预定字符或预定字符串的文件。

3、 如权利要求 1所述的方法, 其特征在于, 所述根据待播放歌曲对应的 歌词文件、 以及显示区域的尺寸, 创建緩冲区之前, 还包括:

在移动终端中待播放歌曲的音频文件的存储路径下, 存在与待播放歌曲 在待播放歌曲对应的歌词文件, 并根据所述预定字符或预定字符串获取与待 播放歌曲的音频文件文件名相同且后缀为预定字符或预定字符串的文件。

4、 如权利要求 1所述的方法, 其特征在于, 创建緩冲区, 具体包括: 针对每个时间标签, 根据该时间标签对应的歌词、 以及预定的字体信息, 确定所述时间标签对应的歌词中每个字符的像素数据, 并将确定出的像素数 据以显示区域中第一方向上每行像素的像素值数据占用的比特数为偏移量, 在时间顺序上与该标签相邻的前一时间标签对应的歌词的像素数据的存储位 置之后紧邻的位置上存储。

5、 如权利要求 1所述的方法, 其特征在于, 播放歌曲时从緩冲区中取出 待显示数据之前, 还包括:

在当前播放时间到达时间顺序上下一个时间标签标识的时间之前, 将所 述緩沖区中该时间标签对应的歌词的像素数据修改为突出显示效果、 且将其 他时间标签对应的歌词的像素数据修改为非突出显示效果。

6、 如权利要求 5所述的方法, 其特征在于, 在当前播放时间到达时间顺 序上下一个时间标签标识的时间之前, 将所述緩沖区中该时间标签对应的歌 词的像素数据修改为突出显示效果、 且将其他时间标签对应的歌词的像素数 据修改为非突出显示效果, 具体包括:

在当前播放时间到达时间顺序上该时间标签上一个时间标签标识的时间 时, 设定定时器的定时时间为该时间标签标识的时间与所述上一个时间标签 标识的时间之差, 并

启动定时器; 以及

到达所述定时器定时时间时, 将该时间标签对应歌词的像素数据修改为 突出显示效果, 并将所述上一个时间标签对应歌词的像素数据修改为非突出 显示效果。

7、 如权利要求 5或 6所述的方法, 其特征在于, 将该时间标签对应的歌 词的像素数据修改为突出显示效果, 具体包括:

逐一判断所述对应的歌词中的每个字符的每个像素的像素数据是否为背 景色数据, 若是, 不修改; 否则, 将该像素的像素数据增加或减小一个预定 值。

8、 如权利要求 1所述的方法, 其特征在于, 所述緩冲区中在时间顺序上 第一个时间标签对应歌词的像素数据之前 , 还包括与显示区域第一方向上尺 寸相同、第二方向的尺寸为显示区域第二方向的尺寸的 1/2的区域的背景像素 数据。

9、 一种可播放歌曲的移动终端, 其特征在于, 包括:

緩冲区创建单元, 根据待播放歌曲对应的歌词文件、 以及显示区域的尺 寸, 创建緩沖区, 该緩冲区以显示区域中第一方向上每行像素的像素数据占 用的比特数为第一偏移量, 按照所述歌词文件中时间标签标识的时间先后顺 序存储每个时间标签对应的歌词的像素数据;

显示单元, 用于在播放歌曲时, 在当前播放时间到达一个时间标签标识 的时间时, 以预定刷屏周期, 逐次从緩冲区创建单元创建的緩冲区中取出待 显示数据并显示, 所述待显示数据的比特数为显示区域包含的全部像素的像 素数据占用的比特数, 取出待显示数据的起点位置为前一次取出待显示数据 的起点位置与第二偏移量之和, 所述第二偏移量为在与所述第一方向垂直的 第二方向上当前滚屏速度与预定刷屏周期的乘积, 所述当前滚屏速度为緩冲 区中该时间标签对应歌词的像素数据占用的总比特数除以时间顺序上下一时 间标签标识的时间与该时间标签标识的时间之差的结杲, 其中第一次从緩冲 区中取出待显示数据时的起始位置为緩冲区的起点位置。

10、 如权利要求 9所述的移动终端, 其特征在于, 还包括:

显示效果调整单元, 用于播放歌曲时, 在当前播放时间到达每个时间标 签标识的时间时, 执行: 在当前播放时间到达时间顺序上下一个时间标签标 识的时间之前, 将所述緩冲区中该时间标签对应的歌词的像素数据修改为突 出显示效果、 且将其他时间标签对应的歌词的像素数据修改为非突出显示效 果;

所述显示单元在显示效果调整单元修改緩冲区中的像素数据之后, 以预 定刷屏周期, 逐次从緩冲区中取出待显示数据并显示。 11、 如权利要求 9或 10所述的移动终端, 其特征在于, 所述显示单元具 体包括:

获取子单元, 用于播放歌曲时, 在当前播放时间到达每个时间标签标识 的时间时以预定刷屏周期, 逐次从緩沖区中取出待显示数据, 所述待显示数 据的比特数为显示区域包含的全部像素的像素数据占用的比特数, 取出待显 示数据的起点位置为前一次取出待显示数据的起点位置与第二偏移量之和, 所述第二偏移量为在与所述第一方向垂直的第二方向上当前滚屏速度与预定 刷屏周期的乘积, 所述当前滚屏速度为緩沖区中该时间标签对应歌词的像素 数据占用的总比特数除以时间顺序上下一时间标签标识的时间与该时间标签 标识的时间之差的结果, 其中第一次从緩冲区中取出待显示数据时的起始位 置为緩沖区的起点位置;

显示执行子单元, 用于将获取子单元获取的待显示数据显示到显示区域 中。

Description:
移动终端播放歌曲的方法及可播放歌曲的移动 终端 本申请要求在 2010 年 04 月 09 日提交中国专利局、 申请号为 201010144444.4发明名称为"移动终端播放歌曲的方 法及可播放歌曲的移动终 端"的专利申请的优先权, 其全部内容通过引用结合在本申请中。 技术领域

本发明涉及移动通信技术领域, 尤其涉及一种移动终端播放歌曲的方法 及一种可播放歌曲的移动终端。 背景技术

LRC ( LYRIC, 歌词)格式歌词文件是一种目前广泛应用于个 人计算机、 移动终端等支持歌曲播放功能的终端上, 用于在播放歌曲时, 同步地显示当 前播放的声音对应的歌词文字的文件。

在 LRC格式的歌词文件中, 除歌词文字之外, 包括两种标签, 第一种为 [mm:ss]或 [mm:ss.fff]形式的时间标签 ( Time-tag ), 其中 mm为分钟值, ss为 秒值, fff为毫秒值, 用于表示该标签对应的歌词文字的显示时间, 在 LRC格 式歌词文件中时间标签对应的歌词文字紧跟在 该时间标签后; 第二种为 [标签 名: 标签值] 形式的标识标签 (ID-tag ), 例如 [ar:歌手名称]、 [ti:歌曲名称]、 [al:专辑名称]或 [by: 本文件编者名称]等, 用于在歌曲的前奏音乐时间里, 播 放上述歌曲相关的背景信息。

目前,相当数量的移动终端为基于 ARM ( Advanced RISC Machine )内核、 低容量 RAM ( Random Access Memory , 随机存储器)、 ROM (Read-Only Memory, 只读存储器)、 以及简单的 C语言构建的非智能移动终端, 这种非 智能终端与昂贵的智能终端相比, 虽然具有价格低廉、 功耗低的优势, 然而 由于硬件、 操作系统等方面的制约, 无法实现安装或运行应用程序等较为复 杂的功能。 申请号为 200910167169.5的专利申请公开了一种适用于非智 终 端的, 能够在播放歌曲时同步地显示当前播放的声音 对应的歌词文字的方案。 然而, 该方案仅能实现显示当前播放的歌曲中当前一 句歌词文字 (或者说, 当前时间标签对应的歌词文字), 显示效果不佳。 发明内容

本发明实施例提供一种移动终端播放歌曲的方 法, 用以提高基于 ARM的 非智能移动终端在播放歌曲并同步显示歌词时 , 歌词的显示效果。

对应地, 本发明实施例还提供了一种可播放歌曲的移动 终端。

本发明实施例提供的技术方案如下:

一种移动终端播放歌曲的方法, 包括:

根据待播放歌曲对应的歌词文件、 以及显示区域的尺寸, 创建緩冲区, 该緩沖区以显示区域中第一方向上每行像素的 像素数据占用的比特数为第一 偏移量, 按照所述歌词文件中时间标签标识的时间先后 顺序存储每个时间标 签对应的歌词的像素数据;

播放歌曲时, 在当前播放时间到达一个时间标签标识的时间 时, 执行: 以预定刷屏周期, 逐次从所述緩沖区中取出待显示数据并显示, 所述待 显示数据的比特数为显示区域包含的全部像素 的像素数据占用的比特数, 取 出待显示数据的起点位置为前一次取出待显示 数据的起点位置与第二偏移量 之和, 所述第二偏移量为在与所述第一方向垂直的第 二方向上当前滚屏速度 与预定刷屏周期的乘积, 所述当前滚屏速度为緩冲区中该时间标签对应 歌词 的像素数据占用的总比特数除以时间顺序上下 一时间标签标识的时间与该时 间标签标识的时间之差的结果, 其中第一次从缓冲区中取出待显示数据时的 起始位置为緩冲区的起点位置。

一种可播放歌曲的移动终端, 包括:

緩冲区创建单元, 根据待播放歌曲对应的歌词文件、 以及显示区域的尺 寸, 创建緩沖区, 该緩冲区以显示区域中第一方向上每行像素的 像素数据占 用的比特数为第一偏移量, 按照所述歌词文件中时间标签标识的时间先后 顺 序存储每个时间标签对应的歌词的像素数据;

显示单元, 用于在播放歌曲时, 在当前播放时间到达一个时间标签标识 的时间时, 以预定刷屏周期, 逐次从緩沖区创建单元创建的緩沖区中取出待 显示数据并显示, 所述待显示数据的比特数为显示区域包含的全 部像素的像 素数据占用的比特数, 取出待显示数据的起点位置为前一次取出待显 示数据 的起点位置与第二偏移量之和, 所述第二偏移量为在与所述第一方向垂直的 第二方向上当前滚屏速度与预定刷屏周期的乘 积, 所述当前滚屏速度为緩冲 区中该时间标签对应歌词的像素数据占用的总 比特数除以时间顺序上下一时 间标签标识的时间与该时间标签标识的时间之 差的结果, 其中第一次从緩冲 区中取出待显示数据时的起始位置为緩冲区的 起点位置。

本发明实施例提供的移动终端播放歌曲的方法 , 首先根据歌词文件中各 时间标签对应的歌词、 以及显示区域的尺寸, 设置一个以显示区域中每行像 素的像素数据占用的比特数为偏移量存储数据 緩沖区, 该緩沖区中按时间标 签标识的时间先后顺序依次存储各时间标签对 应的歌词的点阵像素数据。 后 续播放歌曲时, 在每个时间标签标识的时间到达时, 以预定刷屏周期, 逐次 从緩沖区中取出一个包含当前时间标签对应歌 词的像素数据在内的、 大小与 显示区域包含的所有像素的像素数据比特数相 同的数据, 显示在显示区域中, 从而实现同时显示前后几句歌词、 并滚动显示的目的。 附图说明

图 1为本发明实施例的主要实现原理流程图;

图 2为本发明实施例移动终端播放歌曲时的处理 程图;

图 3a为本发明实施例中移动终端面板上显示区域 示意图;

图 3b为本发明实施例緩冲区中存储的歌词像素数 的示意图;

图 4a为本发明实施例中设置颜色更新定时器的示 图;

图 4b为本发明实施例中颜色更新定时器到达的示 图; 图 5a为本发明实施例刷屏过程中第一次从緩冲区 获取待显示数据的示 意图;

图 5b为本发明实施例刷屏过程中第二次从緩冲区 获取待显示数据的示 意图;

图 6a为本发明实施例中在緩冲区中设置宽度为 W、 高度为 H/2的背景颜 色区域的示意图;

图 6b为本发明实施例中在緩冲区中设置宽度为 W、高度为 h的背景颜色 区域的示意图;

图 7为本发明实施例提供的第一种可播放歌曲的 动终端的结构示意图; 图 8为本发明实施例提供的第二种可播放歌曲的 动终端的结构示意图。 具体实施方式

由于在现有非智能移动终端上, 在播放歌曲时, 歌词的显示效果较为单 调。 本发明实施例提出的歌词显示方案的基本思路 为: 预先设置一个宽度与 显示区域相同、 高度足够大的一个緩存区 (即该緩存区中数据的存储方式为 以显示区域中每行像素的像素数据占用的比特 数为偏移量), 按时间标签标识 的时间先后顺序依次存储各时间标签对应的歌 词的点阵像素数据。

在播放歌曲过程中, 在当前播放时间到达每个时间标签标识的时间 (该 时间标签为当前时间标签) 时, 设定所述缓存区中该时间标签对应的歌词的 点阵像素数据为高亮显示效果, 其他时间标签对应的歌词的点阵像素数据为 非高亮显示效果; 以及从所述緩冲区中取出对应的区域大小与显 示区域相同、 且包含该时间标签对应歌词的点阵像素数据的 连续的数据作为待显示数据, 并将取出的待显示数据显示到显示区域中。

为了获得均勾连续的滚屏效果, 可以在该时间标签标识的时间与时间顺 序上下一个时间标签标识的时间之间的时间段 内, 每当刷屏周期时间到达时, 以固定的偏移量, 逐次从緩冲区中取出待显示数据显示。

通过修改从緩冲区中获取待显示数据时的起始 点位置, 可以达到使当前 时间对应的歌词显示在显示区域中的不同位置 的效果。

下面结合各个附图对本发明实施例技术方案的 主要实现原理、 具体实施 方式及其对应能够达到的有益效果进行详细的 阐述。

如图 1所示, 本发明实施例的主要实现原理流程如下:

步骤 10, 根据待播放歌曲对应的歌词文件、 以及显示区域的尺寸, 创建 緩冲区, 该緩冲区中以显示区域中第一方向上每行像素 的像素数据占用的比 特数为偏移量, 按照所述歌词文件中时间标签标识的时间先后 顺序存储每个 时间标签对应的歌词文字的像素数据;

步骤 20, 播放歌曲时, 在当前播放时间到达每个时间标签标识的时间 时, 执行:

以预定刷屏周期, 逐次从緩沖区中取出待显示数据并显示, 所述待显示 数据的比特数为显示区域包含的全部像素的像 素数据占用的比特数, 取出待 显示数据时的起点位置为前一次取出待显示数 据的起点位置与偏移量之和, 偏移量为当前滚屏速度与刷屏周期之间的乘积 , 所述当前滚屏速度为緩冲区 中该时间标签对应歌词的像素数据占用的总比 特数除以时间顺序上下一时间 标签标识的时间与该时间标签标识的时间之差 的结果, 其中第一次从緩冲区 中取出待显示数据时的起始位置为緩冲区的起 点位置。

下面将依据本发明上述发明原理, 详细介绍一个实施例来对本发明方法 的主要实现原理进行详细的阐述和说明。

请参照附图 2 , 为本发明实施例移动终端播放歌曲时的处理流 程图。 步骤 201 , 判断移动终端中是否存在待播放歌曲对应的歌 词文件, 在判断 出移动终端中存在待播放歌曲对应的歌词文件 时, 进入步驟 202, 否则处理结 束, 直接播放歌曲不显示歌词;

在本实施例中以 LRC格式歌词文件为例,假定存储待播放歌曲《 大海啊, 故乡》 的音频数据的文件为 "大海啊, 故乡. mp3" , 对应的 LRC格式歌词文 件为同一存储路径下的文件 "大海啊, 故乡 .lrc", 当然歌词文件也可以是除了 "lrc" 之外以其他预定字符或字符串为后缀的文件, 只要具备与 LRC格式歌 词文件类似的内容结构即可, 具体如何确定是否存在待播放歌曲对应的 LRC 格式歌词文件的方法属于现有技术, 在这里不再赘述, 在确定存在待播放歌 曲对应的 LRC格式歌词文件后, 根据预定字符或预定字符串获取与待播放歌 该 LRC格式歌词文件的内容如图 3所示, 其中第 1行至第 5行为标识标 签, 第 6行至第 21行为时间标签和时间标签对应的歌词。

步骤 202, 解析待播放歌曲对应的 LRC格式歌词文件, 获得各个时间标 签;

解析歌词文件 "大海啊, 故乡. Ire", 将其中每个时间标签包含的时间信息 作为一个数组元素, 存储在数组 time_tag[]中, 例如 time— tag[l]= 01 :38.29 , time— tag[2]= 00:21.62, time_tag[3]= 01 :43.06, time_tag[4]= 00:27.18 , , time— tag[34]= 03:04.43。

步骤 203, 按照时间先后顺序, 对步骤 202获得的各时间标签进行排序; 按照每个数组元素所标识的时间的先后顺序, 对数组 time— tag[]中的元素 进行排序, 排序后的数组 ^11½」&8[]为{ time_tag[2]= 00:21.62, time_tag[4]= 00:27.18, time_tag[6]= 00:31.91 , time_tag[8]= 00:36.59... }。

步骤 204 , 根据步骤 203排序后的各时间标签对应的歌词、 以及显示区域 的尺寸, 创建緩沖区, 该緩沖区中以显示区域中水平方向上(即宽度 方向上) 每行像素的像素数据占用的比特数为偏移量;

确定緩冲区中的数据的具体过程如下:

针对排序后的数组 time_tag[]中的每个元素, 根据该元素对应的歌词, 以 及预定的字体信息, 确定所述歌词中每个字符的像素数据, 并以显示区域中 每行像素的像素数据占用的比特数为偏移量, 将确定出的该歌词的像素数据 在所述排序后的数组 time— tag[]中该元素相邻的前一元素对应的歌词的像 数 据的存储位置之后紧邻的位置上存储。 具体如何根据歌词字符来确定对应的 像素数据的过程为现有技术在这里不再赘述。

请参照附图 4a, 为移动终端面板上的显示区域的示意图, 显示区域的宽 度记为 W、 高度记为 11。 附图 4b为緩冲区中存储的歌词像素数据的示意图, 其中每个小方块代表一个像素的像素数据, 在本实施例中为了简明起见用四 个像素来显示一个文字, 当然在实际中为了美化显示效果, 往往需要使用很 多像素来显示一个文字, 例如 16个像素、 64个像素等等。 同样出于表达简明 方面的考虑, 仅在附图 4b 中绘制出了緩冲区中排序后的数组 time_tag[]中的 前六个元素的像素数据。

步骤 205 , 播放歌曲时, 执行步骤 206;

步骤 206, 在当前播放时间到达排序后的数组 time— tag[]中每个元素标识 的时间时, 执行:

假定当前播放时间到达排序后的数组 time_tag[]中的第 i个数组元素标识 的时间 (为了后续描述简明起见, 称之为当前时间标签标识的时间) 时, 首 先, 在当前播放时间到达排序后的数组 time_tag[]中第 i+ 1个数组元素 (即时 间顺序上下一个时间标签) 标识的时间之前的时间段内, 将所述緩冲区中该 时间标签对应的歌词的像素数据修改为突出显 示效果、 且将其他时间标签对 应的歌词的像素数据修改为非突出显示效果。

在实施时, 可以在当前播放时间到达排序后的数组 time— tag[]中第 i个元 素标识的时间时, 设定一个颜色更新定时器 TIMER, 如附图 5a所示, 该定时 器的定时时间为排序后的数组 time— tag[]中第 i个元素标识的时间与排序后的 数组 time— tag[]中第 i+ 1个元素标识的时间之差, 启动颜色更新定时器, 在颜 色更新定时器的定时时间到达后, 将排序后的数组 time_tag[]中第 i+1个元素 对应歌词的像素数据修改为突出显示效果, 将排序后的数组 time_tag[]中第 ι 个元素对应歌词的像素数据修改为非突出显示 效果, 如附图 5b所示。

具体可以通过修改像素数据值的方式来改变显 示效果, 在需要将一个字 符对应的像素数据修改为突出显示效果时, 判断该字符对应的每个像素的像 素数据是否为背景色数据, 若是, 不修改; 否则, 将该像素的像素数据增加 或减小一个预定值。 例如背景像素数据值为 (0 ( R ), 0 ( G ), 0 ( B ) ), 需要 将 "小" 对应的像素数据修改为突出显示效果时, 若字符 "小" 对应的一个 像素的像素数据为 (123 ( R ), 123 ( G ), 123 ( B ) ), 则该像素数据不为背景 色, 而是非突出显示效果, 则将该像素的像素数据中的每个色彩分量值都 减 100以实现突出显示效果, 修改后的该像素的像素数据为 (23 ( R ), 23 ( G ), 23 ( B ) )。 需要将一个字符对应的像素数据修改为非突出 显示效果时, 处理过 程类似, 在这里不再赘述。

步骤 207, 以预定刷屏周期, 逐次从緩冲区中取出一个包含的比特数与待 显示区域对应的像素数据相同的待显示数据并 显示;

假定当前播放时间到达排序后的数组 time— tag[]中第 i个元素标识的时间, 显然为了使当前时间标签(排序后的数组 time_tag[]中的第 i个数组元素 )对 应的歌词能够显示在显示区域中, 应当在当前播放时间到达时间顺序上下一 个时间标签(排序后的数组 time— tag[]中的第 i+1个数组元素对应的时间 )之 前, 每次刷屏时取得的待显示数据都应包含当前时 间标签对应歌词的像素数 据。 刷屏周期时间越短, 用户体验到的滚动显示效果越流畅连贯。 一般来说, 每次刷屏时取得的待显示数据都应在前次取得 的待显示数据的基础上增加一 个的偏移量, 以使用户感受到当前时间标签对应的歌词自下 而上滚动。 附图 6a、 附图 6b为刷屏过程中先后两次从緩冲区中获取待显 数据的示意图, 附 图 6a、 附图 6b中的斜线区域代表当前时间标签对应的歌词 像素数据, 阴影 矩形代表每次从緩冲区中取出的待显示数据, 可见刷屏相当于从緩沖区中以 一个固定尺寸的窗口逐次推移获取待显示数据 , 该窗口的固定尺寸为显示区 域所占用的像素数据的比特数。 釆用这种先确定上述结构的緩冲区, 在后续 显示歌词数据时确定待显示数据的好处在于在 刷屏时无需再根据每个时间标 签对应歌词的像素数据来拼接待显示数据, 只需将从緩冲区中取出的待显示 数据直接显示即可。

较佳地, 为了获得勾速滚屏的显示效果, 在当前播放时间到达时间顺序 上下一个时间标签之前的时间段内, 每次预定刷屏周期到达时, 从緩冲区中 取得待显示数据时的起始点都应在前次取得待 显示数据时的起始点的基础上 增加一个固定的偏移量 v, *timer, 其中 为在到达时间顺序上下一个时间标签 标识的时间之前的在竖直方向上的滚屏速度

W * h * n

v i =

time _ tag[i + 1] - time _ tag[i]

其中 为当前时间标签对应歌词的像素数据在显示区 域显示时高度方向 中所需占用的像素数, n为存储每个像素的像素数据所需占用的比特 , timer 为预定刷屏周期时间。

较佳地, 为了符合通常人们的阅读习惯, 在当前播放时间到达每个时间 标签标识的时间时, 该时间标签对应的歌词恰好能显示在显示区域 竖直方向 上的中点, 在步骤 202确定緩冲区时, 在排序后的数组 time— tag[]中的第一个 元素对应的歌词的像素数据之前, 预先存储宽度为 W, 高度为 H/2的背景色 区域的像素数据, 如附图 7a所示, 更进一步, 为了在当前播放时间到达时间 顺序上的第一个时间标签标识的时间时, 该第一个时间标签对应的歌词恰好 滚动至显示区域竖直方向上的中点,可以在附 图 7a中排序后的数组 time_tag[] 中的第一个元素对应的歌词的像素数据之前、 且宽度为 W, 高度为 H/2的背 景色区域的像素数据之后, 插入一个宽度为 W, 高度为 h的背景色区域的像 素数据, 如附图 7b所示。

在从开始播放歌曲到当前播放时间到达排序后 的数组 time— tag[] t的第一 个元素标识的时间之前的时间段内, 每次到达预定刷屏周期时间时, 从緩冲 区中获取待显示数据的起点位置 为:

s _ begin = s_ begin + v 0 * timer , 其中 为从开始播放歌曲到当前播放时间到 达排序后的数组 ^1½」&8[]中的第一个元素标识的时间之前的 时间段内的滚屏 速度, 数值上为 ν = * /ζ * " · , s— feg "的初始值为緩冲区的起点; 此 外在当前播放时间到达排序后的数组 time_tag[]中的第一个元素标识的时间之 前的时间段内, 还可以滚动地显示标识标签对应的歌曲背景信 息。

在上述步骤 203 中, 播放歌曲时, 在当前播放时间到达每个时间标签标 识的时间时,逐次从緩冲区中取出待显示数据 时 ,读取数据的起始点 s _ begin为 s _ begin' = s _ begin + v { * timer

其中 W为从当前播放时间到达排序后的数组 time_tag[]中的第 i个数组元 素标识的时间到当前播放时间到达排序后的数 组 time_tag[]中的第 ι+1个数组 元 素 标 识 的 时 间 的 时 间 段 内 的 滚 屏 速 度 , 数 值 上 为 vi = W * h t * n I time _ tag[i + 1]— time _ tag[i]; 其中^为当前时间标签对应歌词的像素 数据在显示区域显示时高度方向中所需占用的 像素数, timer为预定的刷屏周 期时间。 从物理意义上看上述公式的含义为本次获取待 显示数据的起始点为 上一次获取显示数据时的起始点与偏移量之和 , 偏移量为竖直方向上当前滚 屏速度与刷屏周期时间的乘积。

显然, 如果只希望实现显示多行歌词、 且滚动显示的效果, 在步骤 205 之后, 只需执行步骤 207即可, 无需执行步骤 206。

本发明实施例是以确定緩冲区时, 以显示区域水平方向上每行像素的像 素数据占用的比特数为偏移量来存储歌词像素 数据, 播放歌曲时, 在显示区 域中竖直方向滚动刷屏显示当前歌词数据为例 来描述方案的。 采用类似的方 法, 在确定緩沖区时, 如果以显示区域竖直方向上每行像素的像素数 据占用 的比特数为偏移量来存储歌词像素数据, 播放歌曲时, 釆用类似方法可实现 在显示区域中水平方向滚动刷屏显示当前歌词 数据的效果。

本发明实施例提供的移动终端播放歌曲的方案 除了播放歌曲之外, 同样 适用于播放课件、 演讲录音等音频文件时显示对应的文字。

本发明实施例提供的移动终端在播放歌曲时显 示歌词的方案, 根据歌词 文件中各时间标签对应的歌词、 以及显示区域的尺寸, 设置一个以显示区域 中每行像素的像素数据占用的比特数为偏移量 存储数据緩冲区, 该緩冲区中 按时间标签标识的时间先后顺序依次存储各时 间标签对应的歌词的点阵像素 数据。 播放歌曲时, 以预定刷屏周期, 逐次从緩冲区中取出一个包含当前时 间标签对应歌词的像素数据在内的、 大小与显示区域包含的所有像素的像素 数据比特数相同的数据, 显示在显示区域中。 通过上述过程即可实现在播放 歌曲时, 显示多行歌词、 且滚动显示的效果。

此外, 还可以在每个时间标签标识的时间到达时, 将緩冲区中该时间标 签对应歌词的像素数据修改为高亮显示效果, 与前述方案相结合, 以此来实 现同时显示前后几句歌词、 同时高亮显示当前歌词的目的。

相应地, 本发明实施例还提供了一种可播放歌曲的移动 终端, 如图 8 所 示, 该移动终端包括緩冲区创建单元 801和显示单元 802 , 具体如下:

緩冲区创建单元 801 , 根据待播放歌曲对应的歌词文件、 以及显示区域的 尺寸, 创建緩沖区, 该緩冲区以显示区域中第一方向上每行像素的 像素数据 占用的比特数为第一偏移量, 按照所述歌词文件中时间标签标识的时间先后 顺序存储每个时间标签对应的歌词的像素数据 ;

显示单元 802 , 用于在播放歌曲时, 在当前播放时间到达一个时间标签标 识的时间时, 以预定刷屏周期, 逐次从緩冲区创建单元创建的緩冲区中取出 待显示数据并显示, 所述待显示数据的比特数为显示区域包含的全 部像素的 像素数据占用的比特数, 取出待显示数据的起点位置为前一次取出待显 示数 据的起点位置与第二偏移量之和, 所述第二偏移量为在与所述第一方向垂直 的第二方向上当前滚屏速度与预定刷屏周期的 乘积, 所述当前滚屏速度为緩 冲区中该时间标签对应歌词的像素数据占用的 总比特数除以时间顺序上下一 时间标签标识的时间与该时间标签标识的时间 之差的结杲, 其中第一次从緩 冲区中取出待显示数据时的起始位置为緩冲区 的起点位置。

较佳地, 请参照附图 9 , 附图 8 中的移动终端还包括显示效果调整单元 901 , 用于播放歌曲时, 在当前播放时间到达每个时间标签标识的时间 时, 执 行: 在当前播放时间到达时间顺序上下一个时间标 签标识的时间之前, 将所 述緩冲区中该时间标签对应的歌词的像素数据 修改为突出显示效果、 且将其 他时间标签对应的歌词的像素数据修改为非突 出显示效果;

所述显示单元 802在显示效果调整单元修改緩沖区中的像素数 据之后, 以预定刷屏周期, 逐次从緩冲区中取出待显示数据并显示。

较佳地,图 8、图 9中的显示单元具体包括获取子单元和显示执 子单元, 其中:

获取子单元, 用于播放歌曲时, 在当前播放时间到达每个时间标签标识 的时间时以预定刷屏周期, 逐次从緩冲区中取出待显示数据, 所述待显示数 据的比特数为显示区域包含的全部像素的像素 数据占用的比特数, 取出待显 示数据的起点位置为前一次取出待显示数据的 起点位置与第二偏移量之和, 所述第二偏移量为在与所述第一方向垂直的第 二方向上当前滚屏速度与预定 刷屏周期的乘积, 所述当前滚屏速度为緩冲区中该时间标签对应 歌词的像素 数据占用的总比特数除以时间顺序上下一时间 标签标识的时间与该时间标签 标识的时间之差的结果, 其中第一次从緩冲区中取出待显示数据时的起 始位 置为緩冲区的起点位置;

显示执行子单元, 用于将获取子单元获取的待显示数据显示到显 示区域 中。

本领域普通技术人员可以理解实现上述实施例 方法中的全部或部分步骤 是可以通过程序来指令相关的硬件来完成, 该程序可以存储于一计算机可读 取存储介质中, 如: ROM/RAM、 磁碟、 光盘等。 发明的精神和范围。 这样, 倘若本发明的这些修改和变型属于本发明权利 要 求及其等同技术的范围之内, 则本发明也意图包含这些改动和变型在内。