一种页面多媒体数据导出方法及装置制造方法及图纸

技术编号:21850927 阅读:20 留言:0更新日期:2019-08-14 00:24
本发明专利技术公开了一种页面多媒体数据导出方法及装置,此方法包括:获取页面中的多媒体渲染对像;获取每个多媒体渲染对像的多媒体编码数据;使用多个工作线程并行处理所述多媒体编码数据,将多媒体编码数据转换为多媒体文件;将所述多个工作线程中获取的多媒体文件发送至主线程,通过所述主线程进行多媒体文件整合。本发明专利技术将计算量较大的数据处理工作通过并行的工作进程处理,在同一时间实现多个JavaScript脚本的执行,在操作系统方面分担浏览器主线程的处理压力,可以在浏览器端快速导出多媒体数据同时保证浏览器端的正常运行。

A Page Multimedia Data Exporting Method and Device

【技术实现步骤摘要】
一种页面多媒体数据导出方法及装置
本专利技术涉及互联网
,尤其涉及一种页面多媒体数据导出方法及装置。
技术介绍
随着企业对数据分析的需求增多,数据可视化的需求也随之增加。平台上的数据可视化并不能满足大部分数据可视化需求,在一些场景下还需要对所有数据进行导出并备份。比如将页面上的每个图表导出打印,将每个图表数据导出为Excel格式进行其他数据上的分析。传统的导出方法包括以下两种:一,将图表的导出过程交给服务端执行,由服务器导出完成后,将导出的内容打包后供使用者下载。二,另外一种方式就是由浏览器端直接进行导出操作。第一种方式中虽然可以通过多线程的方式来实现数据导出,但是需要依赖服务端,扩展性较差,服务端造成的网络请求成本越大。第二种方式中,浏览器端导出时使用JavaScript单线程模式导出的速率较慢,甚至出现浏览器崩溃的情况。对于第二种方式举例如下:页面展示时需要显示多个不同地区的天气情况,需要用到将近300个的图表同时渲染到浏览器端,此时采用的图表渲染是Canvas或者SVG的方式进行渲染,进行可视化展示时需要导出所有这些图表到本地进行打印,这个时候需要对所有图表进行转化,转化为PNG格式的图片,然后进行压缩打包成一个zip格式的压缩包,最终提供给用户。整个流程的处理全部由主线程完成,需要大量的计算和读写操作,容易造成浏览器卡顿的情况,甚至造成浏览器崩溃的情况。如何解决浏览器JavaScript单线程带来的瓶颈问题,如何在浏览器端快速导出多媒体数据均是需要解决的技术问题。
技术实现思路
为了解决上述技术问题,本专利技术提供了一种页面多媒体数据导出方法及装置。本专利技术提供的页面数据导出方法,包括:获取页面中的多媒体渲染对像;获取每个多媒体渲染对像的多媒体编码数据;使用多个工作线程并行处理所述多媒体编码数据,将多媒体编码数据转换为多媒体文件;将所述多个工作线程中获取的多媒体文件发送至主线程,通过所述主线程进行多媒体文件整合。上述页面数据导出方法还具有以下特点:获取每个多媒体渲染对像的多媒体编码数据后,所述方法还包括:对所述多媒体渲染对像的多媒体编码数据进行分组;所述使用多个工作线程并行处理所述多媒体编码数据包括:使用多个工作线程并行处理所述分组中的所述多媒体编码数据。上述页面数据导出方法还具有以下特点:所述对所述多媒体渲染对像的多媒体编码数据进行分组包括:确定工作线程的数量,将所述多媒体渲染对像的多媒体编码数据分成多个分组,分组的数量与所述工作线程的数量相同。上述页面数据导出方法还具有以下特点:所述将所述多个工作线程中获取的多媒体文件发送至主线程包括:通过发送消息的方式将所述多个工作线程中获取的多媒体文件发送至主线程。上述页面数据导出方法还具有以下特点:所述获取每个多媒体渲染对像的多媒体编码数据包括:设置转换函数中多媒体数据类型;所述转换函数用于将多媒体渲染对像至多媒体编码数据统一资源标识符;调用所述转换函数,获得所述多媒体渲染对像对应的多媒体编码数据统一资源标识符。本专利技术提供的页面数据导出装置,包括:对像获取模块,用于获取页面中的多媒体渲染对像;数据获取模块,用于获取每个多媒体渲染对像的多媒体编码数据;工作线程处理模块,用于使用多个工作线程并行处理所述多媒体编码数据,将多媒体编码数据转换为多媒体文件,将多媒体文件发送至主线程处理模块;主线程处理模块,用于进行多媒体文件整合。上述页面数据导出装置还具有以下特点:所述装置还包括分组模块,用于对所述多媒体渲染对像的多媒体编码数据进行分组;所述工作线程处理模块,用于采用以下方法使用多个工作线程并行处理所述多媒体编码数据:使用多个工作线程并行处理所述分组中的所述多媒体编码数据。上述页面数据导出装置还具有以下特点:所述分组模块,还用于使用以下方法对所述多媒体渲染对像的多媒体编码数据进行分组:确定工作线程的数量,将所述多媒体渲染对像的多媒体编码数据分成多个分组,分组的数量与所述工作线程的数量相同。上述页面数据导出装置还具有以下特点:所述工作线程处理模块,还用于使用以下方法将多媒体文件发送至主线程处理模块:通过发送消息的方式将所述多个工作线程中获取的多媒体文件发送至主线程。上述页面数据导出装置还具有以下特点:所述数据获取模块,用于使用以下方法获取每个多媒体渲染对像的多媒体编码数据:设置转换函数中多媒体数据类型;所述转换函数用于将多媒体渲染对像至多媒体编码数据统一资源标识符;调用所述转换函数,获得所述多媒体渲染对像对应的多媒体编码数据统一资源标识符。本专利技术将计算量较大的数据处理工作通过并行的工作进程处理,在同一时间实现多个JavaScript脚本的执行,在操作系统方面分担浏览器主线程的处理压力,主线程只负责从工作线程接收处理完成的数据并整合,可以在浏览器端快速导出多媒体数据同时保证浏览器端的正常运行。附图说明构成本专利技术的一部分的附图用来提供对本专利技术的进一步理解,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是实施例中页面多媒体数据导出方法的流程图;图2是实施例中页面多媒体数据导出装置的结构图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。如图1所示,实施例中页面数据导出方法,包括:步骤101,获取页面中的多媒体渲染对像;步骤102,获取每个多媒体渲染对像的多媒体编码数据;步骤103,使用多个工作线程并行处理多媒体编码数据,将多媒体编码数据转换为多媒体文件;步骤104,将多个工作线程中获取的多媒体文件发送至主线程,通过主线程进行多媒体文件整合。本专利技术将计算量较大的数据处理工作通过并行的工作进程处理,在同一时间实现多个JavaScript脚本的执行,在操作系统方面分担浏览器主线程的处理压力,主线程只负责从工作线程接收处理完成的数据并整合,可以在浏览器端快速导出多媒体数据同时保证浏览器端的正常运行。其中,步骤102中获取每个多媒体渲染对像的多媒体编码数据包括:设置转换函数中多媒体数据类型;此转换函数用于将多媒体渲染对像至多媒体编码数据统一资源标识符;调用此转换函数,获得多媒体渲染对像对应的多媒体编码数据统一资源标识符。本方法中多媒体数据包括图像数据、音频数据、视频数据等。以图像数据为例,调用转换函数为HTMLCanvasElement.toDataURL(),用于获得包含图片数据的dataURI。可以设置此函数中的type参数设置图片的类型,例如可以设置图片的类型为PNG、JPG等类型。步骤102获取每个多媒体渲染对像的多媒体编码数据后,此方法还包括:对多媒体渲染对像的多媒体编码数据进行分组。步骤103中使用多个工作线程并行处理多媒体编码数据包括:使用多个工作线程并行处理分组中的多媒体编码数据。其中,对多媒体渲染对像的多媒体编码数据进行分组包括:确定工作线程的数量,将多媒体渲染对像的多媒本文档来自技高网...

