WO2018149170A1 - 一种跨应用控制方法及装置 - Google Patents

一种跨应用控制方法及装置 Download PDF

Info

Publication number
WO2018149170A1
WO2018149170A1 PCT/CN2017/107853 CN2017107853W WO2018149170A1 WO 2018149170 A1 WO2018149170 A1 WO 2018149170A1 CN 2017107853 W CN2017107853 W CN 2017107853W WO 2018149170 A1 WO2018149170 A1 WO 2018149170A1
Authority
WO
WIPO (PCT)
Prior art keywords
application
information
control information
control
barrage
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.)
Ceased
Application number
PCT/CN2017/107853
Other languages
English (en)
French (fr)
Inventor
周志刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Publication of WO2018149170A1 publication Critical patent/WO2018149170A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4781Games
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/475End-user interface for inputting end-user data, e.g. personal identification number [PIN], preference data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4884Data services, e.g. news ticker for displaying subtitles

Definitions

  • the present invention relates to the field of computer technologies, and in particular, to a cross-application control method and apparatus.
  • the live broadcast software and the specific game will be simultaneously opened.
  • the live broadcast software collects the content of the game and pushes the content to the server of the live website through the network.
  • the anchor broadcasts the gameplay while playing the game.
  • it can only watch and send the barrage, but can't participate in the game, nor can it control the game, and can't feel the function of the game. Experience.
  • the invention provides a cross-application control method and device, which is used to solve the game live broadcast in the prior art, and has the technical problem that the audience experience form is single and the experience effect is poor.
  • the present invention provides a cross-application control method, where the method is applied to an anchor end, including:
  • Controlling by the target object displayed in the second application, an action corresponding to the control information.
  • the method before the acquiring the barrage information sent by the target user in the first application, the method includes: receiving a selection operation that is performed on the anchor end; and, based on the selecting operation, from a user group connected to the anchor end Identify the target user.
  • the second aspect provides a cross-application control device, where the device is a main broadcast terminal, including:
  • the embodiment provides a cross-application control method. As shown in FIG. 1 , the method is applied to the anchor end, and includes:
  • Step S102 extracting control information from the barrage information according to a preset extraction rule
  • Step S103 Send the control information to the second application, where the second application and the first application are both running on the anchor end;
  • the anchor end may be an electronic device such as a smart phone, a desktop computer, a notebook, or a tablet computer, and is not limited herein.
  • the barrage information sent by the target user is filtered from the barrage information group.
  • the direction field "Right" may be extracted from the barrage information as the control information.
  • step S103 is executed to send the control information to the second application, where the second application and the first application are both running on the anchor end.
  • the present application there are many methods for transmitting the control information from the first application to the second application across an application, which may be through a network, through a server of the first application, and the second application.
  • the server is used to implement the cross-application transmission of the anchor side; the method of sharing the memory or the shortcut key triggering may be used to implement the cross-application transmission of the anchor end, which is not limited herein.
  • the named pipe may be first written in the first application, that is, the live broadcast software, for the communication between the live broadcast software and the second application, that is, the game process.
  • the named pipe is through the network to complete the communication between processes, it shields the underlying network protocol details, through the named pipe this paper realizes the communication between the live software and the injection module injected in the game process.
  • the injection module is referred to as a client of a named pipe
  • the anchor software is referred to as a server of a named pipe.
  • step S102 The control information acquired in step S102 is then written into the named pipe by calling the function WriteFile.
  • the client reads the control information sent by the server from the named pipe by calling the function ReadFile.
  • the server of the live broadcast software continuously writes the obtained control information into the named pipe, and the injection module injected into the game process continuously collects the control from the named pipe. Information.
  • the function of injecting the module to the second application may be written in the first application, ie, live broadcast software.
  • step (3) Call the WindowsAPI function CreateRemoteThread function to create a thread in the target process.
  • the execution logic of the thread is to call the Windows API function LoadLibrary to load the disk path of the injection module written in the target process space in step (2). In this way, a thread is opened in the target process, and the injection module is loaded by the thread, thereby implementing the function of injecting the injection module into the target process.
  • step S104 is executed to control the target object displayed in the second application to perform an action corresponding to the control information.
  • the control information when the second application is a game process, may be direction control information for controlling a target object displayed in the second application to move along a direction represented by the control information; The motion control information for controlling the target object displayed in the second application to sit, stand up or run; or the sound control information for controlling the sound of the target object displayed in the second application.
  • the control information may also be video control information for controlling the target video played by the second application to fast forward, pause, or switch the target video, which is not listed here, nor is it made. limit.
  • the cross-application control in the step S104 may be implemented by setting the control information as a shortcut key triggering code, or may be implemented by using the injection module, which is not limited herein.
  • control function can be invoked by the injection module to control execution of the target object.
  • the second application is a game application process
  • the control information is a game character direction control information as an example to illustrate how to control the target object by using an injection module:
  • the function walks to call which function in the game process, and analyzes the parameters of the called walk function for the walking control role of the injection module.
  • the interface that can be provided is: Walk(int dir), where Walk indicates the walking function and the parameter di r indicates the direction of walking.
  • the functions of the injection module are written, including the function of communicating with the named pipe and the function of calling the character walk function in the game process. Since the injection module is pre-injected into the game process and belongs to the same process space as the game process, the function of the game process can be directly called.
  • controlling the walking of the game character is accomplished by invoking a character walk function by the injection module injected into the game process.
  • the control information for controlling the walking of the character is continuously collected through the named pipe.
  • the injection module can directly call the game character walking function that is inversely analyzed before, thereby implementing the function of controlling the walking of the game character according to the control information.
  • the anchor simultaneously starts the game process and the live broadcast software process on the device of the anchor end, the anchor enters the live broadcast room, and the game broadcasts in the live broadcast room, and each viewer entering the live broadcast room can watch the game screen through the live broadcast software opened by the viewer terminal;
  • the anchor selects the audience user A in the live broadcast room as the control audience, and the anchor terminal filters out the barrage information sent by the user A from the barrage of the live broadcast room, and extracts the control information therefrom;
  • the control information extracted from the anchor end is the code corresponding to "control the game character moving forward"
  • the live broadcast process of the anchor end sends the control information to the pre-injection injection module in the game process through a preset named pipe;
  • the injection module calls the game character walking function, and controls the forward movement of the game character according to the control information, so that the user A can control the walking of the character in the game process through the hair bombing to the anchor end in real time, thereby increasing the live broadcast audience of the game.
  • the form of experience enhances the experience.
  • the present application also provides an apparatus corresponding to the cross-application control method in the first embodiment.
  • an apparatus corresponding to the cross-application control method in the first embodiment For details, see Embodiment 2.
  • the embodiment provides a cross-application control device.
  • the device is a main broadcast terminal, and includes:
  • the obtaining module 201 is configured to acquire the barrage information sent by the target user in the first application
  • the extracting module 202 is configured to extract control information from the barrage information according to a preset extraction rule
  • the sending module 203 is configured to send the control information to the second application, where the second application and the first application are both running on the anchor end;
  • the control module 204 is configured to control a target object displayed in the second application to perform an action corresponding to the control information.
  • the anchor end may be an electronic device such as a smart phone, a desktop computer, a notebook, or a tablet computer, and is not limited herein.
  • the device may be an Android system, an IOS system, or a Windows system, and is not limited herein.
  • control information is information for controlling a moving direction; the control module 204 is further configured to: control the target object to move in a direction represented by the control information.
  • the device described in the second embodiment of the present invention is a device for implementing the cross-application control method according to the first embodiment of the present invention. Therefore, based on the method introduced in Embodiment 1 of the present invention, those skilled in the art can understand the specific device. Structure and deformation, so it will not be described here.
  • the apparatus used in the method of the first embodiment of the present invention is within the scope of the present invention.
  • the method and device provided by the embodiment of the present application acquire the barrage information of the target user in the first application, and extract the control information in the barrage information to control the target object of the second application to perform the action, thereby realizing the specified live broadcast.
  • the viewer can perform the corresponding action by transmitting the barrage to the anchor end to control the target object in the game application of the anchor end, thereby increasing the experience form of the game live audience and enhancing the experience effect.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) including computer usable program code.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the present invention is directed to a method, apparatus (system), and computer program according to an embodiment of the present invention.
  • the flow chart and/or block diagram of the product is described. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG.
  • These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine for the execution of instructions for execution by a processor of a computer or other programmable data processing device.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开一种跨应用控制方法,所述方法应用于主播端,包括:获取第一应用中目标用户发送的弹幕信息;按照预设的提取规则,从所述弹幕信息中提取出控制信息;发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端;控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。本申请提供的方法和装置可以解决现有技术中的游戏直播,存在的观众体验形式单一,体验效果差的技术问题。实现了增加游戏直播观众的体验形式,增强体验效果的技术效果。

