联网合唱方法及计算机可读存储介质与流程

文档序号:19060446发布日期:2019-11-06 01:43阅读:415来源:国知局
联网合唱方法及计算机可读存储介质与流程

本发明涉及网络技术领域,尤其涉及一种联网合唱方法及计算机可读存储介质。



背景技术:

现有的联网合唱一般都是由其中一用户向系统发起合唱请求,系统为用户匹配合唱对象,用户无法自行向具体的用户或包厢提出合唱请求。系统是由其自行设定的匹配规则为用户匹配合唱对象,这样匹配得到的合唱对象往往不是用户想要找的合唱对象,从而影响用户体验。

例如,专利号为201810437629.0,专利名称为《一种在线实时合唱的方法及系统》的发明专利,其公开了一种在线实时合唱的方法及系统,在线实时合唱对应的多个终端之间建立连接;所述多个终端选择合唱的歌曲,并同步播放所述合唱的歌曲;所述多个终端根据所述同步播放的合唱的歌曲实时同步演唱。该专利中,各终端将各自的设备信息上传至云端服务器,云端服务器根据所述设备信息匹配所述在线实时合唱对应的多个终端。在该专利中,用户无法自主选择想要的合唱对象,从而影响到用户的合唱体验。例如,用户想找异性进行合唱歌曲,但系统优先匹配同城用户,并不限定性别,所以给用户匹配了同性的合唱对象,进而影响到用户的合唱体验。

同时,现有的联网合唱在歌曲方面存在不一致的情况,如两人合唱同一首歌,但可能由于曲库不同或者不同步的原因,导致双方的歌曲版本不一致,从而导致用户的唱歌体验不好。即使通过实时下载技术,下载完毕后,较难确认双方的同步播放时间。

另外,现有的联网合唱在用户的互动性并不那么深入,目前互动仅在音视频互动方面,并且,需要设备自带摄像头才能相互看到对方的视频。



技术实现要素:

本发明所要解决的技术问题是:提供一种联网合唱方法及计算机可读存储介质,可自主选择合唱对象,提高用户合唱体验。

为了解决上述技术问题,本发明采用的技术方案为:一种联网合唱方法,包括:

第一点播设备获取并展示用户列表和/或合唱歌曲列表;

第一点播设备在所述用户列表中选择一用户,并与所述一用户关联的第二点播设备建立连接,或在所述合唱歌曲列表中选择一首合唱歌曲,并与所述合唱歌曲关联的第二点播设备建立连接;

第一点播设备与第二点播设备进行合唱。

本发明还涉及一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上所述的步骤。

本发明的有益效果在于:通过获取并展示其他点播设备所关联的用户信息和合唱歌曲列表,可根据所展示的信息自主选择想要合唱和用户或歌曲,从而提高了用户的合唱体验。

同时,通过在合唱前对比双方的合唱歌曲的版本,当版本不一致时同步合唱歌曲,保证合唱双方的合唱歌曲的一致性,同时对合唱歌曲进行同步播放,提高用户体验。本发明可保证合唱双方的合唱歌曲的版本的一致性,提高用户合唱体验。

附图说明

图1为本发明的一种联网合唱方法的流程图;

图2为本发明实施例一的方法流程图。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。

本发明最关键的构思在于:通过对比合唱歌曲的版本保证合唱歌曲的一致性;通过客户端扫码进行互动,提高合唱双方互动乐趣,提高用户体验。

请参阅图1,一种联网合唱方法,包括:

第一点播设备获取并展示用户列表和/或合唱歌曲列表;

第一点播设备在所述用户列表中选择一用户,并与所述一用户关联的第二点播设备建立连接,或在所述合唱歌曲列表中选择一首合唱歌曲,并与所述合唱歌曲关联的第二点播设备建立连接;

第一点播设备与第二点播设备进行合唱。

从上述描述可知,本发明的有益效果在于:通过展示的用户列表和合唱歌曲列表,用户可自主选择想要的合唱对象,提高用户合唱体验。

