CN114760514B - 直播间数据传输方法、装置、设备及存储介质 - Google Patents
直播间数据传输方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN114760514B CN114760514B CN202210338356.0A CN202210338356A CN114760514B CN 114760514 B CN114760514 B CN 114760514B CN 202210338356 A CN202210338356 A CN 202210338356A CN 114760514 B CN114760514 B CN 114760514B
- Authority
- CN
- China
- Prior art keywords
- game
- data
- live
- operation instruction
- client
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 73
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000001360 synchronised effect Effects 0.000 claims abstract description 55
- 230000002452 interceptive effect Effects 0.000 claims abstract description 48
- 230000033001 locomotion Effects 0.000 claims description 62
- 230000003993 interaction Effects 0.000 claims description 32
- 230000006835 compression Effects 0.000 claims description 14
- 238000007906 compression Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 13
- 230000008859 change Effects 0.000 claims description 12
- 238000007667 floating Methods 0.000 claims description 8
- 230000001133 acceleration Effects 0.000 claims description 7
- 238000013507 mapping Methods 0.000 claims description 4
- 238000009877 rendering Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 14
- 230000008569 process Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
- H04N21/43076—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/45—Controlling the progress of the video game
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/14—Multichannel or multilink protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/437—Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4781—Games
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6156—Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请涉及一种直播间数据传输方法、装置、设备及存储介质,属于网络直播技术领域。本申请中,客户端接收用户的操作指令,若操作指令为游戏操作指令,客户端获取直播间对应游戏的游戏运算规则,根据游戏运算规则及游戏操作指令获取游戏同步数据,对游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端,若操作指令为互动操作指令,客户端获取互动操作数据,通过第二数据传输通道将互动操作数据发送至第二服务器端,将直播间的互动操作与游戏操作进行分离,并通过不同的数据传输通道独立地进行数据传输,避免两者互相影响,可以有效提高直播间的数据传输效率。
Description
技术领域
本申请涉及网络直播技术领域,特别是涉及一种直播间数据传输方法、装置、设备及存储介质。
背景技术
网络直播是指主播通过网络直播平台在网络上向观众分享直播音视频流的技术。借助开放、共享的网络直播平台,人们可以更加方便地展示自己的才华,在才艺展示过程中,观众可以通过参与直播互动来表达对主播的喜爱,受到观众喜爱的主播可以获得网络直播平台的分成,得到一定的收益;由于直播工作不受主播学历以及直播场地影响,普通人均可以通过直播的方式实现就业,可以有效带动社会就业。
在观看直播过程中,观众可以通过参与直播界面的游戏来与直播间内的观众或主播进行互动,但对于多人在线游戏,在游戏过程中往往需要在客户端和服务器端进行大量数据的传输,若数据传输不及时则会影响游戏的同步效果,影响观众的直播互动体验。
发明内容
基于此,本申请的目的在于,提供一种直播间数据传输方法、装置、设备及存储介质,提出一种直播间数据传输方法,可以提高游戏互动过程中同步数据的传输效率,从而提高直播间游戏互动的同步效果。
根据本申请实施例的第一方面,提供一种直播间数据传输方法,所述方法包括:
客户端接收用户的操作指令;
若所述操作指令为游戏操作指令,客户端获取直播间对应游戏的游戏运算规则,根据所述游戏运算规则及所述游戏操作指令获取游戏同步数据;
客户端对所述游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端;
若所述操作指令为互动操作指令,客户端获取互动操作数据,通过第二数据传输通道将所述互动操作数据发送至第二服务器端。
根据本申请实施例的第二方面,提供一种直播间数据传输装置,所述装置包括;
指令接收模块,用于接收用户的操作指令;
游戏同步数据获取模块,用于若所述操作指令为游戏操作指令,获取直播间内对应游戏的游戏运算规则,根据所述游戏运算规则及所述游戏操作指令获取游戏同步数据;
第一发送模块,用于对所述游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端;
第二发送模块,用于若所述操作指令为互动操作指令,获取互动操作数据,通过第二数据传输通道将所述互动操作数据发送至第二服务器端。
根据本申请实施例的第三方面,提供一种电子设备,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行任意一项所述的直播间数据传输方法。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,其上储存有计算机程序,该计算机程序被处理器执行时实现任意一项所述的直播间数据传输方法。
本申请中,客户端接收用户的操作指令,若操作指令为游戏操作指令,客户端获取直播间对应游戏的游戏运算规则,根据游戏运算规则及游戏操作指令获取游戏同步数据,对游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端,若操作指令为互动操作指令,客户端获取互动操作数据,通过第二数据传输通道将互动操作数据发送至第二服务器端,将直播间的互动操作与游戏操作进行分离,并通过不同的数据传输通道独立地进行数据传输,避免两者互相影响,可以有效提高直播间的数据传输效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
为了更好地理解和实施,下面结合附图详细说明本申请。
附图说明
图1为本申请一个实施例提供的一种直播间数据传输方法的应用环境的示意图;
图2为本申请一个实施例提供的一种直播间数据传输方法的流程图;
图3为本申请一个实施例提供的一种直播间显示界面的示例图;
图4为本申请另一个实施例提供的一种直播间显示界面的示例图;
图5为本申请另一个实施例提供的一种直播间数据传输方法的流程图;
图6为本申请一个实施例提供的一种直播间数据传输装置的结构示意图;
图7为本申请一个实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。
应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。在此所使用的词语“如果”/“若”可以被解释成为“在……时”或“当……时”或“响应于确定”。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
请参阅图1,图1为本申请一个实施例提供的一种直播点赞互动方法的应用场景示意图,该应用场景包括本申请实施例提供的服务器101、主播端102和观众端103。主播端102与观众端103通过服务器100进行交互。
其中,所述主播端102是指发送网络直播视频的一端,通常来说是网络直播中主播所采用的客户端。
所述观众端103是指接收和观看网络直播视频的一端,通常来说是网络直播中观看视频的观众所采用的客户端。
所述主播端102和观众端103所指向的硬件,本质上是指计算机设备,具体地,如图1所示,其可以是智能手机、智能交互平板和个人计算机等类型的计算机设备。所述主播端102和观众端103均可以通过公知的网络接入方式接入互联网,与服务器101建立数据通信链路。
所述服务器101作为一个业务服务器,其可以负责进一步连接起相关音频数据服务器、视频流服务器以及其他提供相关支持的服务器等,以此构成逻辑上相关联的服务机群,来为相关的终端设备,例如图1中所示的主播端102和观众端103提供服务。
本申请实施例中,主播端102与观众客户端103可以加入同一个直播间(即直播频道),上述的直播间是指依靠互联网技术实现的一种聊天室,通常具备音视频播控功能。主播用户通过主播端102在直播间内进行直播,观众端103的观众可以登录服务器10进入直播间观看直播。
在直播间内,主播与观众之间可以通过语音、视频、文字等公知的线上交互方式来实现互动,一般是主播以音视频流的形式为观众用户表演节目,并且在互动过程中还可产生经济交易行为。当然,直播间的应用形态并不局限于在线娱乐,也可推广到其他相关场景中,例如视频会议场景、产品推介销售场景以及其他任何需要类似互动的场景中。
具体地,观众观看直播的过程如下:观众可以点击访问安装在观众端103上的直播应用程序(例如YY),并选择进入任意一个直播间,触发观众端103为该观众加载直播间界面,该直播间界面内包括若干交互组件,通过加载这些交互组件可以使观众在直播间内观看直播,并进行多种线上互动。
现有技术中,为提高直播间的互动趣味性,主播端102可以在直播间内创建直播间(即游戏频道),将对应用户标识的观众端拉入直播间内,观众端103可以选择在直播间内参与游戏互动,成为游戏玩家,观众端103也可以选择观看直播间内的游戏互动,成为游戏观众。
然而,对于多人在线游戏,游戏过程中为了实现游戏同步,往往需要在多个客户端以及服务器端之间进行多次游戏同步数据传输,游戏同步数据量大,对网络带宽的要求较高,若网络质量较差则会导致数据传输不及时,影响游戏的同步效果,影响观众的直播互动体验。
因此,针对上述问题,本申请提供了一种直播间数据传输方法。请参阅图2,本申请实施例提供一种直播间数据传输方法,应用于直播间,包括如下步骤:
S101:客户端接收用户的操作指令;
客户端可以是直播间内参与游戏互动的游戏玩家所在的客户端。
其中,直播间可以为游戏服务器端创建的一个虚拟的房间,该直播间内设置有可供用户进行游戏互动的游戏区域以及供用户进行直播互动的非游戏区域。
直播间可以是开放式的,所有直播间内的用户均可以加入直播间;直播间也可以是封闭式的,只有受到邀请的用户可以加入直播间,其中,直播间的邀请用户可以由直播间的创建者,例如主播或者主持人确定。
在一个可选的实施例中,所有直播间内的用户均可以成为游戏玩家,在另一个可选的实施例中,也可以限定游戏玩家为在直播间麦序上的用户。
可以理解的是,麦序上的用户是指在直播间内具有发言权限的用户,主持人以及被选中的游戏玩家属于在麦序上的用户。
S102:若所述操作指令为游戏操作指令,客户端获取直播间对应游戏的游戏运算规则,根据所述游戏运算规则及所述游戏操作指令获取游戏同步数据;
游戏操作指令可以是实施相应游戏操作的游戏操作指令。
游戏同步数据为客户端执行所述游戏操作指令后产生的游戏效果数据,该游戏同步数据可以根据游戏运算规则以及游戏操作指令计算得到,其中,游戏运算规则可以为用户预先从游戏服务器获取。
游戏同步数据可以用于供其他客户端实现游戏过程的同步。
S103:客户端对所述游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端;
在对游戏同步数据进行压缩时,可以根据游戏同步数据的具体的数据内容或数据类型,选取内存占用最小的压缩方式对游戏同步数据进行压缩。
在一个实施例中,对所述游戏同步数据进行压缩具体包括:
根据所述游戏同步数据的数据类型以及字节长度,从预设的多种压缩方式中获取与其数据类型以及字节长度对应的压缩方式,对所述游戏同步数据进行压缩。
其中,游戏同步数据的可以包括单精度浮点数、双精度浮点数和整型数据等数据类型。
不同数据类型以及字节长度的数据分别对应有一种压缩方式,压缩是指在不丢失有用信息的前提下,缩减数据量以减少存储空间,提高其传输、存储和处理效率,或按照一定的算法对数据进行重新组织,减少数据的冗余和存储的空间。
所述压缩方式包括但不限于json编码压缩、protobuf编码压缩、数据取整、数据合并等。具体地,在本申请实施例中,所述预设的多种压缩方式包括:
若所述游戏同步数据的数据类型为浮点数,对其进行放大取整,转换为整型数据;
若所述游戏同步数据的字节长度小于预设阈值,将所述字节长度小于预设阈值的若干个游戏同步数据合并存储在预设的二进制数值中。
对于单精度浮点数(4字节)或者双精度浮点数(8字节)的数据,对其进行放大取整,转换为2字节或4字节的整型数据,降低游戏同步数据的内存占用。
对于字节长度较小的数据,则可以将其合并存储在一个二进制数值中,以降低传输的数据量,提高传输效率。
其中,二进制数值的位数可以根据游戏同步数据的大小进行确定,例如可以设置为8位的二进制数值。
优选地,若游戏同步数据为不分正负的数据,还可以进一步将其转换为1字节的无符号整数,以进一步压缩数据。
现有技术中,在对游戏同步数据进行传输时,往往将其转换为更加便于传输的protobuf格式,由于protobuf协议本身会额外带一些字段,影响生成的数据包的大小。因此,针对上述问题,本申请在转换为整型数据之后,还包括:
按照预设的映射规则,将所述整型数据存储在二进制数组中的对应位置;其中,所述映射规则用于确定所述整型数据在所述二进制数组中的位置。
二进制数组的大小可以根据游戏同步数据的具体内容进行设置。例如,对于起始位置坐标、结束位置、速度和加速度依次放在该二进制数组的第16、32、48等位置。在解压时,只需读取二进制数据对应位置的数据,即可得到游戏同步数据。
第一数据传输通道可以用于实现客户端和第一服务器端之间的游戏同步数据的接收和发送。
其中,第一数据传输通道可以是基于WebSocket协议的长连接通道,用于为用户在游戏互动过程中提供服务。
第一服务器端可以是游戏服务器端,游戏服务器端可以为直播间的游戏互动提供相应的游戏互动服务。
S104:若所述操作指令为互动操作指令,客户端获取互动操作数据,通过第二数据传输通道将所述互动操作数据发送至第二服务器端
互动操作指令用于用户对直播间执行的互动操作,其中,互动操作包括但不限于上麦、下麦、点赞、发言、赠送虚拟礼物等。
互动操作数据为用户在直播间内执行互动操作指令后产生的互动数据。
优选的,所述客户端获取互动操作数据的步骤具体包括:
获取直播间对应的互动运算规则,获取互动操作数据。
在该实施例中,将直播间对应的互动运算规则和游戏的游戏运算规则进行分离,根据操作指令调用对应的运算规则进行数据处理,游戏同步数据和互动操作数据之间相互独立,可以提高数据的获取效率。
第二数据传输通道为与第一数据传输通道不同的数据传输通道,互动操作数据无需在游戏同步过程中进行传输,因此,本申请实施例中利用不同的数据传输通道实现互动操作数据与游戏同步数据的独立传输,以避免数据传输通道被其中一个数据占用影响另一个数据的正常传输。
第二服务器端可以是房间服务器端,房间服务器端可以为直播间的直播互动业务提供相应的直播互动服务。
在本申请实施例中,客户端接收用户的操作指令,若操作指令为游戏操作指令,客户端获取直播间对应游戏的游戏运算规则,根据游戏运算规则及游戏操作指令获取游戏同步数据,对游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端,若操作指令为互动操作指令,客户端获取互动操作数据,通过第二数据传输通道将互动操作数据发送至第二服务器端,将直播间的互动操作与游戏操作进行分离,并通过不同的数据传输通道独立地进行数据传输,避免两者互相影响,可以有效提高直播间的数据传输效率。
请参阅图3,其为一个实施例中直播间界面的示意图。如图3所示,直播间界面可以包括游戏区域20和互动区域30。
其中,游戏区域20可以包括多个游戏元素201,用户可在游戏区域20触发或移动游戏元素201生成游戏操作指令,以执行相应的游戏操作。
互动区域30可以包括多个互动控件301,用户可通过触发对应互动控件301生成互动操作指令,以执行对应的互动操作,所述互动操作包括但不限于点赞、发言、赠送虚拟礼物等。
游戏运算规则用于指示游戏过程中游戏区域各元素如何根据用户的游戏指令进行运动,具体地,游戏运算规则可以包括游戏区域内各元素的运动参数以及运动计算公式等信息。
游戏同步数据用于确定所述游戏区域内游戏元素的运动轨迹。
在一个实施例中,所述获取游戏同步数据的步骤包括:
客户端根据所述游戏运算规则确定待获取的运动参数;其中,所述运动参数包括所述游戏元素的位置变化参数和速度变化参数;
客户端根据所述操作指令及所述游戏运算规则获取所述游戏元素的运动参数,得到游戏同步数据。
运动参数用于确定所述游戏区域内游戏元素的运动轨迹。
具体地,运动参数可以用于确定游戏元素在运动过程中的位置变化信息、碰撞信息或速度变化信息,其中,位置变化信息可以包括游戏元素的起始位置信息以及游戏元素的结束位置信息,其中,结束位置可以是游戏元素结束运动时的位置信息,碰撞信息可以包括碰撞的游戏元素的数量以及碰撞的游戏元素的标识,速度变化信息可以包括游戏元素运动过程中的运动速度以及运动加速度。
请参阅图4,其为一个实施例中显示界面的示意图;图4所述的显示界面为桌球游戏界面,该游戏区域内包括多个与桌球相关的游戏元素,例如球杆301和多个球体302。
用户可以控制球杆301以一定力度和角度进行击球操作。此时,游戏操作指令可以包括击球角度信息、击球力度信息以及球杆301作用的球体标识。
球杆301作用在某个球体上使得该球体从静止状态转变为运动状态,该球体运动过程中碰撞游戏区域内的其它球体,使得游戏区域内的多个球体从静止状态转变为运动状态。
当用户的游戏操作指令仅作用于游戏区域内的某一个或几个游戏元素时,对于其他未发生运动的游戏元素,则无需将其运动参数作为游戏同步数据进行传输,以降低游戏同步数据的数据量。因此,在一个可选的实施例中,所述位置变化参数包括所述游戏元素的起始位置信息和所述游戏元素停止运动后的结束位置信息;
所述获取游戏同步数据的步骤具体包括:
客户端根据所述游戏元素的起始位置信息和结束位置信息,确定发生运动的游戏元素标识;
获取发生运动的游戏元素标识对应的元素的运动参数,得到游戏同步数据。
在该实施例中,仅获取发生运动的元素的运动参数,例如,对于未被击中的桌球,无需获取其运动参数,在获取游戏同步数据时,可以选择丢弃未发生运动的游戏元素的运动参数,从而提高客户端获取游戏同步数据的效率,降低游戏同步数据的数据量。
如图5所述,在一个实施例中,所述方法还包括以下步骤:
S105:所述第一服务器端将所述压缩数据转发至直播间内的其他客户端;
S106:所述其他客户端对所述压缩数据进行解压,获取游戏同步数据,根据所述游戏同步数据在所述直播间界面展示所述游戏区域内的游戏元素的运动轨迹。
其他客户端可以是指与发出游戏操作指令的客户端处于同一直播间的客户端;其中,其他客户端可以是直播间内的主播端、直播间除上述发出游戏操作指令的客户端的游戏玩家所在的客户端以及直播间观看游戏互动的游戏观众所在的客户端。
其他客户端可以根据游戏同步数据,在其对应的直播间界面中看到游戏玩家的游戏过程。以桌球为例,其他客户端根据球体的运动数据,在其直播间内渲染球体的运动轨迹,并更新游戏区域内各球体的位置信息。
如图4所示,多个球体在游戏区域的运动轨迹较为复杂,若直接将多个球体运动过程中的所有运动参数来作为游戏同步数据,每一次游戏操作都会带来大量的游戏同步数据,影响游戏同步数据的传输效率。
因此,本申请实施例中,根据游戏运算规则确定待获取的运动参数,这里的待获取的运动参数可以是用于确定游戏元素的位置变化以及速度变化的关键运动参数,该关键运动参数可以包括游戏元素运动起始位置、运动结束位置、运动速度和加速度等信息。
具体地,所述游戏同步数据包括游戏元素的初始位置信息、运动加速度信息、运动速度信息以及游戏元素结束运动后的结束位置信息;
根据所述游戏同步数据在所述直播间界面展示所述游戏区域内的游戏元素的运动轨迹的步骤包括:
根据所述游戏元素的初始位置信息、运动加速度信息、运动速度信息以及结束位置信息,在所述直播间界面内渲染并展示所述游戏元素的运动轨迹。
在一个可选的实施例中,在执行游戏操作指令之后,客户端还可以计算该游戏操作指令获取的游戏分值,并上报至第一服务器端以实现客户端的游戏分值更新。
具体地,在获取直播间内对应游戏的游戏运算规则之后,还包括以下步骤:
客户端根据游戏操作指令和所述游戏运算规则,获取游戏得分信息;
客户端将所述游戏得分信息进行压缩并通过第三数据传输通道传输至所述第一服务器端;其中,所述游戏得分信息包括游戏分值和客户端标识;
所述第一服务器端对所述压缩的游戏得分信息进行解压,根据所述游戏得分信息更新对应客户端标识的游戏分值。
例如:桌球游戏中会判断球杆碰撞的球体是否为目标球体(通常为白球),若是,判断该球体的最终位置是否在球袋内,若否,再判断该球体最先碰撞的一个球体是否为该对应的计分球体,若是,继续判断该球体在此次游戏操作后的最终位置是否在球袋内,有几个球体在此次游戏操作后的最终位置在球袋内以及相应的游戏分值,最后,得到该游戏玩家此次游戏操作的游戏分值,再根据该游戏玩家此次游戏操作的游戏分值,更新游戏玩家对应的游戏分值。
在本实施例中,可以在游戏玩家每参与一场游戏互动后,更新其该游戏下的游戏分值,从而在其游戏分值满足奖励条件时,下发奖励数据至其对应的客户端中,从而提高用户参与游戏互动的积极性,进一步地提高其直播参与度,改善直播互动体验。
在一个可选的实施例中,第一服务器端会统计游戏互动的游戏结果信息以及多场游戏互动的游戏结果信息,形成游戏榜单,将游戏榜单下发到对应的客户端中,从而使所有用户可以查看游戏榜单,了解游戏结果。同时,用户还可以将榜单分享到第三方平台,便于吸引更多的用户参与游戏互动。
在一个可选的实施例中,可以基于protobuf协议,对所述游戏得分信息进行编码压缩。相较于现有的json编码压缩,基于protobuf协议进行编码压缩占用的空间更小,传输效率和编解码速度更快,可以有效提高游戏得分数据的更新效率。
本实施例提供一种直播间数据传输装置,可以用于执行本申请实施例的直播间数据传输方法。对于本实施例中未披露的细节,请参照本申请的方法实施例。
请参阅图6,图6是本申请实施例公开的一种直播间数据传输装置的结构示意图。所述的直播间数据传输装置包括:
指令接收模块401,用于接收用户的操作指令;
游戏同步数据获取模块402,用于若所述操作指令为游戏操作指令,获取直播间内对应游戏的游戏运算规则,根据所述游戏运算规则及所述游戏操作指令获取游戏同步数据;
第一发送模块403,用于对所述游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端;
第二发送模块404,用于若所述操作指令为互动操作指令,获取互动操作数据,通过第二数据传输通道将所述互动操作数据发送至第二服务器端。
在本申请实施例中,该直播间数据传输装置应用于计算机设备中。需要说明的是,上述实施例提供的直播间数据传输装置在执行直播间数据传输方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分为不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的直播间数据传输装置与直播间数据传输方法属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
本实施例提供一种电子设备,可以用于执行本申请实施例的直播间数据传输方法的全部或部分步骤。对于本实施例中未披露的细节,请参照本申请的方法实施例。
请参阅图7,图7为本申请实施例提供的电子设备的结构示意图。所述电子设备500可以但不限于是各种服务器、个人计算机、笔记本电脑、智能手机、平板电脑等设备的一个或多个的组合。
在本申请较佳实施例中,所述电子设备500包括存储器501、至少一个处理器502、至少一条通信总线503及收发器504。
本领域技术人员应该了解,图7示出的电子设备的结构并不构成本申请实施例的限定,既可以是总线型结构,也可以是星形结构,所述电子设备500还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。
在一些实施例中,所述电子设备500是一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的设备,其硬件包括但不限于微处理器、专用集成电路、可编程门阵列、数字处理器及嵌入式设备等。所述电子设备500还可包括客户设备,所述客户设备包括但不限于任何一种可与客户通过键盘、鼠标、遥控器、触摸板或声控设备等方式进行人机交互的电子产品,例如,个人计算机、平板电脑、智能手机、数码相机等。
需要说明的是,所述电子设备500仅为举例,其他现有的或今后可能出现的电子产品如可适应于本申请,也应包含在本申请的保护范围以内,并以引用方式包含于此。
在一些实施例中,所述存储器501中存储有计算机程序,所述计算机程序被所述至少一个处理器502执行时实现如所述实施例一的直播间数据传输方法中的全部或者部分步骤。所述存储器501包括只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable Read-Only Memory,PROM)、可擦除可编程只读存储器(ErasableProgrammable Read-Only Memory,EPROM)、一次可编程只读存储器(One-timeProgrammable Read-Only Memory,OTPROM)、电子擦除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
在一些实施例中,所述至少一个处理器502是所述电子设备500的控制核心(Control Unit),利用各种接口和线路连接整个电子设备500的各个部件,通过运行或执行存储在所述存储器501内的程序或者模块,以及调用存储在所述存储器501内的数据,以执行电子设备500的各种功能和处理数据。例如,所述至少一个处理器502执行所述存储器中存储的计算机程序时实现本申请实施例中所述的直播间数据传输方法的全部或者部分步骤;或者实现直播间数据传输装置的全部或者部分功能。所述至少一个处理器502可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(CentralProcessing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。
在一些实施例中,所述至少一条通信总线503被设置为实现所述存储器501以及所述至少一个处理器502等之间的连接通信。
所述电子设备500还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
本实施例提供一种计算机可读存储介质,其上储存有计算机程序,所述指令适于由处理器加载并执行本申请实施例一的直播间数据传输方法,具体执行过程可以参见实施例一的具体说明,在此不进行赘述。
对于设备实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的设备实施例仅仅是示意性的,其中所述作为分离部件说明的组件可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种直播间数据传输方法,其特征在于,所述方法包括:
客户端接收用户的操作指令;
若所述操作指令为游戏操作指令,客户端获取直播间对应游戏的游戏运算规则,根据所述游戏运算规则及所述游戏操作指令获取游戏同步数据;所述直播间包括设有多个游戏元素的游戏区域;所述游戏同步数据包括发生运动的游戏元素的初始位置信息和所述游戏元素结束运动后的结束位置信息;
客户端对所述游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端;
所述第一服务器端将所述压缩数据转发至直播间内的其他客户端;
所述其他客户端对所述压缩数据进行解压,获取游戏同步数据,根据所述游戏同步数据在所述直播间界面展示游戏区域内的游戏元素的运动轨迹;
若所述操作指令为互动操作指令,客户端获取互动操作数据,通过第二数据传输通道将所述互动操作数据发送至第二服务器端。
2.根据权利要求1所述的直播间数据传输方法,其特征在于,所述游戏同步数据用于确定所述游戏区域内游戏元素的运动轨迹;
所述获取游戏同步数据的步骤包括:
客户端根据所述游戏运算规则确定待获取的运动参数;其中,所述运动参数包括所述游戏元素的位置变化参数和速度变化参数;
客户端根据所述操作指令及所述游戏运算规则获取所述游戏元素的运动参数,得到游戏同步数据。
3.根据权利要求2所述的直播间数据传输方法,其特征在于,所述位置变化参数包括所述游戏元素的起始位置信息和所述游戏元素停止运动后的结束位置信息;
所述获取游戏同步数据的步骤具体包括:
客户端根据所述游戏元素的起始位置信息和结束位置信息,确定发生运动的游戏元素标识;
获取发生运动的游戏元素标识对应的元素的运动参数,得到游戏同步数据。
4.根据权利要求1所述的直播间数据传输方法,其特征在于,对所述游戏同步数据进行压缩具体包括:
根据所述游戏同步数据的数据类型以及字节长度,从预设的多种压缩方式中获取与其数据类型以及字节长度对应的压缩方式,对所述游戏同步数据进行压缩。
5.根据权利要求4所述的直播间数据传输方法,其特征在于,所述预设的多种压缩方式包括:
若所述游戏同步数据的数据类型为浮点数,对其进行放大取整,转换为整型数据;
若所述游戏同步数据的字节长度小于预设阈值,将所述字节长度小于预设阈值的若干个游戏同步数据合并存储在预设的二进制数值中。
6.根据权利要求5所述的直播间数据传输方法,其特征在于,在转换为整型数据之后,还包括:
按照预设的映射规则,将所述整型数据存储在二进制数组中的对应位置;其中,所述映射规则用于确定所述整型数据在所述二进制数组中的位置。
7.根据权利要求2所述的直播间数据传输方法,其特征在于,所述游戏同步数据包括游戏元素的初始位置信息、运动加速度信息、运动速度信息以及游戏元素结束运动后的结束位置信息;
根据所述游戏同步数据在所述直播间界面展示所述游戏区域内的游戏元素的运动轨迹的步骤包括:
根据所述游戏元素的初始位置信息、运动加速度信息、运动速度信息以及结束位置信息,在所述直播间界面内渲染并展示所述游戏元素的运动轨迹。
8.根据权利要求1所述的直播间数据传输方法,其特征在于,所述客户端获取互动操作数据的步骤具体包括:
客户端获取直播间对应的互动运算规则,获取互动操作数据。
9.根据权利要求6所述的直播间数据传输方法,其特征在于,在获取直播间内对应游戏的游戏运算规则之后,还包括以下步骤:
客户端根据游戏操作指令和所述游戏运算规则,获取游戏得分信息;
客户端将所述游戏得分信息进行压缩并通过第三数据传输通道传输至所述第一服务器端;其中,所述游戏得分信息包括游戏分值和客户端标识;
所述第一服务器端对所述压缩的游戏得分信息进行解压,根据所述游戏得分信息更新对应客户端标识的游戏分值。
10.一种直播间数据传输装置,其特征在于,所述装置包括:
指令接收模块,用于接收用户的操作指令;
游戏同步数据获取模块,用于若所述操作指令为游戏操作指令,获取直播间内对应游戏的游戏运算规则,根据所述游戏运算规则及所述游戏操作指令获取游戏同步数据;所述直播间包括设有多个游戏元素的游戏区域;所述游戏同步数据包括发生运动的游戏元素的初始位置信息和所述游戏元素结束运动后的结束位置信息;
第一发送模块,用于对所述游戏同步数据进行压缩,通过第一数据传输通道将压缩数据发送至第一服务器端,使所述第一服务器端将所述压缩数据转发至直播间内的其他客户端,所述其他客户端对所述压缩数据进行解压,获取游戏同步数据,根据所述游戏同步数据在所述直播间界面展示游戏区域内的游戏元素的运动轨迹;
第二发送模块,用于若所述操作指令为互动操作指令,获取互动操作数据,通过第二数据传输通道将所述互动操作数据发送至第二服务器端。
11.一种电子设备,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1至9任意一项所述的直播间数据传输方法。
12.一种计算机可读存储介质,其上储存有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至9任意一项所述的直播间数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210338356.0A CN114760514B (zh) | 2022-04-01 | 2022-04-01 | 直播间数据传输方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210338356.0A CN114760514B (zh) | 2022-04-01 | 2022-04-01 | 直播间数据传输方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114760514A CN114760514A (zh) | 2022-07-15 |
CN114760514B true CN114760514B (zh) | 2024-05-28 |
Family
ID=82329540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210338356.0A Active CN114760514B (zh) | 2022-04-01 | 2022-04-01 | 直播间数据传输方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114760514B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115414664A (zh) * | 2022-08-31 | 2022-12-02 | 深圳十米网络科技有限公司 | 体感设备的数据传输方法 |
CN115282596A (zh) * | 2022-09-01 | 2022-11-04 | 深圳十米网络科技有限公司 | 体感设备的控制方法、装置、设备及计算机可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752667A (zh) * | 2012-07-17 | 2012-10-24 | 王加俊 | 一种多流流媒体直播互动***及直播互动方法 |
CN109395376A (zh) * | 2018-11-06 | 2019-03-01 | 网易(杭州)网络有限公司 | 基于游戏直播的交互方法、装置和*** |
CN110149526A (zh) * | 2019-05-29 | 2019-08-20 | 北京达佳互联信息技术有限公司 | 一种直播互动***及其控制方法、装置与存储介质 |
CN110519611A (zh) * | 2019-08-23 | 2019-11-29 | 腾讯科技(深圳)有限公司 | 直播互动方法、装置、电子设备及存储介质 |
CN110532466A (zh) * | 2019-08-21 | 2019-12-03 | 广州华多网络科技有限公司 | 直播平台训练数据的处理方法、装置、存储介质及设备 |
CN112422998A (zh) * | 2020-10-26 | 2021-02-26 | 网易(杭州)网络有限公司 | 基于云游戏的直播互动的方法、装置和电子设备 |
WO2021114795A1 (zh) * | 2019-12-11 | 2021-06-17 | 厦门雅基软件有限公司 | 云游戏直播方法、云游主播端、观众端及计算机可读存储介质 |
CN114257830A (zh) * | 2021-12-21 | 2022-03-29 | 广州方硅信息技术有限公司 | 直播游戏互动方法、***、装置及计算机设备 |
-
2022
- 2022-04-01 CN CN202210338356.0A patent/CN114760514B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102752667A (zh) * | 2012-07-17 | 2012-10-24 | 王加俊 | 一种多流流媒体直播互动***及直播互动方法 |
CN109395376A (zh) * | 2018-11-06 | 2019-03-01 | 网易(杭州)网络有限公司 | 基于游戏直播的交互方法、装置和*** |
CN110149526A (zh) * | 2019-05-29 | 2019-08-20 | 北京达佳互联信息技术有限公司 | 一种直播互动***及其控制方法、装置与存储介质 |
CN110532466A (zh) * | 2019-08-21 | 2019-12-03 | 广州华多网络科技有限公司 | 直播平台训练数据的处理方法、装置、存储介质及设备 |
CN110519611A (zh) * | 2019-08-23 | 2019-11-29 | 腾讯科技(深圳)有限公司 | 直播互动方法、装置、电子设备及存储介质 |
WO2021114795A1 (zh) * | 2019-12-11 | 2021-06-17 | 厦门雅基软件有限公司 | 云游戏直播方法、云游主播端、观众端及计算机可读存储介质 |
CN112422998A (zh) * | 2020-10-26 | 2021-02-26 | 网易(杭州)网络有限公司 | 基于云游戏的直播互动的方法、装置和电子设备 |
CN114257830A (zh) * | 2021-12-21 | 2022-03-29 | 广州方硅信息技术有限公司 | 直播游戏互动方法、***、装置及计算机设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114760514A (zh) | 2022-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110213601B (zh) | 一种基于云游戏的直播***及直播方法、直播互动方法 | |
US11027198B2 (en) | Systems and methods of serving game video for remote play | |
US20220193542A1 (en) | Compositing multiple video streams into a single media stream | |
CN110519611B (zh) | 直播互动方法、装置、电子设备及存储介质 | |
CN114760514B (zh) | 直播间数据传输方法、装置、设备及存储介质 | |
CN112788358B (zh) | 游戏对局的视频直播方法、视频发送方法、装置及设备 | |
US10076711B2 (en) | Remote rendering server with broadcaster | |
US11537264B2 (en) | Methods and systems for providing shortcuts for fast load when moving between scenes in virtual reality | |
JP6310073B2 (ja) | 描画システム、制御方法、及び記憶媒体 | |
CN111526927A (zh) | 在失去主动控制之后通过用户模拟的临时游戏控制 | |
WO2023029823A1 (zh) | 游戏画面的显示方法、装置、设备以及存储介质 | |
CN112616061B (zh) | 直播互动方法、装置、直播服务器及存储介质 | |
JP2015515284A (ja) | ゲームシステム、ゲーム装置、制御方法、プログラム及び記録媒体 | |
CN113766340B (zh) | 连麦直播下的舞曲互动方法、***、装置及计算机设备 | |
CN109195003B (zh) | 基于直播进行游戏的互动方法、***、终端及装置 | |
JP6379107B2 (ja) | 情報処理装置並びにその制御方法、及びプログラム | |
CN112423013B (zh) | 在线互动方法、客户端、服务器、计算设备和存储介质 | |
CN114257830A (zh) | 直播游戏互动方法、***、装置及计算机设备 | |
CN114666672B (zh) | 由观众发起的直播对战互动方法、***及计算机设备 | |
CN109040851B (zh) | 基于直播进行游戏的延迟处理方法、***、服务器及计算机可读存储介质 | |
CN114007095A (zh) | 直播间的语音连麦互动方法、***、介质以及计算机设备 | |
CN114786024B (zh) | 直播间游戏同步方法、***、装置、设备及存储介质 | |
CN113438491B (zh) | 直播互动方法、装置、服务器及存储介质 | |
US20160271495A1 (en) | Method and system of creating and encoding video game screen images for transmission over a network | |
JP6533022B1 (ja) | 端末、サーバおよびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |