System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,特别涉及音视频元数据解析方法、装置、设备及介质。
技术介绍
1、目前主流对象存储厂商主要基于amazon s3协议进行封装实现;在上传音视频文件时,如果有需要解析元数据,一般需要开发人员在amazon s3协议基础上,使用后端代码进行封装,增加解析音视频元数据相关功能,例如在上传视频文件时,想将视频时长、分辨率、文件大小自动解析处理,增加到amazon s3对象存储对象元数据中。
2、上述方式仍然需要开发人员手动使用后端代码进行封装,步骤较为繁琐,音视频元数据解析效率较低。
3、本专利技术的方案借助于node.js的api丰富性、开发简易性特性,调用ffmpeg编译的webassembly文件在浏览器运行,来实现自动化解析音频、视频等多种类型文件元数据,提高解析效率。
技术实现思路
1、本专利技术实施例提供了元数据解析方法、装置、设备及介质,能够实现自动化解析音频、视频等多种类型文件元数据,提高解析效率。
2、根据本专利技术的一方面,提供了一种元数据解析方法,包括:
3、确定待解析文件的文件类型;
4、通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据;
5、将所述元数据附加到amazon s3对象存储文件中。
6、可选的,所述ffmpeg.wasm,通过如下方
7、构建基础环境,所述基础环境包括git-all、python、gcc、nodejs、npm和yasm环境;
8、安装emsdk和cmake并编译;
9、下载ffmpeg源码,通过预先自定义的脚本进行编译配置,每种所示自定义的脚本对应一种文件类型;
10、将ffmpeg编译为webassembly,得到ffmpeg.wasm,所述ffmpeg.wasm由javascriptapi层和一个webassembly二进制文件组成。
11、可选的,当所述文件类型为视频文件或音频文件时,所述通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据,包括:
12、通过node.js创建ffmpeg对象;
13、创建所述ffmpeg对象的run方法,读取所述待解析文件,从output对象中,获取返回结果,进行解析获得元数据;
14、当所述待解析文件为视频文件时,所述元数据包括视频时长、分辨率、尺寸比例、文件大小、编码格式和码率中的一种或多种;
15、当所述待解析文件为音频文件时,所述元数据包括音频时长、文件大小、编码格式、码率和音轨中的一种或多种。
16、可选的,当所述文件类型为图像文件时,所述通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据,包括:
17、通过node.js解析所述待解析文件二进制流,获取所述待解析文件的元数据,所述元数据包括文件色域、色彩空间、亮度中的至少一种exif信息。
18、可选的,当所述文件类型为音频文件、视频文件和图像文件之外的其他文件时,所述通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据,包括:
19、使用file对象获取所述待解析文件的文件名、文件大小、文件mime类型和上次修改时间中的一种或多种。
20、可选的,在通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据之前,进一步包括:元数据参数配置,所述元数据参数配置,包括以下方式的一种或多种:
21、配置是否附加元数据;
22、配置是否根据文件类型自动增加元数据;
23、配置附加的元数据字段数组。
24、可选的,所述将所述元数据附加到amazon s3对象存储文件中,包括:
25、在文件直传、分片上传或断点续传过程中,自动处理所述元数据;
26、通过上传签名计算,将元数据附加到amazon s3对象存储文件中。
27、根据本专利技术的另一方面,提供了一种元数据解析装置,包括:
28、确定单元,用于确定待解析文件的文件类型;
29、解析单元,用于通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据;
30、存储单元,用于对所述元数据进行处理并附加到amazon s3对象存储文件中。
31、根据本专利技术的另一方面,提供了一种电子设备,所述电子设备包括:
32、至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本专利技术任一实施例所述的元数据解析方法。
33、根据本专利技术的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本专利技术任一实施例所述的元数据解析方法。
34、本专利技术实施例提供了元数据解析方法、装置、设备及介质。确定待解析文件的文件类型;通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据;将所述元数据附加到amazon s3对象存储文件中。本专利技术实施例的方案通过使用node.js、webassembly、ffmpeg相关技术来实现自动化解析音视频元数据方案,实现ffmpeg可以跑在浏览器端,支持音频、视频、图像等多种类型文件元数据的同时,代码逻辑更简单清晰、解耦性强、开发周期更短、节省服务端资源。
35、应当理解,本部分所描述的内容并非旨在标识本专利技术的实施例的关键或重要特征,也不用于限制本专利技术的范围。本专利技术的其它特征将通过以下的说明书而变得容易理解。
本文档来自技高网...【技术保护点】
1.元数据解析方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述ffmpeg.wasm,通过如下方式编译得到:
3.根据权利要求1所述的方法,其特征在于,当所述文件类型为视频文件或音频文件时,所述通过对ffmpeg源码进行编译得到的WebAssembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据,包括:
4.根据权利要求1所述的方法,其特征在于,当所述文件类型为图像文件时,所述通过对ffmpeg源码进行编译得到的WebAssembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据,包括:
5.根据权利要求1所述的方法,其特征在于,当所述文件类型为音频文件、视频文件和图像文件之外的其他文件时,所述通过对ffmpeg源码进行编译得到的WebAssembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据,包括:
6.根
7.根据权利要求1所述的方法,其特征在于,所述将所述元数据附加到Amazon S3对象存储文件中,包括:
8.元数据解析装置,其特征在于,包括:
9.电子设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的元数据解析方法。
10.计算机可读介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的元数据解析方法。
...【技术特征摘要】
1.元数据解析方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述ffmpeg.wasm,通过如下方式编译得到:
3.根据权利要求1所述的方法,其特征在于,当所述文件类型为视频文件或音频文件时,所述通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据,包括:
4.根据权利要求1所述的方法,其特征在于,当所述文件类型为图像文件时,所述通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述待解析文件的元数据,包括:
5.根据权利要求1所述的方法,其特征在于,当所述文件类型为音频文件、视频文件和图像文件之外的其他文件时,所述通过对ffmpeg源码进行编译得到的webassembly形式下的解析工具ffmpeg.wasm,根据所述文件类型对所述待解析文件进行解析,获得所述...
【专利技术属性】
技术研发人员:朱继学,尹萍,安晓博,杨镇铭,
申请(专利权)人:浪潮云信息技术股份公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。