CN116610396A - 原生内容与元宇宙内容共享拍摄的方法、装置、电子设备 - Google Patents
原生内容与元宇宙内容共享拍摄的方法、装置、电子设备 Download PDFInfo
- Publication number
- CN116610396A CN116610396A CN202310464724.0A CN202310464724A CN116610396A CN 116610396 A CN116610396 A CN 116610396A CN 202310464724 A CN202310464724 A CN 202310464724A CN 116610396 A CN116610396 A CN 116610396A
- Authority
- CN
- China
- Prior art keywords
- meta
- app
- native
- project
- engineering
- 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
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000007704 transition Effects 0.000 claims abstract description 12
- 238000004891 communication Methods 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 26
- 238000012545 processing Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 14
- 230000003993 interaction Effects 0.000 claims description 13
- 230000015572 biosynthetic process Effects 0.000 claims description 6
- 238000003786 synthesis reaction Methods 0.000 claims description 6
- 230000002194 synthesizing effect Effects 0.000 claims description 4
- 239000000758 substrate Substances 0.000 claims 3
- 230000010354 integration Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 230000004927 fusion Effects 0.000 description 5
- 210000003128 head Anatomy 0.000 description 5
- 238000009877 rendering Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013529 biological neural network Methods 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- JJWKPURADFRFRB-UHFFFAOYSA-N carbonyl sulfide Chemical compound O=C=S JJWKPURADFRFRB-UHFFFAOYSA-N 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 238000007654 immersion Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- 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
- 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/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请公开了一种原生内容与元宇宙内容共享拍摄的方法、装置、电子设备、介质及产品。该方法应用于终端设备的APP中,APP中包括原生APP工程和元宇宙工程,原生APP工程包括原生导航控制器组件、原生窗口组件和原生视图控制器组件,元宇宙工程中元宇宙窗口的创建方式包括获取原生APP工程中的原生窗口;原生内容与元宇宙内容共享拍摄的方法包括:通过调用***功能文件中的预定组件以每隔预定时间段对APP的页面进行截屏,得到多个截屏图像,多个截屏图像中的一部分截屏图像为原生APP工程的页面,另一部分截屏图像为元宇宙工程的页面,以及再一部分截屏图像为原生APP工程与元宇宙工程相互切换时的过渡页面。利用本申请实施例能够实现APP中原生内容和元宇宙内容的共享拍摄。
Description
技术领域
本申请涉及增强现实技术领域,还涉及视频录制技术领域,具体涉及一种原生内容与元宇宙内容共享拍摄的方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
背景技术
目前出现以原生APP集成元宇宙内容、或者以原生APP集成h5小程序等形式的混编集成APP。混编集成APP中常常会包括原生内容以及元宇宙内容,用户使用此类APP时,通常都希望能够对手机界面上展示的丰富内容进行录制。
但是,对于这类混编集成的APP界面,按照目前已有的录制手段,还存在诸多问题,无法满足较高的使用需求,例如,有些录制方式只能录制纯原生APP界面,或者只能录制纯元宇宙内容界面,并不能做到对原生内容和元宇宙内容同时录制;另外,有些录制方式下录制视频会发生内存泄漏的情况,有些录制方式下只能录制元宇宙内容的***音,而不能同时录制环境音,等等。如何对混编集成类APP中的原生内容和元宇宙内容实施共享录制,是当前需要解决的问题。
针对相关技术中的上述问题,目前尚未发现有效的解决方案。以上仅是发明人了解的与本申请有关的背景信息,并不构成对现有技术的自认。
发明内容
有鉴于此,本申请实施例提供一种原生内容与元宇宙内容共享拍摄的方法、装置、电子设备、计算机可读存储介质及计算机程序产品,用于解决至少一种技术问题。
本申请实施例提供一种原生内容与元宇宙内容共享拍摄的方法,应用于终端设备的APP中,所述APP中包括原生APP工程和元宇宙工程,原生APP工程包括原生导航控制器组件、原生窗口组件和原生视图控制器组件,元宇宙工程中元宇宙窗口的创建方式包括获取原生APP工程中的原生窗口;所述原生内容与元宇宙内容共享拍摄的方法包括:通过调用***功能文件中的预定组件以每隔预定时间段对所述APP的页面进行截屏,得到多个截屏图像,所述多个截屏图像中的一部分截屏图像为原生APP工程的页面,另一部分截屏图像为元宇宙工程的页面,以及再一部分截屏图像为原生APP工程与元宇宙工程相互切换时的过渡页面;将所述多个截屏图像存储至缓存;对所述多个截屏图像进行合成处理以生成共享视频,所述共享视频用于展示原生APP工程的原生内容以及元宇宙工程的元宇宙内容;其中,通过以下处理使原生APP工程与元宇宙工程相互切换:确定APP的当前页面为原生APP工程的原生场景页面;触发元宇宙工程在当前原生APP工程的原生场景页面中的入口,原生APP工程中的所述原生视图控制器组件采取自下向上present的方式加载所述原生导航控制器组件,所述原生导航控制器组件中设置有用于元宇宙场景的根控制器组件;元宇宙工程获取原生APP工程的原生窗口,并以所述根控制器组件的内容对所述原生窗口进行填充,使得APP的当前页面显示元宇宙工程的元宇宙场景,完成原生APP工程到元宇宙工程的切换;需要时,元宇宙工程的根控制器组件将元宇宙场景隐藏,使得APP从元宇宙工程的元宇宙场景页面返回原生APP工程的原生场景页面。
可选地,所述元宇宙工程中元宇宙窗口的创建方式包括将原生APP工程中的原生窗口组件赋值给元宇宙工程。
可选地,所述原生APP工程为主工程,所述元宇宙工程为子工程。
可选地,所述原生视图控制器组件在原生APP工程中总是控制最上层显示的场景界面。
可选地,所述预定组件为startRecordingWithHandler。
可选地,所述元宇宙工程包括动态链接库、所述动态链接库的实例变量以及通信协议,其中,所述动态链接库用于呈现元宇宙工程的数据,所述数据至少包括场景数据和资源数据;所述实例变量用于实现原生APP工程与元宇宙工程的交互和通信;所述通信协议用于元宇宙工程获取原生APP工程中的用户信息。
可选地,所述原生APP工程包括用于实现协议的AppDelegate+Unity文件,元宇宙操作原生工程的所有交互都在实现协议的AppDelegate+Unity文件中。
可选地,所述通信协议包括NativeCallsProtocol协议。
可选地,所述原生APP工程中的用户信息包括下列至少一项:用户账号信息、用户头像信息。
本申请实施例提供一种电子设备,所述电子设备包括处理器以及存储有计算机程序指令的存储器,所述电子设备执行所述计算机程序指令时实现如上所述的方法的步骤。
本申请实施例提供一种计算机可读存储介质,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如上所述的方法的步骤。
本申请实施例提供一种计算机程序产品,所述计算机程序产品中包括计算机程序指令,所述计算机程序指令被处理器执行时实现如上所述的方法的步骤。
本申请实施例还提出一种原生内容与元宇宙内容共享拍摄的装置,应用于终端设备的APP中,所述APP中包括原生APP工程和元宇宙工程,原生APP工程包括原生导航控制器组件、原生窗口组件和原生视图控制器组件,元宇宙工程中元宇宙窗口的创建方式包括获取原生APP工程中的原生窗口;所述原生内容与元宇宙内容共享拍摄的装置包括:截屏处理模块,用于通过调用***功能文件中的预定组件以每隔预定时间段对所述APP的页面进行截屏,得到多个截屏图像,所述多个截屏图像中的一部分截屏图像为原生APP工程的页面,另一部分截屏图像为元宇宙工程的页面,以及再一部分截屏图像为原生APP工程与元宇宙工程相互切换时的过渡页面;存储模块,用于将所述多个截屏图像存储至缓存;合成模块,用于对所述多个截屏图像进行合成处理以生成共享视频,所述共享视频用于展示原生APP工程的原生内容以及元宇宙工程的元宇宙内容;其中,通过以下模块使原生APP工程与元宇宙工程相互切换:确定模块,用于确定APP的当前页面为原生APP工程的原生场景页面;加载模块,用于触发元宇宙工程在当前原生APP工程的原生场景页面中的入口,原生APP工程中的所述原生视图控制器组件采取自下向上present的方式加载所述原生导航控制器组件,所述原生导航控制器组件中设置有用于元宇宙场景的根控制器组件;原生窗口填充模块,用于获取原生APP工程的原生窗口,并以所述根控制器组件的内容对所述原生窗口进行填充,使得APP的当前页面显示元宇宙工程的元宇宙场景,完成原生APP工程到元宇宙工程的切换;元宇宙场景隐藏模块,用于在需要时触发元宇宙工程的根控制器组件将元宇宙场景隐藏,使得APP从元宇宙工程的元宇宙场景页面返回原生APP工程的原生场景页面。
本申请实施例提出的方法通过修改元宇宙工程中元宇宙窗口的创建方式,以及在原生导航控制器组件中设置用于元宇宙场景的根控制器组件,由此元宇宙工程和原生工程能够共享原生APP工程中的原生窗口,原生视图控制器组件采取自下向上present的方式加载原生导航控制器组件,使得元宇宙内容能够显示在原生工程的原生窗口中,且元宇宙内容和原生内容可切换,这样,在录制视频时,原生内容和元宇宙内容可共享同一个窗口,因此可以实现对原生内容、元宇宙内容以及两者切换过渡内容的同时共享录制,本申请的实施例应用在混编集成APP中能够满足用户更多样的终端界面录制需求。
附图说明
为了更清楚地说明本申请实施例的实现方式,以下对本申请实施例中的附图作简单介绍。
图1是本申请实施例的基于服务器和终端设备的AR***架构示意图。
图2是一种利用手机端APP进行AR导航的虚实融合图像示意图。
图3是本申请实施例一种原生内容与元宇宙内容共享拍摄的方法流程框图。
图4示出了本申请实施例的原生页面的示意图。
图5-图7是本申请实施例的混编集成类APP的***架构关系示意图。
图8是本申请实施例的原生内容与元宇宙内容共享拍摄装置的结构框图。
图9是用来实现本申请实施例的一种原生内容与元宇宙内容共享拍摄的方法的终端设备或服务器的结构示意图。
图10是本申请实施例的示例性终端设备的软件结构示意图。
具体实施方式
以下将参考若干示例性实施方式来描述本申请的原理和精神。应当理解,提供这些实施方式的目的是为了使本申请的原理和精神更加清楚和透彻,使本领域技术人员能够更好地理解进而实现本申请的原理和精神。本文中提供的示例性实施方式仅是本申请的一部分实施方式,而不是全部的实施方式。基于本文中的实施方式,本领域普通技术人员在不付出创造性劳动前提下所获得的所有其他实施方式,都属于本申请保护的范围。
本领域技术人员知晓,本申请的实施方式可以实现为一种***、装置、设备、方法、计算机可读存储介质或计算机程序产品。因此,本申请可以具体实现为以下至少一种形式:完全的硬件、完全的软件,或者硬件与软件结合的形式。根据本申请的具体实施方式,本申请请求保护一种原生内容与元宇宙内容共享拍摄的方法、装置、电子设备、计算机可读存储介质及计算机程序产品。
在本文中,诸如第一、第二、第三之类的用语,仅用来将一个实体(或操作)与另一个实体(或操作)区分开来,而不在于要求或暗示这些实体(或操作)之间存在任何顺序或关联。
本申请的实施例可应用于服务器和终端设备。请参考图1,示意性地示出了一种基于服务器和终端设备的AR***架构示意图。AR***架构包括服务器10和若干终端设备20。在一些示例中,终端设备20为AR设备,其可以为专用的AR设备,例如头戴式AR设备(Head-mounted displays,HMD)、智能手套、服饰等智能可穿戴电子设备。在一些示例中,终端设备20可为通用的AR设备,例如手机、便携式计算机、笔记本电脑、平板电脑、虚拟现实(VirtualReality,VR)设备、车载设备、导航设备、游戏设备等等。
以AR头盔或AR眼镜为例,可将头戴式显示器、机器视觉***、移动计算机等集成,设置在可绑定佩戴的设备中,该设备具有外形类似眼镜的显示器,工作时佩戴在使用者头部,该设备能将增强现实类信息传输至显示器上或投射至使用者的眼球中,从而增强用户的视觉沉浸感。在一些示例中,AR设备还具有摄像头,可为广角摄像头、长焦摄像头,还可为结构光摄像头(也称点云深度摄像头、3D结构光摄像头或深度摄像头)。其中结构光摄像头基于3D视觉技术,可获取物体的平面和深度信息。结构光摄像头可通过近红外激光器将具有一定结构特征的光线投射到被拍摄物体上,再由红外摄像头采集反射光,由处理器芯片处理,其计算原理是根据物体导致的光信号的变化计算物***置和深度信息,呈现3D图像。通常的终端设备例如手机上呈现二维图像,并不能显示图像上不同位置的深度,利用结构光摄像头可拍摄获取3D图像信息数据,即不仅可获得图像中不同位置的颜色等信息,还可获得不同位置的深度信息,可用于AR测距。当然,普通的终端设备也可以基于光学摄像头采集2D图像并结合深度学习算法等方式获取2D图像的深度信息,最终也可呈现3D图像。
在一些示例中,终端设备20中安装有具备AR功能的软件或应用程序APP。服务器10可以是该软件或APP的管理服务器或应用服务器。服务器10可以为一台服务器,也可以为多台服务器组成的服务器集群,也可以为云服务器或称云端服务器等。终端设备20中集成有具备联网功能的模块,例如无线保真(Wireless-Fidelity,Wifi)模块、蓝牙模块、2G/3G/4G/5G通信模块等,以便通过网络连接到服务器10。
示例性地,用户可通过安装在手机中的APP登录用户账号,用户还可通过安装在AR眼镜中的软件登录用户账号。
以具备AR导航功能的APP为例,APP可以具备例如高精地图导航能力、环境理解能力和虚实融合渲染能力等,APP可通过终端设备20向服务器10上报当前地理位置信息,服务器10基于实时地理位置信息为用户提供AR导航服务。示例性地,以终端设备20是手机为例,响应于用户启动APP的操作,手机可启动摄像头采集现实环境的图像,然后通过***对摄像头采集的现实环境图像进行AR增强,在现实环境图像中融入或叠加渲染的AR效果(例如导航路线标识、道路名称、商户信息、广告展示等),将虚实融合的图像展示在手机屏幕上。
图2示意性地示出了一种利用手机端APP进行AR导航的虚实融合图像,其中AR导航的指示箭头叠加在图中真实的路面上及空间中,商户促销的电子资源以降落伞携带礼盒的形式漂浮在空间中的指定位置。
参考图3,本申请实施例提出一种原生内容与元宇宙内容共享拍摄的方法,应用于终端设备的APP中,APP中包括原生APP工程和元宇宙工程,原生APP工程包括原生导航控制器组件、原生窗口组件和原生视图控制器组件,元宇宙工程中元宇宙窗口的创建方式包括获取原生APP工程中的原生窗口;原生内容与元宇宙内容共享拍摄的方法包括以下步骤:
S101,通过调用***功能文件中的预定组件以每隔预定时间段对APP的页面进行截屏,得到多个截屏图像,多个截屏图像中的一部分截屏图像为原生APP工程的页面,另一部分截屏图像为元宇宙工程的页面,以及再一部分截屏图像为原生APP工程与元宇宙工程相互切换时的过渡页面。
S102,将多个截屏图像存储至缓存。
S103,对多个截屏图像进行合成处理以生成共享视频,共享视频用于展示原生APP工程的原生内容以及元宇宙工程的元宇宙内容。
其中,通过以下处理步骤使原生APP工程与元宇宙工程相互切换:
步骤1:确定APP的当前页面为原生APP工程的原生场景页面;
步骤2:触发元宇宙工程在当前原生APP工程的原生场景页面中的入口,原生APP工程中的原生视图控制器组件采取自下向上present的方式加载原生导航控制器组件,原生导航控制器组件中设置有用于元宇宙场景的根控制器组件;
步骤3:元宇宙工程获取原生APP工程的原生窗口,并以根控制器组件的内容对原生窗口进行填充,使得APP的当前页面显示元宇宙工程的元宇宙场景,完成原生APP工程到元宇宙工程的切换;
步骤4:需要时,元宇宙工程的根控制器组件将元宇宙场景隐藏,使得APP从元宇宙工程的元宇宙场景页面返回原生APP工程的原生场景页面。
在本申请的一些实施例中,原生导航控制器组件、原生窗口组件和原生视图控制器组件分别指的是设置在原生工程中的导航控制器组件、窗口组件和视图控制器组件,其中,导航控制器可以是navigationController,窗口组件可以是window,视图控制器组件可以是viewController。
本申请实施例提出的方法通过修改元宇宙工程中元宇宙窗口的创建方式,使得原生工程切换为元宇宙工程时,元宇宙工程和原生工程能够共享原生APP工程中的原生窗口组件,这样,元宇宙内容的显示和原生内容的显示可以共用一个原生窗口组件(window),之后在调用***功能文件RPScreenRecorder中的startRecordingWithHandler方法时,能够实现对元宇宙内容、原生内容以及原生APP工程与元宇宙工程相互切换时的过渡页面的同时录制。
另外,在具体显示元宇宙场景时,原生导航控制器组件中设置有用于元宇宙场景的根控制器组件,原生视图控制器组件采取自下向上present的方式加载所述原生导航控制器组件,这样可以实现原生导航控制器组件中的根控制器组件的内容对原生窗口进行填充,使得APP的当前页面显示元宇宙工程的元宇宙场景。
根据本申请的实施例,能够达到客户端的APP内始终只有一个窗口(window)的状态,之后可以实现任意位置录制视频,即可实现原生内容、元宇宙内容以及两者切换时过渡页面的共享录制,并且录制的视频不存在泄露、缺失环境音等问题,解决了以往无法实现元宇宙内容和原生内容共享录制的问题。
在本申请的一些实施例中,可选地,所述元宇宙工程中元宇宙窗口的创建方式包括将原生APP工程中的原生窗口组件赋值给元宇宙工程。
在本申请的一些实施例中,可选地,所述原生APP工程为主工程,所述元宇宙工程为子工程。在本申请中,客户端的APP可以是混编类APP,该混编类APP包括原生工程和元宇宙工程,其中,原生工程为主工程,元宇宙工程为子工程,这样,用户的注册主要在原生工程中完成,元宇宙工程作为子工程可以通过一些通信协议调用用户的注册信息。
在本申请的一些实施例中,可选地,所述原生视图控制器组件在原生APP工程中总是控制最上层显示的场景界面。
具体来说,在从原生工程切换到元宇宙工程的过程中,首先,需要找到原生工程中当前最上层显示的场景界面,该场景界面对应原生视图控制器组件。原生控制器组件控制原生工程的原生窗口显示原生工程的场景界面,该场景界面为APP当前显示的页面,为了将页面切换为元宇宙工程的界面,找到控制最上层显示的场景界面的原生视图控制器组件,利用原生视图控制器组件加载原生导航控制器组件,进而使得元宇宙场景填充原生窗口,将当前显示的原生工程的场景界面切换为元宇宙工程的场景界面。
在本申请的一些实施例中,可选地,所述预定组件为startRecordingWithHandler。在本申请中,录制共享视频时,APP可以通过调用***功能文件RPScreenRecorder中的startRecordingWithHandler方法开启录制。
在本申请的一些实施例中,可选地,所述元宇宙工程包括动态链接库、所述动态链接库的实例变量以及通信协议,其中,所述动态链接库用于呈现元宇宙工程的数据,所述数据至少包括场景数据和资源数据;所述实例变量用于实现原生APP工程与元宇宙工程的交互和通信;所述通信协议用于元宇宙工程获取原生APP工程中的用户信息。
为了实现APP中原生工程和元宇宙工程的切换,本申请实施例提出的元宇宙工程包括动态链接库、动态链接库的实例变量以及通信协议。其中,动态链接库是元宇宙的核心代码逻辑,用来呈现元宇宙的所有场景、资源等数据;动态链接库的实例变量就是元宇宙,原生工程通过渲染动态链接库的实例变量来显示元宇宙场景,并且原生工程和元宇宙工程的所有的通信和交互都通过动态链接库的实例变量来实现。
关于元宇宙工程中创建的通信协议,在一些实施例中,可选地,通信协议为NativeCallsProtocol,该通信协议主要实现元宇宙操作原生工程,比如元宇宙呈现用户登录账号信息、头像信息等时,通过该通信协议获取到原生工程中用户信息。
另外,在一些实施例中,可选地,通信协议还可以用于元宇宙工程获取元宇宙场景初始化所需的信息,其中,元宇宙场景初始化所需的信息包括元宇宙项目所在地唯一编号ID,元宇宙场景地标位置坐标等。在从原生工程切换到元宇宙工程时,元宇宙工程需要获取其将要加载的元宇宙项目,因为在元宇宙工程中可能设置了许多子元宇宙项目,不同的子元宇宙项目其对应的元宇宙数据是不同的。另外,在元宇宙场景中,数字资源的显示需要结合用户当前所在的位置坐标以及元宇宙数据库中预先存储的对应的元宇宙场景地标位置坐标,因此,在显示元宇宙场景时,元宇宙项目需要通过通信协议获取目标元宇宙项目所在地唯一编号id和元宇宙场景地标位置坐标。
在本申请的一些实施例中,可选地,所述原生APP工程包括用于实现协议的AppDelegate+Unity文件,元宇宙操作原生工程的所有交互都在实现协议的AppDelegate+Unity文件中。在原生工程中实现通信协议,需要设置在原生工程中设置实现协议的AppDelegate+Unity文件,这样,元宇宙操作原生工程的所有交互都在实现协议的AppDelegate+Unity文件中。
在本申请的一些实施例中,可选地,所述通信协议包括NativeCallsProtocol协议。
在本申请的一些实施例中,可选地,所述原生APP工程中的用户信息包括下列至少一项:用户账号信息、用户头像信息。原生工程为主工程,用户注册的信息可以保存在原生工程中,元宇宙可以通过通信协议获得原生工程中的用户账号信息和/或用户头像信息。结合前述的通信协议还可以用于元宇宙工程获取元宇宙场景初始化所需的信息,在一些实施例中,可选地,用户信息还包括目标地点中轴线元宇宙项目,目标中轴线项目id、目标项目坐标。
以上描述了本申请实施例的多种实现方式以及可取得的技术优势。以下基于具体的例子,对本申请实施例的处理过程进行详细描述。
作为一种示例,以下以原生集成Unity APP的混编集成类APP为例进行说明,并具体以一个游览导航APP(属于混编集成类APP)为例,说明本申请实施例的共享录制功能的实现方式。
混编集成类APP中的Unity APP通常指以Unity编程实现的APP,以游戏类APP居多。以下简要描述混编集成类APP无法实现共享录制的原因。
1.利用Unity APP的natcoder录制视频时有内存泄漏,每次录制泄漏约在200M,且多次录制操作后app***会崩溃;尤其在ios***中容易出现这种情况。
2.利用Unity APP的avproMoviecapture录制视频时,不能录制环境音,只能录制unity本身播放的声音;
3.利用原生RPScreenRecorder组件录制视频时,只能录制纯原生app,或者录制纯unityapp,不能共享录制;原因是RPScreenRecorder只能录制主进程keywindow,如果是由unity嵌入原生工程的app,两者不共享keywindow,导致无法从原生页面录制过渡到unity页面录制。
为便于理解,本示例假设一个混编集成类APP为一款专门为某博物馆量身定制的游览导航APP,其中包括原生工程和元宇宙工程,由于其属于混编集成类APP,因此其***也存在上述缺陷,无法实现原生内容与元宇宙内容共享录制。
按照本申请实施例的处理方式,需要对该博物馆游览导航APP进行特别设置。具体地,首先,修改原生调起unity时的调用方式,原生导航控制器直接显示unity根页面rootViewController,其次,在unityframework中共享原生keywindow(window的获取方式也需要修改,下文具体描述)。此后,unity启动时,启动共享keywindow,可达到app内始终只有一个window的状态,这时即可实现在任意位置录制共享视频。
以下针对本示例中可采取的具体设置及操作过程,进行详细描述。
1、APP工程架构
仍以该博物馆游览导航APP为例,其是应用于客户端的原生集成元宇宙的混编集成类APP,包含原生工程和元宇宙工程,原生工程为主工程,主工程架构为:
window+navigationController+viewController。
2、主工程与子工程的集成方式以及交互方式
2.1、元宇宙工程的集成方式
将元宇宙程序编写完毕后,通过元宇宙开发平台Unity的编译器,可编译得到Xcode工程,可将该Xcode工程作为子工程应用到混编集成类APP中,也即,将元宇宙工程作为子工程应用到博物馆游览导航APP中。
上述过程也就是Unity集成方式,在该集成方式下,原生工程引用元宇宙工程中的UnityFramework,其中,UnityFramework是呈现元宇宙所有场景、资源等数据的动态链接库,该链接库是元宇宙的核心代码逻辑,UnityFramework为元宇宙工程编译之后生成的动态链接库,在原生工程中定义UnityFramework的实例变量ufw,ufw就是元宇宙,原生工程通过渲染ufw来显示元宇宙场景等,原生与元宇宙的所有的通信、交互都通过ufw实现。
下文中为描述方便,将本示例的博物馆游览导航APP中的原生工程有时记为“A工程”或者“原生工程A”,将元宇宙工程记为“B工程”或者“元宇宙工程B”。
2.2元宇宙工程B与原生工程A的交互方式:
2.2.1:元宇宙工程B中创建一个协议NativeCallsProtocol,该协议主要实现元宇宙操作原生工程,比如元宇宙呈现用户登录账号信息、头像信息等时,通过NativeCallsProtocol协议获取到原生工程中用户信息。
2.2.2:在原生工程A中实现协议NativeCallsProtocol,元宇宙操作原生工程的所有交互都在实现协议的AppDelegate+Unity文件中。
2.3:原生工程A调起和隐藏元宇宙工程B的方式:
2.3.1:原生工程A中找到当前最上层显示的场景界面(场景界面对应原生代码为ViewController)。
2.3.2:创建承载元宇宙的原生导航控制器NavgationController,将元宇宙(ufw)场景的根控制器rootViewController放到原生导航控制器NavgationController中。
2.3.3:显示元宇宙场景,原生ViewController以从下往上推的方式(presentViewController)加载元宇宙所在的原生导航控制器NavgationController。
2.3.4:从元宇宙场景返回到原生工程A:元宇宙(ufw)场景的根控制器rootViewController调用dismissViewControllerAnimated方法隐藏元宇宙信息(ufw),该方式也称为返回原生页面,即隐藏元宇宙工程B。
3、录制视频
图4示出了本申请实施例的原生页面的示意图。结合图4所示,本示例中原生内容和元宇宙内容共享录制的操作过程如下:
3.1:在原生工程页面600添加录制按钮601;
3.2:点击录制按钮601“开始录制”,弹出权限框,权限框用于确定用户是否允许录屏,并给出两个选项:“录屏”和“不允许录屏”,点击权限框中的选项“录屏”后,开始录制,录制按钮601变为“停止录制”;
点击元宇宙工程入口按钮602进入元宇宙页面。另外,在原生页面还展示有元宇宙工程的多个子工程的图标,第一子工程的图标603、元第二子工程的图标604和第三子工程的图标605,点击元宇宙工程的入口按钮602后元宇宙工程会根据用户的坐标匹配元宇宙工程的子工程,将元宇宙工程中的数字资源与现实场景进行结合,展示在元宇宙工程的页面中。
需要说明的是,原生工程和元宇宙工程共享原生window,该原生window是显示原生场景、元宇宙场景信息的主要窗口。其中,元宇宙工程获取原生window的过程包括:
在元宇宙工程B中找到创建元宇宙window中创建window的代码文件;修改window创建方式,改为获取原生工程XX中的原生window,将该window赋值给元宇宙工程B。
这样,在将原生内容切换为元宇宙内容时,元宇宙工程将获取原生工程的原生window来显示元宇宙内容,实现混编集成类APP中原生工程和元宇宙工程的window共享,进而解决了混编集成类APP无法实现原生内容和元宇宙内容高质量录制的问题。
3.3:每隔固定时间间隔截取手机屏幕,截取频率可以为30帧/s或60帧/s,频率越高动画连续性越好。具体地,可以以手机性能为标准选择合适频率。截取后的屏幕照片将存储到博物馆游览导航APP的缓存中;
3.4:点击“结束录制”按钮后,将所有存储的屏幕照片压缩合成为一段视频,存储到手机***相册中;其中,视频包括原生页面内容、元宇宙页面内容和原生APP工程与元宇宙工程相互切换时的过渡页面。
3.5:完成录制,之后可以保存到本地相册或者上传到云服务。
为了方便理解本申请举例描述的混编集成类APP的架构,图5-7示意性地示出了本申请实施例的混编集成类APP的部分***架构关系图。如图5所示,混编集成类APP包括作为主工程的A工程402以及作为子工程的B工程401,以及,各个工程下的子文件、图标等内容。
图6展示的***架构关系相较于图4中的内容进一步展示了多个子文件下的下位文件。例如,UnityFramework的下位文件还包括UnityFramework和info。另外,在Plugins文件下还设置有BonjourClientlmpl,以便进行通信协议NativeCallsProtocol的设置。图7则展示了AppDelegate+Unity文件在混编集成类APP的位置,以便实现元宇宙工程对原生工程的操作。
相对应地,本申请实施例还提供一种原生内容与元宇宙内容共享拍摄的装置,参考图8,该原生内容与元宇宙内容共享拍摄的装置100包括:
截屏处理模块101,用于通过调用***功能文件中的预定组件以每隔预定时间段对所述APP的页面进行截屏,得到多个截屏图像,所述多个截屏图像中的一部分截屏图像为原生APP工程的页面,另一部分截屏图像为元宇宙工程的页面,以及再一部分截屏图像为原生APP工程与元宇宙工程相互切换时的过渡页面;
存储模块102,用于将所述多个截屏图像存储至缓存;
合成模块103,用于对所述多个截屏图像进行合成处理以生成共享视频,所述共享视频用于展示原生APP工程的原生内容以及元宇宙工程的元宇宙内容;其中,通过以下模块实现原生APP工程与元宇宙工程相互切换:
确定模块104,用于确定APP的当前页面为原生APP工程的原生场景页面;
加载模块105,用于触发元宇宙工程在当前原生APP工程的原生场景页面中的入口,原生APP工程中的所述原生视图控制器组件采取自下向上present的方式加载所述原生导航控制器组件,所述原生导航控制器组件中设置有用于元宇宙场景的根控制器组件;
原生窗口填充模块106,用于获取原生APP工程的原生窗口,并以所述根控制器组件的内容对所述原生窗口进行填充,使得APP的当前页面显示元宇宙工程的元宇宙场景,完成原生APP工程到元宇宙工程的切换;
元宇宙场景隐藏模块107,用于在需要时触发元宇宙工程的根控制器组件将元宇宙场景隐藏,使得APP从元宇宙工程的元宇宙场景页面返回原生APP工程的原生场景页面。
需要说明,对于本申请的各个实施例,为描述清楚,均表述为一系列的动作或处理的组合。本领域技术人员应知悉,其实现过程不受所描述的动作或处理的顺序限制,本申请实施例中的某些步骤可以采用其他顺序处理或者同时进行处理。
本领域技术人员应理解,本文中所描述的实施例属于优选实施例,所涉及的动作、步骤、模块或单元等并不一定是本申请实施例所必须的。在上述实施例中,本申请实施例对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
为便于理解,以下提供本领域中一些相关技术术语的一般理解和含义。
1.APP:运行在手机、iPad、智能眼镜、智能手表上的程序。
2.原生APP:以iOS设备为例,运行在手机上的程序,对于完全由iOS开发人员以Objective-C、swift语言编写的程序,认为属于原生APP。
3.Unity APP:以Unity编程实现的APP,主要为游戏类APP。
4.混编集成类APP:以原生程序集成Unity、原生集成h5小程序等形式的APP。
5.window:承载与显示所有APP内容的容器,程序最底层的容器,window有个属性;rootViewController,所有要显示的内容、页面需要放到这个rootViewController上。
6.navigationController:导航控制器,控制页面显示与隐藏。
7.viewController:页面显示控制器,APP在手机上实现显示的页面。
8.Xcode:编写iOS app的编译器,可以生成能够在手机等移动设备上安装的程序安装包(例如ipa格式)。
9.Unity:编写元宇宙程序的编译器,也可以代称为元宇宙程序。
10.UnityFramework:元宇宙程序编译后生成的动态链接库(一种程序的打包和引用方式),该库包括元宇宙程序中所有的逻辑代码。
11.rootViewController:根控制器;最底层的显示控制器,与viewController现实效果大部分一致,区别在于rootViewController放在最底层显示。
图9为本申请实施例提供的一种电子设备60的结构示意图,电子设备60包括处理器61、存储器62以及用于连接处理器61和存储器62的通信总线,其中在存储器62中存储有可以在处理器61上运行的计算机程序,处理器61运行该计算机程序时可执行或称实现本申请中各个实施例的方法中的步骤。电子设备60还包括通信接口,用于接收和发送数据。电子设备60可以是本申请实施例中的服务器,电子设备60也可以是云端服务器。电子设备60也可以是本申请实施例中的终端设备或AR设备。在合适的情况下电子设备也可称为计算设备。
在一些实施例中,处理器61可以是中央处理器(Central Processing Unit,CPU)、图形处理器(graphics processing unit,GPU)、应用处理器(application processor,AP)、调制解调处理器、图像信号处理器(image signal processor,ISP)、控制器、视频编解码器、数字信号处理器(digital signal processor,DSP)、基带处理器、神经网络处理器(neural-network processing unit,NPU)等;处理器61还可以是其他通用处理器、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或其他可编程逻辑器件、分立门或晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器,也可以是任何常规的处理器等。其中,神经网络处理器NPU通过借鉴生物神经网络结构,可对输入信息快速处理,还可以不断进行自我学习。通过NPU电子设备60可以实现智能认知等应用,例如图像识别、人脸识别、语义识别、语音识别、文本理解等。
在一些实施例中,存储器62可以是电子设备60的内部存储单元,例如电子设备60的硬盘或内存;存储器62也可以是电子设备60的外部存储设备,例如电子设备60上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。存储器62还可以既包括电子设备60的内部存储单元也包括外部存储设备。存储器62可用于存储操作***、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如计算机程序的程序代码等。存储器62包括但不限于是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read only memory,EPROM)或便携式只读存储器(compact disc read-only memory,CD-ROM)。存储器62用于存储电子设备60所执行的程序代码和所传输的数据。存储器62还可以用于暂时地存储已经输出或者将要输出的数据。
本领域技术人员可以理解,图9仅是电子设备60的举例,并不构成对电子设备60的限定,电子设备60可以包括比图示更多或更少的部件,或者组合某些部件,或者包括不同的部件,例如还可以包括输入输出设备、网络接入设备等。
图10是本申请实施例的终端设备的软件结构示意图。以手机操作***为Android***为例,在一些实施例中,将Android***分为四层,分别为:应用程序层、应用程序框架层(framework,FWK)、***层以及硬件抽象层,层与层之间通过软件接口通信。
首先,应用程序层可以包括多个应用程序包,应用程序包可以是例如通话、相机、视频、导航、天气、即时通讯、教育等各种应用程序app,也可以是基于AR技术的应用程序app。
第二,应用程序框架层FWK为应用程序层的应用程序提供应用编程接口(application programming interface,API)和编程框架。应用程序框架层可以包括一些预先定义的函数,例如用于接收应用程序框架层所发送的事件的函数。
应用程序框架层可以包括窗口管理器、资源管理器以及通知管理器等。
其中,窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
其中,资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
其中,通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
此外,应用程序框架层还可以包括视图***,视图***包括可视控件,例如显示文字的控件、显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的,例如短信通知图标的显示界面上可以包括显示文字的视图以及显示图片的视图。
第三,***层可以包括多个功能模块,例如传感器服务模块、物理状态识别模块、三维图形处理库(例如:OpenGLES),等等。
其中,传感器服务模块用于对硬件层各类传感器上传的传感器数据进行监测,确定手机的物理状态;物理状态识别模块用于对用户手势、人脸等进行分析和识别;三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
此外,***层还可以包括表面管理器和媒体库。表面管理器用于对显示子***进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。
最后,硬件抽象层是硬件和软件之间的层。硬件抽象层可以包括显示驱动、摄像头驱动、传感器驱动等,用于驱动硬件层的相关硬件,如显示屏、摄像头、传感器等。
本申请实施例还提供一种计算机可读存储介质,其存储有计算机程序或指令,该计算机程序或指令被执行时以实现上述实施例中所设计的方法中的步骤。
本申请实施例还提供一种计算机程序产品,包括计算机程序或指令,该计算机程序或指令被执行时以实现上述实施例中所设计的方法中的步骤。示例性的,该计算机程序产品可以为一个软件安装包。
本领域技术人员应该知悉,本申请实施例所描述的方法、步骤或者相关模块/单元的功能可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式来实现,也可以是由处理器执行计算机程序指令的方式来实现。其中,该计算机程序产品包括至少一个计算机程序指令,计算机程序指令可以由相应的软件模块组成,软件模块可以被存放于RAM、闪存、ROM、EPROM、EEPROM、寄存器、硬盘、移动硬盘、只读光盘(CD-ROM)或者本领域熟知的任何其它形式的存储介质中。该计算机程序指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输。例如,该计算机程序指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质、或者半导体介质(如SSD)等。
关于上述实施例中描述的各个装置/产品,其中包含的模块/单元可以是软件模块/单元,也可以是硬件模块/单元,还可以部分是软件模块/单元,部分是硬件模块/单元。例如,对于应用或集成于芯片的装置/产品,其包含的各个模块/单元可以都用电路等硬件的方式实现,或者,至少部分模块/单元采用软件程序的方式实现,运行于芯片内部集成的处理器,剩余的部分模块/单元采用电路等硬件方式实现。又如,对于应用或集成于终端的装置/产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,或者,至少部分模块/单元采用软件程序的方式实现,运行于终端内部集成的处理器,剩余部分模块/单元可以采用电路等硬件方式实现。
以上所述,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。
Claims (13)
1.一种原生内容与元宇宙内容共享拍摄的方法,其特征在于,应用于终端设备的APP中,所述APP中包括原生APP工程和元宇宙工程,原生APP工程包括原生导航控制器组件、原生窗口组件和原生视图控制器组件,元宇宙工程中元宇宙窗口的创建方式包括获取原生APP工程中的原生窗口;
所述原生内容与元宇宙内容共享拍摄的方法包括:
通过调用***功能文件中的预定组件以每隔预定时间段对所述APP的页面进行截屏,得到多个截屏图像,所述多个截屏图像中的一部分截屏图像为原生APP工程的页面,另一部分截屏图像为元宇宙工程的页面,以及再一部分截屏图像为原生APP工程与元宇宙工程相互切换时的过渡页面;
将所述多个截屏图像存储至缓存;
对所述多个截屏图像进行合成处理以生成共享视频,所述共享视频用于展示原生APP工程的原生内容以及元宇宙工程的元宇宙内容;
其中,通过以下处理使原生APP工程与元宇宙工程相互切换:
确定APP的当前页面为原生APP工程的原生场景页面;
触发元宇宙工程在当前原生APP工程的原生场景页面中的入口,原生APP工程中的所述原生视图控制器组件采取自下向上present的方式加载所述原生导航控制器组件,所述原生导航控制器组件中设置有用于元宇宙场景的根控制器组件;
元宇宙工程获取原生APP工程的原生窗口,并以所述根控制器组件的内容对所述原生窗口进行填充,使得APP的当前页面显示元宇宙工程的元宇宙场景,完成原生APP工程到元宇宙工程的切换;
需要时,元宇宙工程的根控制器组件将元宇宙场景隐藏,使得APP从元宇宙工程的元宇宙场景页面返回原生APP工程的原生场景页面。
2.根据权利要求1所述的方法,其特征在于,
所述元宇宙工程中元宇宙窗口的创建方式包括将原生APP工程中的原生窗口组件赋值给元宇宙工程。
3.根据权利要求1所述的方法,其特征在于,所述原生APP工程为主工程,所述元宇宙工程为子工程。
4.根据权利要求1所述的方法,其特征在于,所述原生视图控制器组件在原生APP工程中总是控制最上层显示的场景界面。
5.根据权利要求1所述的方法,其特征在于,所述预定组件为startRecordingWithHandler。
6.根据权利要求1所述的方法,其特征在于,
所述元宇宙工程包括动态链接库、所述动态链接库的实例变量以及通信协议,其中,
所述动态链接库用于呈现元宇宙工程的数据,所述数据至少包括场景数据和资源数据;
所述实例变量用于实现原生APP工程与元宇宙工程的交互和通信;
所述通信协议用于元宇宙工程获取原生APP工程中的用户信息。
7.根据权利要求1所述的方法,其特征在于,
所述原生APP工程包括用于实现协议的AppDelegate+Unity文件,元宇宙操作原生工程的所有交互都在实现协议的AppDelegate+Unity文件中。
8.根据权利要求6所述的方法,其特征在于,所述通信协议包括NativeCallsProtocol协议。
9.根据权利要求7所述的方法,其特征在于,所述原生APP工程中的用户信息包括下列至少一项:用户账号信息、用户头像信息。
10.一种电子设备,其特征在于,所述电子设备包括处理器以及存储有计算机程序指令的存储器;所述电子设备执行所述计算机程序指令时实现如权利要求1-9任一项所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-9中任一项所述的方法。
12.一种计算机程序产品,其特征在于,包括计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-9中任一项所述的方法。
13.一种原生内容与元宇宙内容共享拍摄的装置,其特征在于,应用于终端设备的APP中,所述APP中包括原生APP工程和元宇宙工程,原生APP工程包括原生导航控制器组件、原生窗口组件和原生视图控制器组件,元宇宙工程中元宇宙窗口的创建方式包括获取原生APP工程中的原生窗口;
所述原生内容与元宇宙内容共享拍摄的装置包括:
截屏处理模块,用于通过调用***功能文件中的预定组件以每隔预定时间段对所述APP的页面进行截屏,得到多个截屏图像,所述多个截屏图像中的一部分截屏图像为原生APP工程的页面,另一部分截屏图像为元宇宙工程的页面,以及再一部分截屏图像为原生APP工程与元宇宙工程相互切换时的过渡页面;
存储模块,用于将所述多个截屏图像存储至缓存;
合成模块,用于对所述多个截屏图像进行合成处理以生成共享视频,所述共享视频用于展示原生APP工程的原生内容以及元宇宙工程的元宇宙内容;
其中,通过以下模块使原生APP工程与元宇宙工程相互切换:
确定模块,用于确定APP的当前页面为原生APP工程的原生场景页面;
加载模块,用于触发元宇宙工程在当前原生APP工程的原生场景页面中的入口,原生APP工程中的所述原生视图控制器组件采取自下向上present的方式加载所述原生导航控制器组件,所述原生导航控制器组件中设置有用于元宇宙场景的根控制器组件;
原生窗口填充模块,用于获取原生APP工程的原生窗口,并以所述根控制器组件的内容对所述原生窗口进行填充,使得APP的当前页面显示元宇宙工程的元宇宙场景,完成原生APP工程到元宇宙工程的切换;
元宇宙场景隐藏模块,用于在需要时触发元宇宙工程的根控制器组件将元宇宙场景隐藏,使得APP从元宇宙工程的元宇宙场景页面返回原生APP工程的原生场景页面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310464724.0A CN116610396A (zh) | 2023-04-26 | 2023-04-26 | 原生内容与元宇宙内容共享拍摄的方法、装置、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310464724.0A CN116610396A (zh) | 2023-04-26 | 2023-04-26 | 原生内容与元宇宙内容共享拍摄的方法、装置、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116610396A true CN116610396A (zh) | 2023-08-18 |
Family
ID=87680877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310464724.0A Pending CN116610396A (zh) | 2023-04-26 | 2023-04-26 | 原生内容与元宇宙内容共享拍摄的方法、装置、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116610396A (zh) |
-
2023
- 2023-04-26 CN CN202310464724.0A patent/CN116610396A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11748054B2 (en) | Screen projection method and terminal device | |
KR102317167B1 (ko) | 중복 추적 시스템 | |
KR102257167B1 (ko) | 표면 인식 렌즈 | |
US11632344B2 (en) | Media item attachment system | |
CN112639892A (zh) | 增强现实拟人化*** | |
TWI783472B (zh) | Ar場景內容的生成方法、展示方法、電子設備及電腦可讀儲存介質 | |
CN109448050B (zh) | 一种目标点的位置的确定方法及终端 | |
CN110990075A (zh) | 快应用的启动方法、装置、设备及存储介质 | |
JP7393487B2 (ja) | プロフィール写真を推薦する方法とシステム、および非一時的なコンピュータ読み取り可能な記録媒体 | |
CN110971974B (zh) | 配置参数创建方法、装置、终端及存储介质 | |
CN111078325B (zh) | 应用程序运行方法、装置、电子设备及存储介质 | |
CN110543347A (zh) | 生成截屏图像的方法、装置以及电子设备 | |
WO2021254113A1 (zh) | 一种三维界面的控制方法和终端 | |
US11507633B2 (en) | Card data display method and apparatus, and storage medium | |
CN110908629A (zh) | 电子设备操作方法、装置、电子设备和存储介质 | |
CN114449171B (zh) | 控制摄像头的方法、终端设备、存储介质及程序产品 | |
CN115878115A (zh) | 页面渲染方法、装置、介质和电子设备 | |
CN116610396A (zh) | 原生内容与元宇宙内容共享拍摄的方法、装置、电子设备 | |
CN113419806A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN115686700A (zh) | 渲染方法及电子设备 | |
CN116700535B (zh) | 基于笔记应用的悬浮栏显示方法、电子设备以及存储介质 | |
US20240144547A1 (en) | Electronic device for providing information on virtual space and method thereof | |
CN116633890A (zh) | 3d式消息处理方法、装置、电子设备及可读存储介质 | |
JP2023003489A (ja) | 映像処理システム、映像処理プログラム及び映像処理方法 | |
CN116954746A (zh) | 3d模型加载方法、装置、终端设备、存储介质及程序产品 |
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 |