Description

一种跨应用控制方法及装置 技术领域
本发明涉及计算机技术领域,尤其涉及一种跨应用控制方法及装置。
背景技术
目前,随着网络通信技术的进步和宽带网络的提速,网络直播得到了越来越多的发展和应用。同时随着弹幕的发展,使得直播具有更好的互动和趣味性。尤其在游戏直播领域,越来越多的观众会观看游戏主播的直播。
在游戏直播中,对于主播端,会同时打开直播软件和具体的游戏,主播在玩游戏的同时,直播软件会采集游戏的内容通过网络将该内容推送到直播网站的服务器中。观众则通过直播网站的服务器拉取主播推送的直播内容进行视频播放。对于游戏直播来说,主播通过一边玩游戏一边讲解游戏的玩法,而对于观众来说只能观看和发送弹幕,而不能参与到游戏的过程中,也不能去控制游戏,不能感受游戏的功能体验。
可见,现有技术中的游戏直播,存在观众体验形式单一,体验效果差的技术问题。
发明内容
本发明提供一种跨应用控制方法及装置,用以解决现有技术中的游戏直播,存在的观众体验形式单一,体验效果差的技术问题。
第一方面,本发明提供了一种跨应用控制方法,所述方法应用于主播端,包括:
获取第一应用中目标用户发送的弹幕信息;
按照预设的提取规则,从所述弹幕信息中提取出控制信息;
发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端;
控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。
可选的,所述控制信息为控制移动方向的信息;所述控制所述第二应用中显示的目标对象执行所述控制信息对应的动作,包括:控制所述目标对象沿所述控制信息表征的方向移动。
可选的,所述第一应用为直播应用,所述第二应用为游戏应用,所述第二应用中显示的图像或视频通过所述第一应用发送给与所述主播端连接的观众端。
可选的,在所述获取第一应用中目标用户发送的弹幕信息之前,包括:接收作用于所述主播端的选择操作;基于所述选择操作,从与所述主播端连接的用户群中确定出所述目标用户。
可选的,所述获取第一应用中目标用户发送的弹幕信息,包括:获取与所述主播端连接的用户群发送的弹幕信息群;从所述弹幕信息群中过滤出所述目标用户发送的弹幕信息。
可选的,所述按照预设的提取规则,从所述弹幕信息中提取出控制信息,包括:按照预设的关键字与控制信息的对应信息,从所述弹幕信息中提取出关键字;根据所述关键字和所述对应信息,确定出与所述关键字对应的所述控制信息。
可选的,所述发送所述控制信息至第二应用,包括:通过所述第一应用中预设的命名管道将所述控制信息注入注入模块,其中,所述注入模块为预先编写注入所述第二应用的模块。
可选的,所述控制所述第二应用中显示的目标对象执行所述控制信息对应的动作,包括:通过所述注入模块调用控制函数,以控制所述目标对象执行所述控制信息对应的动作,其中,所述控制函数为所述注入模块从所述第二应用中逆向分析获取。
第二方面,提供一种跨应用控制装置,所述装置为主播端,包括:
获取模块,用于获取第一应用中目标用户发送的弹幕信息;
提取模块,用于按照预设的提取规则,从所述弹幕信息中提取出控制信息;
发送模块,用于发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端;
控制模块,用于控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。
可选的,所述控制信息为控制移动方向的信息;所述控制模块还用于:控制所述目标对象沿所述控制信息表征的方向移动。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本申请实施例提供的方法及装置,在第一应用中获取目标用户的弹幕信息,并提取出弹幕信息中的控制信息,来控制第二应用的目标对象进行动作,从而实现指定的直播观众可以通过发送弹幕至主播端来跨应用控制主播端的游戏应用中的目标对象执行相应动作,从而增加了游戏直播观众的体验形式,增强了体验效果。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术 手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中跨应用控制方法的流程图;
图2为本发明实施例中跨应用控制装置的结构示意图。
具体实施方式
本申请实施例通过提供一种跨应用控制方法及装置,解决了现有技术中的游戏直播,存在的观众体验形式单一,体验效果差的技术问题。实现了增加游戏直播观众的体验形式,增强体验效果的技术效果。
本申请实施例中的技术方案,总体思路如下:
获取第一应用中目标用户发送的弹幕信息;按照预设的提取规则,从所述弹幕信息中提取出控制信息;发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端;控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。
上述方法通过在第一应用中获取目标用户的弹幕信息,并提取出弹幕信息中的控制信息,来控制第二应用的目标对象进行动作,从而实现指定的直播观众可以通过发送弹幕至主播端来跨应用控制主播端的游戏应用中的目标对象执行相应动作,从而增加了游戏直播观众的体验形式,增强了体验效果。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本实施例提供一种跨应用控制方法,如图1所示,所述方法应用于主播端,包括:
步骤S101,获取第一应用中目标用户发送的弹幕信息;
步骤S102,按照预设的提取规则,从所述弹幕信息中提取出控制信息;
步骤S103,发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端;
步骤S104,控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。
在本申请实施例中,所述主播端可以是智能手机、台式电脑、笔记本或平板电脑等电子设备,在此不作限制。
在本申请实施例中,所述主播端可以为Android系统,IOS系统或Windows系统,在此不作限制。
在本申请实施例中,所述第一应用为直播软件应用,所述第二应用为游戏软件应用,所述主播端同时运行所述第一应用和所述第二应用。所述第二应用中显示的图像或视频通过所述第一应用发送至与所述主播端连接的各个观众端,以进行游戏直播。当然,在具体实施过程中,所述第二应用也可以是视频播放应用或图片显示应用等,在此不作限制。
下面结合图1,以所述第一应用为直播软件,所述第二应用为游戏软件为例,对本申请提供的方法的具体实施步骤进行详细说明:
首先,执行步骤S101,获取第一应用中目标用户发送的弹幕信息。
在本申请实施例中,所述目标用户的确定方式可以有多种,可以是主播端接收到选择操作,基于所述选择操作,从与所述主播端连接的用户群中确定出所述目标用户;还可以是通过接收与所述主播端连接的观众端发送的信息来确定目标用户。
具体来讲,可以是主播通过在直播软件的界面上执行点击等操作,来确定出目标客户,从而有目标客户来控制游戏;还可以是主播端发出一个信号后,接收各观众端返回的报名信息,按报名信息发送的先后顺序来确定目标客户,在具体实施过程中可以根据需要设置目标客户的确定方案,在此不作限制,也不再一一列举。
在本申请实施例中,所述弹幕信息可以是漂浮在视频上的移动的文字或符号信息,也可以是在第一应用界面上独立于视频窗口的另一聊天窗口上显示的文字或符号信息,在此不作限制。
在具体实施过程中,所述获取第一应用中目标用户发送的弹幕信息,包括:
获取与所述主播端连接的用户群发送的弹幕信息群;
从所述弹幕信息群中过滤出所述目标用户发送的弹幕信息。
具体来讲,主播端可以通过第一应用,即直播软件,实时的获取所有的弹幕信息,也可以从所有的弹幕信息中过滤出某一个观众的所有弹幕信息。
在本申请实施例中,可以在直播软件中编写弹幕过滤功能来过滤出目标用户的弹幕。主播端通过直播软件可以收到直播房间内所有观众用户的弹幕消息,由于每个弹幕消息都包含有弹幕的发送者的信息,故主播确定出目标用户后,可以通过每条弹幕的发送者信息获取到所述目标用户的所有弹幕信息。
然后,执行步骤S102,按照预设的提取规则,从所述弹幕信息中提取出控制信息。
在具体实施过程中,提取控制信息的方法很多,下面列举两种为例:
第一种,预设关键字与控制信息的对应信息。
即所述按照预设的提取规则,从所述弹幕信息中提取出控制信息,包括:
按照预设的关键字与控制信息的对应信息,从所述弹幕信息中提取出关键字;
根据所述关键字和所述对应信息,确定出与所述关键字对应的所述控制信息。
具体来讲,以控制信息为方向控制信息为例,主播可以通过预先设置一些关键字表来标示游戏角色的方向控制信息,表格中关键字可以是“左”代表往左走,“右”代表往右走,等。通过获取的所述目标用户的所有弹幕信息,并按照关键字表格,从弹幕信息中检索出所有的方向控制信息。该控制信息就是一系列的行走信息,用于控制后续游戏中角色的行走信息。
例如,预设的对应信息中记录有“右”对应“控制角色向右走”的控制代码,获取的弹幕信息为“去看看右边的山洞”,则按照所述对应信息能查询出弹幕信息中的关键字“右”对应控制信息“控制角色向右走”的控制代码,从而提取出控制信息为:“控制角色向右走”的控制代码。
第二种,直接提取关键字作为控制信息。
具体来讲,以控制信息为方向控制信息为例,可以采用继续学习算法或从数据库查询等方法,直接从所述弹幕信息中提取出与方向相关的字段,作为所述控制信息。
例如,获取的弹幕信息为“去看看右边的山洞”,则可以从弹幕信息中提取方向字段“右”作为所述控制信息。
当然,在具体实施过程中,根据需要可以选择不同的控制信息提取方法,在此不作限制。
然后,执行步骤S103,发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端。
在本申请实施例中,跨应用将所述控制信息从所述第一应用发送至所述第二应用的方法很多,可以是通过网络,经所述第一应用的服务器和所述第二应 用的服务器转达来实现主播端的跨应用传输;还可以是通过共享内存或快捷键触发等方法来实现主播端的跨应用传输,在此不作限制。
较优的,考虑到对网络资源的节约和加快信息的跨应用传输速度,本实施例采用通过命名管道和注入模块的方式来实现跨应用信息传输。即通过所述第一应用中预设的命名管道将所述控制信息注入注入模块,其中,所述注入模块为预先编写注入所述第二应用的模块。
具体来讲,对于命名管道的建立,可以先在所述第一应用,即直播软件中编写命名管道用于直播软件与所述第二应用,即游戏进程的通信。其中,命名管道是通过网络来完成进程间的通信,它屏蔽了底层的网络协议细节,通过命名管道本文实现了直播软件与游戏进程中注入的注入模块之间的通信。
在后续描述中,将所述注入模块称为命名管道的客户端,所述主播软件称为命名管道的服务端。首先,在服务端创建一个命名管道,然后等待客户端来连接。一旦编写的注入模块注入到游戏进程中开始运行后,该注入模块会去连接这个命名管道,一旦连接上这个命名管道,那么就可以实现直播软件和游戏中的注入模块进行通信。具体的实现方法如下:
对服务端:
(1)调用WindowsAPI函数CreateNamedPipe创建命名管道。
先对命名管道进行名称设置,可以随意设置一个唯一的名称,不会与系统其他进程的管道重名即可。命名管道的客户端游戏注入模块会通过这个名称来连接该命名管道。
(2)通过调用函数ConnectNamedPipe来等待命名管道的客户端连接。
(3)一旦客户端连接上,调用函数ReadFile来读取客户端发送过来的数据,该数据是告诉服务端,客户端已经完成连接可以进行通信等。
(4)然后通过调用函数WriteFile往命名管道中写入步骤S102获取的所述控制信息。
对客户端:
(1)客户端通过调用函数CreateFile来连接服务端创建的命名管道。命名管道的名称可以为事先定义好的唯一名称。
(2)客户端通过调用函数WaitNamedPipe来等待服务端的响应。
(3)客户端通过调用函数WriteFile向命名管道中写入数据。
(4)客户端通过调用函数ReadFile来从命名管道中读取服务端发送的所述控制信息。
通过命名管道,直播软件的服务端不断的将获取的所述控制信息写入命名管道中,被注入到游戏进程的所述注入模块则不断的从命名管道中收取所述控 制信息。
对于所述注入模块的设置,可以在所述第一应用,即直播软件中编写注入模块到所述第二应用,即游戏进程的功能。
具体来讲,可以通过调用Windows系统提供的API函数来将所述注入模块注入到另一个游戏进程中。基本思路是通过Windows系统API函数CreateRemoteThread来在游戏进程中创建一个远程线程(之所以称为远程线程是因为这个线程是直播软件进程在游戏进程中创建的一个线程),通过创建的远程线程去调用系统函数LoadLibrary来加载需要注入到游戏进程的所述注入模块。具体实现如下:
(1)通过WindowsAPI函数VirtualAllocEx函数在目标进程的内存空间中分配内存。
(2)通过WindowsAPI函数WriteProcessMemory来将自己编写的需要注入的模块的磁盘路径写入到已经分配的内存中,即步骤(1)中分配的目标进程的内存空间。
(3)调用WindowsAPI函数CreateRemoteThread函数来在目标进程中创建一个线程,线程的执行逻辑就是调用WindowsAPI函数LoadLibrary来加载步骤(2)中通过在目标进程空间写入的注入模块的磁盘路径。这样就实现了在目标进程开启一个线程,通过线程来加载所述注入模块,实现了对目标进程注入所述注入模块的功能。
通过上述步骤就实现了将所述注入模块注入到游戏进程中的功能,从而为后续应用进程间通信提供了可能。
再下来,执行步骤S104,控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。
在本申请实施例中,当所述第二应用为游戏进程时,所述控制信息可以是控制第二应用中显示的目标对象沿所述控制信息表征的方向移动的方向控制信息;也可以是控制第二应用中显示的目标对象坐下、起立或跑动的动作控制信息;还可以是控制第二应用中显示的目标对象发出声音的声音控制信息。当所述第二应用为视频播放应用时,所述控制信息还可以是控制第二应用播放的目标视频快进、暂停或切换目标视频的视频控制信息,在此不再一一列举,也不作限制。
在本申请实施例中,步骤S104中的跨应用进行控制可以是通过设置控制信息为快捷键触发代码的方法来实现,也可以是通过所述注入模块来实现,在此不作限制。
较优的,可以通过所述注入模块调用控制函数,以控制所述目标对象执行 所述控制信息对应的动作,其中,所述控制函数为所述注入模块从所述第二应用中逆向分析获取。
下面,以所述第二应用为游戏应用进程,所述控制信息为游戏角色方向控制信息为例为例,来说明如何通过注入模块来实现对所述目标对象的控制:
首先,逆向分析游戏进程中角色行走的函数。
具体来讲,可以去反汇编分析游戏进程中角色行走会调用的函数,具体可以通过Windows提供的动态调试工具WinDbg来动态调试游戏进程,然后通过在游戏中角色各个方向的行走,来找出游戏角色行走会调用到游戏进程中的哪个函数,并且分析出调用的行走函数的参数,供所述注入模块后续控制角色的行走使用。类似的,可以提供的接口是:Walk(int dir),其中,Walk标示行走函数,参数di r,标示行走的方向。通过这个步骤就实现了分析出游戏进程中角色行走的函数功能,从而可以被所述注入模块调用来控制角色的行走。
然后,编写所述注入模块的功能,包括与命名管道通信的功能和调用游戏进程中的角色行走函数的功能。由于所述注入模块被预先注入到了游戏进程中,与游戏进程属于同一个进程空间,故可以直接调用游戏进程的函数。
具体来讲,控制游戏角色的行走都是通过注入到游戏进程中的所述注入模块调用角色行走函数来实现的。所述注入模块在建立与命名管道的通信后,通过命名管道不断的收取控制角色行走的控制信息。收到控制信息后,所述注入模块可以直接调用之前逆向分析出来的游戏角色行走函数,从而实现了按照所述控制信息控制游戏角色行走的功能。
为了便于理解,下面从人机交互的角度,以一具体控制实例来对本申请提供的方法进行说明:
首先,主播在主播端的设备上同时开启游戏进程和直播软件进程,主播进入直播间,在直播间内进行游戏直播,进入该直播间的各个观众能通过自己观众端开启的直播软件观看游戏画面;
然后,主播选择直播间内的观众用户A作为控制观众,则主播端会从直播间的弹幕中过滤出用户A发送的弹幕信息,并从中提取出控制信息;
当用户A通过弹幕发送“往前走”的弹幕信息时,主播端从中提取出的控制信息为“控制游戏角色往前走”对应的代码;
主播端的直播进程通过预设的命名管道将控制信息发送至游戏进程中预先注入的注入模块;
注入模块调用游戏角色行走函数,按照所述控制信息来控制游戏角色的向前移动,从而实现用户A能实时通过发弹幕至主播端来控制游戏进程中角色的行走,从而增加了游戏直播观众的体验形式,增强了体验效果。
基于同一发明构思,本申请还提供了与实施例一中跨应用控制方法对应的装置,详见实施例二。
实施例二
本实施例提供了一种跨应用控制装置,如图2所示,所述装置为主播端,包括:
获取模块201,用于获取第一应用中目标用户发送的弹幕信息;
提取模块202,用于按照预设的提取规则,从所述弹幕信息中提取出控制信息;
发送模块203,用于发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端;
控制模块204,用于控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。
在本申请实施例中,所述主播端可以是智能手机、台式电脑、笔记本或平板电脑等电子设备,在此不作限制。
在本申请实施例中,所述装置可以为Android系统,IOS系统或Windows系统,在此不作限制。
在本申请实施例中,所述控制信息为控制移动方向的信息;所述控制模块204还用于:控制所述目标对象沿所述控制信息表征的方向移动。
由于本发明实施例二所介绍的装置,为实施本发明实施例一的跨应用控制方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。
本申请实施例中提供的技术方案,至少具有如下技术效果或优点:
本申请实施例提供的方法及装置,在第一应用中获取目标用户的弹幕信息,并提取出弹幕信息中的控制信息,来控制第二应用的目标对象进行动作,从而实现指定的直播观众可以通过发送弹幕至主播端来跨应用控制主播端的游戏应用中的目标对象执行相应动作,从而增加了游戏直播观众的体验形式,增强了体验效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产 品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

  1. 一种跨应用控制方法,其特征在于,所述方法应用于主播端,包括:
    获取第一应用中目标用户发送的弹幕信息;
    按照预设的提取规则,从所述弹幕信息中提取出控制信息;
    发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端;
    控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。
  2. 如权利要求1所述的方法,其特征在于:
    所述控制信息为控制移动方向的信息;
    所述控制所述第二应用中显示的目标对象执行所述控制信息对应的动作,包括:控制所述目标对象沿所述控制信息表征的方向移动。
  3. 如权利要求1所述的方法,其特征在于,所述第一应用为直播应用,所述第二应用为游戏应用,所述第二应用中显示的图像或视频通过所述第一应用发送给与所述主播端连接的观众端。
  4. 如权利要求1所述的方法,其特征在于,在所述获取第一应用中目标用户发送的弹幕信息之前,包括:
    接收作用于所述主播端的选择操作;
    基于所述选择操作,从与所述主播端连接的用户群中确定出所述目标用户。
  5. 如权利要求1所述的方法,其特征在于,所述获取第一应用中目标用户发送的弹幕信息,包括:
    获取与所述主播端连接的用户群发送的弹幕信息群;
    从所述弹幕信息群中过滤出所述目标用户发送的弹幕信息。
  6. 如权利要求1所述的方法,其特征在于,所述按照预设的提取规则,从所述弹幕信息中提取出控制信息,包括:
    按照预设的关键字与控制信息的对应信息,从所述弹幕信息中提取出关键字;
    根据所述关键字和所述对应信息,确定出与所述关键字对应的所述控制信息。
  7. 如权利要求1所述的方法,其特征在于,所述发送所述控制信息至第二应用,包括:
    通过所述第一应用中预设的命名管道将所述控制信息注入注入模块,其中,所述注入模块为预先编写注入所述第二应用的模块。
  8. 如权利要求6所述的方法,其特征在于,所述控制所述第二应用中显示 的目标对象执行所述控制信息对应的动作,包括:
    通过所述注入模块调用控制函数,以控制所述目标对象执行所述控制信息对应的动作,其中,所述控制函数为所述注入模块从所述第二应用中逆向分析获取。
  9. 一种跨应用控制装置,其特征在于,所述装置为主播端,包括:
    获取模块,用于获取第一应用中目标用户发送的弹幕信息;
    提取模块,用于按照预设的提取规则,从所述弹幕信息中提取出控制信息;
    发送模块,用于发送所述控制信息至第二应用,所述第二应用与所述第一应用均运行在所述主播端;
    控制模块,用于控制所述第二应用中显示的目标对象执行所述控制信息对应的动作。
  10. 如权利要求9所述的装置,其特征在于,所述控制信息为控制移动方向的信息;所述控制模块还用于:控制所述目标对象沿所述控制信息表征的方向移动。