进一步地,所述第一点播设备获取并展示用户列表和/或合唱歌曲列表包括:

第一点播设备获取与其关联的客户端的用户信息;

所述第一点播设备向数据中心发送点播设备上线信息,所述点播设备上线信息包括所述第一点播设备对应的包厢编号和与所述第一点播设备关联的客户端的用户信息;

第一点播设备实时向数据中心发送合唱歌曲列表,所述合唱歌曲列表包括第一点播设备的已点歌曲和/或预设的歌曲;

第一点播设备从数据中心获取其他点播设备关联的客户端的用户信息和/或合唱歌曲列表,并进行展示。

从上述描述可知,点播设备向数据中心发送与自身关联的用户信息和合唱歌曲列表,以便其他点播设备可从数据中心获取自身的用户信息及合唱歌曲列表,从而为通过选择用户信息或合唱歌曲列表中的歌曲进行合唱建立基础。

进一步地,所述第一点播设备获取与其关联的客户端的用户信息之前,进一步包括:

第一点播设备展示与自身关联的包厢标识码;

客户端通过扫描所述包厢标识码与所述第一点播设备建立连接。

从上述描述可知,客户端通过扫码绑定点播设备,以便点播设备获取用户信息。

进一步地,所述第一点播设备向数据中心发送点播设备上线信息之后,进一步包括:

所述数据中心根据预设的时间周期判断是否与所述第一点播设备建立连接;

若否,则删除所述第一点播设备的点播设备上线信息。

从上述描述可知,当数据中心检测到已断开与点播设备的连接,会认为第一点播设备已下线,通过删除其对应的点播设备上线信息,防止其他点播设备获取到已下线的用户信息,从而提高合唱的成功率。

进一步地,所述第一点播设备与第二点播设备进行合唱具体为:

第一点播设备向第二点播设备发送合唱请求,所述合唱请求包括合唱歌曲的编号以及合唱歌曲在第一点播设备的的版本列表;

若第二点播设备接受合唱,则第二点播设备根据合唱歌曲的编号,获取合唱歌曲在第二点播设备的版本列表;

若合唱歌曲在第一点播设备的版本列表与合唱歌曲在第二点播设备的版本列表中没有相同的版本,则第一点播设备和第二点播设备同步所述合唱歌曲;

第一点播设备和第二点播设备对所述合唱歌曲进行同步播放。

从上述描述可知,通过在合唱前对比双方的合唱歌曲的版本,当不存在相同版本时则同步合唱歌曲,保证合唱双方的合唱歌曲的版本一致性,同时对合唱歌曲进行同步播放,提高用户体验。

进一步地,所述第一点播设备和第二点播设备同步所述合唱歌曲具体为:

第一点播设备和第二点播设备分别根据所述合唱歌曲的编号,向媒体服务器请求下载同一版本的所述合唱歌曲,并计算下载进度;

第一点播设备将自身的下载进度实时发送给第二点播设备,第二点播设备将自身的下载进度实时发送给第一点播设备;

第一点播设备根据自身的下载进度和第二点播设备的下载进度,计算第一共有进度,第二点播设备根据自身的下载进度和第一点播设备的下载进度,计算第二共有进度;

当第一共有进度达到预设进度时,第一点播设备将所述合唱歌曲的歌曲状态设置为下载完成;

当第二共有进度达到预设进度时,第二点播设备将所述合唱歌曲的歌曲状态设置为下载完成。

由上述描述可知,通过计算共有进度,确保合唱双方都下载完后才开始播放。

进一步地,还包括:

若所述同一版本存在于第一点播设备或第二点播设备的版本列表中,则将第一点播设备或第二点播设备的下载进度设置为预设进度。

由上述描述可知,若一方不用进行下载,则可直接将自身的下载进度设置为100%。

进一步地,所述第一点播设备和第二点播设备对所述合唱歌曲进行同步播放具体为:

第一点播设备将自身的合唱歌曲的歌曲状态实时发送给第二点播设备,第二点播设备将自身的合唱歌曲的歌曲状态实时发送给第一点播设备;

