一种用于主屏以及次屏跨操作系统的镜像方法技术方案

技术编号:37636139 阅读:21 留言:0更新日期:2023-05-20 08:56
本发明专利技术提供一种用于主屏以及次屏跨操作系统的镜像方法,通过在主屏设备上设置主屏接口层、主屏适配层、主屏逻辑处理层以及主屏UI层;在次屏设备上设置次屏接口层、次屏适配层、次屏逻辑处理层以及次屏UI层;使得主屏设备和次屏设备可以无需考虑系统的不同,顺利实现投屏效果,这就使得扩操作系统的投屏得以实现,便于用户进行使用。便于用户进行使用。便于用户进行使用。

【技术实现步骤摘要】
一种用于主屏以及次屏跨操作系统的镜像方法


[0001]本专利技术涉及计算机
,特别涉及一种用于主屏以及次屏跨操作系统的镜像方法。

技术介绍

[0002]将手机或者平板电脑等小屏幕设备的屏幕上所显示的画面呈现在电视、智能显示器、投影仪等大屏幕设备的屏幕上,我们称之为镜像,它已逐渐成为家庭娱乐的一种潮流、时尚。但不同的手机有不同的操作系统平台,不同的操作系统平台所使用的投屏镜像技术互不相同的,例如苹果手机使用的是IOS操作系统,在IOS操作系统上使用的镜像技术是Airplay,该项技术是苹果私有的并不开放,所以如果一台苹果手机想要镜像到一台安卓TV上是无法实现的;同样如果一台安卓手机想要镜像到一台苹果TV上也是无法实现的。
[0003]对于当前不同的操作系统所自带的镜像技术互不相同,也互不相通,尤其IOS操作系统的镜像技术是一个苹果公司私有的技术,在安卓、鸿蒙等操作系统上无法实现,导致苹果手机无法镜像到安卓或者鸿蒙等操作系统的大屏设备上。

技术实现思路

[0004]本专利技术要解决的技术问题,在于提供一种用于主屏以及次屏跨操作系统的镜像方法,使得主屏设备和次屏设备可以无需考虑系统的不同,顺利实现投屏效果,这就使得扩操作系统的投屏得以实现,便于用户进行使用。
[0005]第一方面,本专利技术提供了一种用于主屏跨操作系统的镜像方法,包括:主屏接口层、主屏适配层、主屏逻辑处理层以及主屏UI层;所述主屏接口层用于提供给上层应用所使用,包括各个操作系统的接口函数;所述主屏适配层用于对不同的操作系统的接口层函数实现抽象封装,使得解除上层业务逻辑与操作系统耦合,用于发现次屏设备,获取数据进行编码,并将编码后的数据发送至次屏设备;所述主屏逻辑处理层用于调用主屏适配层的接口函数,组成相应的业务逻辑;所述主屏UI层用于显示主屏界面。
[0006]进一步地,所述主屏适配层包括:主屏的设备发现模块、主屏录音和录像模块、主屏编码模块以及主屏通讯模块;所述主屏的设备发现模块用于发现次屏设备,使用UPnP和SSDP协议发现设备并获取该次屏设备信息;所述主屏录音和录像模块用于获取主屏设备正在播放的音频采样和主屏设备正在显示的视频帧;所述主屏编码模块用于将从主屏录音和录像模块获取的音频采样和视频帧进行压缩编码,若操作提供硬件编码接口则优先使用硬件编码接口对音视频进行编码,否则使用软件编码单元对音视频进行编码;
所述主屏通讯模块用于与次屏设备通讯,使用主屏的设备发现模块获取的次屏设备信息,使主屏设备与次屏设备建立连接,将所述主屏编码模块编码后的数据和操作控制报文发送给次屏设备。
[0007]进一步地,所述主屏通讯模块包括主屏视频发送线程、主屏音频发送线程以及对次屏操作控制的交互报文的接收线程,每个独立线程与主线程之间分别使用一个独立的队列实现数据的缓冲。
[0008]第二方面,本专利技术提供了一种用于次屏跨操作系统的镜像方法,包括:次屏接口层、次屏适配层、次屏逻辑处理层以及次屏UI层;所述次屏接口层用于提供给上层应用所使用,包括各个操作系统的接口函数;所述次屏适配层用于对不同的操作系统的接口层函数实现抽象封装,使得解除上层业务逻辑与操作系统耦合,用于发送发现报文让主屏设备发现该次屏,获取数据进行解码,并将解码后的数据进行播放;所述次屏逻辑处理层用于调用次屏适配层的接口函数,组成相应的业务逻辑;所述次屏UI层用于显示次屏界面。
[0009]进一步地,所述次屏适配层包括:次屏的设备发现模块、次屏解码模块、次屏音视频播放模块以及次屏通讯模块;所述次屏的设备发现模块用于通过使用UPnP和SSDP协议向主屏设备发送设备信息;所述次屏通讯模块用于与主屏设备通讯,接收主屏设备发送的操作控制报文和音视频数据;所述次屏解码模块用于接收次屏通讯模块所收到的来自主屏的的操作控制报文和音视频数据;并对音视频数据进行解码,根据操作系统提供的解码接口进行选择,如果操作系统提供硬件解码,则直接使用硬件解码;否则使用软件解码单元进行解码,解码后的数据传递给音视频播放模块;所述次屏音视频播放模块用于将解码后的数据进行播放,以及根据操作控制报文进行播放控制操作。
[0010]进一步地,所述次屏通讯模块使用三个独立线程,包括次屏视频接收线程、次屏音频接收线程以及次屏操作控制报文接收线程,相应独立线程接收到的数据分别存放到对应的队列中等待相应的处理。
[0011]本专利技术实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:本申请实施例提供的一种用于主屏以及次屏跨操作系统的镜像方法,通过在主屏设备和次屏设备上分别设置,使得在主屏设备和次屏设备在不用操作系统的情况下,依旧可以实现投屏的效果,大大便利与用户的使用。
[0012]上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。
附图说明
[0013]下面参照附图结合实施例对本专利技术作进一步的说明。
[0014]图1为本专利技术一种用于主屏跨操作系统的镜像方法系统的框架示意图;图2为本专利技术一种用于次屏跨操作系统的镜像方法系统的框架示意图。
具体实施方式实施例一
[0015]如图1所示,本实施例提供一种用于主屏跨操作系统的镜像方法,包括:主屏接口层、主屏适配层、主屏逻辑处理层以及主屏UI层;所述主屏接口层用于提供给上层应用所使用,包括各个操作系统的接口函数;所述主屏适配层用于对不同的操作系统的接口层函数实现抽象封装,使得解除上层业务逻辑与操作系统耦合,用于发现次屏设备,获取数据进行编码,并将编码后的数据发送至次屏设备;所述主屏逻辑处理层用于调用主屏适配层的接口函数,组成相应的业务逻辑;所述主屏UI层用于显示主屏界面。
[0016]所述主屏适配层包括:主屏的设备发现模块、主屏录音和录像模块、主屏编码模块以及主屏通讯模块;所述主屏的设备发现模块用于发现次屏设备,使用UPnP和SSDP协议发现设备并获取该次屏设备信息,如IP、MAC、model name等;所述主屏录音和录像模块用于获取主屏设备正在播放的音频采样和主屏设备正在显示的视频帧(例如IOS系统平台使用processSampleBuffer接口);所述主屏编码模块用于将从主屏录音和录像模块获取的音频采样和视频帧进行压缩编码,若操作提供硬件编码接口则优先使用硬件编码接口对音视频进行编码,否则使用软件编码单元(软件编码可使用ffmpeg的libavcodec模块)对音视频进行编码;所述主屏通讯模块用于与次屏设备通讯,使用主屏的设备发现模块获取的次屏设备信息,使主屏设备与次屏设备建立连接,将所述主屏编码模块编码后的数据和操作控制报文发送给次屏设备,所述主屏通讯模块包括主屏视频发送线程、主屏音频发送线程以及对次屏操作控制的交互报文的接收线程,每个独立线程与主线程之间分别使用一个独立的队列实现数据的缓冲,使得数据都可以快速进行处理,并且不会互相干扰。
实施例二...