【技术保护点】
1.一种页面数据导出方法,包括:获取页面中的多媒体渲染对像;获取每个多媒体渲染对像的多媒体编码数据;使用多个工作线程并行处理所述多媒体编码数据,将多媒体编码数据转换为多媒体文件;将所述多个工作线程中获取的多媒体文件发送至主线程,通过所述主线程进行多媒体文件整合。

【技术特征摘要】
1.一种页面数据导出方法,包括:获取页面中的多媒体渲染对像;获取每个多媒体渲染对像的多媒体编码数据;使用多个工作线程并行处理所述多媒体编码数据,将多媒体编码数据转换为多媒体文件;将所述多个工作线程中获取的多媒体文件发送至主线程,通过所述主线程进行多媒体文件整合。2.如权利要求1所述的页面数据导出方法,其特征在于,获取每个多媒体渲染对像的多媒体编码数据后,所述方法还包括:对所述多媒体渲染对像的多媒体编码数据进行分组;所述使用多个工作线程并行处理所述多媒体编码数据包括:使用多个工作线程并行处理所述分组中的所述多媒体编码数据。3.如权利要求2所述的页面数据导出方法,其特征在于,所述对所述多媒体渲染对像的多媒体编码数据进行分组包括:确定工作线程的数量,将所述多媒体渲染对像的多媒体编码数据分成多个分组,分组的数量与所述工作线程的数量相同。4.如权利要求1所述的页面数据导出方法,其特征在于,所述将所述多个工作线程中获取的多媒体文件发送至主线程包括:通过发送消息的方式将所述多个工作线程中获取的多媒体文件发送至主线程。5.如权利要求1所述的页面数据导出方法,其特征在于,所述获取每个多媒体渲染对像的多媒体编码数据包括:设置转换函数中多媒体数据类型;所述转换函数用于将多媒体渲染对像至多媒体编码数据统一资源标识符;调用所述转换函数,获得所述多媒体渲染对像对应的多媒体编码数据统一资源标识符。6.一种页面数据导出装置,包括:对像获取模块,用于获取页面...

【专利技术属性】
技术研发人员:刘晓钟苗辉
申请(专利权)人:贵州白山云科技股份有限公司
类型:发明
国别省市:贵州,52

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

1