CN109246480A - 一种基于ios系统的游戏屏幕录屏方法及装置 - Google Patents
一种基于ios系统的游戏屏幕录屏方法及装置 Download PDFInfo
- Publication number
- CN109246480A CN109246480A CN201810972665.7A CN201810972665A CN109246480A CN 109246480 A CN109246480 A CN 109246480A CN 201810972665 A CN201810972665 A CN 201810972665A CN 109246480 A CN109246480 A CN 109246480A
- Authority
- CN
- China
- Prior art keywords
- image data
- api
- audio data
- unity
- screen
- 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.)
- Pending
Links
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/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
- H04N21/4431—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB characterized by the use of Application Program Interface [API] libraries
-
- 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
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
-
- 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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/27—Server based end-user applications
- H04N21/274—Storing end-user multimedia data in response to end-user request, e.g. network recorder
-
- 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/433—Content storage operation, e.g. storage operation in response to a pause request, caching operations
- H04N21/4334—Recording operations
-
- 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
Abstract
本发明提供一种基于IOS系统的游戏屏幕录屏方法和装置,通过APIHOOK技术,获取unity输出的最终要绘制到屏幕的图像数据;通过API HOOK技术,获取unity输出的音频数据;对图像数据和音频数据进行拷贝;将通过API HOOK技术获取的图像数据和音频数据还给游戏主程序unity进行显示;将拷贝后的图像数据和音频数据合并成新的视频文件。其有益效果是,通过HOOK技术,在正常游戏系统当中,获取unity输出的图像数据和音频数据,将图像数据和音频数据进行拷贝,将拷贝下来的图像数据和音频数据外挂成新的视频文件,从而实现录屏的功能。录屏过程当中,不影响用户游戏的正常运行。
Description
技术领域
本发明涉及视频处理技术领域,尤其涉及一种基于IOS系统的游戏屏幕录屏方法及装置。
背景技术
随着游戏、动漫等娱乐产业的发展,在各种游戏应用程序广泛的深入到了人们的生活当中。
随着电子游戏产业的发展以及游戏玩家数量激增,游戏玩家对于游戏体验也有各种各样的需求。
其中一个需求就是玩家希望将游戏画面录制成视频,保存在本地或是上传视频到共享服务器或者平台当中去进行直播,供玩家间交流使用。目前一些可以提供游戏视频录制功能的软件主要有yy游戏直播插件,Fraps,XSplit等。
但是由于录制视频需要在游戏进行时来操作,要在游戏运行时进行同步视频录制,上述的几款软件在游戏开始后进行视频录制时会占用大量CPU及内存,降低系统运行速度,从而导致游戏的卡顿、跳帧等问题。这样非但不能正常的录制视频,还可能导致正在运行的游戏进程卡滞。由此可见,现有技术没有充分考虑用户对于服务体验的要求,这在网络游戏等应用中,响应延迟、画面质量等服务体验对于用户而言恰恰是非常重要的。
而且,设置相应的录屏插件后,会导致应用场景变窄,有时也会与游戏本身功能产生冲突。而且捆绑的服务过多,也会导致和游戏本身功能冲突或臃肿。
发明内容
为了至少解决现有的技术问题。
在一些新版本IOS系统,即新款的苹果手机当中已经可以支持系统自带的录屏功能,但是对于一些低版本的老款苹果手机而言,则不具有相应的录屏功能。
API:Application Programming Interface是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
OpenGL:Open Graphics Library,是指一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口。
HOOK:是一种系统消息处理机制的平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理系统消息或特定事件。
钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
Unity:是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine,Virtools或TorqueGame Builder等利用交互的图型化开发环境为首要方式的软件。
本发明创造性的提供了一种基于IOS系统的游戏屏幕录屏方法,主要是可以解决低版本IOS系统的问题,其中所述方法包括如下步骤:
通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据;
通过API HOOK技术,获取unity输出的音频数据;
对图像数据和音频数据进行拷贝;
将通过API HOOK技术获取的图像数据和音频数据还给游戏主程序unity进行显示;
将拷贝后的图像数据和音频数据合并成新的视频文件。
其有益效果是,通过HOOK技术,在正常游戏系统当中,获取unity输出的图像数据和音频数据,在不对这些数据做任何改动的情况下,将图像数据和音频数据进行拷贝,拷贝后,将获取到的图像数据和音频数据还给游戏主程序unity进行显示。但是可以将拷贝下来的图像数据和音频数据外挂成新的视频文件,从而实现录屏的功能。此方法只需要占用极少的CPU及内存,对于系统运行速度几乎没有影响,不会影响游戏速度,不会造成游戏用户的不良体验。同时,本方法并不需要安排另外的录屏插件后,不会导致应用场景变窄,也不会和游戏本身功能产生冲突。
在一些实施方式中,通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据的具体方法为:
通过object-c交换函数实现的机制,hook OpenGl的API,获取untiy最终要绘制到屏幕的图像数据,具体步骤如下:
a.使用@selector(presentRenderbuffer:)获取presentRenderbuffer函数的编号。
b.使用class_getInstanceMethod获得EAGLContext中的present方法。
c.使用@selector(presentGLES:)获取presentGLES函数的编号。
d.使用class_addMethod将presentGLES函数加入到EAGLContext中。
e.使用method_exchangeImplementations交换presentRenderbuffer和presentGLES两个函数的实现。
其有益效果是,通过以上步骤达到hook的目的。
在一些实施方式中,通过API HOOK技术,获取unity输出的音频数据的具体方法:
创建并启动AudioUnitGraph,利用程序链接的规则,定义相同声明的函数实现hook AudioUnit API,获取untiy最终要输出的音频数据,具体步骤如下:
e.声明一个新的和ios AudioUnitSetProperty一样的函数;
f.将fmod中调用,链接到新的AudioUnitSetProperty;
g.使用rebind_symbols获取ios系统的AudioUnitSetProperty函数指针;
a.Fmod将调用新的AudioUnitSetProperty,在新的AudioUnitSetProperty中调用系统的AudioUnitSetProperty。
其有益效果是,通过以上步骤达到hook的目的。
在一些实施方式中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为opengl2.0时,则使用glDrawElements将unity渲染结果渲染到视频input的surface中。
在一些实施方式中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为opengl3.0时,则使用glBlitFramebuffer将unity渲染结果渲染到视频input的surface中。
在一些实施方式中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为metal时,则使用CVMetalTextureCacheCreateTextureFromImage。将unity渲染结果渲染到视频input的surface中。
同时,本发明还提供了一种非易失性计算机存储介质,存储有计算机可执行程序,所述计算机可执行程序用于执行如上所述的基于IOS系统的游戏屏幕录屏方法。存储介质包括但不限于ROM、RAM、普通硬盘、U盘或者软盘。其有益效果是,只需要可以用于存储相应程序即可,通过存储介质将相应的可执行程序存储起来后,可以将方便的将相应的可执行程序安装到IOS系统的智能终端上,从而方便的进行相应的屏幕录像。
同时,本发明还提供了一种基于IOS系统的游戏屏幕录屏装置,其包括:图像数据获取单元、音频数据获取单元、拷贝单元和合成单元;
所述图像数据获取单元,配置成通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据;
所述音频数据获取单元,配置成通过API HOOK技术,获取unity输出的音频数据;
所述拷贝单元,配置成对图像数据和音频数据进行拷贝;
所述合成单元,配置成将拷贝后的图像数据和音频数据合并成新的视频文件。
其有益效果是,通过HOOK技术,在正常游戏系统当中,获取unity输出的图像数据和音频数据,在不对这些数据做任何改动的情况下,将图像数据和音频数据进行拷贝,拷贝后,将获取到的图像数据和音频数据还给游戏主程序unity进行显示。但是可以将拷贝下来的图像数据和音频数据外挂成新的视频文件,从而实现录屏的功能。录屏过程当中,不影响用户游戏的正常运行。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的一种基于IOS系统的游戏屏幕录屏方法的流程图;
图2为本发明一实施例提供一种基于IOS系统的游戏屏幕录屏装置的结构原理示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
API:Application Programming Interface是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
OpenGL:Open Graphics Library,是指一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口。
HOOK:是一种系统消息处理机制的平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理系统消息或特定事件。
钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
Unity:是由Unity Technologies开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine,Virtools或TorqueGame Builder等利用交互的图型化开发环境为首要方式的软件。
在一些新版本IOS系统,即新款的苹果手机当中已经可以支持系统自带的录屏功能,但是对于一些低版本的老款苹果手机而言,则不具有相应的录屏功能。
本发明实施例提供了一种基于IOS系统的游戏屏幕录屏方法,主要是可以解决低版本IOS系统的问题,其中所述方法包括如下步骤:
步骤S101:通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据;
步骤S102:通过API HOOK技术,获取unity输出的音频数据;
步骤S103:对图像数据和音频数据进行拷贝;
步骤S104:将通过API HOOK技术获取的图像数据和音频数据还给游戏主程序unity进行显示;
步骤S105:将拷贝后的图像数据和音频数据合并成新的视频文件。
通过HOOK技术,在正常游戏系统当中,获取unity输出的图像数据和音频数据,在不对这些数据做任何改动的情况下,将图像数据和音频数据进行拷贝,拷贝后,将获取到的图像数据和音频数据还给游戏主程序unity进行显示。但是可以将拷贝下来的图像数据和音频数据外挂成新的视频文件,从而实现录屏的功能。此方法只需要占用极少的CPU及内存,对于系统运行速度几乎没有影响,不会影响游戏速度,不会造成游戏用户的不良体验。同时,本方法并不需要安排另外的录屏插件后,不会导致应用场景变窄,也不会和游戏本身功能产生冲突。
其中,通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据的具体方法为:
通过object-c交换函数实现的机制,hook OpenGl的API,获取untiy最终要绘制到屏幕的图像数据。
a.使用@selector(presentRenderbuffer:)获取presentRenderbuffer函数的编号。
b.使用class_getInstanceMethod获得EAGLContext中的present方法。
c.使用@selector(presentGLES:)获取presentGLES函数的编号。
d.使用class_addMethod将presentGLES函数加入到EAGLContext中。
e.使用method_exchangeImplementations交换presentRenderbuffer和presentGLES两个函数的实现。
通过以上步骤达到hook的目的。
其中,通过API HOOK技术,获取unity输出的音频数据的具体方法:
创建并启动AudioUnitGraph,利用程序链接的规则,定义相同声明的函数实现hook AudioUnit API,获取untiy最终要输出的音频数据。
a.声明一个新的和ios AudioUnitSetProperty一样的函数。
b.将fmod中调用,链接到新的AudioUnitSetProperty。
c.使用rebind_symbols获取ios系统的AudioUnitSetProperty函数指针。
d.Fmod将调用新的AudioUnitSetProperty,在新的AudioUnitSetProperty中调用系统的AudioUnitSetProperty。
其有益效果是,通过以上步骤达到hook的目的。
其中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为opengl2.0时,则使用glDrawElements将unity渲染结果渲染到视频input的surface中。
其中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为opengl3.0时,则使用glBlitFramebuffer将unity渲染结果渲染到视频input的surface中。
其中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为metal时,则使用CVMetalTextureCacheCreateTextureFromImage。将unity渲染结果渲染到视频input的surface中。
同时,本发明还提供了一种非易失性计算机存储介质,存储有计算机可执行程序,所述计算机可执行程序用于执行如上所述的基于IOS系统的游戏屏幕录屏方法。存储介质包括但不限于ROM、RAM、普通硬盘、U盘或者软盘。其有益效果是,只需要可以用于存储相应程序即可,通过存储介质将相应的可执行程序存储起来后,可以将方便的将相应的可执行程序安装到IOS系统的智能终端上,从而方便的进行相应的屏幕录像。
同时,本发明还提供了一种基于IOS系统的游戏屏幕录屏装置,其包括:图像数据获取单元1、音频数据获取单元2、拷贝单元3和合成单元4;
所述图像数据获取单元1,配置成通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据;
所述音频数据获取单元2,配置成通过API HOOK技术,获取unity输出的音频数据;
所述拷贝单元3,配置成对图像数据和音频数据进行拷贝;
所述合成单元4,配置成将拷贝后的图像数据和音频数据合并成新的视频文件。
通过HOOK技术,在正常游戏系统当中,获取unity输出的图像数据和音频数据,在不对这些数据做任何改动的情况下,将图像数据和音频数据进行拷贝,拷贝后,将获取到的图像数据和音频数据还给游戏主程序unity进行显示。但是可以将拷贝下来的图像数据和音频数据外挂成新的视频文件,从而实现录屏的功能。录屏过程当中,不影响用户游戏的正常运行。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种基于IOS系统的游戏屏幕录屏方法,其中,所述方法包括如下步骤:
通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据;
通过API HOOK技术,获取unity输出的音频数据;
对图像数据和音频数据进行拷贝;
将通过API HOOK技术获取的图像数据和音频数据还给游戏主程序unity进行显示;
将拷贝后的图像数据和音频数据合并成新的视频文件。
2.根据权利要求1所述的方法,其中,通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据的具体方法为:
通过object-c交换函数实现的机制,hook OpenGl的API,获取untiy最终要绘制到屏幕的图像数据。
a.使用@selector(presentRenderbuffer:)获取presentRenderbuffer函数的编号;
b.使用class_getInstanceMethod获得EAGLContext中的present方法;
c.使用@selector(presentGLES:)获取presentGLES函数的编号;
d.使用class_addMethod将presentGLES函数加入到EAGLContext中;
e.使用method_exchangeImplementations交换presentRenderbuffer和presentGLES两个函数的实现;
f.通过以上步骤达到hook的目的。
3.根据权利要求1所述的方法,其中,通过API HOOK技术,获取unity输出的音频数据的具体方法:
创建并启动AudioUnitGraph,利用程序链接的规则,定义相同声明的函数实现hookAudioUnit API,获取untiy最终要输出的音频数据,步骤如下:
a.声明一个新的和ios AudioUnitSetProperty一样的函数;
b.将fmod中调用,链接到新的AudioUnitSetProperty;
c.使用rebind_symbols获取ios系统的AudioUnitSetProperty函数指针;
d.Fmod将调用新的AudioUnitSetProperty,在新的AudioUnitSetProperty中调用系统的AudioUnitSetProperty。
4.根据权利要求2所述的方法,其中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为opengl2.0时,则glDrawElements将unity渲染结果渲染到视频input的surface中。
5.根据权利要求1所述的方法,其中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为opengl3.0时,则使用glBlitFramebuffer将unity渲染结果渲染到视频input的surface中。
6.根据权利要求1所述的方法,其中,在对图像数据进行拷贝时,
根据图形API的版本,使用不同的方式获得上一步图像数据拷贝:
当图形API为metal时,则CVMetalTextureCacheCreateTextureFromImage将unity渲染结果渲染到视频input的surface中。
7.一种非易失性计算机存储介质,存储有计算机可执行程序,所述计算机可执行程序用于执行如上所述的基于IOS系统的游戏屏幕录屏方法。存储介质包括但不限于ROM、RAM、普通硬盘、U盘或者软盘。
8.一种基于IOS系统的游戏屏幕录屏装置,其特征在于,包括:图像数据获取单元、音频数据获取单元、拷贝单元和合成单元;
所述图像数据获取单元,配置成通过API HOOK技术,获取unity输出的最终要绘制到屏幕的图像数据;
所述音频数据获取单元,配置成通过API HOOK技术,获取unity输出的音频数据;
所述拷贝单元,配置成对图像数据和音频数据进行拷贝;
所述合成单元,配置成将拷贝后的图像数据和音频数据合并成新的视频文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810972665.7A CN109246480A (zh) | 2018-08-24 | 2018-08-24 | 一种基于ios系统的游戏屏幕录屏方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810972665.7A CN109246480A (zh) | 2018-08-24 | 2018-08-24 | 一种基于ios系统的游戏屏幕录屏方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109246480A true CN109246480A (zh) | 2019-01-18 |
Family
ID=65069021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810972665.7A Pending CN109246480A (zh) | 2018-08-24 | 2018-08-24 | 一种基于ios系统的游戏屏幕录屏方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109246480A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109862433A (zh) * | 2019-03-27 | 2019-06-07 | 努比亚技术有限公司 | 游戏视频的生成方法、装置、终端及计算机可读存储介质 |
CN110362375A (zh) * | 2019-07-11 | 2019-10-22 | 广州虎牙科技有限公司 | 桌面数据的显示方法、装置、设备和存储介质 |
WO2020215454A1 (zh) * | 2019-04-24 | 2020-10-29 | 网宿科技股份有限公司 | 一种屏幕录制的方法、客户端和终端设备 |
CN112218148A (zh) * | 2020-09-11 | 2021-01-12 | 杭州易现先进科技有限公司 | 屏幕录制方法、装置、计算机设备和计算机可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150261726A1 (en) * | 2012-12-06 | 2015-09-17 | Tencent Technology (Shenzhen) Company Limited | Screenshot method and device |
CN105069831A (zh) * | 2015-07-28 | 2015-11-18 | 广州爱拍网络科技有限公司 | 一种基于Hook技术获取OpenGL渲染画面的方法和系统 |
CN105749550A (zh) * | 2016-02-24 | 2016-07-13 | 戴佳佳 | iOS系统手机游戏录像方法 |
-
2018
- 2018-08-24 CN CN201810972665.7A patent/CN109246480A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150261726A1 (en) * | 2012-12-06 | 2015-09-17 | Tencent Technology (Shenzhen) Company Limited | Screenshot method and device |
CN105069831A (zh) * | 2015-07-28 | 2015-11-18 | 广州爱拍网络科技有限公司 | 一种基于Hook技术获取OpenGL渲染画面的方法和系统 |
CN105749550A (zh) * | 2016-02-24 | 2016-07-13 | 戴佳佳 | iOS系统手机游戏录像方法 |
Non-Patent Citations (5)
Title |
---|
LDCLLL: "iOS Hook技术实现方法互换", 《HTTPS://WWW.JIANSHU.COM/P/82124F838DDF》 * |
MELODY5: "OC的hook_交换方法", 《HTTPS://WWW.JIANSHU.COM/P/C356DBA8B268》 * |
MOB开发者服务平台: "ShareREC for iOS录屏原理解析", 《HTTPS://BLOG.CSDN.NET/MOB_COM/ARTICLE/DETAILS/79033424》 * |
YIXIANGBOY: "ObjectC Hook函数的实现与实战", 《HTTPS://BLOG.CSDN.NET/YIXIANGBOY/ARTICLE/DETAILS/51473058》 * |
周耀颖: "Mac系统下多任务录屏软件的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109862433A (zh) * | 2019-03-27 | 2019-06-07 | 努比亚技术有限公司 | 游戏视频的生成方法、装置、终端及计算机可读存储介质 |
WO2020215454A1 (zh) * | 2019-04-24 | 2020-10-29 | 网宿科技股份有限公司 | 一种屏幕录制的方法、客户端和终端设备 |
US11115706B2 (en) | 2019-04-24 | 2021-09-07 | Wangsu Science & Technology Co., Ltd. | Method, client, and terminal device for screen recording |
CN110362375A (zh) * | 2019-07-11 | 2019-10-22 | 广州虎牙科技有限公司 | 桌面数据的显示方法、装置、设备和存储介质 |
CN112218148A (zh) * | 2020-09-11 | 2021-01-12 | 杭州易现先进科技有限公司 | 屏幕录制方法、装置、计算机设备和计算机可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109246480A (zh) | 一种基于ios系统的游戏屏幕录屏方法及装置 | |
US9043504B2 (en) | Interfaces for digital media processing | |
US9129058B2 (en) | Application monitoring through continuous record and replay | |
CN108984395A (zh) | 一种应用程序启动耗时测试方法、装置和存储介质 | |
CN107924293A (zh) | 写时拷贝重定向 | |
JP2015201196A (ja) | メディア構成アプリケーションにないプラグインの自動検出およびロード | |
CN109145051A (zh) | 分布式数据库的数据汇总方法及装置和电子设备 | |
CN111125402B (zh) | 用于记录关于被渲染资产的信息的方法和系统 | |
WO2022188386A1 (zh) | 视频发布方法及装置、设备 | |
CN105701854B (zh) | 一种3d渲染方法、装置及引擎 | |
CN113923472B (zh) | 视频内容分析方法、装置、电子设备及存储介质 | |
CN114329366A (zh) | 网盘文件控制方法、装置、网盘及存储介质 | |
US10198784B2 (en) | Capturing commands in a multi-engine graphics processing unit | |
CN111246214B (zh) | 一种视频解码方法、装置 | |
CN105096989B (zh) | 一种背景音乐的处理方法和装置 | |
US11593098B2 (en) | Synchronization of source code under development in multiple concurrent instances of an integrated development environment | |
CA2989061C (en) | Content testing during image production | |
CN112052224B (zh) | 文件导出方法和装置 | |
CN114911706A (zh) | 用例推荐方法、装置、设备及存储介质 | |
Ahmed et al. | Analysis of cloud digital evidence | |
JP2022517709A (ja) | 高解像度映像作成および管理システム | |
JP4896677B2 (ja) | ソフトウエアの改竄検査装置及び方法、コンピュータプログラム | |
CN109977096A (zh) | 一种数据库连接管理方法及装置 | |
US9619273B2 (en) | Profiling multiple virtual machines in a distributed system | |
CN110442501A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190118 |