第一点播设备和第二点播设备分别将下载完成的所述合唱歌曲加入至各自的已点歌曲列表,并将所述合唱歌曲的歌曲状态设置为暂停状态;

当第一点播设备检测到自身的所述歌曲状态为暂停状态且第二点播设备的所述歌曲状态为暂停状态或播放状态,则第一点播设备播放所述合唱歌曲,并将所述合唱歌曲的歌曲状态设置为播放状态;

当第二点播设备检测到自身的所述歌曲状态为暂停状态且第一点播设备的所述歌曲状态为暂停状态或播放状态,则第二点播设备播放所述合唱歌曲,并将所述合唱歌曲的歌曲状态设置为播放状态。

由上述描述可知,通过同步双方的歌曲状态,实现合唱歌曲的同步播放。

进一步地,所述第一点播设备向第二点播设备发送合唱请求之后,进一步包括:

若第二点播设备拒绝合唱,则第二点播设备发送拒绝合唱消息至第一点播设备。

由上述描述可知,第一点播设备被拒绝之后,可重新选择一其他点播设备发起合唱。

进一步地,所述第一点播设备和第二点播设备对所述合唱歌曲进行同步播放之后,进一步包括:

第一点播设备和第二点播设备分别展示摄像二维码;

客户端通过扫描第一点播设备或第二点播设备的摄像二维码向第一点播设备和/或第二点播设备发送摄像头拍摄数据。

由上述描述可知,通过使用客户端作为摄像装置,既节省了系统的造价,也使得摄像头更加灵活,可以随意变动位置,大大提高了便利性。

进一步地,所述第一点播设备和第二点播设备对所述合唱歌曲进行同步播放之后,进一步包括:

第一点播设备和第二点播设备分别展示购物二维码;

客户端通过扫描第一点播设备或第二点播设备的购物二维码进行在线交易,并将交易信息发送至第二点播设备或第一点播设备。

进一步地,所述第一点播设备和第二点播设备对所述合唱歌曲进行同步播放之后,进一步包括:

第一点播设备和第二点播设备分别展示互动二维码;

客户端通过扫描第一点播设备或第二点播设备的互动二维码向第二点播设备或第一点播设备发送互动消息。

由上述描述可知,通过送礼物、发送弹幕和动画进行互动,大大提高了联网合唱的互动性。

本发明还提出一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上所述的步骤。

实施例一

请参照图2,本发明的实施例一为:一种联网合唱方法,可应用于数字视听场所(如ktv),实现两个包厢之间的合唱,所述点播设备可以是包厢中的点歌机顶盒,包括如下步骤:

s1:点播设备开启后,展示与自身关联的包厢标识码。一般来说,视听场所中的每个包厢都设有一台点播设备,即一台点播设备对应一个包厢,点播设备中可预先存储与其对应的包厢的包厢标识码。所述标识码可为二维码,可展示在包厢里的显示屏上。

进一步地,当点播设备启动后,点播设备将包厢状态设置为下线状态。

本实施例中,包厢状态有五种,分别为空闲状态、拒绝状态、合唱中状态、求合唱状态和下线状态。其中,空闲状态表示包厢目前空闲可以合唱,申请向包厢合唱需要经过本包厢的同意;拒绝状态表示包厢不同意其他包厢的合唱;合唱中状态表示包厢正在合唱;求合唱状态表示包厢非常渴望别的包厢一起合唱,此时别人发起合唱,包厢将马上开始合唱;下线状态表示包厢已经下线或点播设备未绑定客户端。

s2:客户端通过扫描所述包厢标识码与所述点播设备建立连接;所述客户端可为手机,即用户可通过手机扫码绑定包厢。点播设备与客户端建立连接后,可获取所述客户端的用户信息,所述用户信息包括用户id、用户昵称、性别、城市和头像等。