PCT/CN2017/107853 2017-02-16 2017-10-26 一种跨应用控制方法及装置 Ceased WO2018149170A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201710083879.4 2017-02-16
CN201710083879.4A CN108449643B (zh) 2017-02-16 2017-02-16 一种跨应用控制方法及装置

Publications (1)

Publication Number Publication Date
WO2018149170A1 true WO2018149170A1 (zh) 2018-08-23

Family

ID=63169142

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/107853 Ceased WO2018149170A1 (zh) 2017-02-16 2017-10-26 一种跨应用控制方法及装置

Country Status (2)

Country Link
CN (1) CN108449643B (zh)
WO (1) WO2018149170A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111770356A (zh) * 2020-07-23 2020-10-13 网易(杭州)网络有限公司 一种基于游戏直播的互动方法和装置

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115119048B (zh) * 2019-08-10 2024-02-23 荣耀终端有限公司 一种视频流处理方法及电子设备
CN118590719A (zh) * 2024-05-24 2024-09-03 北京字跳网络技术有限公司 直播互动的方法、装置、设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103384348A (zh) * 2013-05-29 2013-11-06 深圳市艾龙电子有限公司 一种ginga数字电视中间件在嵌入式数字电视平台上的实现方法
CN105916047A (zh) * 2016-05-17 2016-08-31 武汉斗鱼网络科技有限公司 一种基于弹幕控制的游戏操作方法及装置
CN105959813A (zh) * 2016-05-30 2016-09-21 武汉斗鱼网络科技有限公司 一种基于游戏直播弹幕控制快捷键设置的方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10345897B2 (en) * 2015-06-30 2019-07-09 Amazon Technologies, Inc. Spectator interactions with games in a specatating system
CN105435453B (zh) * 2015-12-22 2019-02-19 网易(杭州)网络有限公司 一种弹幕信息处理方法、装置和系统
CN105828210A (zh) * 2016-03-15 2016-08-03 武汉斗鱼网络科技有限公司 一种基于弹幕的点播歌曲的方法及装置
CN105933785A (zh) * 2016-05-23 2016-09-07 武汉斗鱼网络科技有限公司 一种利用弹幕控制游戏操作方向的方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103384348A (zh) * 2013-05-29 2013-11-06 深圳市艾龙电子有限公司 一种ginga数字电视中间件在嵌入式数字电视平台上的实现方法
CN105916047A (zh) * 2016-05-17 2016-08-31 武汉斗鱼网络科技有限公司 一种基于弹幕控制的游戏操作方法及装置
CN105959813A (zh) * 2016-05-30 2016-09-21 武汉斗鱼网络科技有限公司 一种基于游戏直播弹幕控制快捷键设置的方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111770356A (zh) * 2020-07-23 2020-10-13 网易(杭州)网络有限公司 一种基于游戏直播的互动方法和装置

