本发明涉及视频分享的,具体地,是一种基于虚拟现实显示设备的视频分享方法以及实现这种方法的系统。
背景技术:
1、随着虚拟现实技术的发展,虚拟现实显示设备(例如vr眼镜)在游戏、虚拟教学中的应用越来越广泛,例如用户可以通过佩戴虚拟现实显示设备进行虚拟的游戏,又或者进行模拟特定场景的教学,如医疗教学等。
2、由于虚拟现实显示设备所呈现的图像往往只有佩戴虚拟现实显示设备的用户自己可以看到,如果其他人员,例如培训人员希望了解培训的情况,难以从用户自己看到的图像中实时了解用户的培训情况。为此,人们希望通过视频分享的方式将虚拟现实显示设备所呈现的视频分享到培训人员的终端设备,培训人员通过智能手机、平板电脑等终端设备及时了解用户通过虚拟现实显示设备所看到的图像,从而了解用户的培训情况。
3、通常,虚拟现实显示设备的视频数据可以通过直播的方式展示在培训人员的终端设备上,在进行视频直播前,培训人员通过智能手机在服务器上进行登录操作,每一个虚拟现实显示设备也在服务器上注册,在终端设备向服务器发送视频分享请求信息后,服务器将向视频直播平台获取一个专用的视频分享频道,服务器向虚拟现实显示设备发送包含有视频分享频道的信息的指令,虚拟现实显示设备将当前所呈现的视频数据上传至视频分享频道。
4、由于虚拟现实显示设备需要对视频数据进行处理,并且需要响应服务器发送的指令,为此,虚拟现实显示设备上需要运行一个应用程序以识别、解析所接收到的专利。通常情况下,该应用程序只需要使用与视频直播平台兼容的sdk(软件开发工具包),调用该sdk提供的“推送屏幕数据到指定频道”函数即可实现视频分享的操作。
5、然而,由于视频直播平台的数据传输接口通常是基于安卓操作系统开发的,而虚拟现实显示设备虽然也会运行安卓操作系统,但视频分享接口可能是因为安全等原因不允许使用基于安卓操作系统的视频分享接口,只能使用其他类型的视频分享接口,这种视频分享接口可能是基于xamarin编程的应用程序,因此,该应用程序不能够直接识别、解析视频直播平台的接口数据,也就无法执行相应的操作指令。
6、另外,由于虚拟现实显示设备的可用视频分享接口不是基于安卓操作系统开发的,这样就导致通过虚拟现实显示设备的视频分享接口所获取的视频数据无法直接被视频直播平台所识别,进而影响培训人员通过终端设备获取虚拟现实显示设备的视频数据。
技术实现思路
1、本发明的第一目的是提供一种能够虚拟现实显示设备与视频直播平台兼容的基于虚拟现实显示设备的视频分享方法。
2、本发明的第二目的是提供一种实现上述基于虚拟现实显示设备的视频分享方法的基于虚拟现实显示设备的视频分享系统。
3、为实现本发明的第一目的,本发明提供的基于虚拟现实显示设备的视频分享方法包括终端设备向服务器发送视频分享请求信息,服务器从视频直播平台获取分配的视频分享频道的信息,服务器向虚拟现实显示设备发送视频分享指令,视频分享指令包含有视频分享频道的信息;其中,虚拟现实显示设备获取当前显示的视频数据,使用依赖库文件将视频数据发送至视频分享频道,其中,依赖库文件包括第一依赖库文件以及第二依赖库文件,第一依赖库文件使用第一程序语言封装编译而成,第二依赖库文件使用第一程序语言封装编译而成;第二依赖库文件由第一依赖库文件绑定形成,将第一依赖库文件绑定形成第二依赖库文件时,在第二依赖库文件中建立与第一依赖库文件中的源函数同名的目标函数,并建立源函数与目标函数之间的映射关系,在第二依赖库文件中建立与第一依赖库文件中的源接口同名的目标接口,并建立源接口与目标接口之间的映射关系;虚拟现实显示设备将所获取的视频数据发送至视频分享频道后,终端设备从视频分享频道获取视频数据。
4、由上述方案可见,通过将第一依赖库文件绑定形成第二依赖库文件,实现第一依赖库文件的源函数与第二依赖库文件的目标函数之间的转换,也实现第一依赖库文件的源接口与第二依赖库文件的目标接口之间的转换,使得虚拟现实显示设备上的应用程序能够识别服务器发送的视频分享指令中的视频分享频道的信息,也使得视频直播平台能够识别虚拟现实显示设备所传输的视频数据,使得终端设备能够解析、播放虚拟现实显示设备所传送的视频数据。
5、一个优选的方案是,虚拟现实显示设备获取当前显示的视频数据包括:调用虚拟现实显示设备的录屏接口,获取每一帧初始视频数据,将初始视频数据转换成目标格式的视频数据以形成视频流。
6、可见,虚拟现实显示设备通过调用录屏接口获取初始视频数据,并且将所获取的初始视频数据进行格式转换,使得视频直播平台能够识别虚拟现实显示设备所传送的视频数据。
7、进一步的方案是,将初始视频数据转换成目标格式的视频数据包括:以初始视频数据作为原始视频数据,将初始视频数据转换成视频直播平台自定义的视频格式。
8、由此可见,通过录屏接口所获取的初始视频数据仅仅作为视频源并作为视频转换的基础,视频格式转换的操作能够简单、快速的实现。
9、更进一步的方案是,将初始视频数据转换成视频直播平台自定义的视频格式前,还执行:设置图片监听器,通过图片监听器监听有可用的图片帧时,开始获取初始视频数据。
10、由此可见,通过图片监听器进行图片帧的监听,能够避免虚拟现实显示设备长时间进行视频数据的获取,提高视频数据的获取效率。
11、更进一步的方案是,获取初始视频数据后,还设置各帧视频数据的时间戳,通过时间戳标记各帧视频数据的顺序。
12、更进一步的方案是,第一依赖库文件的外部调用接口仅包括视频分享开始接口以及视频分享停止接口。
13、由此可见,第一依赖库文件的外部调用接口非常少,当调用第一依赖库文件时,只需要调用其中的视频分享开始接口即可以开始视频数据的录制,只需要调用其中的视频分享停止接口即可以停止视频数据的录制,而其他的功能都依赖于第一依赖库文件内部的函数实现,虚拟现实显示设备不需要进行其他的操作,使得视频数据的获取非常简单。
14、进一步的方案是,虚拟现实显示设备将所获取的视频数据发送至视频分享频道包括:虚拟现实显示设备上的应用程序调用依赖库文件,由依赖库文件将视频数据发送至视频分享频道。
15、由此可见,通过依赖库文件获取虚拟现实显示设备的视频数据,并且将视频数据传输至视频直播平台的视频分享频道,从而实现两种不同程序语言之间的指令的转换。
16、为实现上述的第二目的,本发明提供的基于虚拟现实显示设备的视频分享系统包括终端设备、服务器以及虚拟现实显示设备,终端设备用于向服务器发送视频分享请求信息;服务器用于从视频直播平台获取分配的视频分享频道的信息,并向虚拟现实显示设备发送视频分享指令,视频分享指令包含有视频分享频道的信息;其中,虚拟现实显示设备用于获取当前显示的视频数据,使用依赖库文件将视频数据发送至视频分享频道,其中,依赖库文件包括第一依赖库文件以及第二依赖库文件,第一依赖库文件使用第一程序语言封装编译而成,第二依赖库文件使用第一程序语言封装编译而成;第二依赖库文件由第一依赖库文件绑定形成,将第一依赖库文件绑定形成第二依赖库文件时,在第二依赖库文件中建立与第一依赖库文件中的源函数同名的目标函数,并建立源函数与目标函数之间的映射关系,在第二依赖库文件中建立与第一依赖库文件中的源接口同名的目标接口,并建立源接口与目标接口之间的映射关系;虚拟现实显示设备还将所获取的视频数据发送至视频分享频道,终端设备还从视频分享频道获取视频数据。