s3:点播设备向数据中心发送点播设备上线信息和合唱歌曲列表,所述点播设备上线信息包括该点播设备对应的包厢编号和所述客户端的用户信息,所述合唱歌曲列表包括该点播设备的已点歌曲和预设的歌曲。具体地,点播设备向视听场所的网关服务器发送点播设备上线信息,以通知网关服务器对应的包厢上线,网关服务器将该点播设备上线信息转发给数据中心。点播设备发送点播设备上线信息之后,点播设备开启上报已点歌曲的服务线程,该线程用于获取已点列表中的已点歌曲,并将已点歌曲实时上报至数据中心进行保存,该线程还可用于将热门的歌曲上报至数据中心。同时,点播设备发送点播设备上线信息之后,点播设备开启上报用户信息的服务线程,该线程用于实时获取与点播设备绑定的客户端的用户信息,并将与点播设备绑定的所有客户端的用户信息实时上报至数据中心进行保存。一个点播设备可与多个客户端进行绑定。

进一步地,开启上报已点歌曲的服务线程的同时,点播设备开启心跳服务线程,该线程用于根据预设的时间周期向数据中心发送心跳包,例如每隔10分钟检测点播设备是否还与数据中心有连接。若数据中心在预设的时间段内未接收到所述心跳包,会认为该点播设备已经下线,则删除所述点播设备的点播设备上线信息和合唱歌曲列表。

优选地,所述包厢编号可根据场所编号和点播设备ip地址生成,保证一个包厢编号唯一对应一个点播设备。

进一步地,当客户端与点播设备绑定后,或点播设备发送点播设备上线信息后,点播设备将包厢状态设置为空闲状态。此时,用户可通过点播设备提供的设置界面设置包厢状态,例如设置为求合唱状态或拒绝状态。

包厢状态信息保存在点播设备,同时点播设备会将自身的包厢状态通过协议上报到数据中心,点播设备也可以从数据中心获取到其他点播设备的包厢状态。s4:点播设备从数据中心获取其他点播设备的点播设备上线信息和合唱歌曲列表,并进行展示。具体地,点播设备向网关服务器获取所有在线的点播设备,网关服务器从数据中心获取除该点播设备外的其他点播设备的点播设备上线信息及合唱歌曲列表后,返回给该点播设备,点播设备展示获取到的其他点播设备关联的所有客户端的用户信息及其合唱歌曲列表,其中,其他点播设备关联的所有客户端的用户信息可以用户列表的形式展示。

s5:点播设备根据其他点播设备的点播设备上线信息及合唱歌曲列表,选择一其他点播设备,并与所述一其他点播设备建立连接;即点播设备在用户列表中选择一用户,并与所述一用户关联的点播设备建立连接,或在所述合唱歌曲列表中选择一首合唱歌曲,并与所述合唱歌曲关联的点播设备建立连接。为方便描述,将发起合唱的点播设备作为第一点播设备,将被邀请合唱(被选择)的点播设备作为第二点播设备。

s6:第一点播设备向第二点播设备发送合唱请求,进一步地,可通过专有指令通道发送合唱请求,所述合唱请求包括合唱歌曲的编号以及合唱歌曲在第一点播设备的版本列表,所述版本列表中存储有第一点播设备上的各版本合唱歌曲对应的歌曲摘要(md5值),合唱请求还可以包括合唱歌曲的歌曲名称、歌手等信息。

当第二点播设备是第一点播设备根据用户列表选择的,则合唱歌曲可从预设的歌曲列表(如热门歌曲列表)中进行选择,也可以从第二点播设备的合唱歌曲列表以及两个点播设备共有的歌曲中进行选择,此处共有的歌曲指的是两个点播设备都有且歌曲编号一致的歌曲。当第二点播设备是第一点播设备根据合唱歌曲列表选择的,则合唱歌曲即为第一点播设备在第二点播设备的合唱歌曲列表中选择的歌曲。

当第一点播设备不存在合唱歌曲时,则合唱歌曲在第一点播设备的版本列表为空。

s7:判断第二点播设备是否接受合唱,若是,则执行步骤s9,若否,则执行步骤s8。

