CN108874267B - 虚拟现实应用数据处理方法、计算机设备和存储介质 - Google Patents
虚拟现实应用数据处理方法、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN108874267B CN108874267B CN201710322336.3A CN201710322336A CN108874267B CN 108874267 B CN108874267 B CN 108874267B CN 201710322336 A CN201710322336 A CN 201710322336A CN 108874267 B CN108874267 B CN 108874267B
- Authority
- CN
- China
- Prior art keywords
- virtual reality
- playback
- picture
- control data
- reality application
- 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
Images
Classifications
-
- 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/60—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
- A63F13/67—Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor adaptively or by learning from player actions, e.g. skill level adjustment or by storing successful combat sequences for re-use
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- 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
- A63F13/48—Starting a game, e.g. activating a game device or waiting for other players to join a multiplayer session
-
- 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
- A63F13/49—Saving the game status; Pausing or ending the game
- A63F13/493—Resuming a game, e.g. after pausing, malfunction or power failure
-
- 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
- A63F13/49—Saving the game status; Pausing or ending the game
- A63F13/497—Partially or entirely replaying previous game actions
-
- 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/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
- A63F13/525—Changing parameters of virtual cameras
- A63F13/5252—Changing parameters of virtual cameras using two or more virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character changes room or displaying a rear-mirror view in a car-driving game
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/20—Scenes; Scene-specific elements in augmented reality scenes
-
- 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/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种虚拟现实应用数据处理方法、计算机设备和存储介质,所述方法包括:接收回放开始指令;响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;将所述操控数据按照相应时序导入所述运行时库中;通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理。通过自动回放处理即可重现用户历史操作中的操作,而不需要用户从头开始重新操作,提高了操作效率。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种虚拟现实应用数据处理方法、计算机设备和存储介质。
背景技术
随着科学技术的飞速发展,应用的类型也越来越丰富。虚拟现实(VR,VirtualReality)应用凭借其良好的互动性和较好的体验,越来越受到广大用户的青睐。
目前部分虚拟现实应用需要用户进行一系列的操作,当用户完成前一个操作后才能进入到下一个操作,如果用户想要对历史操作中的某一操作重新进行操作时,必须从头开始重新操作,直至操作到想要重现的目标操作。
因此,目前用户想要对历史操作中的某一操作重新进行操作时,需要从头开始重新操作,导致操作效率比较低。
发明内容
基于此,有必要针对目前用户想要对历史操作中的某一操作重新进行操作时,需要从头开始重新操作,导致操作效率比较低的问题,提供一种虚拟现实应用数据处理方法、计算机设备和存储介质。
一种虚拟现实应用数据处理方法,所述方法包括:
接收回放开始指令;
响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;
获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;
将所述操控数据按照相应时序导入所述运行时库中;
通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理。
一种虚拟现实应用数据处理装置,所述装置包括:
获取模块,用于接收回放开始指令;
运行状态管理模块,用于响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;
所述获取模块还用于获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;
操控数据导入模块,用于将所述操控数据按照相应时序导入所述运行时库中;
回放处理模块,用于通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理。
一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行以下步骤:
接收回放开始指令;
响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;
获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;
将所述操控数据按照相应时序导入所述运行时库中;
通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理。
一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:
接收回放开始指令;
响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;
获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;
将所述操控数据按照相应时序导入所述运行时库中;
通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理。
上述虚拟现实应用数据处理方法、计算机设备和存储介质,通过预先捕获并存储由实现虚拟现实操作的硬件发向运行时库且具有时序的操控数据,在接收回放开始指令时,将虚拟现实恢复至初始运行状态,并自动的将该预先捕获并存储的操控数据按照相应时序导入运行时库中,通过运行时库将导入的操控数据传递至处于初始运行状态的虚拟现实应用进行回放处理,通过自动回放处理即可重现用户历史操作中的操作,而不需要用户从头开始重新操作,大大提高了操作效率。
附图说明
图1为一个实施例中虚拟现实应用数据处理方法的应用环境图;
图2为一个实施例中计算机设备的内部结构示意图;
图3为一个实施例中虚拟现实应用数据处理方法的流程示意图;
图4为一个实施例中系统框图;
图5为一个实施例中运行时库中的注册事件回调函数和事件导入函数的参数定义结构设计图;
图6为一个实施例中第三方视角画面生成步骤的流程示意图;
图7为一个实施例中虚拟现实应用数据处理方法的时序图;
图8为一个实施例中即时虚拟现实画面生成步骤的流程示意图;
图9为另一个实施例中虚拟现实应用数据处理方法的流程示意图;
图10为一个实施例中虚拟现实应用数据处理装置的结构框图;
图11为另一个实施例中虚拟现实应用数据处理装置的结构框图;
图12为又一个实施例中虚拟现实应用数据处理装置的结构框图;
图13为再一个实施例中虚拟现实应用数据处理装置的结构框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一个实施例中虚拟现实应用数据处理方法的应用环境图。参照图1,该交互数据处理方法的应用环境包括终端110、虚拟现实操作硬件120和头戴式显示器130。其中,终端110中安装有虚拟现实应用程序(可简称为虚拟现实应用)。虚拟现实操作硬件120,用于接收或采集控制操作,并生成能够控制虚拟现实应用程序的运行的操控数据。虚拟现实操作硬件120可以包括操作手柄和/或位置追踪设备等。操控数据,可以包括用手柄进行的操作所生成的操作控制数据和/或,由位置追踪设备追踪位置所生成的物理空间位置数据。头戴式显示器(HMD,Head Mounted Display)110是具备输出显示虚拟现实画面功能的头戴式显示设备。终端110可以是台式计算机或移动终端,移动终端可以包括手机、平板电脑、个人数字助理和穿戴式设备等中的至少一种。
终端110可以接收回放开始指令,响应于回放开始指令,将虚拟现实应用恢复至初始运行状态。终端110获取预先捕获并存储的由虚拟现实操作硬件120发向运行时库且具有时序的操控数据,将操控数据按照相应时序导入运行时库中。终端110通过运行时库,将导入的操控数据传递至处于初始运行状态的虚拟现实应用进行回放处理。在一个实施例中,终端110可以将虚拟现实应用根据操控数据生成的回放画面输出至头戴式显示器110,头戴式显示器110可以将该回放画面进行显示。可以理解,在其它实施例中,终端110也可以不将回放处理过程中生成的回放画面输出至头戴式显示器110进行显示。
图2为一个实施例中计算机设备的内部结构示意图。该计算机设备可以是图1中的终端110。参照图2,该计算机设备包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口、显示屏和输入装置。其中,该计算机设备的非易失性存储介质可存储操作系统和计算机可读指令,该计算机可读指令被执行时,可使得处理器执行一种虚拟现实应用数据处理方法。该计算机设备的处理器用于提供计算和控制能力,支撑整个计算机设备的运行。该内存储器中可储存有计算机可读指令,该计算机可读指令被处理器执行时,可使得处理器执行一种虚拟现实应用数据处理方法。计算机设备的网络接口用于进行网络通信。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。触摸层和显示屏构成触控屏。
本领域技术人员可以理解,图2中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
图3为一个实施例中虚拟现实应用数据处理方法的流程示意图。本实施例主要以该虚拟现实应用数据处理方法应用于上述图1中的终端110来举例说明。参照图3,该方法具体包括如下步骤:
S302,接收回放开始指令。
其中,回放开始指令,用于触发回放处理逻辑的执行。
在一个实施例中,终端上可以设置回放开关,通过对该回放开关的触发操作(比如,触摸、滑动、点击或按压等操作),来触发生成回放开始指令。其中,回放开关是用于控制回放开启和/或关闭的功能按键。回放开关可以是一个独立的功能按键,也可以是由多个按键组合而成的功能按键。回放开关可以是物理开关,也可以是终端屏幕上显示的虚拟开关。
在另一个实施例中,也可以通过在终端上进行预设的回放触发动作,来触发生成回放开始指令。
在一个实施例中,接收回放开始指令后,即可进入回放模式,该回放模式是用于进行回放处理的模式。
S304,响应于回放开始指令,将虚拟现实应用恢复至初始运行状态。
其中,虚拟现实,是指利用电脑模拟产生一个三维空间的虚拟世界,提供使用者关于视觉、听觉、触觉等感官的模拟,让使用者如同身历其境一般地观察三度空间内的事物。
虚拟现实应用,是用于实现虚拟现实效果的应用程序。在一个实施例中,虚拟现实应用可以是虚拟现实游戏应用程序。可以理解,虚拟现实应用也可以是其它类型的应用程序。
初始运行状态,是虚拟现实应用初始运行时的状态。具体地,可以对虚拟现实应用进行重新启动来将虚拟现实应用恢复至初始运行状态,也可以通过还原机制将虚拟现实应用恢复至初始运行状态。
S306,获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据。
其中,虚拟现实操作硬件,是用于接收控制操作,并生成能够控制虚拟现实应用程序运行的操控数据的硬件。虚拟现实操作硬件可以包括操作手柄和/或位置追踪设备等。可以理解,如果头戴式显示设备和控制手柄本身能够实现位置追踪功能、且能够采集并发送操控数据至终端,则头戴式显示设备和控制手柄也属于位置追踪设备。
操控数据,是与控制操作对应的、且对虚拟现实应用的运行起控制作用的数据。操控数据,可以包括用手柄进行的操作所生成的操作控制数据和/或,由位置追踪设备追踪位置所生成的物理空间位置数据。
在一个实施例中,操控数据的组成可以包括数据块大小、时间节点、操控事件类型、操控设备类型、操控时长和操控事件额外数据等中的一种或几种的组合。
其中,操控事件类型包括手柄按钮和/或头戴式显示器旋转等;操控设备类型包括手柄和/或头戴式显示器等,操控事件额外数据,包括操控时的物理空间位置数据,物理空间位置可以包括头戴式显示器的物理空间位置数据(即HMD位置数据)。可以理解,事件额外数据还可以包括其它与操控关联的数据。参照表1,表1为一个实施例中的操控数据的存储结构。
表1
现举例说明,操作数据的组成,比如,操控数据“40 10:44:28.545545 305 2 2 2,3,1”,其中:
40:表示存储的数据块大小
10:44:28.545545:表示时间节点
305:表示左手柄滚动按钮
2:表示左手柄
2:表示手柄滚动时间长度
2,3,1:表示手柄滚动时的物理空间位置
运行时库(Runtime Library),是一种被编译器用来实现编程语言内置函数,以提供该语言程序运行时(执行)支持的一种特殊的计算机程序库。运行时库,用于在语言程序运行起来之后,作为硬件和应用之间的转换层。在本实施例中,运行时库,可以用于将虚拟现实操作硬件发送的操控数据反馈至虚拟现实应用。
图4为一个实施例中系统框图,虚拟现实操作硬件发送操控数据至运行时库,运行时库反馈操控数据至虚拟现实应用。
可以理解,在用户直接操作虚拟现实应用时,可以捕获虚拟现实操作硬件向运行时库发送的具有时序的操控数据并存储,得到预先捕获并存储的具有时序的操控数据。终端则可以在接收回放开始指令后,获取该预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据。
其中,捕获,是指拦截并传递的一种数据获取方式。即终端可以通过拦截虚拟现实操作硬件发向运行时库且具有时序的操控数据,以获取该操控数据,并将该操控数据继续传递至运行时库,从而实现在获取操控数据时,不影响用户对虚拟现实应用的正常操作及使用。
时序,是指时间先后顺序。存储的具有时序的操控数据,是存储的相互间具有时间先后顺序的操控数据。操控数据可以为一个或多个。在一个实施例中,可以是将各个操控数据和所对应的时间节点进行对应存储,也可以是将操控数据按照对应的时间先后顺序进行存储,仅存储操控数据本身。
在一个实施例中,在接收回放开始指令之前,该方法还包括:向运行时库注册回调函数;当虚拟现实操作硬件向运行时库发送具有时序的操控数据时,调用回调函数,捕获具有时序的操控数据并存储。
其中,回调函数,用于捕获虚拟现实操作硬件向运行时库发送的具有时序的操控数据。在一个实施例中,回调函数可以是钩子函数。
具体地,终端可以在虚拟现实应用处于初始运行状态时,通过调用运行时库中的注册事件回调函数(RegisterHookEvent()),向运行时库注册回调函数。其中,注册事件回调函数,用于向运行时库注册终端中的、且用于捕获操控数据的回调函数。随着用户对虚拟现实应用的操作,虚拟现实操作硬件会产生操控数据。当虚拟现实操作硬件向运行时库发送具有时序的操控数据时,终端可以调用回调函数,捕获该具有时序的操控数据并存储。在一个实施例中,终端可以在接收演练模式开启指令时,向运行时库注册回调函数,在演练模式开启时,虚拟现实应用处于初始运行状态。演练模式,可以是正常操作使用虚拟现实应用时的模式。演练模式,也可以是一种单独的、且专用于演练使用的模式,比如,对于虚拟现实游戏应用来说,演练模式可以是让用户练习操作,但不用作用户等级的考量的一种模式。
在其它实施例中,终端也可以是在虚拟现实应用启动时,向运行时库注册回调函数。可以理解,虚拟现实应用启动时处于初始运行状态。
上述实施例中,通过向运行时库注册回调函数,并回调函数捕获并存储虚拟现实操作硬件向运行时库发送的具有时序的操控数据,在实现获取操控数据的同时,不影响用户对虚拟现实应用的正常操作及使用。
S308,将操控数据按照相应时序导入运行时库中。
具体地,终端可以按照由先到后的时序将相应的操控数据导入运行时库中。
在一个实施例中,终端可以通过调用运行时库中的事件导入函数,将操控数据按照相应时序导入运行时库中。事件导入函数(PollNextEvent())用于实现对存储的操控数据的导入。
图5为一个实施例中注册事件回调函数(RegisterHookEvent())和事件导入函数(PollNextEvent())在运行时库中的参数定义结构设计图。图4中的菱形表示一种聚合关系,即整体和部分的包含关系,由部分指向整体,如图4中的HMD矩阵数据和HMD矢量数据属于HMD位置数据的一部分,HMD位置数据和控制手柄事件数据属于事件信息的一部分,事件信息属于事件导入函数和回调函数所要获取数据中的一部分。其中,事件导入函数可以是运行时库中的预设函数,也可以是接收回放开始指令后(即开启回放模式后),向运行时库中注入的临时函数代码。预设函数,是预先在运行时库中设置好的函数,即使没有接收回放开始指令,该预设函数也存在于运行时库中。临时函数,是临时性注入的函数,随着系统的运行结束自动失效的函数。临时函数可以是只有接收回放开始指令后才向运行时库中注入的函数,等到系统结束运行后,该临时函数就不存在于运行时库中。
可以理解,当事件导入函数是接收回放开始指令后,向运行时库中注入的临时函数代码时,那么在未接收回放开始指令的情况下,运行时库中就不存在这个导入函数,可以减少对运行时库空间的占用。
其中,终端可以将操控数据按照相应时序加速导入运行时库中。终端也可以将操控数据按照相应的时间节点导入运行时库中,即以正常速度导入运行时库中。
S310,通过运行时库,将导入的操控数据传递至处于初始运行状态的虚拟现实应用进行回放处理。
可以理解,运行时库是用于将虚拟现实操作硬件发送的操控数据反馈至虚拟现实应用,那么,终端是将操控数据按照相应时序导入运行时库中,则运行时库也会将导入的操控数据按照相应时序传递至处于初始运行状态的虚拟现实应用。
在一个实施例中,为了满足实时操作控制的效果,终端可以通过运行时库实时向处于初始运行状态的虚拟现实应用传递操控数据,即终端向运行时库导入操控数据后,即可通过运行时库可以向处于初始运行状态的虚拟现实应用实时传递数据。在另一个实施例中,也可以预先对运行时库作改进,终端可以通过运行时库在接收到导入的操控数据后,不将操控数据实时的传递至处于初始运行状态的虚拟现实应用,而是以预设周期统一传递至处于初始运行状态的虚拟现实应用,以减少数据发送频率,节省系统资源。这里对终端通过运行时库如何将导入的操控数据传递至处于初始运行状态的虚拟现实应用不做限定,只要能够满足将操控数据发送至处于初始运行状态的虚拟现实应用即可。
可以理解,处于初始运行状态的虚拟现实应用执行与操控数据对应的运行处理,而传递的操控数据是之前用户操作时的操控数据,因此虚拟现实应用执行与操控数据对应的运行处理,可以实现回放处理。
上述虚拟现实应用数据处理方法,通过预先捕获并存储由实现虚拟现实操作的硬件发向运行时库且具有时序的操控数据,在接收回放开始指令时,将虚拟现实恢复至初始运行状态,并自动的将该预先捕获并存储的操控数据按照相应时序导入运行时库中,通过运行时库将导入的操控数据传递至处于初始运行状态的虚拟现实应用进行回放处理,通过自动回放处理即可重现用户历史操作中的操作,而不需要用户从头开始重新操作,大大提高了操作效率。
此外,未对虚拟应用程序本身作改进,即可实现回放处理,具有通用性,避免了针对每个虚拟应用程序本身作改进造成的成本问题及难度问题。
在一个实施例中,步骤S308包括:确定与虚拟现实应用对应的回放方式;当回放方式为第一回放方式时,则根据与第一回放方式对应的加速导入倍数,缩小按时序相邻的操控数据的记录时间间隔;将操控数据按照相应时序和缩小后的记录时间间隔,依次导入运行时库。
具体地,终端在导入操控数据至运行时库前,可以确定当前进行回放处理的虚拟现实应用所对应的回放方式。在一个实施例中,回放方式可以包括加速回放和/或还原回放。加速回放,是指在所存储的操控数据所对应的操控速度上进行加速,以提高回放的速度。还原回放,是指以所存储的操控数据所对应的操控速度进行还原回放处理。
可以理解,终端根据用户操作生成相应的操控数据时,终端会记录该操控数据所产生的时间节点。记录时间间隔,是记录的按时序相邻的操控数据的时间节点之间的间隔。比如,记录的前一个操控数据的时间节点为t1,记录的后一个操控数据的时间节点为t2,则该两个相邻操控数据的记录时间间隔为t2-t1。
当与虚拟现实应用对应的回放方式为第一回放方式(即加速回放)时,终端可以获取与该第一回放方式对应的加速导入倍数。该加速导入倍数可以是预先设置的。终端根据该加速导入倍数,缩小按时序相邻的操控数据的记录时间间隔;将操控数据按照相应时序和缩小后的记录时间间隔,依次导入运行时库。
比如,加速导入倍数为2倍,按时序排列的相邻的两个操控数据的记录时间间隔为0.02秒,则缩小两者的记录时间间隔为0.01秒,然后将操控数据按照相应时序和缩小后的0.01秒的记录时间间隔,依次导入运行时库。通过加速导入,可以提高回放效率。
在一个实施例中,该方法还包括:当回放方式为第二回放方式时,则获取操控数据所对应的时间节点;将操控数据按照对应的时间节点,依次导入运行时库。
当与虚拟现实应用对应的回放方式为第二回放方式(即还原回放)时,终端可以获取操控数据所对应的时间节点,并将操控数据按照对应的时间节点,依次导入运行时库。可以理解,操控数据所对应的时间节点,是所存储的用户进行操作的时间节点,将操控数据按照对应的时间节点,依次导入运行时库,就能够实现将操控数据按照用户之前进行操作时的操控速度进行导入至运行时库,即可以实现对操作的一致性还原。
需要说明的是,这里的第一回放方式和第二回放方式中的“第一”和“第二”仅用于区分不同的回放方式,并不作大小、从属或先后等方面的限定。
上述实施例中,在将存储的操控数据导入运行时库前,确定虚拟现实应用所对应的回放方式,根据相应的回放方式来导入操控数据,使得回放方式更加的准确、有效,从而提高了回放效率。
在一个实施例中,确定与虚拟现实应用对应的回放方式,包括:当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标满足一一映射关系时,则判定与虚拟现实应用对应的回放方式为第一回放方式。
其中,虚拟三维坐标,是指在虚拟现实应用所构造的虚拟三维空间中,用户角色所对应的位置坐标。物理空间,是真实三维空间。物理三维坐标,是在真实三维空间中,用户所处的位置坐标。
具体地,终端会判断虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标是否满足一一映射关系。如果虚拟三维坐标与物理三维坐标之间满足一一映射关系,说明用户在虚拟现实应用所构造的虚拟三维空间中的位置,仅由物理空间位置决定,不会牵涉到手柄和/或头戴式显示器等操作产生的操控数据和相应时间节点的约束,则终端可以判定该虚拟现实应用支持加速导入,即终端可以判定与该虚拟现实应用对应的回放方式为第一回放方式(即加速回放)。可以理解,在其它实施例中,对于支持加速导入的虚拟现实应用,终端也可以不进行加速导入,而采取正常导入的方式导入至运行时库中。
在一个实施例中,确定与虚拟现实应用对应的回放方式,包括:当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标不满足一一映射关系时,则判定与虚拟现实应用对应的回放方式为第二回放方式。
具体地,当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标不满足一一映射关系,终端则可以判定该虚拟现实应用不支持加速导入,即判定与虚拟现实应用对应的回放方式为第二回放方式(即还原回放)。在一个实施例中,当虚拟现实应用中的虚拟三维坐标,需要由物理空间中的物理三维坐标和手柄和/或头戴式显示器等操作产生的操控数据和相应时间节点共同决定,则说明虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标不满足一一映射关系。
上述实施例中,通过判断虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标之间是否满足一一映射关系,来确定虚拟现实应用所对应的回放方式,可以更加准确的确定回放方式,从而基于准确的回放方式进行回放,能够提高回放效率。
在一个实施例中,该方法还包括回放画面模糊化处理的步骤,具体包括以下步骤:获取虚拟现实应用根据操控数据生成的回放画面;将回放画面进行模糊化处理;将模糊化处理后的回放画面输出显示。
具体地,终端通过运行时库将存储的操控数据传递至虚拟现实应用后,可以通过虚拟现实应用根据操控数据生成相应的回放画面。
在一个实施例中,终端可以通过虚拟现实应用根据操控数据,确定对应的虚拟三维坐标,并生成与所确定出的虚拟三维坐标对应的回放画面。可以理解,对于一些需要进行连续性操作的虚拟现实应用(比如,虚拟现实游戏应用中),其所生成的画面与虚拟三维空间中的虚拟三维坐标对应的,在虚拟三维空间中的不同虚拟三维坐标所对应的画面也不相同,比如,虚拟三维空间中的用户角色往前行走,所对应的画面也会发生变化。
终端获取虚拟现实应用根据操控数据生成的回放画面,并将回放画面进行模糊化处理。具体地,终端可以通过降低回放画面的质量来实现对回放画面的模糊化处理,也可以在回放画面上叠加模糊性的图形元素,比如叠加一层马赛克图层,来实现对回放画面的模糊化处理。这里对终端对回放画面进行模糊化处理的具体实现方式不作限定,只要能够实现将回放画面进行模糊化处理即可。进一步地,终端可以将模糊化处理后生成的回放画面输出并显示,即终端可以将模糊化处理后的回放画面发送至头戴式显示器进行输出显示。用户则可以通过头戴式显示器看到模糊化处理后的回放画面。
在一个实施例中,可以是,当终端按照第二回放方式(即还原回放)将操控数据按照对应的时间节点,依次导入运行时库时,再执行上述将回放画面进行模糊化处理的步骤。可以理解,当终端将操控数据通过第二回放方式导入以进行回放处理时,所生成的画面可能使用户产生晕眩感,对回放画面进行模糊化处理,可以避免晕眩感,提高了回放操作的质量和有效率。
在一个实施例中,该方法还包括:生成与回放画面对应的第三方视角画面;将第三方视角画面输出,以将第三方视角画面叠加于模糊化处理后的回放画面进行显示。
其中,虚拟现实应用根据操控数据生成的回放画面是第一方视角画面。终端可以通过修改生成第一方视角的回放画面的画面绘制参数,来生成与该回放画面对应的第三方视角画面。可以理解,第三方视角画面中,用户角色所对应的形象本身是第三方视角画面的组成部分,而在第一方视角画面中,用户角色并不显示。
终端可以将生成的与回放画面对应的第三方视角画面输出,以将第三方视角画面叠加于模糊化处理后的回放画面进行显示。这样一来,既可以避免用户晕眩,又可以让用户看到当前的回放进度。
在一个实施例中,该方法还包括:接收回放停止指令;响应于回放停止指令,取消对回放画面进行的模糊化处理,并取消生成和输出与回放画面对应的第三方视角画面。
其中,回放停止指令,用于触发停止回放的执行逻辑。
具体地,用户可以在回放过程中的任意位置通过点击或按压等操作,来发出回放停止指令。终端可以接收用户在回放过程中的任意位置上发起的回放停止指令。比如,终端所存储的全部用于回放处理的操控数据,可以进行30秒的回放,但是用户不想要进行全部回放,则用户可以在整个30秒回放过程之前的任意位置发起回放停止指令,比如回放到20秒时,用户就可以点击或按压回放停止按钮来发起回放停止指令了。
终端可以响应于回放停止指令,取消对回放画面进行的模糊化处理,并取消生成和输出与回放画面对应的第三方视角画面。具体地,终端可以取消对回放停止指令所对应位置的回放画面的模糊化处理,即回放停止指令所对应位置的回放画面是未经过模糊化处理的、且可以正常输出显示的画面。并且,终端还可以取消生成和输出与回放画面对应的第三方视角画面。即终端在接收到回放停止指令后,可以不再生成与回放停止指令所对应位置的回放画面对应的第三方视角画面。即终端在响应于回放停止指令并进行上述处理后,用户最终通过头戴式显示器看到的是未经过模糊化处理的回放画面本身。
如图6所示,在一个实施例中,生成与回放画面对应的第三方视角画面(简称第三方视角画面生成步骤),具体包括以下步骤:
S602,在虚拟现实应用调用绘制函数绘制回放画面时,获取虚拟现实应用向绘制函数传递的画面绘制参数值。
具体地,终端通过运行时库向虚拟现实应用传递所存储的操控数据后,虚拟现实应用会调用绘制函数绘制与该操控数据对应的回放画面。在虚拟现实应用调用绘制函数绘制回放画面时,终端可以获取虚拟现实应用向绘制函数传递的画面绘制参数值。其中,该获取的画面绘制参数值是用于绘制第一视角画面的绘制参数值。可以理解,终端在获取虚拟现实应用向绘制函数传递的画面绘制参数值后,可以继续将该画面绘制参数值传递至绘制函数,以使该绘制函数根据该画面绘制参数值生成第一视角的回放画面。
S604,根据第一方视角和第三方视角的绘制参数值转换关系,修改画面绘制参数值。
其中,第一方视角和第三方视角的绘制参数值转换关系,可以是将第一方视角画面转换为第三方视角画面的绘制参数值转换规则。终端可以根据第一方视角和第三方视角的绘制参数值转换规则,将获取的用于绘制第一视角画面的绘制参数值修改为用于绘制第三视角画面的绘制参数值。
S606,调用绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
具体地,终端可以调用绘制函数,根据该修改后的画面绘制参数(即用于绘制第三视角画面的绘制参数值),绘制第三方视角画面。
上述实施例中,通过获取并修改画面绘制参数来生成第三方视角画面,使得第三方视角画面生成非常的便捷,提高了效率。
在一个实施例中,步骤S602包括:在虚拟现实应用调用绘制函数绘制回放画面时,通过绘制函数中注入的钩子函数,获取虚拟现实应用向绘制函数传递的画面绘制参数值;步骤S606包括:通过绘制函数中注入的钩子函数调用绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
具体地,终端可以在接收回放指令时,触发向绘制函数注入钩子函数。在虚拟现实应用调用绘制函数绘制回放画面时,终端则可以通过绘制函数中注入的钩子函数,获取虚拟现实应用向绘制函数传递的画面绘制参数值。
在对所获取的画面绘制参数值修改完毕后,终端可以通过绘制函数中注入的钩子函数再次调用所对应的绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
上述实施例中,通过绘制函数中注入的钩子函数获取并修改画面绘制参数以生成第三方视角画面,使得第三方视角画面生成非常的便捷,提高了效率。
可以理解,实际上,终端是通过运行于终端中的第三方软件来实现本实施例中的虚拟现实应用数据处理方法。图7为一个实施例中虚拟现实应用数据处理方法的时序图,具体包括以下步骤:
1)第三方软件调用运行时库中的注册事件回调函数,向运行时库注册回调函数。
2)第三方软件向绘图程序中的绘制函数注入钩子函数。
3)第三方软件通过回调函数捕获由虚拟现实操作硬件向运行时库发送的操控数据并存储。
4)第三方软件调用运行时库中的事件导入函数,导入所存储的操控数据至运行时库。
5)运行时库传递所导入的操控数据至虚拟现实应用。
6)虚拟现实应用调用绘图程序中的绘制函数,以绘制操控数据所对应的回放画面。
7)绘图程序的绘制函数中所注入的钩子函数获取并修改画面绘制参数值。
8)绘图程序中的绘制函数根据原始的画面绘制参数值,生成回放画面。
9)绘图程序的绘制函数中所注入的钩子函数,调用绘制函数根据修改后的画面绘制参数值,生成第三方视角画面。
10)绘图程序返回该回放画面和第三方视角画面至第三方软件。
11)第三方软件对回放画面模糊化处理,并叠加上第三视角画面。
12)第三方软件发送模糊化回放画面和叠加的第三视角画面至头戴式显示器。
13)头戴式显示器输出显示模糊化回放画面,和叠加的第三视角画面。
如图8所示,在一个实施例中,该方法还包括即时虚拟现实画面生成步骤,具体包括以下步骤:
S802,接收到回放停止指令后,停止将操控数据导入运行时库中,以结束回放处理。
其中,回放停止指令,用于触发停止回放的执行逻辑。
具体地,用户可以在回放过程中的任意位置通过点击或按压等操作,来发出回放停止指令。终端可以接收用户在回放过程中的任意位置上发起的回放停止指令。比如,终端所存储的全部用户回放处理的操控数据,可以进行30秒的回放,但是用户不想要进行全部回放,则用户可以在整个30秒回放过程之前的任意位置发起回放停止指令,比如回放到20秒时,用户就可以点击或按压回放停止按钮来发起回放停止指令了。
终端在接收到回放停止指令后,停止将操控数据导入运行时库中,以结束回放处理。可以理解,结束回放处理后,即恢复到即时操作处理状态,终端可以控制运行时库恢复到可接收虚拟现实操作硬件发送的即时操控数据的状态。
S804,通过运行时库,接收由虚拟现实操作硬件发送的即时操控数据并传递至虚拟现实应用。
具体地,用户可以操作虚拟现实操作硬件发出对虚拟现实应用的即时操作,虚拟现实操作硬件将与该即时操作对应的即时操控数据发送至运行时库。终端通过运行时库,接收由虚拟现实操作硬件发送的即时操控数据并传递至虚拟现实应用。
S806,通过虚拟现实应用,根据即时操控数据形成虚拟现实画面并输出显示。
具体地,终端可以通过虚拟现实应用,根据即时操控数据形成虚拟现实画面并输出显示。在一个实施例中,终端可以通过虚拟现实应用根据即时操控数据,确定对应的虚拟三维坐标,并生成与所确定出的虚拟三维坐标对应的即时的虚拟现实画面。
上述实施例中,在接收回放停止指令后,即可恢复至即时操作处理状态,并根据虚拟现实操作硬件发送的即时操控数据,形成虚拟现实画面并输出显示。实现了回放和即时操作的无缝对接,避免了还需要进行其他操作才能恢复至即时操作状态,提高了操作效率。
如图9所示,在一个实施例中,提供了另一种虚拟现实应用数据处理方法,该方法具体包括以下步骤:
S902,向运行时库注册回调函数,当虚拟现实操作硬件向运行时库发送具有时序的操控数据时,调用回调函数,捕获具有时序的操控数据并存储。
S904,接收回放开始指令,响应于回放开始指令,将虚拟现实应用恢复至初始运行状态。
S906,获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据。
S908,确定与虚拟现实应用对应的回放方式。当回放方式为第一回放方式时,则进入步骤S910,当回放方式为第二回放方式时,则进入步骤S912。
其中,当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标满足一一映射关系时,则判定与虚拟现实应用对应的回放方式为第一回放方式。当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标不满足一一映射关系时,则判定与虚拟现实应用对应的回放方式为第二回放方式。
S910,根据与第一回放方式对应的加速导入倍数,缩小按时序相邻的操控数据的记录时间间隔;将操控数据按照相应时序和缩小后的记录时间间隔,依次导入运行时库。
S912,获取操控数据所对应的时间节点;将操控数据按照对应的时间节点,依次导入运行时库。
S914,通过运行时库,将导入的操控数据传递至处于初始运行状态的虚拟现实应用进行回放处理。
S916,在虚拟现实应用调用绘制函数绘制回放画面时,通过绘制函数中注入的钩子函数,获取虚拟现实应用向绘制函数传递的画面绘制参数值。
S918,根据第一方视角和第三方视角的绘制参数值转换关系,修改画面绘制参数值。
S920,通过绘制函数中注入的钩子函数调用绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
S922,获取虚拟现实应用根据操控数据生成的回放画面,将回放画面进行模糊化处理,将模糊化处理后的回放画面输出显示。
S924,将第三方视角画面输出,以将第三方视角画面叠加于模糊化处理后的回放画面进行显示。
S926,接收回放停止指令,响应于回放停止指令,取消对回放画面进行的模糊化处理,并取消生成和输出与回放画面对应的第三方视角画面。
S928,停止将操控数据导入运行时库中,以结束回放处理。
S930,通过运行时库,接收由虚拟现实操作硬件发送的即时操控数据并传递至虚拟现实应用。
S932,通过虚拟现实应用,根据即时操控数据形成虚拟现实画面并输出显示。
上述虚拟现实应用数据处理方法,通过预先捕获并存储由实现虚拟现实操作的硬件发向运行时库且具有时序的操控数据,在接收回放开始指令时,将虚拟现实恢复至初始运行状态,并自动的将该预先捕获并存储的操控数据按照相应时序导入运行时库中,通过运行时库将导入的操控数据传递至处于初始运行状态的虚拟现实应用进行回放处理,通过自动回放处理即可重现用户历史操作中的操作,而不需要用户从头开始重新操作,大大提高了操作效率。
其次,在将存储的操控数据导入运行时库前,确定虚拟现实应用所对应的回放方式,根据相应的回放方式来导入操控数据,使得回放方式更加的准确、有效,从而提高了回放效率。且通过加速导入,可以进一步地提高回放效率。
然后,对回放画面进行模糊化处理,可以避免晕眩感,提高了回放操作的质量和有效率。
再者,以将第三方视角画面叠加于模糊化处理后的回放画面进行显示。这样一来,既可以避免用户晕眩,又可以让用户看到当前的回放进度。
此外,通过获取并修改画面绘制参数来生成第三方视角画面,使得第三方视角画面生成非常的便捷,提高了效率。
最后,在接收回放停止指令后,即可恢复至即时操作处理状态,并根据虚拟现实操作硬件发送的即时操控数据,形成虚拟现实画面并输出显示。实现了回放和即时操作的无缝对接,避免了还需要进行其他操作才能恢复至即时操作状态,提高了操作效率。
如图10所示,在一个实施例中,提供了一种虚拟现实应用数据处理装置1000,该装置1000包括:获取模块1003、运行状态管理模块1004、操控数据导入模块1006及回放处理模块1008,其中:
获取模块1003,用于接收回放开始指令。
运行状态管理模块1004,用于响应于回放开始指令,将虚拟现实应用恢复至初始运行状态。
获取模块1002还用于获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据。
操控数据导入模块1006,用于将操控数据按照相应时序导入运行时库中。
回放处理模块1008,用于通过运行时库,将导入的操控数据传递至处于初始运行状态的虚拟现实应用进行回放处理。
如图11所示,在一个实施例中,装置1000还包括:
函数注册模块1001,用于向运行时库注册回调函数。
操控数据捕获模块1002,用于当虚拟现实操作硬件向运行时库发送具有时序的操控数据时,调用回调函数,捕获具有时序的操控数据并存储。
在一个实施例中,操控数据导入模块1006还用于确定与虚拟现实应用对应的回放方式;当回放方式为第一回放方式时,则根据与第一回放方式对应的加速导入倍数,缩小按时序相邻的操控数据的记录时间间隔;将操控数据按照相应时序和缩小后的记录时间间隔,依次导入运行时库。
在一个实施例中,操控数据导入模块1006还用于确定与虚拟现实应用对应的回放方式;当回放方式为第二回放方式时,则获取操控数据所对应的时间节点;将操控数据按照对应的时间节点,依次导入运行时库。
在一个实施例中,操控数据导入模块1006还用于当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标满足一一映射关系时,则判定与虚拟现实应用对应的回放方式为第一回放方式。
在一个实施例中,操控数据导入模块1006还用于当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标不满足一一映射关系时,则判定与虚拟现实应用对应的回放方式为第二回放方式。
如图12所示,在一个实施例中,装置1000还包括:
回放画面处理模块1010,用于获取虚拟现实应用根据操控数据生成的回放画面;将回放画面进行模糊化处理;将模糊化处理后的回放画面输出显示。
在一个实施例中,回放画面处理模块1010还用于生成与回放画面对应的第三方视角画面;将第三方视角画面输出,以将第三方视角画面叠加于模糊化处理后的回放画面进行显示。
在一个实施例中,回放画面处理模块1010还用于接收回放停止指令;响应于回放停止指令,取消对回放画面进行的模糊化处理,并取消生成和输出与回放画面对应的第三方视角画面。
在一个实施例中,回放画面处理模块1010还用于在虚拟现实应用调用绘制函数绘制回放画面时,获取虚拟现实应用向绘制函数传递的画面绘制参数值;根据第一方视角和第三方视角的绘制参数值转换关系,修改画面绘制参数值;调用绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
在一个实施例中,回放画面处理模块1010还用于在虚拟现实应用调用绘制函数绘制回放画面时,通过绘制函数中注入的钩子函数,获取虚拟现实应用向绘制函数传递的画面绘制参数值。
回放画面处理模块1010还用于通过绘制函数中注入的钩子函数调用绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
如图13所示,在一个实施例中,装置1000还包括:
回放处理结束模块1012,用于接收到回放停止指令后,停止将操控数据导入运行时库中,以结束回放处理。
即时操控模块1014,用于通过运行时库,接收由虚拟现实操作硬件发送的即时操控数据并传递至虚拟现实应用;通过虚拟现实应用,根据即时操控数据形成虚拟现实画面并输出显示。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行以下步骤:接收回放开始指令;响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;将所述操控数据按照相应时序导入所述运行时库中;通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理。
在一个实施例中,在所述接收回放开始指令之前,计算机可读指令还使得处理器执行以下步骤:向运行时库注册回调函数;当虚拟现实操作硬件向所述运行时库发送具有时序的操控数据时,调用所述回调函数,捕获所述具有时序的操控数据并存储。
在一个实施例中,处理器所执行的所述将所述操控数据按照相应时序导入所述运行时库中,包括:确定与虚拟现实应用对应的回放方式;当所述回放方式为第一回放方式时,则根据与所述第一回放方式对应的加速导入倍数,缩小按时序相邻的所述操控数据的记录时间间隔;将所述操控数据按照相应时序和缩小后的记录时间间隔,依次导入所述运行时库。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:确定与虚拟现实应用对应的回放方式;当所述回放方式为第二回放方式时,则获取所述操控数据所对应的时间节点;将所述操控数据按照对应的时间节点,依次导入所述运行时库。
在一个实施例中,处理器所执行的所述确定与虚拟现实应用对应的回放方式,包括:当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标满足一一映射关系时,则判定与所述虚拟现实应用对应的回放方式为第一回放方式。
在一个实施例中,处理器所执行的所述确定与虚拟现实应用对应的回放方式,包括:当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标不满足一一映射关系时,则判定与所述虚拟现实应用对应的回放方式为第二回放方式。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:获取所述虚拟现实应用根据所述操控数据生成的回放画面;将所述回放画面进行模糊化处理;将模糊化处理后的回放画面输出显示。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:生成与所述回放画面对应的第三方视角画面;将所述第三方视角画面输出,以将所述第三方视角画面叠加于模糊化处理后的回放画面进行显示。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:接收回放停止指令;响应于所述回放停止指令,取消对所述回放画面进行的模糊化处理,并取消生成和输出与所述回放画面对应的第三方视角画面。
在一个实施例中,处理器所执行的所述生成与所述回放画面对应的第三方视角画面,包括:在虚拟现实应用调用绘制函数绘制回放画面时,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值;根据第一方视角和第三方视角的绘制参数值转换关系,修改所述画面绘制参数值;调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
在一个实施例中,处理器所执行的在虚拟现实应用调用绘制函数绘制回放画面时,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值,包括:在虚拟现实应用调用绘制函数绘制回放画面时,通过所述绘制函数中注入的钩子函数,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值。
处理器所执行的所述调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面,包括:通过所述绘制函数中注入的钩子函数调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:接收到回放停止指令后,停止将所述操控数据导入所述运行时库中,以结束所述回放处理;通过所述运行时库,接收由虚拟现实操作硬件发送的即时操控数据并传递至所述虚拟现实应用;通过所述虚拟现实应用,根据所述即时操控数据形成虚拟现实画面并输出显示。
在一个实施例中,提供了一种存储有计算机可读指令的存储介质,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:接收回放开始指令;响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;将所述操控数据按照相应时序导入所述运行时库中;通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理。
在一个实施例中,在所述接收回放开始指令之前,计算机可读指令还使得处理器执行以下步骤:向运行时库注册回调函数;当虚拟现实操作硬件向所述运行时库发送具有时序的操控数据时,调用所述回调函数,捕获所述具有时序的操控数据并存储。
在一个实施例中,处理器所执行的所述将所述操控数据按照相应时序导入所述运行时库中,包括:确定与虚拟现实应用对应的回放方式;当所述回放方式为第一回放方式时,则根据与所述第一回放方式对应的加速导入倍数,缩小按时序相邻的所述操控数据的记录时间间隔;将所述操控数据按照相应时序和缩小后的记录时间间隔,依次导入所述运行时库。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:确定与虚拟现实应用对应的回放方式;当所述回放方式为第二回放方式时,则获取所述操控数据所对应的时间节点;将所述操控数据按照对应的时间节点,依次导入所述运行时库。
在一个实施例中,处理器所执行的所述确定与虚拟现实应用对应的回放方式,包括:当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标满足一一映射关系时,则判定与所述虚拟现实应用对应的回放方式为第一回放方式。
在一个实施例中,处理器所执行的所述确定与虚拟现实应用对应的回放方式,包括:当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标不满足一一映射关系时,则判定与所述虚拟现实应用对应的回放方式为第二回放方式。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:获取所述虚拟现实应用根据所述操控数据生成的回放画面;将所述回放画面进行模糊化处理;将模糊化处理后的回放画面输出显示。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:生成与所述回放画面对应的第三方视角画面;将所述第三方视角画面输出,以将所述第三方视角画面叠加于模糊化处理后的回放画面进行显示。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:接收回放停止指令;响应于所述回放停止指令,取消对所述回放画面进行的模糊化处理,并取消生成和输出与所述回放画面对应的第三方视角画面。
在一个实施例中,处理器所执行的所述生成与所述回放画面对应的第三方视角画面,包括:在虚拟现实应用调用绘制函数绘制回放画面时,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值;根据第一方视角和第三方视角的绘制参数值转换关系,修改所述画面绘制参数值;调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
在一个实施例中,处理器所执行的在虚拟现实应用调用绘制函数绘制回放画面时,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值,包括:在虚拟现实应用调用绘制函数绘制回放画面时,通过所述绘制函数中注入的钩子函数,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值。
处理器所执行的所述调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面,包括:通过所述绘制函数中注入的钩子函数调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
在一个实施例中,计算机可读指令还使得处理器执行以下步骤:接收到回放停止指令后,停止将所述操控数据导入所述运行时库中,以结束所述回放处理;通过所述运行时库,接收由虚拟现实操作硬件发送的即时操控数据并传递至所述虚拟现实应用;通过所述虚拟现实应用,根据所述即时操控数据形成虚拟现实画面并输出显示。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (14)
1.一种虚拟现实应用数据处理方法,所述方法包括:
接收回放开始指令;
响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;
获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;
将所述操控数据按照相应时序导入所述运行时库中;
通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理;
将所述虚拟现实应用根据所述操控数据生成的回放画面进行模糊化处理;
在所述虚拟现实应用调用绘制函数绘制回放画面时,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值;
根据第一方视角和第三方视角的绘制参数值转换关系,修改所述画面绘制参数值;
调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面;
将所述第三方视角画面输出,以将所述第三方视角画面叠加于模糊化处理后的回放画面进行显示。
2.根据权利要求1所述的方法,其特征在于,在所述接收回放开始指令之前,所述方法还包括:
向运行时库注册回调函数;
当虚拟现实操作硬件向所述运行时库发送具有时序的操控数据时,调用所述回调函数,捕获所述具有时序的操控数据并存储。
3.根据权利要求1所述的方法,其特征在于,所述将所述操控数据按照相应时序导入所述运行时库中,包括:
确定与虚拟现实应用对应的回放方式;
当所述回放方式为第一回放方式时,则
根据与所述第一回放方式对应的加速导入倍数,缩小按时序相邻的所述操控数据的记录时间间隔;
将所述操控数据按照相应时序和缩小后的记录时间间隔,依次导入所述运行时库。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定与虚拟现实应用对应的回放方式;
当所述回放方式为第二回放方式时,则
获取所述操控数据所对应的时间节点;
将所述操控数据按照对应的时间节点,依次导入所述运行时库。
5.根据权利要求3所述的方法,其特征在于,所述确定与虚拟现实应用对应的回放方式,包括:
当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标满足一一映射关系时,则判定与所述虚拟现实应用对应的回放方式为第一回放方式。
6.根据权利要求4所述的方法,其特征在于,所述确定与虚拟现实应用对应的回放方式,包括:
当虚拟现实应用中的虚拟三维坐标与物理空间中的物理三维坐标不满足一一映射关系时,则判定与所述虚拟现实应用对应的回放方式为第二回放方式。
7.根据权利要求1所述的方法,其特征在于,在虚拟现实应用调用绘制函数绘制回放画面时,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值,包括:
在虚拟现实应用调用绘制函数绘制回放画面时,通过所述绘制函数中注入的钩子函数,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值;
所述调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面,包括:
通过所述绘制函数中注入的钩子函数调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述方法还包括:
接收到回放停止指令后,停止将所述操控数据导入所述运行时库中,以结束所述回放处理;
通过所述运行时库,接收由虚拟现实操作硬件发送的即时操控数据并传递至所述虚拟现实应用;
通过所述虚拟现实应用,根据所述即时操控数据形成虚拟现实画面并输出显示。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行以下步骤:
接收回放开始指令;
响应于所述回放开始指令,将虚拟现实应用恢复至初始运行状态;
获取预先捕获并存储的由虚拟现实操作硬件发向运行时库且具有时序的操控数据;
将所述操控数据按照相应时序导入所述运行时库中;
通过所述运行时库,将导入的所述操控数据传递至处于初始运行状态的所述虚拟现实应用进行回放处理;
将所述虚拟现实应用根据所述操控数据生成的回放画面进行模糊化处理;
在所述虚拟现实应用调用绘制函数绘制回放画面时,获取所述虚拟现实应用向所述绘制函数传递的画面绘制参数值;
根据第一方视角和第三方视角的绘制参数值转换关系,修改所述画面绘制参数值;
调用所述绘制函数,根据修改后的画面绘制参数值绘制第三方视角画面;
将所述第三方视角画面输出,以将所述第三方视角画面叠加于模糊化处理后的回放画面进行显示。
10.根据权利要求9所述的计算机设备,其特征在于,在所述接收回放开始指令之前,所述计算机可读指令还使得所述处理器执行以下步骤:
向运行时库注册回调函数;
当虚拟现实操作硬件向所述运行时库发送具有时序的操控数据时,调用所述回调函数,捕获所述具有时序的操控数据并存储。
11.根据权利要求9所述的计算机设备,其特征在于,所述处理器所执行的将所述操控数据按照相应时序导入所述运行时库中,包括:
确定与虚拟现实应用对应的回放方式;
当所述回放方式为第一回放方式时,则
根据与所述第一回放方式对应的加速导入倍数,缩小按时序相邻的所述操控数据的记录时间间隔;
将所述操控数据按照相应时序和缩小后的记录时间间隔,依次导入所述运行时库。
12.根据权利要求9所述的计算机设备,其特征在于,所述计算机可读指令还使得所述处理器执行以下步骤:
确定与虚拟现实应用对应的回放方式;
当所述回放方式为第二回放方式时,则
获取所述操控数据所对应的时间节点;
将所述操控数据按照对应的时间节点,依次导入所述运行时库。
13.根据权利要求9至12中任一项所述的计算机设备,其特征在于,所述计算机可读指令还使得所述处理器执行以下步骤:
接收到回放停止指令后,停止将所述操控数据导入所述运行时库中,以结束所述回放处理;
通过所述运行时库,接收由虚拟现实操作硬件发送的即时操控数据并传递至所述虚拟现实应用;
通过所述虚拟现实应用,根据所述即时操控数据形成虚拟现实画面并输出显示。
14.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至8中任一项所述方法的步骤。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710322336.3A CN108874267B (zh) | 2017-05-09 | 2017-05-09 | 虚拟现实应用数据处理方法、计算机设备和存储介质 |
EP18799360.5A EP3611610A4 (en) | 2017-05-09 | 2018-04-18 | DATA PROCESSING METHODS OF AN APPLICATION OF VIRTUAL REALITY, COMPUTER DEVICE AND STORAGE MEDIUM |
PCT/CN2018/083584 WO2018205809A1 (zh) | 2017-05-09 | 2018-04-18 | 虚拟现实应用数据处理方法、计算机设备和存储介质 |
US16/508,483 US11307891B2 (en) | 2017-05-09 | 2019-07-11 | Virtual reality application data processing method, computer device and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710322336.3A CN108874267B (zh) | 2017-05-09 | 2017-05-09 | 虚拟现实应用数据处理方法、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108874267A CN108874267A (zh) | 2018-11-23 |
CN108874267B true CN108874267B (zh) | 2022-12-09 |
Family
ID=64104831
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710322336.3A Active CN108874267B (zh) | 2017-05-09 | 2017-05-09 | 虚拟现实应用数据处理方法、计算机设备和存储介质 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11307891B2 (zh) |
EP (1) | EP3611610A4 (zh) |
CN (1) | CN108874267B (zh) |
WO (1) | WO2018205809A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110598027B (zh) * | 2019-09-10 | 2022-09-02 | Oppo广东移动通信有限公司 | 图像处理效果的显示方法、装置、电子设备以及存储介质 |
CN112256317B (zh) * | 2020-10-21 | 2022-07-29 | 上海曼恒数字技术股份有限公司 | 一种虚拟现实沉浸式大屏追踪系统的快速构建方法、介质及设备 |
CN112535865A (zh) * | 2020-12-15 | 2021-03-23 | 网易(杭州)网络有限公司 | 游戏内容的回放方法、终端、可读存储介质及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104111864A (zh) * | 2013-04-22 | 2014-10-22 | 腾讯科技(深圳)有限公司 | 应用操作的录制方法、回放方法及相应的装置 |
CN104580973A (zh) * | 2014-12-30 | 2015-04-29 | 中国科学院深圳先进技术研究院 | 一种虚拟手术模拟过程的录制、回放方法及装置 |
CN105103232A (zh) * | 2013-03-28 | 2015-11-25 | 三菱电机株式会社 | 再现装置、控制方法以及程序 |
US9616338B1 (en) * | 2016-02-29 | 2017-04-11 | Vreal Inc | Virtual reality session capture and replay systems and methods |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6064355A (en) * | 1994-05-24 | 2000-05-16 | Texas Instruments Incorporated | Method and apparatus for playback with a virtual reality system |
US20160267720A1 (en) * | 2004-01-30 | 2016-09-15 | Electronic Scripting Products, Inc. | Pleasant and Realistic Virtual/Augmented/Mixed Reality Experience |
US20120086630A1 (en) * | 2010-10-12 | 2012-04-12 | Sony Computer Entertainment Inc. | Using a portable gaming device to record or modify a game or application in real-time running on a home gaming system |
CN102769775A (zh) * | 2012-06-12 | 2012-11-07 | 严幸华 | 覆盖图像提供系统、服务器和方法 |
JP2014127987A (ja) * | 2012-12-27 | 2014-07-07 | Sony Corp | 情報処理装置および記録媒体 |
US9858899B2 (en) * | 2013-06-13 | 2018-01-02 | Microsoft Technology Licensing, Llc | Managing transitions of adaptive display rates for different video playback scenarios |
US9715764B2 (en) * | 2013-10-03 | 2017-07-25 | Honda Motor Co., Ltd. | System and method for dynamic in-vehicle virtual reality |
US9997199B2 (en) * | 2014-12-05 | 2018-06-12 | Warner Bros. Entertainment Inc. | Immersive virtual reality production and playback for storytelling content |
US11351466B2 (en) * | 2014-12-05 | 2022-06-07 | Activision Publishing, Ing. | System and method for customizing a replay of one or more game events in a video game |
EP3206122A1 (en) * | 2016-02-10 | 2017-08-16 | Nokia Technologies Oy | An apparatus and associated methods |
-
2017
- 2017-05-09 CN CN201710322336.3A patent/CN108874267B/zh active Active
-
2018
- 2018-04-18 EP EP18799360.5A patent/EP3611610A4/en active Pending
- 2018-04-18 WO PCT/CN2018/083584 patent/WO2018205809A1/zh unknown
-
2019
- 2019-07-11 US US16/508,483 patent/US11307891B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105103232A (zh) * | 2013-03-28 | 2015-11-25 | 三菱电机株式会社 | 再现装置、控制方法以及程序 |
CN104111864A (zh) * | 2013-04-22 | 2014-10-22 | 腾讯科技(深圳)有限公司 | 应用操作的录制方法、回放方法及相应的装置 |
CN104580973A (zh) * | 2014-12-30 | 2015-04-29 | 中国科学院深圳先进技术研究院 | 一种虚拟手术模拟过程的录制、回放方法及装置 |
US9616338B1 (en) * | 2016-02-29 | 2017-04-11 | Vreal Inc | Virtual reality session capture and replay systems and methods |
Also Published As
Publication number | Publication date |
---|---|
CN108874267A (zh) | 2018-11-23 |
WO2018205809A1 (zh) | 2018-11-15 |
US20190332418A1 (en) | 2019-10-31 |
EP3611610A4 (en) | 2021-01-27 |
US11307891B2 (en) | 2022-04-19 |
EP3611610A1 (en) | 2020-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11645804B2 (en) | Dynamic emoticon-generating method, computer-readable storage medium and computer device | |
JP2020507136A (ja) | Vrオブジェクトの合成方法、装置、プログラム及び記録媒体 | |
CN109089043B (zh) | 拍摄图像预处理方法、装置、存储介质及移动终端 | |
CN108874267B (zh) | 虚拟现实应用数据处理方法、计算机设备和存储介质 | |
CN112035046B (zh) | 榜单信息显示方法、装置、电子设备及存储介质 | |
WO2022151752A1 (zh) | 场景切换方法及装置 | |
CN113794831B (zh) | 视频拍摄方法、装置、电子设备及介质 | |
CN111818382B (zh) | 一种录屏方法、装置及电子设备 | |
US11600300B2 (en) | Method and device for generating dynamic image | |
CN101257558A (zh) | 应用于数字相机的马赛克处理及还原马赛克处理的方法 | |
CN113170225A (zh) | 画面窗口的显示方法、装置、终端及存储介质 | |
CN115967854A (zh) | 拍照方法、装置及电子设备 | |
CN114053706A (zh) | 游戏界面的视角处理方法、装置、设备及存储介质 | |
CN113709375A (zh) | 一种图像显示方法及其装置、电子设备 | |
CN113852774A (zh) | 录屏方法及装置 | |
CN110401865B (zh) | 视频互动功能的实现方法和装置 | |
CN112367487A (zh) | 视频录制方法和电子设备 | |
CN110598035B (zh) | 一种手机游戏虚拟人物形象推荐方法、装置和移动终端 | |
CN112995774A (zh) | 一种视频播放方法、装置、终端及存储介质 | |
CN113569066B (zh) | 多媒体展示方法、装置、电子设备、服务器及存储介质 | |
CN112367562B (zh) | 图像处理方法、装置及电子设备 | |
CN113691443B (zh) | 图像分享方法、装置和电子设备 | |
CN114398129B (zh) | 共享对象分享方法、装置、电子设备及可读存储介质 | |
CN114247133B (zh) | 一种游戏视频合成方法、装置、电子设备及存储介质 | |
CN112954252A (zh) | 视频通话方法及装置 |
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 |