KTV直播连麦方法、装置和系统与流程

文档序号:29043847发布日期:2022-02-25 21:27阅读:668来源:国知局
KTV直播连麦方法、装置和系统与流程
ktv直播连麦方法、装置和系统
技术领域
1.本技术涉及通信技术领域,尤其是涉及ktv直播连麦方法、装置和系统。


背景技术:

2.目前移动端流行的直播连麦功能在线下的ktv领域中还没有应用,主要是因为线下ktv一般为单机形式,且点歌屏位置固定,操作不方便。


技术实现要素:

3.为了使线下的ktv具有直播连麦功能,本技术提出了ktv直播连麦方法、装置和系统。
4.在本技术的第一方面,提出了一种ktv直播连麦方法,该方法包括:基于mqtt协议将ktv包房中的vod端与手机终端建立通信连接;所述手机终端发起直播后向所述vod端发送直播指令或加入直播后向所述vod端发送连麦指令;所述vod端在接收到所述直播指令后向所述手机终端进行音视频数据推流或在接收到所述连麦指令后从所述手机终端进行音视频数据拉流。
5.通过采用上述技术方案,利用mqtt协议将ktv包房中的vod端和手机建立通信联系,可在手机终端发起直播或者进入直播后,vod端通过mqtt服务器接收到手机终端的直播或连麦指令进行通信连接,进而根据直播或连麦指令向手机终端推送或者拉取音视频数据流,使得手机终端直播时,可同步vod端的音视频对外进行直播,在手机终端加入直播时,vod端可同步手机终端的音视频进行展示,通过上述方案,使得线下ktv具有直播连麦功能,满足了用户在ktv中直播的需求。
6.进一步地,所述ktv包房包括第一ktv包房和第二ktv包房;所述手机终端发起直播后向所述vod端发送直播指令或加入直播后向所述vod端发送连麦指令包括,所述第一ktv包房中的手机终端发起直播后,所述第一ktv包房中的手机终端通过mqtt服务器向所述第一ktv包房中的vod端发送直播指令;所述第二ktv包房中手机终端加入所述第一ktv包房中的手机终端发起直播后,所述第二ktv包房中手机终端通过mqtt服务器向所述第二ktv包房中的vod端发送连麦指令。
7.再进一步地,所述vod端在接收到所述直播指令后向所述手机终端进行音视频数据推流或在接收到所述连麦指令后从所述手机终端进行音视频数据拉流包括,所述第一ktv包房中的vod端在接收到所述直播指令后通过rtmp服务器向所述第一ktv包房中手机终端推送摄像头和麦克风的rtmp流;所述第二ktv包房中的vod端在接收到所述连麦指令后从rtmp服务器拉取所述第二ktv包房中的手机终端的音视频合成rtmp流。
8.进一步地,所述基于mqtt协议将ktv包房中的vod端与手机终端建立通信连接之后包括,所述vod端向mqtt服务器订阅直播和连麦的指令。
9.在本技术的第二方面,提出了一种ktv直播连麦装置,该装置包括,通信模块,用于基于mqtt协议将ktv包房中的vod端与手机终端建立通信连接;指令发送模块,用于所述手机终端发起直播后向所述vod端发送直播指令或加入直播后向所述vod端发送连麦指令;推拉流模块,用于在所述vod端在接收到所述直播指令后向所述手机终端进行音视频数据推流或在接收到所述连麦指令后从所述手机终端进行音视频数据拉流。
10.进一步地,所述ktv包房包括第一ktv包房和第二ktv包房;所述指令发送模块具体用于,在所述第一ktv包房中的手机终端发起直播后,所述第一ktv包房中的手机终端通过mqtt服务器向所述第一ktv包房中的vod端发送直播指令;在所述第二ktv包房中手机终端加入所述第一ktv包房中的手机终端发起直播后,所述第二ktv包房中手机终端通过mqtt服务器向所述第二ktv包房中的vod端发送连麦指令。
11.再进一步地,所述推拉流模块具体用于,在所述第一ktv包房中的vod端在接收到所述直播指令后通过rtmp服务器向所述第一ktv包房中手机终端推送摄像头和麦克风的rtmp流;在所述第二ktv包房中的vod端在接收到所述连麦指令后从rtmp服务器拉取所述第二ktv包房中的手机终端的音视频合成rtmp流。
12.进一步地,还包括订阅模块,用于在所述基于mqtt协议将ktv包房中的vod端与手机终端建立通信连接之后,使所述vod端向mqtt服务器订阅直播和连麦的指令。
13.在本技术的第三方面,提出了一种ktv直播连麦系统,包括mqtt服务器,多个手机终端以及多个vod终端;所述mqtt服务器,用于将同一个ktv包房中的手机终端和vod终端建立通信连接;所述多个手机终端,用于发起直播后向同一ktv包房中的vod端发送直播指令或加入直播后向同一ktv包房中的vod端发送连麦指令;多个vod终端,用于在接收到所述直播指令后向同一ktv包房中的手机终端进行音视频数据推流或在接收到所述连麦指令后从同一ktv包房中的手机终端进行音视频数据拉流。
14.进一步地,还包括rtmp服务器,用于在同一个ktv包房中的手机终端和vod终端之间进行rtmp流的推送和拉取。
附图说明
15.结合附图并参考以下详细说明,本技术各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:图1所示为本技术实施例中ktv直播连麦系统的架构图。
16.图2所示为本技术实施例中ktv直播连麦方法的流程图。
17.图3所示为本技术实施例中ktv直播连麦装置的原理框图。
具体实施方式
18.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员
在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
19.在本技术的描述中,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
20.为了便于对本技术实施例的理解,首先对本技术实施例涉及的部分术语进行解释。
21.vod,英文称为“video on demand”,所以也称为“vod”, 就是根据观众的要求播放节目的视频点播系统,把用户所点击或选择的视频内容,传输给所请求的用户。
22.随着时代的发展,目前手机移动端流行起来的直播连麦功能在ktv领域还没有被应用,主要原因是ktv中的点歌屏位置固定,操作不方便,且vod端一般为单机模式,通信存在障碍,故为了解决ktv包房中vod端与手机端在直播连麦时的通信问题,本申提出了ktv直播连麦方法、装置和系统。
23.接下来对本技术实施例所涉及的系统架构进行介绍。需要说明的是,本技术实施例描述的系统架构以及业务场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
24.图1所示为本技术实施例中ktv直播连麦系统的架构图,如图1所示,该系统包括:mqtt服务器,rtmp服务器、多个手机终端以及多个vod终端,其中,mqtt服务器用于将同一个ktv包房中的手机终端和vod终端建立通信连接,手机终端用于在发起直播后向同一ktv包房中的vod端发送直播指令或加入直播后向同一ktv包房中的vod端发送连麦指令,vod终端用于在接收到直播指令后向同一ktv包房中的手机终端进行音视频数据推流或在接收到连麦指令后从同一ktv包房中的手机终端进行音视频数据拉流,rtmp服务器用于在同一个ktv包房中的手机终端和vod终端之间进行rtmp流的推送和拉取。
25.下面参照图1结合本技术的ktv直播连麦方法对ktv直播连麦系统的各设备间的交互工作进行详细的解释。
26.在本技术实施例中,首先,每个ktv包房中的vod端和同包房的手机终端基于mqtt协议建立通信连接,具体的,mqtt协议是采用发布/订阅范式来做到一对多以及应用程序多解耦的,对于mqtt服务器来说,发布者和订阅者都是客户端,在本技术中,vod端和手机终端均为mqtt服务器的客户端,因手机终端可以发起直播以及加入其它手机终端发起的直播,故对于mqtt服务器来说,手机终端为mqtt服务器的发布者,vod端为mqtt服务器的订阅者,在vod端和手机终端以及mqtt服务器建立通信连接后,vod端作为订阅者向mqtt服务器发送要订阅的主题,手机终端作为发布者向mqtt服务器对应的主题发送消息,则订阅该主题的订阅者就会收到手机终端发送的消息。
27.在本技术实施例中,手机终端发起直播后向vod端发送直播指令或加入直播后向vod端发送连麦指令,具体的,在一些申请实施例中,ktv包房可以包括第一ktv包房和第二ktv包房,第一ktv包房作为直播发起者,第二ktv包房作为直播加入者,这里的第二ktv包房仅为示意性,不限定直播加入者的数量,还可以有第三ktv包房、第四ktv包房等作为直播加入者加入到第一ktv包房中手机终端发起的直播,第一ktv包房中的手机终端在发起直播后,第一ktv包房中的手机终端通过mqtt服务器向第一ktv包房中的vod端发送直播指令,即第一ktv包房的手机终端向mqtt服务器发送直播消息后,作为订阅者的同包房的vod端可以
接收到手机终端的直播消息,完成通信连接;第二ktv包房中手机终端在加入第一ktv包房中的手机终端发起直播后,第二ktv包房中手机终端通过mqtt服务器向第二ktv包房中的vod端发送连麦指令,即第二ktv包房中的手机终端在加入了第一ktv包房的手机终端发起的直播后,向mqtt服务器发送连麦消息,作为订阅者的同包房的vod端可接收到连麦消息与同包房的手机终端完成通信连接。
28.在一种可实现的方式中,可在ktv包房中的vod端安装通信软件,来与mqtt服务器进行通信,同时订阅相关的主题,接收mqtt服务器发送的消息,在手机端使用公众号或者小程序来与mqtt服务器连接,进而和vod端建立通信连接,因一个ktv中存在多个包房,也就存在着每个vod端都向mqtt服务器订阅了直播和连麦的主题指令,则可在手机终端使用的公众号或者小程序中设定选项,供手机用户选择该手机终端要连接的vod端。
29.在本技术实施例中,vod端在接收到直播指令后向手机终端进行音视频数据推流或在接收到连麦指令后从手机终端进行音视频数据拉流。在一种可实现的方式中,vod端和手机终端之间的音视频数据流的推送和拉取可依靠rtmp协议来实现,具体地,第一ktv包房中的vod端在接收到直播指令后通过rtmp服务器向第一ktv包房中手机终端推送摄像头和麦克风的rtmp流;第二ktv包房中的vod端在接收到连麦指令后从rtmp服务器拉取第二ktv包房中的手机终端的音视频合成rtmp流。
30.rtmp是实时消息传输协议,一种设计用来进行实时数据通信的网络协议,每一个推流码地址唯一指向单个的直播活动,第一ktv包房中的vod端接收到是直播指令时,说明vod端需要将自身的麦克风及摄像头所录制到的音视频推送给手机终端进行直播,其中推流的过程包括:通过摄像头进行视频采集,视频原始数据格式为rgb或者yuv,通过麦克风进行音频采集,音频原始数据格式为pcm;将视频文件编码格式从rgb(yuv)转换为h.264(h.265),将音频文件编码格式从pcm变为aac;将视频与音频文件编码变为有多媒体容器格式(multimedia container format),此时音频和视频结合成了rtmp packet;利用rtmp协议传入推流地址来定位推流目标。通过上述步骤即可完成vod端麦克风及摄像头的音视频流的推送。第二ktv包房中的vod端在接收到连麦指令时,说明其需要将与其连接的手机终端的直播内容拉取过来进行播放,其中拉取音视频流的过程为:基于rtmp协议从rtmp服务器获取拉流url;将处于多媒体容器格式的流解复用成为视频编码格式的视频数据和音频编码格式的音频数据;使用硬解码或软解码来解码视频数据与音频数据,解码后的视频数据格式为rgb或者yuv,音频数据格式为pcm;进行音画同步操作;同步后的音频或者视频被送到vod端进行播放。通过采用上述步骤即可完成vod端拉取手机终端的音视频的合成rtmp流。
31.以上为ktv直播连麦系统中各个设备之间的交互方法,下面对本技术实施例中ktv直播连麦方法进行解释,图2所示为本技术实施例中ktv直播连麦方法的流程图,如图2所示,该方法包括:步骤s201,基于mqtt协议将ktv包房中的vod端与手机终端建立通信连接。
32.步骤s202,手机终端发起直播后向vod端发送直播指令或加入直播后向vod端发送连麦指令。
33.步骤s203,vod端在接收到直播指令后向手机终端进行音视频数据推流或在接收到连麦指令后从手机终端进行音视频数据拉流。
34.在一些申请实施例中, ktv包房包括第一ktv包房和第二ktv包房;手机终端发起直播后向vod端发送直播指令或加入直播后向vod端发送连麦指令包括,第一ktv包房中的手机终端发起直播后,第一ktv包房中的手机终端通过mqtt服务器向第一ktv包房中的vod端发送直播指令;第二ktv包房中手机终端加入第一ktv包房中的手机终端发起直播后,第二ktv包房中手机终端通过mqtt服务器向第二ktv包房中的vod端发送连麦指令。
35.在一些申请实施例中, vod端在接收到直播指令后向手机终端进行音视频数据推流或在接收到连麦指令后从手机终端进行音视频数据拉流包括,第一ktv包房中的vod端在接收到直播指令后通过rtmp服务器向第一ktv包房中手机终端推送摄像头和麦克风的rtmp流;第二ktv包房中的vod端在接收到连麦指令后从rtmp服务器拉取第二ktv包房中的手机终端的音视频合成rtmp流。
36.在一些申请实施例中,基于mqtt协议将ktv包房中的vod端与手机终端建立通信连接之后包括,vod端向mqtt服务器订阅直播和连麦的指令。
37.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的ktv直播连麦方法的具体工作过程,可以参考前述ktv直播连麦系统的各设备间交互方法实施例的对应过程,在此不再赘述应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
38.以上是关于方法实施例的介绍,以下通过装置实施例,对本公开所述方案进行进一步说明。
39.图3所示为本技术实施例中ktv直播连麦装置的原理框图,如图3所示,该装置包括:通信模块301,用于基于mqtt协议将ktv包房中的vod端与手机终端建立通信连接。
40.指令发送模块302,用于手机终端发起直播后向vod端发送直播指令或加入直播后向vod端发送连麦指令。
41.推拉流模块303,用于在vod端在接收到直播指令后向手机终端进行音视频数据推流或在接收到连麦指令后从手机终端进行音视频数据拉流。
42.在一些申请实施例中, ktv包房包括第一ktv包房和第二ktv包房;指令发送模块具体用于,在第一ktv包房中的手机终端发起直播后,第一ktv包房中的手机终端通过mqtt服务器向第一ktv包房中的vod端发送直播指令;在第二ktv包房中手机终端加入第一ktv包房中的手机终端发起直播后,第二ktv包房中手机终端通过mqtt服务器向第二ktv包房中的vod端发送连麦指令。
43.在一些申请实施例中,推拉流模块具体用于,在第一ktv包房中的vod端在接收到直播指令后通过rtmp服务器向第一ktv包房中手机终端推送摄像头和麦克风的rtmp流;
在第二ktv包房中的vod端在接收到连麦指令后从rtmp服务器拉取第二ktv包房中的手机终端的音视频合成rtmp流。
44.在一些申请实施例中,该装置还包括订阅模块,用于在基于mqtt协议将ktv包房中的vod端与手机终端建立通信连接之后,使vod端向mqtt服务器订阅直播和连麦的指令。
45.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述ktv直播连麦系统实施例中的对应过程,在此不再赘述。
46.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(digital subscriber line,dsl))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(digital versatile disc,dvd))或半导体介质(例如:固态硬盘(solid state disk,ssd))等。值得注意的是,本技术实施例提到的计算机可读存储介质可以为非易失性存储介质,换句话说,可以是非瞬时性存储介质。
47.以上描述仅为本技术的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本技术中所涉及的申请范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离前述申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本技术中申请的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
48.以上所述仅是本技术的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1