具体地,若此时第二点播设备的包厢状态为空闲状态,则会弹出弹框提示用户接受合唱或者拒绝合唱,根据用户选择判断第二点播设备是否接受合唱。若此时第二点播设备的包厢状态为拒绝状态,则判定第二点播设备拒绝合唱,执行步骤s8。若此时第二点播设备的包厢状态为求合唱状态,则判定第二点播设备接受合唱,执行步骤s9。

进一步地,若此时第二点播设备的包厢状态为合唱中状态或下线状态,则发送合唱中消息或下线消息至第一点播设备,第一点播设备会接收到如“对方正在合唱中”的消息或“对方已经下线”的消息。

s8:第二点播设备发送拒绝合唱消息至第一点播设备,此时,第一点播设备会接收到如“对方拒绝了你的申请”的消息,然后第一点播设备可重新选择一其他点播设备发起合唱请求。

s9:第二点播设备根据合唱歌曲的编号,获取合唱歌曲在第二点播设备的版本列表,所述版本列表中存储有第二点播设备上的各版本合唱歌曲对应的歌曲摘要(md5值)。

s10:判断合唱歌曲在第一点播设备的版本列表与合唱歌曲在第二点播设备的版本列表中是否存在相同的版本,即是否存在相同的歌曲摘要,若是,则执行步骤s12,若否,则执行步骤s11。

本实施例中,一首歌对应一个歌曲编号,但一首歌可能存在多个版本,例如有专辑版本和演唱会版本,或者有原唱版本和翻唱版本,或者有不同年份的版本,而不同版本的md5值不同,因此,本步骤即判断两个点播设备的合唱歌曲是否存在一致的版本,即是否存在相同的歌曲摘要,若存在,则可以准备开始合唱,若不存在,则需要同步合唱歌曲的版本,即需先获取歌曲摘要一致的合唱歌曲再准备开始合唱。

s11:第一点播设备和第二点播设备同步所述合唱歌曲,即对合唱歌曲的版本进行同步,主要保证合唱歌曲的音频数据的一致性。

具体地,第一点播设备和第二点播设备分别根据所述合唱歌曲的编号,向媒体服务器请求下载同一版本的所述合唱歌曲,并计算下载进度。

当第二点播设备接受了第一点播设备的合唱请求后,数据中心即会保存第一点播设备和第二点播设备的关联关系。媒体服务器中可能会保存同一首歌的多个版本,最后要合唱的版本可以由用户自己决定,也可以由数据中心或媒体服务器随机选择一个版本。第一点播设备和第二点播设备可发送合唱歌曲的编号至媒体服务器请求下载(当合唱版本由用户自己决定,则其中一个点播设备同时发送合唱歌曲的版本),媒体服务器接收到下载请求时,可从数据中心获取点播设备的关联关系,然后将同一版本的合唱歌曲,也即同一歌曲摘要的合唱歌曲发送给具有关联关系的两个点播设备。

进一步地,当第一点播设备或第二点播设备检测到要下载的合唱歌曲的版本存在于自身的版本列表中,即自身已存在该版本的合唱歌曲,则无需进行下载,第一点播设备或第二点播设备将合唱歌曲的下载进度设置为预设进度,例如设置为100%。

优选地,所述媒体服务器为流媒体服务器。

在下载过程中,第一点播设备和第二点播设备分别将所述合唱歌曲的歌曲状态设置为下载中。同时,第一点播设备和第二点播设备实时将自身的下载进度发送给对方,即第一点播设备将自身的下载进度实时发送给第二点播设备,第二点播设备将自身的下载进度实时发送给第一点播设备;进一步地,通过专有指令通道进行发送。

第一点播设备和第二点播设备分别根据自身的下载进度和对方的下载进度,计算共有进度,即第一点播设备根据自身的下载进度和第二点播设备的下载进度,计算第一共有进度,第二点播设备根据自身的下载进度和第一点播设备的下载进度,计算第二共有进度。例如,第一点播设备的下载进度为50%,第二点播设备的下载进度为40%,则共有进度为(50+40)/200×100%=45%。由于数据传输可能存在延迟,因此第一共有进度和第二共有进度可能不是实时一致的,但整体上不会差距太多。

