一种基于云技术的网络演唱平台的构建方法

文档序号:6633982阅读:329来源:国知局
一种基于云技术的网络演唱平台的构建方法
【专利摘要】一种基于云技术的网络演唱平台的构建方法,可以为广大音乐爱好者提供一个网络演唱平台,该平台基于云技术,采用HDFS分布式文件系统有效地存储和管理海量音乐资源,具有数据访问吞吐量高、透明性好以及容错性高的特点;采用MapReduce模型可靠地处理PB级数据,具有自动并行化、负载均衡以及伸缩性好的特点;采用FMS流媒体服务器与RTMP传输协议结合的方式进行流媒体传输,可以很好地解决传输延迟问题,保证演唱系统的实时性;采用虚拟现实技术进行环境背景的展现,让用户有身临其境的视听感受。平台还提供了选歌、演唱、评分、演唱录音保存、录音上传与分享等功能,提供了一套完整的网络演唱平台的构建方法。
【专利说明】一种基于云技术的网络演唱平台的构建方法

【技术领域】
[0001] 本发明涉及网络演唱平台的构建方法。具体涉及一种基于云技术的网络演唱平台 的构建方法。

【背景技术】
[0002] 目前,演唱是人们休闲娱乐非常重要的一种方式,也是线下社交中的保留节目。把 人们线下的真实需求转化成产品,在线上提供服务是互联网应用的一贯做法,因此,网络演 唱应运而生。建立在计算机网络通信基础上的网络演唱,凭借其自身方便、低成本和互动性 强等特点,日益受到人们的关注和认同。目前在我国,互联网上提供演唱服务主要通过两种 模式:一种是基于客户端应用,一种是基于Web的。目前的网络演唱平台基本上是基于传统 的客户端/服务器结构,或者是基于P2P结构。传统的客户端/服务器结构存储和处理数 据的能力有限,不能很好地胜任PB级数据的存储和管理工作。P2P结构在网络传输过程中 会产生延迟,保证不了演唱系统的实时性。由于网络演唱过程中每一首歌都需要同时存储 和管理这首歌曲的音乐伴奏数据、原唱数据、用户演唱数据以及歌词等数据,所以需要存储 的数据量非常大,最多可达PB级,普通的数据存储结构不能够很好的解决这个问题,容易 出现访问效率低、I/O瓶颈以及系统的安全性、可靠性问题以及存在演唱体验差的问题。


【发明内容】

[0003] 本发明为了解决现有网络演唱系统存储和处理数据的能力有限,在网络传输过程 中会产生延迟,保证不了演唱系统的实时性,演唱体验差,容易出现访问效率低、I/O瓶颈以 及系统的安全性、可靠性的问题,提供了一种基于云技术的网络演唱平台的构建方法,解决 该问题的具体技术方案如下:
[0004] 本发明的一种基于云技术的网络演唱平台的构建方法的步骤如下:
[0005] 第一步、网络演唱平台的架构设计,基于云存储技术,采用HDFS分布式文件系统 有效存储和管理音乐资源,采用MapReduce模型处理海量音频数据;
[0006] 第二步、用户根据需求对歌曲进行聚合搜索,从MySQL数据库中搜索所需歌曲的 伴奏文件、原唱文件和歌词文件的存储路径;
[0007] 第三步、根据第二步得到的路径,在HDFS服务器上搜索伴奏文件、原唱文件和歌 词文件,以流媒体的方式传送到客户端;
[0008] 第四步、播放第三步中搜索的伴奏文件,播放环境背景动画;
[0009] 第五步、客户端调用麦克风功能,将用户演唱的声音数据保存到缓冲区中,缓冲区 采用循环缓冲的形式,用于暂存用户演唱的声音数据;
[0010] 第六步、将伴奏、用户声音数据同步播放,并且将歌词同步显示在演唱界面中;
[0011] 第七步、客户端将该歌曲的伴奏与用户演唱的声音数据进行混音处理,形成该歌 曲的用户演唱文件;
[0012] 第八步、将用户演唱文件与原唱文件进行对比,根据相似度对用户演唱进行评 分;
[0013] 第九步、客户端将该歌曲的用户演唱文件进行编码后上传到存储服务器进行保 存;
[0014] 第十步、用户可以重复欣赏自己的演唱文件,也可以将演唱文件分享给其他用户, 在此基础上进行互动交友。
[0015] 本发明的一种基于云技术的网络演唱平台的构建方法,该平台基于云技术,采用 HDFS分布式文件系统有效地存储和管理海量音乐资源,具有数据访问吞吐量高、透明性好 以及容错性高的特点;采用MapReduce模型可靠地处理PB级数据,可以在大量硬件设备组 成的集群上运行应用程序,为应用程序提供一组稳定可靠的接口,具有自动并行化、负载均 衡以及伸缩性好的特点;采用FMS流媒体服务器与RTMP传输协议结合的方式进行流媒体传 输,可以很好的克服流媒体数据在网络传输过程中产生的延迟,保证了演唱系统的实时性; 采用虚拟现实技术进行环境背景的展现,让用户有身临其境的视听感受。平台还提供了选 歌、演唱、评分、演唱录音保存、录音上传与分享等功能,提供了一套完整的网络演唱平台的 解决方案。