Also Published As

Publication number Publication date
CN108449643A (zh) 2018-08-24
CN108449643B (zh) 2020-01-03

Similar Documents

Publication Publication Date Title
US10897637B1 (en) Synchronize and present multiple live content streams
JP6384474B2 (ja) 情報処理装置および情報処理方法
US20250142137A1 (en) Virtual object interaction method, apparatus, storage medium and computer program product
CN107050850A (zh) 虚拟场景的录制和回放方法、装置以及回放系统
CN111596985A (zh) 多媒体会议场景下的界面显示方法、装置、终端及介质
CN105872810A (zh) 一种媒体内容分享方法和装置
US12581152B2 (en) Same-screen interaction control method and apparatus, and electronic device and non-transitory storage medium
CN112732152B (zh) 直播处理方法、装置、电子设备及存储介质
CN113244609A (zh) 多画面的显示方法和装置、存储介质及电子设备
CN108984256A (zh) 界面显示方法、装置、存储介质及电子设备
CN114845127A (zh) 直播间词条展示方法、系统、装置、设备及存储介质
CN108449643B (zh) 一种跨应用控制方法及装置
CN112423143A (zh) 一种直播消息交互方法、装置及存储介质
CN108874673A (zh) 应用程序的测试方法及装置
WO2018161887A1 (zh) 数据交互方法、装置及存储介质
CN104980801A (zh) 音频数据/视频数据的处理方法及装置
CN117519538A (zh) 界面交互的方法、装置、设备和存储介质
CN111770388B (zh) 内容处理方法、装置、设备及存储介质
CN113132808B (zh) 视频生成方法、装置及计算机可读存储介质
CN113938336A (zh) 会议控制的方法、装置和电子设备
CN112711368A (zh) 操作指导方法、装置及电子设备
CN118900346A (zh) 直播互动方法、装置、终端、服务器及存储介质
WO2021104396A1 (zh) 交互方法和客户端设备
CN113144606A (zh) 虚拟对象的技能触发方法及相关设备
CN112804551A (zh) 一种直播方法、装置、计算机设备及存储介质

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17896755

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17896755

Country of ref document: EP

Kind code of ref document: A1