当第一共有进度达到预设进度,如达到100%时,第一点播设备将所述合唱歌曲的歌曲状态设置为下载完成;当第二共有进度达到预设进度时,如达到100%时,第二点播设备将所述合唱歌曲的歌曲状态设置为下载完成。

s12:第一点播设备和第二点播设备对所述合唱歌曲进行同步播放。

具体地,第一点播设备和第二点播设备实时将自身的合唱歌曲的歌曲状态发送给对方,即第一点播设备将自身的合唱歌曲的歌曲状态实时发送给第二点播设备,第二点播设备将自身的合唱歌曲的歌曲状态实时发送给第一点播设备。

当合唱歌曲下载完成后,第一点播设备和第二点播设备分别将合唱歌曲加入至各自的已点歌曲列表,并置顶,当点播设备的播放器监听到合唱歌曲放入已点歌曲列表事件,播放器会将合唱歌曲的歌曲状态设置为暂停状态。

当第一点播设备检测到自身的合唱歌曲的歌曲状态为暂停状态且第二点播设备的合唱歌曲的歌曲状态为暂停状态或播放状态,则第一点播设备播放所述合唱歌曲,并将所述合唱歌曲的歌曲状态设置为播放状态;

当第二点播设备检测到自身的合唱歌曲的歌曲状态为暂停状态且第一点播设备的合唱歌曲的歌曲状态为暂停状态或播放状态,则第二点播设备播放所述合唱歌曲,并将所述合唱歌曲的歌曲状态设置为播放状态。

一般来说,当点播设备检测到自身的歌曲状态为暂停状态且对方的歌曲状态为暂停状态,则开始播放合唱歌曲,但由于一方的暂停状态指令在传输过程中可能存在延迟或丢失的情况,而另一方的暂停状态指令已经传输到了,因此可能导致一方先开始播放的情况,但一方的暂停状态指令传输到另一方后,或一方的播放状态指令传输到另一方后,另一方也开始播放。因此,双方播放器播放延迟最大为一个指令发送的时间,专有指令通道延迟大约为60ms,仍可认为双方的歌曲几乎是同时开始播放的。

合唱歌曲同步播放后,第一点播设备和第二点播设备即开始合唱。

进一步地,合唱开始后,第一点播设备和第二点播设备均会将包厢状态设置为合唱中状态。

s13:第一点播设备和第二点播设备展示预设的二维码,客户端通过扫描所述二维码进行互动。开始合唱后,点播设备显示合唱中的界面,界面上有提供给用户扫码的二维码,不同的二维码有不同的作用。

例如,第一点播设备和第二点播设备分别展示摄像二维码;客户端通过扫描第一点播设备或第二点播设备的摄像二维码向第一点播设备或第二点播设备发送摄像头拍摄数据。具体地,点播设备先检测自身是否自带有摄像头,如果无自带摄像头,则提供摄像二维码供用户扫码;客户端扫码后,开启客户端的摄像头向点播设备申请成为手机摄像头,若当前没有客户端成为摄像头,则点播设备同意该申请,同意后客户端将摄像头内容推流到专有的流服务器,点播设备专有通道从流服务器拉流并进行显示。若已有客户端在当前包厢内充当了摄像头,则会提示用户“已有客户端充当了摄像头”。

又例如,第一点播设备和第二点播设备分别展示购物二维码;客户端通过扫描第一点播设备或第二点播设备的购物二维码进行在线交易,并将交易信息发送至第二点播设备或第一点播设备。具体地,客户端扫码后可以登录在线超市,在在线超市中购买实体礼物,下单后通知双方点播设备。比如,假设合唱的两个点播设备对应的包厢为a包厢和b包厢,a包厢中的用户买了一瓶红酒送给了b包厢,则a点播设备显示的消息为“a送b一瓶红酒”,b点播设备显示的消息为“b收到来自a的一瓶红酒”。