【专利附图】

【附图说明】
[0016] 图1是本发明的平台架构设计框图,图2是平台结构层次框图,图3是基于Flash 流媒体的网络应用程序实现模式示意图。

【具体实施方式】
[0017] 下面结合附图和实施例对本发明作进一步详细描述。以下实施例用于说明本发 明,但不能用来限制本发明的范围。
[0018] 本发明的一种基于云技术的网络演唱平台的构建方法,实施方式包括:
[0019] 第一步、网络演唱平台的架构设计,如图1所示;该平台具有如下特点:基于云存 储技术,采用HDFS分布式文件系统有效存储和管理音乐资源,采用MapReduce模型处理海 量音频数据。
[0020] 平台主要包含4层,如图2所示:第一层云存储层,存放网络演唱的音频数据,充 分利用云存储的特点,使存储部分具有海量、高效、高可用、高扩展性的特点。第二层基础 引擎,包括歌曲搜索引擎:用来提供对网络演唱音乐资源的管理、索引及提供检索等服务; 歌曲转码引擎:用于对演唱数据进行各种格式之间的转码;演唱录制引擎:用于对网络演 唱进行实时调度管理,完成音频点播、录制、回放,对用户的演唱音频进行混音处理、评价打 分、管理、调度音频传输服务器进行音频传输;流媒体传输引擎:承担向用户传输音频流的 功能,使用有限带宽提供足够的实时性和传输质量;互动效果引擎:用于实现用户互动效 果等功能;第三层服务层,提供用户访问门户,作为系统展现,提供用户演唱入口,作为用户 发布和共享演唱作品,并与其它用户交流的平台;第四层前端层,用户可以通过电脑、PAD 和手机等不同终端对系统进行访问。
[0021] 第二步、用户根据需求对歌曲进行聚合搜索,从MySQL数据库中搜索所需歌曲的 伴奏文件、原唱文件和歌词LRC文件的存储路径。
[0022] 第三步、根据第二步得到的路径,在HDFS服务器上搜索伴奏文件、原唱文件和歌 词的LRC文件,以流媒体的方式传送到客户端;流媒体传输过程中采用基于流媒体的音频 实时传输技术,传输协议采用RTMP协议(Real Time Messaging Protocol),该协议是被 Flash用于对象、视频、音频的传输。这个协议建立在TCP协议或者轮询HTTP协议之上; RTMP协议就像一个用来装数据包的容器,这些数据既可以是AMF格式的数据,也可以是FLV 中的视/音频数据。一个单一的连接可以通过不同的通道传输多路网络流。这些通道中的 包都是按照固定大小的包传输的。使用该协议的优势主要体现在三方面:第一,90%以上电 脑上都安装有flash player,可以不用下载,直接播放音频文件;第二,没有权限要求;第 三,支持直播、点播等多种播放方式。
[0023] 流媒体传输的具体过程如下:Web服务器通过HTTP协议发布嵌入了 SWF文件的 HTML网页,SWF文件作为客户端程序,使用嵌入浏览器的Flash播放器运行,并通过RTMP协 议与FMS服务器进行通讯,实时向FMS发布或者获取来自FMS服务器的数据流如图3所示。
[0024] 第四步、播放第三步中搜索的伴奏文件,播放环境背景动画。伴奏文件的播放在 flash的as文件中直接调用sound方法。
[0025] 背景动画采用预先设置的方式,平台预先制作多个环境背景图片或动画,根据用 户选择在演唱时进行展示,让用户有身临其境的感觉。当用户演唱时,根据所选择歌曲的类 型展示不同的背景。
[0026] 环境背景的展现采用虚拟现实技术,在虚拟现实技术中,有效的管理各种静态和 动态的场景对象数据是使复杂的虚拟现实系统保持高效运作的重要手段。为了有效地组织 和管理复杂场景中的对象以及他们的逻辑关系,以提高虚拟场景的渲染效率,同时支持系 统的二次开发和一致,通常使用场景图来管理整个场景信息。传统的场景图的构建一般都 与应用需求密切相关,但在大多数应用中,场景图都用来表示自顶向下的层次的关系。
[0027] 我们在场景图中使用边表示相对坐标变换的逻辑关系,设A是B的父节点,B保 存着相对A的变换矩阵(关系)Mb,A的空间坐标向量是aa(X,Y,Z),则B的空间坐标向量 ab(X',Y',Z')有:

【权利要求】
1. 一种基于云技术的网络演唱平台的构建方法,其特征在于,包括w下步骤: 第一步、网络演唱平台的架构设计,基于云存储技术,采用皿FS分布式文件系统有效 存储和管理管理音乐资源,采用MapRe化ce模型处理海量音频数据; 第二步、用户根据需求对歌曲进行聚合捜索,从MyS化数据库中捜索到所需歌曲的伴 奏文件、原唱文件和歌词文件的存储路径; 第S步、根据第二步得到的路径,在皿FS服务器上捜索的伴奏文件、原唱文件和歌词 文件,W流媒体的方式传送到客户端; 第四步、播放第=步中捜索的伴奏文件,播放环境背景动画; 第五步、客户端调用麦克风功能,将用户演唱的声音数据保存到缓冲区中,缓冲区采用 循环缓冲的形式,用于暂存用户演唱的声音数据; 第六步、将伴奏、用户声音数据同步播放,并且将歌词同步显示在演唱界面中; 第走步、客户端将该歌曲的伴奏与用户演唱的声音数据进行混音处理,形成该歌曲的 用户演唱文件; 第八步、将用户演唱文件与原唱文件进行对比,根据相似度对用户演唱进行评分; 第九步、客户端将该歌曲的用户演唱文件进行编码后上传到存储服务器进行保存; 第十步、用户可W重复欣赏自己的演唱文件,也可W将演唱文件分享给其他用户,在此 基础上进行互动交友。
2. 根据权利要求1所述的一种基于云技术的网络演唱平台的构建方法,其特征在于, 第一步中演唱平台架构采用了云技术构建,海量音频文件存储采用分布式文件系统皿FS, 音乐元数据使用化ase存储,音乐文件W及其元数据采用分布式爬虫Nutch进行获取, Nutch中采用了 Mapre化ce编程模型,Pig和化ve可W通过不同的方式快速方便的处理 皿FS和皿ase的数据,顶层的MyS化数据库用来存储需要经常进行检索的数据;平台主要 包括云存储、基础引擎和服务层和前端层四个层次。
3. 根据权利要求1所述的一种基于云技术的网络演唱平台的构建方法,其特征在于, 第二步中网络演唱所需的伴奏文件、原唱文件和歌词文件都W云存储的方式存储在多台服 务器上,可W使用户透明地访问本地资源和远程文件资源,很好的进行并发控制,客户端对 于文件的读写不影响其他客户端对同一个文件的读写;有很好的容错性,工作量均匀分配 到不同存储服务器,避免个别存储服务器工作量过大造成瓶颈,最终使得存储系统发挥最 大效能。
4. 根据权利要求1所述的一种基于云技术的网络演唱平台的构建方法,其特征在于, 第二步中的伴奏文件和原唱文件从服务器端传送到客户端,是通过流媒体的方式,采用 RTMP协议进行传送,该协议被Flash用于对象、视频、音频的传输。
5. 根据权利要求1所述的一种基于云技术的网络演唱平台的构建方法,其特征在于, 第五步中将伴奏、用户声音数据同步播放,并且将歌词同步显示在演唱界面中,该同步采用 了时间戳的方式,歌词同步通过获取歌词LRC文件中每句歌词的起始时间与伴奏文件进行 同步。
6. 根据权利要求1所述的一种基于云技术的网络演唱平台的构建方法,其特征在于, 第六步中伴奏与用户演唱的声音数据进行混音处理,形成该歌曲的用户演唱文件;混音过 程中连接到NetStream. attachMicro地oneO输出的麦克风,返回的原始数据采用单声道 浮点值、未经压缩的PCM样本的ByteArray格式,通过将ByteArray数据与伴奏的叠加,使 用sound对象放出,实现混音,在混音过程中还通过对数据的变换,加入回音、音高变换、音 强变换等效果。
7.根据权利要求1所述的一种基于云技术的网络演唱平台的构建方法,其特征在于, 第走步中将用户演唱文件与原唱文件进行对比,根据相似度对用户演唱进行评分;评分算 法采用加窗的傅里叶变换,是用一个在时间上有一定宽度的窗函数在时间轴上平移,并和 待分析的信号相乘,然后再用傅立叶变换对相乘信号进行分析,得到该时刻附近对应信号 的频谱,经过加窗后,我们可W得到在不同时间段内信号的能量在各频域的分布。
【文档编号】G06F17/30GK104462226SQ201410639919
【公开日】2015年3月25日 申请日期:2014年11月14日 优先权日:2014年11月14日
【发明者】王永滨, 吴梅梅, 刘静, 蒋伟, 王元中 申请人:中国传媒大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1