【技术保护点】

【技术特征摘要】
1.一种用于主屏跨操作系统的镜像方法,其特征在于,包括:主屏接口层、主屏适配层、主屏逻辑处理层以及主屏UI层;所述主屏接口层用于提供给上层应用所使用,包括各个操作系统的接口函数;所述主屏适配层用于对不同的操作系统的接口层函数实现抽象封装,使得解除上层业务逻辑与操作系统耦合,用于发现次屏设备,获取数据进行编码,并将编码后的数据发送至次屏设备;所述主屏逻辑处理层用于调用主屏适配层的接口函数,组成相应的业务逻辑;所述主屏UI层用于显示主屏界面。2.根据权利要求1所述的一种用于主屏跨操作系统的镜像方法,其特征在于,所述主屏适配层包括:主屏的设备发现模块、主屏录音和录像模块、主屏编码模块以及主屏通讯模块;所述主屏的设备发现模块用于发现次屏设备,使用UPnP和SSDP协议发现设备并获取该次屏设备信息;所述主屏录音和录像模块用于获取主屏设备正在播放的音频采样和主屏设备正在显示的视频帧;所述主屏编码模块用于将从主屏录音和录像模块获取的音频采样和视频帧进行压缩编码,若操作提供硬件编码接口则优先使用硬件编码接口对音视频进行编码,否则使用软件编码单元对音视频进行编码;所述主屏通讯模块用于与次屏设备通讯,使用主屏的设备发现模块获取的次屏设备信息,使主屏设备与次屏设备建立连接,将所述主屏编码模块编码后的数据和操作控制报文发送给次屏设备。3.根据权利要求2所述的一种用于主屏跨操作系统的镜像方法,其特征在于,所述主屏通讯模块包括主屏视频发送线程、主屏音频发送线程以及对次屏操作控制的交互报文的接收线程,每个独立线程与主线程之间分别使用一个独立的队列实现数据的缓冲。4.一种用于...

【专利技术属性】
技术研发人员:何志宏官振兴
申请(专利权)人:北京智象信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1