又例如,第一点播设备和第二点播设备分别展示互动二维码;客户端通过扫描第一点播设备或第二点播设备的互动二维码向第二点播设备或第一点播设备发送互动消息。具体地,客户端扫码后用户可以发送弹幕消息和h5互动动画,发送后在双方点播设备显示。其中,h5网页可以由运营人员事先编辑好存放到数据中心,通过数据中心推送到所有视听场所的网关服务器,点播设备从视听场所的网关服务器获取推送的h5并展示,从而极大方便了互动消息的可运营性。

其中,所述购物二维码、摄像二维码和互动二维码可以统一设置成同一二维码,从而更方便用户使用。

进一步地,当合唱结束后,包厢状态变回为空闲状态或用户通过设置界面设置的状态。

进一步地,当客户端与点播设备断开连接后,点播设备将包厢状态设置为下线状态,同步下线状态到数据中心,数据中心删除该点播设备的包厢上线信息。同时,点播设备暂停上报已点歌曲的服务线程和心跳服务线程。

本实施例通过获取并展示其他点播设备所关联的用户信息和合唱歌曲列表,可根据所展示的信息自主选择想要合唱和用户或歌曲,提高了用户的合唱体验;通过在合唱前对比双方的合唱歌曲的版本,当版本不一致时同步合唱歌曲,保证合唱双方的合唱歌曲的版本一致性;通过计算共有进度,确保合唱双方都下载完后才开始播放;通过对合唱歌曲进行同步播放,提高用户的合唱体验。通过心跳检测,可及时删除已下线的点播设备的点播设备上线信息,提高合唱的成功率。通过使用客户端作为摄像装置,既节省了系统的造价,也使得摄像头更加灵活,可以随意变动位置,大大提高了便利性。通过送礼物、发送弹幕和动画进行互动,大大提高了联网合唱的互动性。

实施例二

本实施例是对应上述实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如下步骤:

第一点播设备获取并展示用户列表和/或合唱歌曲列表;

第一点播设备在所述用户列表中选择一用户,并与所述一用户关联的第二点播设备建立连接,或在所述合唱歌曲列表中选择一首合唱歌曲,并与所述合唱歌曲关联的第二点播设备建立连接;

第一点播设备与第二点播设备进行合唱。

进一步地,所述第一点播设备获取并展示用户列表和/或合唱歌曲列表包括:

第一点播设备获取与其关联的客户端的用户信息;

所述第一点播设备向数据中心发送点播设备上线信息,所述点播设备上线信息包括所述第一点播设备对应的包厢编号和与所述第一点播设备关联的客户端的用户信息;

第一点播设备实时向数据中心发送合唱歌曲列表,所述合唱歌曲列表包括第一点播设备的已点歌曲和/或预设的歌曲;

第一点播设备从数据中心获取其他点播设备关联的客户端的用户信息和/或合唱歌曲列表,并进行展示。

进一步地,所述第一点播设备获取与其关联的客户端的用户信息之前,进一步包括:

第一点播设备展示与自身关联的包厢标识码;

客户端通过扫描所述包厢标识码与所述第一点播设备建立连接。

进一步地,所述第一点播设备向数据中心发送点播设备上线信息之后,进一步包括:

所述数据中心根据预设的时间周期判断是否与所述第一点播设备建立连接;

若否,则删除所述第一点播设备的点播设备上线信息。

进一步地,所述第一点播设备与第二点播设备进行合唱具体为:

第一点播设备向第二点播设备发送合唱请求,所述合唱请求包括合唱歌曲的编号以及合唱歌曲在第一点播设备的的版本列表;

若第二点播设备接受合唱,则第二点播设备根据合唱歌曲的编号,获取合唱歌曲在第二点播设备的版本列表;

若合唱歌曲在第一点播设备的版本列表与合唱歌曲在第二点播设备的版本列表中没有相同的版本,则第一点播设备和第二点播设备同步所述合唱歌曲;

