谢伟文 (中国广东省深圳市福田区振兴路赛格科技园2栋东4楼, Guangdong 4, 518044, CN)
CHEN, Bin (4/F. East 2 Block. SEG Park, Zhenxing Rd. Futian Distric, Shenzhen Guangdong 4, 518044, CN)
腾讯科技(深圳)有限公司 (中国广东省深圳市福田区振兴路赛格科技园2栋东4楼, Guangdong 4, 518044, CN)
XIE, Weiwen (4/F. East 2 Block. SEG Park, Zhenxing Rd. Futian Distric, Shenzhen Guangdong 4, 518044, CN)
谢伟文 (中国广东省深圳市福田区振兴路赛格科技园2栋东4楼, Guangdong 4, 518044, CN)
| 权利要求书 1、 一种动画播放的方法, 其特征在于, 所述方法包括: 当检测到音频信号时,获取当前时刻动画对象的第一属性值,并且, 确定所述音频信号对应的第二属性值和第一速度值; 将所述第一属性值和第二属性值分别作为起点和终点, 按照所述第 一速度值播放所述动画对象; 当所述音频信号停止时, 如果所述播放未结束, 则停止所述播放。 2、根据权利要求 1所述的方法,其特征在于,检测到音频信号之前, 还包括: 将预设的第三属性值和第四属性值分别作为起点和终点, 按照预设 的第二速度值循环播放动画对象; 相应地, 当检测到音频信号时, 进一步还包括: 停止所述循环播放; 当所述音频信号停止时, 进一步还包括: 继续进行所述循环播放。 3、根据权利要求 1所述的方法, 其特征在于, 确定所述音频信号对 应的第二属性值和第一速度值, 包括: 获取所述音频信号的振幅和频率; 在预设的振幅与属性值的对应关系中, 确定所述音频信号的振幅对 应的第二属性值, 并且, 在预设的频率与速度值的对应关系中, 确定所 述音频信号的频率对应的第一速度值。 4、 根据权利要求 1所述的方法, 其特征在于, 所述方法还包括: 在所述音频信号停止之前, 如果所述音频信号发生改变, 则停止所 述动画对象当前正在进行的播放, 获取所述音频信号改变时刻所述动画 对象的第五属性值, 并确定所述音频信号改变后对应的第六属性值和第 三速度值; 将所述第五属性值和第六属性值分别作为起点和终点, 按照所述第 三速度值播放所述动画对象。 5、根据权利要求 1所述的方法, 其特征在于, 将所述第一属性值和 第二属性值分别作为起点和终点, 按照所述第一速度值播放所述动画对 如果所述动画对象当前正在进行的播放结束且所述音频信号未停 止, 则判断所述音频信号与所述当前正在进行的播放结束时刻相比是否 发生改变; 如果未发生改变, 则获取所述结束时刻时所述动画对象的第七属性 值, 根据所述第七属性值和预设的调整值确定第八属性值, 将所述第七 属性值和第八属性值分别作为起点和终点 , 按照预设的第四速度值循环 播放所述动画对象, 直到所述音频信号发生改变或停止。 6、 一种动画播放的装置, 其特征在于, 所述装置包括: 音频开始动画播放模块, 用于当检测到音频信号时, 获取当前时刻 动画对象的第一属性值, 并且, 确定所述音频信号对应的第二属性值和 第一速度值; 将所述第一属性值和第二属性值分别作为起点和终点, 按 照所述第一速度值播放所述动画对象; 音频结束动画播放模块, 用于当所述音频信号停止时, 如果所述播 放未结束, 则停止所述播放。 7、 根据权利要求 6所述的装置, 其特征在于, 所述装置还包括: 初始动画播放模块, 用于将预设的第三属性值和第四属性值分别作 为起点和终点, 按照预设的第二速度值循环播放动画对象; 所述音频开始动画播放模块还用于当检测到音频信号时, 控制初始 动画播放模块停止所述循环播放, 当所述音频信号停止时, 控制初始动 画播放模块继续进行所述循环播放。 8、根据权利要求 6所述的装置, 其特征在于, 所述音频开始动画播 放模块包括: 确定单元, 用于获取所述音频信号的振幅和频率, 在预设的振幅与 属性值的对应关系中, 确定所述音频信号的振幅对应的第二属性值, 并 且, 在预设的频率与速度值的对应关系中, 确定所述音频信号的频率对 应的第一速度值。 9、 根据权利要求 6所述的装置, 其特征在于, 所述装置还包括: 音频改变动画播放模块, 用于在所述音频信号停止之前, 如果所述 音频信号发生改变, 则停止所述动画对象当前正在进行的播放, 获取所 述音频信号改变时刻所述动画对象的第五属性值, 并确定所述音频信号 改变后对应的第六属性值和第三速度值, 将所述第五属性值和第六属性 值分别作为起点和终点, 按照所述第三速度值播放所述动画对象。 10、 根据权利要求 6所述的装置, 其特征在于, 所述装置还包括: 音频持续动画播放模块, 用于在所述音频开始动画播放模块按照所 述第二速度值重新播放所述动画对象之后, 如果所述动画对象当前正在 进行的播放结束且所述音频信号未停止, 则判断所述音频信号与所述当 前正在进行的播放结束时刻相比是否发生改变, 如果未发生改变, 则获 取所述结束时刻时所述动画对象的第七属性值, 根据所述第七属性值和 预设的调整值确定第八属性值, 将所述第七属性值和第八属性值分别作 为起点和终点, 按照预设的第四速度值循环播放所述动画对象, 直到所 述音频信号发生改变或停止。 11、 一种展示动画背景的方法, 其特征在于, 该方法包括: 构造动画层和应用层, 将应用层的属性设置为透明属性, 并设置应 用层的透明值; 将所述动画层和应用层进行叠加, 并将叠加后的动画层和应用层显 示在窗口上; 当检测到音频信号时,获取当前时刻动画对象的第一属性值,并且, 确定所述音频信号对应的第二属性值和第一速度值; 将所述第一属性值和第二属性值分别作为起点和终点, 按照所述第 一速度值在动画层上播放所述动画对象; 当所述音频信号停止时, 如果所述播放未结束, 则停止所述播放。 12、 一种展示动画背景的系统, 其特征在于, 该系统包括: 构造装置, 用于构造动画层和应用层, 将应用层的属性设置为透明 属性, 并设置应用层的透明值; 叠加显示装置, 用于将构造装置构造的动画层和应用层进行叠加, 并将叠加后的动画层和应用层显示在窗口上; 和 动画播放装置, 用于当检测到音频信号时, 获取当前时刻动画对象 的第一属性值, 并且, 确定所述音频信号对应的第二属性值和第一速度 值; 将所述第一属性值和第二属性值分别作为起点和终点, 按照所述第 一速度值在动画层上播放所述动画对象; 用于当所述音频信号停止时, 如果所述播放未结束, 则停止所述播放。 |
本发明涉及通讯技术领域, 特别涉及一种动画播放的方法和装置及 一种展示动画背景的方法和系统。 发明背景
网络即时通讯工具发展到今天, 已经被大多数的网民所接受, 成为 用户必不可少的软件工具。 网络即时通讯工具不但在平时的休闲娱乐 中, 而且在用户的工作中同样得到广泛的使用。 因此用户对即时通讯软 件的易用性、 稳定性、 安全性等方面提出了较高的要求。
在现有的 DVD, 或 Media Player等设备播放音频信号时, 柱状频谱 随音频信号的变化而发生变化。 但是, 上述随音频信号变化的仅为柱状 频谱,现有技术并未公开结合音频信号播放动 画对象的技术方案。此外。 在现有的 IM ( Instant Messenger, 即时通讯 )软件中, 为用户提供了如 换肤、 更换背景图片等个性化功能。 但是, 现有的窗口, 例如 IM软件 在展示主面板背景时, 通常使用的是纯色、 渐变色或者背景图片等等, 没有动画效果, 展示效果单调, 缺少用户互动。 发明内容
为了实现动画播放, 本发明实施例提供了一种动画播放的方法和装 置。 所述技术方案如下: 一种动画播放的方法, 所述方法包括:
当检测到音频信号时,获取当前时刻动画对象 的第一属性值,并且, 确定所述音频信号对应的第二属性值和第一速 度值;
将所述第一属性值和第二属性值分别作为起点 和终点, 按照所述第 一速度值播放所述动画对象;
当所述音频信号停止时, 如果所述播放未结束, 则停止所述播放。 一种动画播放的装置, 所述装置包括:
音频开始动画播放模块, 用于当检测到音频信号时, 获取当前时刻 动画对象的第一属性值, 并且, 确定所述音频信号对应的第二属性值和 第一速度值; 将所述第一属性值和第二属性值分别作为起点 和终点, 按 照所述第一速度值播放所述动画对象;
音频结束动画播放模块, 用于当所述音频信号停止时, 如果所述播 放未结束, 则停止所述播放。
一种展示动画背景的方法, 该方法包括:
构造动画层和应用层, 将应用层的属性设置为透明属性, 并设置应 用层的透明值;
将所述动画层和应用层进行叠加, 并将叠加后的动画层和应用层显 示在窗口上;
当检测到音频信号时,获取当前时刻动画对象 的第一属性值,并且, 确定所述音频信号对应的第二属性值和第一速 度值;
将所述第一属性值和第二属性值分别作为起点 和终点, 按照所述第 一速度值在动画层上播放所述动画对象;
当所述音频信号停止时, 如果所述播放未结束, 则停止所述播放。 一种展示动画背景的系统, 该系统包括:
构造装置, 用于构造动画层和应用层, 将应用层的属性设置为透明 属性, 并设置应用层的透明值;
叠加显示装置, 用于将构造装置构造的动画层和应用层进行叠 加, 并将叠加后的动画层和应用层显示在窗口上; 和
动画播放装置, 用于当检测到音频信号时, 获取当前时刻动画对象 的第一属性值, 并且, 确定所述音频信号对应的第二属性值和第一速 度 值; 将所述第一属性值和第二属性值分别作为起点 和终点, 按照所述第 一速度值在动画层上播放所述动画对象; 用于当所述音频信号停止时, 如果所述播放未结束, 则停止所述播放。
本发明实施例提供的上述技术方案, 通过检测音频信号以及结合音 频信号播放动画对象, 实现了动画播放, 达到了动画效果, 丰富了展示 效果。 当音频信号在用户的控制下改变时, 动画效果也会随之改变, 从 而加强了与用户之间的互动。 附图简要说明 为了更清楚地说明本发明实施例或现有技术中 的技术方案, 下面将 对实施例或现有技术描述中所需要使用的附图 作筒单地介绍, 显而易见 地, 下面描述中的附图仅仅是本发明的一些实施例 , 对于本领域普通技 术人员来讲, 在不付出创造性劳动性的前提下, 还可以根据这些附图获 得其他的附图。
图 1是本发明实施例 1提供的动画播放的方法流程图;
图 2是本发明实施例 2提供的动画播放的方法流程图;
图 3是本发明实施例 3提供的动画播放的装置一结构图;
图 4是本发明实施例 3提供的动画播放的装置又一结构图; 图 5是本发明实施例提供的速度值与属性值的关 示意图; 图 6为本发明实施例 4提供的一种展示动画背景的方法; 图 7为本发明实施例 5公开的一种展示动画背景的系统。 实施本发明的方式
为使本发明的目的、 技术方案和优点更加清楚, 下面将结合附图对 本发明实施方式作进一步地详细描述。
实施例 1
参见图 1 , 本实施例提供了一种动画播放的方法, 包括:
101 : 当检测到音频信号时, 获取当前时刻动画对象的第一属性值, 并且, 确定音频信号对应的第二属性值和第一速度值 ;
102: 将第一属性值和第二属性值分别作为起点和终 点, 按照第一
103: 当音频信号停止时, 如果该播放未结束, 则停止该播放。 本实施例中的动画对象是指动画播放中的单元 , 它有多种形式, 可 以是图片, 如动画播放时使用图片控件 (Image ) 来加载图片并改变图 片的位置、 颜色或对图片大小进行缩放等, 从而实现动画播放, 还可以 是路径描述(Paths ), 即使用直线和 /或曲线所构成的一段闭合或者开放 的曲线段, 绘制出一系列相互连接的直线和曲线从而形成 路径, 在该路 径所构成的形状内, 填充不同的颜色从而实现动画播放。 当然, 动画对 象也可以采用其它形式, 本发明实施例对此不做具体限定。
本实施例中动画对象的播放是指动画对象以固 定的速度, 在任一对 起点和终点之间按照属性值进行变换, 该变换是指以时间为横轴, 属性 值为纵轴, 从起点属性值到终点属性值的变换, 该变换所用的时间即反 映了动画播放的速度。 而且, 对于任一种类型的属性值, 该变换可以为 线性变换、正弦变换或抛物线变换等等, 当然也可以采用其它变换形式, 本发明实施例对此不做具体限定。 下面举例说明上述三种变换, 具体地, 可以由下面的公式来表示上 述各种变换。 其中, 令 TO表示起点对应的动画开始时间, TM表示终点 对应的动画结束时间, V0为起点对应的动画属性值, VM表示终点对应 的动画属性值, t表示 TO和 TM之间的某个时间, V表示 t时刻对应的 动画属性值, 根据如下变换公式可以得到某个时间点 t对应的属性值 V。
1 ) 线性变换的公式如下:
V = (VM-VO) I (TM-TO) (t-TO) + V0;
2 )正弦变换的公式如下:
V = (VM-VO)x Sin(7i/2 x(t-T0)/(TM-T0)) + V0;
3 )抛物线变换的公式如下:
V = (t-TO) (t-TO) (VM-V0)/((TM-T0) (TM-T0))+V0。
本实施例中, 在检测到音频信号之前, 动画对象可以为静止状态, 也可以为播放状态。 当为播放状态时, 可以具体如下:
将预设的第三属性值和第四属性值分别作为起 点和终点, 按照预设 的第二速度值循环播放动画对象; 相应地, 当检测到音频信号时, 进一 步还包括: 停止该循环播放; 当音频信号停止时, 进一步还包括: 继续 进行该循环播放。
本实施例中的循环播放是指在起点和终点之间 的播放不是一次, 而 是在该起点和终点之间重复播放, 播放的内容相同, 只是播放次数为多 次, 且为第一次播放的筒单重复。 本实施例 102中的播放是针对音频信 号从无到有而做的一次性播放, 不会重复进行, 该播放在播放完成时结 束, 或者在音频信号停止时结束。
本实施例中, 当音频信号停止时, 动画对象会回到初始状态, 如果 初始时为静止状态, 则回到静止状态, 如果初始时为播放状态, 则回到 该初始播放 ^大态。 本实施例中, 动画对象的属性值是指能够反映动画对象特征 的参 数, 有多种形式, 本发明实施例对此不做具体限定。 其中, 动画对象的 任一属性值可以为动画对象的旋转角度、 平移距离、 大小和颜色中的至 少一个, 该颜色可以为填充颜色、 线条颜色或者字体颜色等等。 当动画 对象的属性值为动画对象的大小时, 可以用两种方式来表示, 一种是用 动画对象的缩放比例来表示, 如 110%表示对动画对象进行放大, 90% 表示对动画对象进行缩小; 另一种是用动画对象的长度和宽度来表示, 或者用动画对象的各个顶点的坐标值来表示等 等, 这种情况下, 通常先 将表示动画对象大小的数值转换为缩放比例, 然后再利用现有的缩放方 法来实现动画的播放。
下面举例说明动画对象的属性值可以为一个数 值, 或者为多个数值 的组合。 例如, 动画对象为竹子图片, 属性值为竹子旋转的角度, 或者 为竹子平移的距离, 或者既包括竹子旋转的角度又包括竹子平移的 距离 等等。 再如, 动画对象为路径构成的圓形, 属性值为圓形的填充颜色、 或者为圓形的平移距离, 或者既包括填充颜色又包括平移距离等等, 其 中,该圓形可以为一个也可以为多个,本发明 实施例对此不做具体限定。
本实施例中动画对象的速度值是指动画对象由 起点的属性值变换 到终点的属性值所用的时间, 因此, 可以用时间值来表示。 例如, 竹子 在起点的角度为 0° , 在终点的角度为 5° , 竹子由 0° 变换至 5° 所用 的时间为 2500ms, 则对应的速度值可以表示为 2500ms。
本实施例中的音频信号是指系统输出的音频信 号, 该音频信号可以 是用户使用麦克风发出且经系统输出的音频信 号, 还可以是系统自身产 生的音频信号, 如使用播放器播放音乐产生的音频信号等, 当然也可以 为其它形式的音频信号, 本发明实施例对此不做具体限定。 检测音频信 号采用现有的手段就可以实现, 因此, 本发明实施例不做过多说明。 本实施例中, 会预先设置音频信号与属性值及速度值的对应 关系,
101 中确定音频信号对应的第二属性值和第一速度 值, 可以具体地根据 该对应关系来找到与音频信号对应的第二属性 值和第一速度值。
本实施例提供的上述方法应用于终端中, 该终端通常为客户端, 具 体形式有多种, 如可以为计算机、 笔记本电脑、 掌上电脑等等, 本发明 实施例对此不做具体限定。 本实施例中的动画对象可以为任一种应用软 件中的动画对象, 本发明实施例对此不做具体限定, 通常为应用软件主 面板的背景中的动画对象,如 IM软件主面板的背景中的动画对象等等。 对于任一种应用软件来说, 其背景中可以包含一个或多个动画对象, 通 常都包含多个动画对象, 本发明实施例对此不做具体限定。 例如, IM软 件的主面板的背景为竹子图片, 其中, 包括 5个竹子, 每个竹子是一个 动画对象, 则该竹子图片中有 5个动画对象。 另外, 上述终端还可以给 用户提供按钮, 供用户选择是否更改背景, 以及选择一个具体的背景等 等, 如提供画笔按钮, 用户点击该按钮后可以展示出背景选择工具栏 , 在该工具栏中提供多个图标, 用户点击或鼠标停留其中的某个图标后按 照该图标对应的背景进行切换和展示等等, 此处不做过多说明。
本实施例提供的上述方法, 通过检测音频信号以及结合音频信号播 放动画对象, 实现了动画播放, 达到了动画效果, 丰富了展示效果, 而 且,通过音频信号可以控制动画的展示效果, 加强了与用户之间的互动。
值得一提的是, 本发明的所有实施例都是以一个动画对象为例 进行 说明的, 当需要同时播放多个动画对象时, 对于其中的任一个动画对象 都可以按照本发明实施例中的流程来执行动画 播放, 不同的动画对象其 播放的流程是相同的, 区别仅在于动画对象不同, 因此, 对于多个动画 对象的播放过程本发明实施例不做过多说明。 实施例 2
参见图 2, 本实施例提供了一种动画播放的方法, 以动画对象初始 时为播放状态为例进行说明, 包括:
201 : 将预设的第三属性值和第四属性值分别作为起 点和终点, 按 照预设的第二速度值循环播放动画对象。
其中, 预设的第三属性值和第四属性值为初始时的属 性值, 按照该 初始时的属性值循环播放动画对象。 例如, 动画对象为竹子图片, 预设 其初始时的动画起点为角度 0° , 终点为角度 5° , 如表 1所示。
表 1
表 1中的时间值就是动画对象的速度值, 角度就是动画对象的属性 值。 按照表 1播放竹子图片后, 竹子在 0° 和 5° 范围内进行摇摆, 一 个动画周期为 5000ms, 在视觉上表现为竹子随风飘动的动画效果。
具体地, 可以采用现有的旋转( RotateTransform )方法来实现旋转 的动画, 该旋转方法可以实现在二维坐标系内围绕预设 的指定点按照顺 时针或逆时针方向旋转对象, 其输入参数为二维的旋转角度, 通常角度 值为正代表顺时针旋转, 角度值为负代表逆时针旋转。 其它的动画也可 以采用现有的方法来实现, 如采用缩放(ScaleTransform )方法来实现缩 放的动画, 在二维坐标系内缩放对象, 其输入参数为缩放比例; 或者, 采用平移 ( TranslateTransform ) 方法来实现平移的动画, 在二维坐标系 内平移对象, 其输入参数为平移距离, 等等, 本发明实施例不做过多说 明。 202: 当检测到音频信号时, 停止循环播放, 获取循环播放停止时 刻时动画对象的第一属性值, 并获取音频信号的振幅和频率。
本实施例中, 音频信号的振幅代表音量, 就是声音的大小, 单位是 分贝, 振幅越大代表音量越大, 振幅越小代表音量越小。 音频信号的频 率代表音调,就是声音的高低,单位是赫兹 Hz,频率越高代表音调越高, 频率越低代表音调越低。 通常, 人耳听觉范围为 20 ~ 20000Hz。
203 : 在预设的振幅与属性值的对应关系中, 确定上述音频信号的 振幅对应的第二属性值, 并且, 在预设的频率与速度值的对应关系中, 确定上述音频信号的频率对应的第一速度值。
在本实施例中, 预设的振幅与属性值的对应关系可以为一个振 幅值 对应一个属性值,优选地, 采用一个振幅范围对应一个属性值, 具体地, 可以把振幅分为多个区段, 每个区段对应一个具体的属性值。 例如, 将 振幅分为 0~20分贝, 20~50分贝, 50~70分贝, 分别对应属性值为 0° , 5° 和 10。 。 类似地, 预设的频率与速度值的对应关系可以为一个频 率 值对应一个速度值, 也可以为一个频率范围对应一个速度值, 具体地, 可以把频率分为多个区段, 每个区段对应一个速度值。 例如, 将频率分 为 20~100Hz, 100~500Hz, 500~800Hz, 分别对应速度值为 2500ms, 5000ms, 7000ms 等等。 进一步地, 可以将预设的振幅与属性值的对应 关系, 以及预设的频率与速度值的对应关系, 存储在数据库中, 以方便 查询。
204: 将得到的第一属性值和第二属性值分别作为起 点和终点, 按 照第一速度值重新播放上述动画对象。
通常, 音频信号可以由用户来控制, 随着音频信号的变化动画对象 的形态也随之改变, 用户通过控制音频信号可以达到控制动画的展 示效 果。 例如, 在竹子动画中, 音频信号的振幅越大, 叶子的摇摆幅度越大, 音频信号的振幅越小, 叶子的摇摆幅度越小, 音频信号的频率越高, 叶 子的摇摆速度越快, 音频信号的频率越低, 叶子的摇摆速度越慢。
在本实施例中, 当前播放的动画停止时, 该时刻动画对象对应的属 性值, 不会回到初始值, 即动画开始时候的值, 而是保持当前值。 如在 1000ms内, 角度由 0。 线性变换到 1。 , 如果在 700ms时动画停止, 则 动画对象的值是当前值 0.7。 , 而不是初始值 0。 。
下面仍以表 1中的描述为例继续说明, 当检测到音频信号后, 停止 当前进行的循环播放, 获取该停止时刻时动画对象的第一属性值为角 度 2° , 并且, 确定该音频信号的振幅对应的第二属性值为角 度 10° , 频 率对应的第一速度值为 2000ms, 则按照表 2重新播放该动画对象。
表 2
其中, 角度 2。 是上次动画播放停止时的属性值, 即第一属性值, 并且作为本次播放的起点属性值,角度 10° 为根据音频信号确定的本次 播放终点的属性值, 速度值 2000ms为动画对象从 2。 变换到 10° 所用 的时间值。 表 2对应的播放为一次性播放, 在视觉上表现为叶子在声音 的影响下摇摆的角度有所上扬, 向上飘动了一定的角度。
205: 当上述音频信号停止时, 判断上述重新播放是否结束, 如果 结束, 则执行 206; 否则, 执行 207。
206: 继续进行上述循环播放, 流程结束。
207: 停止该重新播放并继续进行上述循环播放, 流程结束。
其中, 206和 207中的继续进行上述循环播放是指, 先将动画回归 到初始时的位置, 然后继续进行 201中描述的循环播放。
本实施例中, 在 204之后进一步还可以包括:
在音频信号停止之前, 如果该音频信号发生改变, 则停止该动画对 象当前正在进行的播放, 获取该音频信号改变时刻时该动画对象的第五 属性值, 并确定音频信号改变后对应的第六属性值和第 三速度值, 将第 五属性值和第六属性值分别作为起点和终点, 按照第三速度值播放该动 画对象, 该播放是一次性播放, 播放完成即停止。
在本实施例中, 在音频信号停止之前, 可能会出现音频信号发生多 次改变的情况,此时,上述音频信号改变之后 的播放过程可以重复多次, 即音频信号每改变一次, 均进行该流程进行播放, 该流程原理相同, 而 其中涉及的两个属性值和一个速度值可以不同 , 此处不做过多说明。
本实施例中, 对音频信号的检测是周期性的检测, 可以预先设置一 个时间值作为检测周期, 则每当该周期时间值到达时, 检测音频信号是 否存在或者发生改变。 例如, 预设周期为 50ms, 每隔 50ms对音频信号 检测一次, 如果检测到当前时刻的音频信号与上一次检测 时的音频信号 发生了改变, 则按照改变后的音频信号进行一次性动画播放 。 其中, 检 测周期的时间值可以根据需要进行设置及修改 , 如设置为 60ms 或者 100ms等等, 本发明实施例对此不做具体限定。
例如, 在表 2所示的动画播放开始后, 又过了 1500ms, 此时角度 =8。 , 并且此时检测到音频信号与上一次检测时刻相 比发生了改变, 对 应的角度 =15。 , 速度 =1000ms, 则停止表 2所示的动画播放, 按照表 3 所示进行动画播放。
表 3
时间 (单位为毫 角度(单位为度) 秒)
0 (初始化 ) 8 (上次的值)
1000 15
其中, 角度 8。 是上次动画播放停止时的属性值, 即第五属性值, 并且作为本次播放的起点属性值,角度 15° 为根据音频信号确定的本次 播放终点的属性值, 即第六属性值,速度值 1000ms为动画对象从 8° 变 换到 15。 所用的时间值,即第三速度值。表 3对应的播放为一次性播放, 在视觉上表现为叶子在声音的影响下摇摆的角 度继续上扬, 又向上飘动 了一定的角度。
本实施例中, 在 204之后进一步还可以包括:
如果动画对象当前正在进行的播放结束且音频 信号未停止, 则判断 该音频信号与当前正在进行的播放结束时刻相 比是否发生改变; 如果未 发生改变, 则获取结束时刻时该动画对象的第七属性值, 根据第七属性 值和预设的调整值确定出第八属性值, 将第七属性值和第八属性值分别 作为起点和终点, 按照预设的第四速度值循环播放该动画对象, 直到该 音频信号发生改变或停止为止。 其中, 预设的调整值是指动画对象属性 的调整值,该调整值可以为增量调整值,也可 以为减量调整值,如为 +3 , 或者为 -3等等, 该调整值的具体数值可以为任意值, 而且, 根据需要还 可以随时修改, 本发明实施例对此不做具体限定。 第八属性值是在第七 属性值的基础上加上该调整值得到的。
例如, 在表 3所示的动画播放开始后, 又过了 1000ms, 表 3的动画 播放结束, 但是音频信号未停止而且没有发生改变, 其振幅和频率值均 未改变, 则获取表 3动画停止时刻动画对象的第七属性值为 15。 , 如果 预设的调整值为 +2, 则可以将第七属性值与调整值相加得到第八属 性值 为 17。 , 按照表 4所示开始循环播放动画。 表 4
其中, 15。 为表 3动画停止时的属性值, 作为本次动画的起点属性 值, 17。 为计算得到的本次动画的终点属性值。 预设的第四速度值为 5ms, 动画对象从 15。 变换到 17。 需用 5ms时间, 该变换周期为 10ms, 由起点至终点为 5ms , 由终点回到起点为 5ms。 按照表 4循环播放动画 后, 叶子在一定角度内来回摇摆, 在视觉上表现为抖动, 如竹叶被风吹 到极限时的抖动。从表 1到表 4的过程,相当于, 竹子在声音的影响下, 摇摆到达最大值, 此时相同振幅和频率的声音在持续, 因此表现为叶子 在抖动, 该抖动持续到音频信号发生改变或停止为止。
本实施例中, 当音频信号停止时, 音频信号的振幅和频率均变为 0, 此时会将动画对象回归到初始时的位置, 然后继续进行 201中的循环播 放。 例如, 当表 4中的动画播放结束后, 在某一时刻, 音频信号停止, 此时, 可以按照表 5所示进行动画播放。
表 5
其中, 表 5中的上次的值为表 4中的动画播放结束时刻对应的属性 值, 0。 为动画回归到初始时的属性值, 按照表 5 所示进行动画播放, 在视觉上表现为音频信号停止了, 竹子归位到初始位置, 对应的速度值 可以预先设置, 如表 5中设置为 2500ms。
本实施例中的动画对象在任一对起点和终点之 间的变换可以为线 性变换、 正弦变换或抛物线变换, 具体同实施例 1中的描述, 此处不再 赘述。 本实施例中的动画对象的任一属性值可以为动 画对象的旋转角 度、 平移距离、 大小和颜色中的至少一个, 具体同实施例 1中的描述, 此处不再赘述。
本实施例是以属性值为角度举例进行描述的, 当属性值为其它值 时, 如颜色、 平移距离等等, 上述方法的流程类似, 区别仅在于将角度 替换为其它属性, 其余内容均相同, 整体流程不变, 因此, 不做过多说 明。
本实施例提供的上述方法是以动画对象在初始 时是循环播放状态 为例进行说明的, 当动画对象在初始时为静止状态时, 上述方法同样适 用, 区别仅在于初始时由循环播放状态替换为静止 状态, 动画对象回归 到初始状态时为回归到静止状态, 其余的流程均相同, 因此, 此处不再 赘述。
本实施例提供的上述方法, 通过检测音频信号以及结合音频信号播 放动画对象, 实现了动画播放, 达到了动画效果, 丰富了展示效果。 而 且该音频信号通常可以由用户来控制, 随着音频信号的变化动画对象的 形态也随之改变, 用户通过控制音频信号可以达到控制动画的展 示效 果, 实现了互动, 极大地提升了用户的体验, 可以极大地满足用户的个 性化需求。 如用户使用麦克风发出声音, 相应地可以在动画播放中看到 与声音相关的动画效果, 加强了与用户的互动。
实施例 3
参见图 3 , 本实施例提供了一种动画播放的装置, 包括:
音频开始动画播放模块 301 , 用于当检测到音频信号时, 获取当前 时刻动画对象的第一属性值, 并且, 确定音频信号对应的第二属性值和 第一速度值; 将第一属性值和第二属性值分别作为起点和终 点, 按照第 一速度值播放动画对象;
音频结束动画播放模块 302 , 用于当音频信号停止时, 如果上述播 放未结束, 则停止该播放。
本实施例中, 上述装置还可以包括:
初始动画播放模块 303 , 用于将预设的第三属性值和第四属性值分 别作为起点和终点,按照预设的第二速度值循 环播放动画对象;相应地, 音频开始动画播放模块 301还用于当检测到音频信号时, 控制初始动画 播放模块 303停止该循环播放, 当音频信号停止时, 控制初始动画播放 模块 303继续进行该循环播放。
当然, 本实施例中在检测到音频信号之前, 动画对象也可以处于静 止状态, 具体同方法实施例中的描述, 此处不再赘述。
本实施例中, 音频开始动画播放模块 301可以包括:
确定单元, 用于获取音频信号的振幅和频率, 在预设的振幅与属性 值的对应关系中, 确定音频信号的振幅对应的第二属性值, 并且, 在预 设的频率与速度值的对应关系中, 确定音频信号的频率对应的第一速度 值。
参见图 4, 本实施例中, 上述装置还可以包括:
音频改变动画播放模块 304, 用于在音频信号停止之前, 如果音频 信号发生改变, 则停止动画对象当前正在进行的播放, 获取音频信号改 变时刻动画对象的第五属性值, 并确定音频信号改变后对应的第六属性 值和第三速度值, 将第五属性值和第六属性值分别作为起点和终 点, 按 照第三速度值播放动画对象。
本实施例中, 上述装置还可以包括: 音频持续动画播放模块 305 , 用于在音频开始动画播放模块 302按 照第二速度值重新播放动画对象之后, 如果动画对象当前正在进行的播 放结束且音频信号未停止, 则判断音频信号与当前正在进行的播放结束 时刻相比是否发生改变, 如果未发生改变, 则获取该结束时刻时动画对 象的第七属性值, 根据第七属性值和预设的调整值确定第八属性 值, 将 第七属性值和第八属性值分别作为起点和终点 , 按照预设的第四速度值 循环播放动画对象, 直到音频信号发生改变或停止为止。
本实施例中, 动画对象在任一对起点和终点之间的变换为线 性变 换、 正弦变换或抛物线变换; 动画对象的任一属性值为动画对象的旋转 角度、 平移距离、 大小和颜色中的至少一个, 具体与方法实施例中的描 述相同, 此处不再赘述。
本实施例提供的上述装置, 具体可以是终端, 与方法实施例属于同 一构思, 在该装置中可以执行上述方法实施例中的任一 方法, 其具体过 程详见方法实施例中的描述, 这里不再赘述。
本实施例提供的上述装置, 通过检测音频信号以及结合音频信号播 放动画对象, 实现了动画播放, 达到了动画效果, 丰富了展示效果。 而 且该音频信号通常可以由用户来控制, 随着音频信号的变化动画对象的 形态也随之改变, 用户通过控制音频信号可以达到控制动画的展 示效 果, 实现了互动, 极大地提升了用户的体验, 可以极大地满足用户的个 性化需求。 如用户使用麦克风发出声音, 相应地可以在动画播放中看到 与声音相关的动画效果, 加强了与用户的互动。
下面以实施例 2中的竹子动画为例, 结合图来说明表 1至表 5的变 换过程。 参见图 5 , 为实施例 2中竹子动画按照表 1至表 5进行动画播 放的过程中速度值与属性值的关系图。 其中, 速度值为横坐标, 用时间 来表示, 单位是 ms, 属性值是纵坐标, 以角度表示, 单位是度。 图中的 SI表示按照表 1进行初始时的循环播放, 叶子随风摇摆, 对应的时间段 为 0~6000ms; S2表示检测到音频信号后按照表 2进行播放, 叶子在声 音的影响下向上飘动了一定的角度, 对应的时间段为 6000ms~7500ms, 角度由 2。 变换到 8。 ; S3表示音频信号改变后按照表 3进行播放, 叶 子继续向上飘动, 对应的时间段为 7500ms~8500ms, 角度由 8° 变换到 15。 ; S4表示当前动画播放停止但音频信号仍在持续 未发生改变, 则 按照表 4进行循环播放, 叶子飘动到最高处持续随风抖动; 之后的某一 时刻音频信号停止了, 则按照表 5进行播放, 图中所示为 S5 , 然后再按 照表 1 循环播放(图中未画出)。 根据该关系图可以看出, 动画播放在 音频信号的影响下随之改变, 极大地增强了动画效果, 而且, 用户可以 通过控制音频信号来改变动画效果, 从而加强了与用户的互动, 可以极 大地满足用户的个性化需求。
参见图 6, 图 6为本发明实施例 4提供的一种展示动画背景的方法。 该方法包括如下步骤:
步骤 601 : 构造动画层和应用层, 将应用层的属性设置为透明属性, 并设置应用层的透明值。
根据现有的方法构造动画层和应用层。 应用层是除动画层以外的其 他层, 包括应用控件和图片等内容。 根据实际需要, 可以将透明值设置 为 0~100之间的任意值。 其中, 0代表完全透明, 100代表完全不透明。
步骤 602: 将动画层和应用层进行叠加, 并将叠加后的动画层和应 用层显示在窗口上。
实际应用中, 可以进行设置, 使得动画层的大小和应用层的背景的 大小相等, 动画层的位置和应用层的背景的位置相同。 在本发明实施例 中, 可以将动画层叠加在应用层的上面, 也可以将动画层叠加在应用层 的下面。 步骤 603: 在动画层上播放动画。
在本发明实施例中, 根据上述实施例所公开的动画播放方法在动画 层上播放动画。 为了筒洁, 此处不再赘述具体动画播放方法。 上述窗口 可以是 IM软件中的主面板或即时聊天窗口等。
参见图 7, 图 7为本发明实施例 5公开的一种展示动画背景的系统。 该系统包括: 构造装置 701、 叠加显示装置 702和动画播放装置 703。
其中, 构造装置 701 , 用于构造动画层和应用层, 将应用层属性设 置为透明属性, 并设置应用层的透明值。
叠加显示装置, 用于将构造装置构造的动画层和应用层进行叠 加, 并将并将叠加后的动画层和应用层显示在窗口 上。
动画播放装置, 用于在动画层上播放动画。 具体播放动画的方案与 前述实施例 3中动画播放装置播放动画的方案相同, 此处就不再赘述。
通过本法明实施例 4和 5提供的展示动画背景的系统和方法, 在窗 口, 例如 IM软件的主面板或聊天窗口, 中构造动画层, 并结合音频信 号在动画层播放动画对象, 因此可以解决展示效果单调的问题, 达到丰 富背景展示, 美化窗口的效果。
最后需要说明的是, 本领域普通技术人员可以理解实现上述实施例 方法中的全部或部分流程, 是可以通过计算机程序来指令相关的硬件来 完成, 所述的程序可存储于一计算机可读取存储介质 中, 该程序在执行 时, 可包括如上述各方法的实施例的流程。 其中, 所述的存储介质可为 磁碟、 光盘、 只读存储记忆体(ROM )或随机存储记忆体(RAM )等。
本发明实施例中的各功能单元可以集成在一个 处理模块中, 也可以 是各个单元单独物理存在, 也可以两个或两个以上单元集成在一个模块 中。 上述集成的模块既可以采用硬件的形式实现, 也可以采用软件功能 模块的形式实现。 所述集成的模块如果以软件功能模块的形式实 现并作 为独立的产品销售或使用时, 也可以存储在一个计算机可读取存储介质 中。 上述提到的存储介质可以是只读存储器, 磁盘或光盘等。 上述的各 装置或系统, 可以执行相应方法实施例中的方法。
以上所述仅为本发明的较佳实施例, 并不用以限制本发明, 凡在本 发明的精神和原则之内, 所作的任何修改、 等同替换、 改进等, 均应包 含在本发明的保护范围之内。
Next Patent: INK CARTRIDGE ON INKJET PRINTER
