基于语音输入的表情曲线生成方法
【技术领域】
[0001] 本发明涉及一种表情曲线生成方法,尤其涉及一种基于语音输入的表情曲线生成 方法。
【背景技术】
[0002] 近年来,随着即时通信系统的普及推广,例如QQ、微信、MSN等应用已经逐渐被大 部分用户所接受。用户在使用这些应用时,为了增加输入内容的趣味性,往往需要在应用中 输入一些表情,表达特殊含义,丰富输入内容。在其他一些应用中,根据表达习惯,用户有时 也希望能够输入一些表情,让输入的内容更加丰富。
[0003] 现有技术中当需要输入表情时,即时通信系统通常为用户提供表情选择界面,并 接收用户从表情选择界面中选择的表情,然后输出该表情。当表情选择界面中包含较多表 情时,需要分页显示表情选择界面,并接收用户的翻页指令,操作比较复杂。上述表情输入 方式,用户在选择表情的过程中,需要辨别多个表情,以便选择最能准确表达意思的表情; 当部分表情难以辨别其确切含义时,尤其是一些含义近似的表情,只能通过辅助或提示的 方式,用户才能获知表情是否能够准确表达意思。因此,现有表情输入方式在较大程度上依 赖于用户进行人为识别和选择,在表情输入的准确性上差强人意。
[0004] 而且,现有表情输入方法中,用户单次只能选择一个表情输入,然而,单个表情的 输出有时并不能尽兴表达出用户的喜怒哀乐;当需要同时输出多个表情时,一般需要用户 进行多次选择,用户需要重复多次翻页动作才能实现。这种表情输入方式较为机械、枯燥, 减少了用户输入过程的趣味性。
[0005] 此外,现有技术中存在根据用户输入词语显示对应表情的技术,例如中国专利 ZL200710179718. 1中公开的表情输入方法,这种表情输入技术相较于直接从众多表情中进 行选择,具有一定针对性,但同样存在输入趣味性不足的缺点。并且,上述两种表情输入方 式,在同时输出多个表情时,都仅能进行简单的线性显示,趣味性弱。
【发明内容】
[0006] 本发明所要解决的技术问题在于提供一种基于语音输入的表情曲线生成方法。
[0007] 为了实现上述发明目的,本发明采用下述技术方案:
[0008] -种基于语音输入的表情曲线生成方法,包括如下步骤:
[0009] (1)输入语音生成音频文件;
[0010] (2)从多个表情图钮中选择一类表情对应的表情图钮,单个表情图钮对应于一组 或多组表情图标,并且每组表情图标中分别包括多个对应于不同音量等级的表情图标;
[0011] (3)将音频文件根据时长分为多个等长的时间段,分别计算每个时间段的对应音 量;
[0012] (4)将音频文件中不同时间段的对应音量量化为不同音量等级;
[0013] (5)从步骤(2)选择的表情图钮所对应的同一组表情图标中获取每一个时间段的 音量等级所对应的表情图标,生成以时间为横轴,以音量等级为纵轴的表情曲线,其中,在 每个时间段所对应的音量等级的位置,显示该音量等级所对应的表情图标;
[0014] (6)显示步骤(5)所形成的表情曲线。
[0015] 其中较优地,所述步骤(3)中将音频文件划分为N个等长的时间段,每个时间段包 括m帧音频数据,计算N个时间段所对应的音量的过程包括如下步骤:
[0016] (31)判断是否存有N个时间段所对应的最大PCM值,如果是,进入步骤(4),如果 否,执行步骤(32);
[0017] (32)读下一帧音频数据,并将本帧音频数据转换为PCM码;
[0018] (33)比较这组PCM码的绝对值,找出其最大值并存取此值;
[0019] (34)判断本时间段m帧音频数据对应的m个PCM值是否都已经获取并保存,如果 是,进入步骤(35);如果否,返回步骤(32);
[0020] (35)比较m个PCM值,并找出其最大值,将此值作为该时间段内的音量大小,然后 返回步骤(31)。
[0021] 其中较优地,在步骤(4)中,将m个PCM值量化为四个音量等级:很高分贝、高分 贝、中分贝和低分贝,包括如下步骤:
[0022] (41)选取最小PCM值作为低分贝的下限(nl),并选取最大PCM值作为很高分贝的 上限(n5);
[0023] (42)计算相邻两个等级的分贝差:d=(最大PCM值一最小PCM值)/4,并计算 四个等级对应分贝的分界值m2 =最小PCM值+d ;n3 =最小PCM值+2d ;n4 =最小PCM值 +3d ;
[0024] (43)以nl、n2、n3、n4、n5从下到上构建五条平行线,并分别判断每个时间段所对 应的PCM值对应落入哪个分贝区间,从而判断m个PCM值所对应的音量等级。
[0025] 其中较优地,在步骤(6)中,还可以包括步骤(60):为每个表情获取其音量等级所 对应的单音声调,在显示表情曲线的同时,依次对多个表情图标对应的单音声调进行逐个 响音。音量等级所对应的单音音调由程序预先设定。
[0026] 其中较优地,在步骤(60)中,每组表情图标中包括对应于四个音量等级的表情图 标,分别与汉语拼音中的四个声调配对。
[0027] 其中较优地,在所述步骤(1)中,用户通过触摸录音图钮,录制简短语音生成音频 文件,音频文件的存储类型是AMR或G. 711等通用的音频文件格式。
[0028] 其中较优地,在所述步骤(2)中,供用户选择的多个表情图钮分别是对应于"喜"、 "怒"、"哀"、"爱"、"惧"、"恶"、"恨"七种情绪的表情图钮。
[0029] 本发明所提供的表情曲线生成方法,可以基于语音输入一次性形成由表示同一类 情绪的多个表情图标组成的高低起伏的表情曲线,相对于现有即时通信系统中使用的表情 输入方式,输入效率更高,并且可以更形象、准确地表达出用户丰富的情感。
【附图说明】
[0030] 图1是从语音输入自动生成的表情曲线图的示例;
[0031] 图2是用于实现表情曲线生成方法的应用界面的示例;
[0032] 图3是从音频文件生成表情曲线的流程图;
[0033] 图4是将10个PCM值量化为四个相对等级的原理性示意图;
[0034] 图5是一组表情图标及其音量等级对应的单音声调的示例;
[0035] 图6是嵌入对应单音声调的表情曲线的示例。
【具体实施方式】
[0036] 下面结合附图和具体实施例对本发明的技术内容做进一步的详细说明。
[0037] 本发明所提供的基于语音输入的表情曲线生成方法,用于在客户端一次性形成如 图1所示的由多个表情图标组成的高低起伏的表情曲线,其中,多个表情图标用于表达同 一种情绪,不同的表情图标对应于语音中不同音量的大小,从而可以更丰富地表达用户的 情感起伏。这种表情输入方式相对于仅输入单个表情图标,情感丰富;相对于逐个输入多个 表情图标的输入方式,更有效率,并且准确性高,用户输入体验好。这种基于语音输入生成 的表情曲线,相对于用户逐个输入表情图标形成的多个表情图标的排列,更贴合用户的表 达习惯。
[0038] 具体来说,本发明提供的表情曲线生成方法包括如下步骤:(1)输入语音生成音 频文件;(2)从多个表情图钮中选择一类表情对应的表情图钮,单个表情图钮对应于一组 或多组表情图标,并且每组表情图标中分别包括多个对应于不同音量等级的