第一点播设备和第二点播设备对所述合唱歌曲进行同步播放。

进一步地,所述第一点播设备和第二点播设备同步所述合唱歌曲具体为:

第一点播设备和第二点播设备分别根据所述合唱歌曲的编号,向媒体服务器请求下载同一版本的所述合唱歌曲,并计算下载进度;

第一点播设备将自身的下载进度实时发送给第二点播设备,第二点播设备将自身的下载进度实时发送给第一点播设备;

第一点播设备根据自身的下载进度和第二点播设备的下载进度,计算第一共有进度,第二点播设备根据自身的下载进度和第一点播设备的下载进度,计算第二共有进度;

当第一共有进度达到预设进度时,第一点播设备将所述合唱歌曲的歌曲状态设置为下载完成;

当第二共有进度达到预设进度时,第二点播设备将所述合唱歌曲的歌曲状态设置为下载完成。

进一步地,还包括:

若所述同一版本存在于第一点播设备或第二点播设备的版本列表中,则将第一点播设备或第二点播设备的下载进度设置为预设进度。

进一步地,所述第一点播设备和第二点播设备对所述合唱歌曲进行同步播放具体为:

第一点播设备将自身的合唱歌曲的歌曲状态实时发送给第二点播设备,第二点播设备将自身的合唱歌曲的歌曲状态实时发送给第一点播设备;

第一点播设备和第二点播设备分别将下载完成的所述合唱歌曲加入至各自的已点歌曲列表,并将所述合唱歌曲的歌曲状态设置为暂停状态;

当第一点播设备检测到自身的所述歌曲状态为暂停状态且第二点播设备的所述歌曲状态为暂停状态或播放状态,则第一点播设备播放所述合唱歌曲,并将所述合唱歌曲的歌曲状态设置为播放状态;

当第二点播设备检测到自身的所述歌曲状态为暂停状态且第一点播设备的所述歌曲状态为暂停状态或播放状态,则第二点播设备播放所述合唱歌曲,并将所述合唱歌曲的歌曲状态设置为播放状态。

进一步地,所述第一点播设备向第二点播设备发送合唱请求之后,进一步包括:

若第二点播设备拒绝合唱,则第二点播设备发送拒绝合唱消息至第一点播设备。

进一步地,所述第一点播设备和第二点播设备对所述合唱歌曲进行同步播放之后,进一步包括:

第一点播设备和第二点播设备分别展示摄像二维码;

客户端通过扫描第一点播设备或第二点播设备的摄像二维码向第一点播设备和/或第二点播设备发送摄像头拍摄数据。

进一步地,所述第一点播设备和第二点播设备对所述合唱歌曲进行同步播放之后,进一步包括:

第一点播设备和第二点播设备分别展示购物二维码;

客户端通过扫描第一点播设备或第二点播设备的购物二维码进行在线交易,并将交易信息发送至第二点播设备或第一点播设备。

进一步地,所述第一点播设备和第二点播设备对所述合唱歌曲进行同步播放之后,进一步包括:

第一点播设备和第二点播设备分别展示互动二维码;

客户端通过扫描第一点播设备或第二点播设备的互动二维码向第二点播设备或第一点播设备发送互动消息。

综上所述,本发明提供的一种联网合唱方法及计算机可读存储介质,通过在合唱前对比双方的合唱歌曲的摘要,当摘要不一致时同步合唱歌曲,保证合唱双方的合唱歌曲的一致性;通过计算共有进度,确保合唱双方都下载完后才开始播放;通过对合唱歌曲进行同步播放,提高用户的合唱体验。通过心跳检测,可及时删除已下线的点播设备的包厢上线信息,提高合唱的成功率。通过使用客户端作为摄像装置,既节省了系统的造价,也使得摄像头更加灵活,可以随意变动位置,大大提高了便利性。通过送礼物、发送弹幕和动画进行互动,大大提高了联网合唱的互动性。本发明可保证合唱双方的合唱歌曲的版本的一致性,提高用户合唱体验。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1