CN112689197B - 一种文件格式转换方法、装置、以及计算机存储介质 - Google Patents
一种文件格式转换方法、装置、以及计算机存储介质 Download PDFInfo
- Publication number
- CN112689197B CN112689197B CN201910993431.5A CN201910993431A CN112689197B CN 112689197 B CN112689197 B CN 112689197B CN 201910993431 A CN201910993431 A CN 201910993431A CN 112689197 B CN112689197 B CN 112689197B
- Authority
- CN
- China
- Prior art keywords
- file
- format
- multimedia
- data
- conversion
- 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.)
- Active
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
本申请实施例公开了一种文件格式转换方法、装置、以及计算机存储介质,所述方法包括:获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式,对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据,当文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧,基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧,根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。该方案可以实现不同多媒体文件格式的多媒体文件之间的转换,提升了文件格式转换的灵活性。
Description
技术领域
本申请涉及计算机技术领域,具体涉及一种文件格式转换方法、装置、以及计算机存储介质。
背景技术
多媒体文件为以文件形式存储于计算机中的多媒体数据,其中,多媒体文件可以包括多种多媒体文件格式,比如,多媒体文件格式可以为视频格式、动画格式、音频格式等等。但是目前仅能支持视频格式的多媒体文件之间的文件格式转换,而不能支持其他多媒体文件格式的多媒体文件之间的文件格式转换,如不能支持视频格式的多媒体文件与动画格式的多媒体文件之间的文件格式转换,因此多媒体文件之间文件格式转换的灵活性较低。
发明内容
本申请实施例提供一种文件格式转换方法、装置、以及计算机存储介质,可以提升文件格式转换的灵活性。
本申请实施例提供一种文件格式转换方法,包括:
获取需要格式转换的多媒体文件、以及所述多媒体文件需要转换到的目标多媒体文件格式;
对所述多媒体文件进行解释,得到所述多媒体文件的文件内容数据、以及文件属性数据;
当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧;
基于所述目标多媒体文件格式,对所述多媒体数据帧进行格式转换,得到格式转换后数据帧;
根据所述格式转换后数据帧、以及所述文件属性数据,构建得到所述目标文件。
相应的,本申请实施例还提供一种文件格式转换装置,包括:
获取模块,用于获取需要格式转换的多媒体文件、以及所述多媒体文件需要转换到的目标多媒体文件格式;
解释模块,用于对所述多媒体文件进行解释,得到所述多媒体文件的文件内容数据、以及文件属性数据;
解码模块,用于当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧;
转换模块,用于基于所述目标多媒体文件格式,对所述多媒体数据帧进行格式转换,得到格式转换后数据帧;
构建模块,用于根据所述格式转换后数据帧、以及所述文件属性数据,构建得到所述目标文件。
则此时,所述解码模块,具体可以用于检测所述多媒体文件的当前多媒体文件格式,将所述当前多媒体文件格式与所述目标多媒体文件格式进行匹配,得到匹配结果,当所述匹配结果确定所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧。
可选的,在一些实施例中,所述解码模块可以包括确定子模块和解码子模块,如下:
确定子模块,用于当所述文件内容数据不支持所述目标多媒体文件格式的直接转换,且所述目标多媒体文件格式为预设支持数据帧文件格式时,确定所述目标多媒体文件格式支持所述文件内容数据解码后得到的多媒体数据帧;
解码子模块,用于对所述文件内容数据进行解码,得到多媒体数据帧。
则此时,所述解码子模块,具体可以用于根据所述文件内容数据绘制所述多媒体文件的多帧图像,基于所述多媒体文件的多帧图像,获取多媒体数据帧。
可选的,在一些实施例中,所述构建模块可以包括编码子模块和第一构建子模块,如下:
编码子模块,用于对所述格式转换后数据帧进行编码,得到多媒体数据流;
第一构建子模块,用于根据所述多媒体数据流、以及所述文件属性数据,构建得到所述目标文件。
则此时,所述第一构建子模块,具体可以用于获取所述多媒体数据流的头部信息、以及所述文件属性数据的尾部信息,根据所述多媒体数据流的头部信息、以及所述文件属性数据的尾部信息,构建得到所述目标文件。
可选的,在一些实施例中,所述直接转换模块可以包括直接转换子模块和
第二构建子模块,如下:
直接转换子模块,用于当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,基于所述目标多媒体文件格式,直接对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据;
第二构建子模块,用于根据所述格式转换后的文件内容数据、以及所述文件属性数据,构建得到所述目标文件。
则此时,所述直接转换子模块,具体可以用于当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,根据所述多媒体文件的当前多媒体文件格式、以及所述目标多媒体文件格式,确定格式转换需要的转换函数,通过所述转换函数对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据。
此外,本申请实施例还提供一种存储介质,所述存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例提供的任一种文件格式转换方法中的步骤。
本申请实施例可以获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式,对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据,当文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧,基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧,根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。该方案可以实现不同多媒体文件格式的多媒体文件之间的转换,提升了文件格式转换的灵活性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的文件格式转换系统的场景示意图;
图2是本申请实施例提供的文件格式转换方法的第一流程图;
图3是本申请实施例提供的文件格式转换方法的第二流程图;
图4是本申请实施例提供的文件格式转换方法的第三流程图;
图5是本申请实施例提供的文件格式转换方法的第四流程图;
图6是本申请实施例提供的文件格式转换方法的第五流程图;
图7是本申请实施例提供的文件格式转换方法的第六流程图;
图8是本申请实施例提供的文件格式转换方法的第七流程图;
图9是本申请实施例提供的文件格式转换装置的结构示意图;
图10是本申请实施例提供的网络设备的结构示意图。
具体实施方式
请参照图式,其中相同的组件符号代表相同的组件,本申请的原理是以实施在一适当的运算环境中来举例说明。以下的说明是基于所例示的本申请具体实施例,其不应被视为限制本申请未在此详述的其它具体实施例。
在以下的说明中,本申请的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本申请原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下所述的多种步骤及操作亦可实施在硬件当中。
本文所使用的术语“模块”可看作为在该运算系统上执行的软件对象。本文所述的不同组件、模块、引擎及服务可看作为在该运算系统上的实施对象。而本文所述的装置及方法可以以软件的方式进行实施,当然也可在硬件上进行实施,均在本申请保护范围之内。
本申请中的术语“第一”、“第二”和“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或模块的过程、方法、系统、产品或设备没有限定于已列出的步骤或模块,而是某些实施例还包括没有列出的步骤或模块,或某些实施例还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例提供一种文件格式转换方法,该文件格式转换方法的执行主体可以是本申请实施例提供的文件格式转换装置,或者集成了该文件格式转换装置的网络设备,其中该文件格式转换装置可以采用硬件或者软件的方式实现。其中,网络设备可以是智能手机、平板电脑、掌上电脑、笔记本电脑、或者台式电脑等设备。网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或者多个服务器构成的云。
请参阅图1,图1为本申请实施例提供的文件格式转换方法的应用场景示意图,以文件格式转换装置集成在网络设备中为例,网络设备可以获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式,对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据,当文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧,基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧,根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。
请参阅图2,图2为本申请实施例提供的文件格式转换方法的流程示意图,具体通过如下实施例进行说明:
201、获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式。
其中,多媒体文件可以为本实施例中需要进行格式转换的文件,该多媒体文件的类型可以有多种,比如,多媒体文件可以为多媒体文件格式为视频格式的视频文件,如视频文件;又比如,多媒体文件还可以为多媒体文件格式为动画格式的动画渲染库中的素材文件,等等。
其中,视频文件可以为包含了实时的音频信息或者视频信息等的多媒体文件,视频文件中的多媒体信息通常来源于视频输入设备。
其中,动画渲染库可以为包括若干动画素材的集合,该动画渲染库可以有多种类型,比如,动画渲染库可以为Lottie动画渲染库,该Lottie动画渲染库中包括若干视频帧、以及音频帧,它可以存储帧以作为图层信息。其中,Lottie动画渲染库能够支持H5,同时支持IOS、Android、React Native、以及H5等的开发。Lottie动画渲染库与AE插件相结合,可以将AE上完成的动画导出为JSON格式的文件,然后在播放设备上进行渲染播放。
又比如,动画渲染库还可以为PAG动画渲染库(Portable Animated Graphics),其中,PAG动画是一种采用二进制文件格式的动画,由于其采用可扩展的原生二进制文件格式,因此,能够将图片、音频、视频等资源直接集成于单文件内。PAG动画采用了可变长编码整形、以及动态按位聚合等压缩技术,使得经过压缩后导出的文件尺寸更小。同时,由于PAG动画中不存在JSON的字符串解析,因此解码耗时更短。PAG动画可以支持视频序列帧的导出,并且能够支持AE的特性。PAG动画通过C++和OpenGL硬件进行渲染,使得两端渲染一致,并且从中间渲染数据到局部位图采用了多级缓存架构,使得每帧动画的渲染耗时降低。PAG动画不仅支持运行时的文本编辑、以及占位图替换功能,而且支持图层级别的任意组合修改,因此能够应用于更广泛的场景中。
其中,目标多媒体文件格式可以为多媒体文件需要转换成为的多媒体文件格式,比如,该目标多媒体文件格式可以为视频格式,此时需要将多媒体文件转换为视频格式的视频文件;又比如,该目标多媒体文件格式还可以为动画格式,此时需要将多媒体文件转换为动画格式的动画渲染库中的素材文件,等等。
在实际应用中,可以获取需要进行格式转换的多媒体文件、以及多媒体文件需要转换成为的目标多媒体文件格式。比如,通过该文件格式转换方法可以实现将视频格式的视频文件转换为动画格式的动画渲染库的素材文件,此时,多媒体文件为视频文件,目标多媒体文件格式为动画格式。又比如,通过该文件格式转换方法还可以实现将动画格式的动画渲染库的素材文件转换为视频格式的视频文件,此时,多媒体文件为动画渲染库的素材文件,目标多媒体文件格式为视频格式。
在一实施例中,由于动画渲染库中的素材文件的动画格式包括多种,如Lottie动画格式、PAG动画格式等等。因此,通过该文件格式转换方法还可以实现不同动画格式的动画渲染库的素材文件之间的转换,比如,通过该文件格式转换方法还可以实现将Lottie动画格式的动画渲染库的素材文件转换为PAG动画格式的动画渲染库的素材文件,此时,多媒体文件为Lottie动画渲染库的素材文件,目标多媒体文件格式为PAG动画格式。又比如,通过该文件格式转换方法还可以实现将PAG动画格式的动画渲染库的素材文件转换为Lottie动画格式的动画渲染库的素材文件,此时,多媒体文件为PAG动画渲染库的素材文件,目标多媒体文件格式为Lottie动画格式,等等。
在一实施例中,通过该文件格式转换方法也可以实现不同视频格式的视频文件之间的转换。
202、对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据。
其中,文件内容数据可以为能够描述多媒体文件的图层或者轨道等的数据。比如,当多媒体文件为视频文件时,视频文件对应的文件内容数据可以为视频轨或者音频轨的编码数据AVCodecContext。又比如,当多媒体文件为Lottie动画渲染库的素材文件时,Lottie动画渲染库的素材文件对应的文件内容数据可以为Animation对象信息中描述图层信息的数据。又比如,当多媒体文件为PAG动画渲染库的素材文件时,PAG动画渲染库的素材文件对应的文件内容数据可以为PAGFile对象信息中描述图层信息的数据。
其中,轨道可以为位于文件数据结构中,用于存储某种类型信息、以及描述该类型信息的虚拟容器。比如,根据文件数据种类,可以将轨道分为视频轨道、音频轨道等。
其中,图层可以为位于动画渲染库的文件数据结构中,用于存储图像渲染顺序、以及渲染内容的虚拟容器。
其中,AVCodecContext是一种描述编解码器上下文的数据结构,AVCodecContext包含了众多编解码器需要的参数信息。其中,AVFormatContext中,每个AVStream都存储一个视频流或者音频流的相关数据,每个AVStream对应一个AVCodecContext,存储该视频流或者音频流使用解码方式的相关数据,每个AVCodecContext中对应一个AVCodec,包含该视频或者音频对应的解码器。每种解码器都对应一个AVCodec结构。
其中,文件属性数据可以为能够描述多媒体文件构成的数据。比如,当多媒体文件为视频文件时,该视频文件对应的文件属性数据可以包括视频文件的AVFormatContext。又比如,当多媒体文件为Lottie动画渲染库的素材文件时,Lottie动画渲染库的素材文件对应的文件属性数据可以为Animation对象信息中描述文件整体结构的数据。又比如,当多媒体文件为PAG动画渲染库的素材文件时,PAG动画渲染库的素材文件对应的文件属性数据可以为PAGFile对象信息中描述文件整体结构的数据。
其中,AVFormatContext位于AVFormat中,它描述了多媒体文件或者多媒体流的构成以及基本信息,可以用于处理封装格式,包含了较多的码流参数。比如,AVFormatContext中包括视频文件的流的个数、视频文件的时长、视频文件的比特率、视频文件的流的数组、视频文件的文件名、视频文件的封装格式等文件构成信息,等等。
在实际应用中,比如,如图8所示,可以根据多媒体文件的文件格式,选择对多媒体文件进行解释的文件解释方法,并根据相应的文件解释方法对多媒体文件进行解释,从而得到多媒体文件对应的文件内容数据、以及文件属性数据。
在一实施例中,能够对多媒体文件进行解释,并且得到多媒体文件对应的文件内容数据、以及文件属性数据的模块可以称为解释器,其中,解释器可以将二进制文件进行初步解释,解释成为带有轨道信息或者图层信息的数据结构的函数或者代码段。也即,可以通过解释器对多媒体文件进行解释,得到多媒体文件对应的文件内容数据、以及文件属性数据。
在一实施例中,比如,当多媒体文件为视频文件时,可以通过视频处理库FFmpeg对视频文件进行解释,得到视频文件对应的文件内容数据AVCodecContext、以及文件属性数据AVFormatContext。
其中,FFmpeg(Fast Forward Mpeg,多媒体视频处理工具)是一种开源计算机程序,可以对数字音频或者视频进行记录或者转换,并且能将数字音频或者视频转化为流。比如,FFmpeg具有视频采集、视频格式转换、视频抓图、视频加水印等功能。
在一实施例中,当多媒体文件为动画渲染库的素材文件时,可以通过素材加载接口获取到动画渲染库的素材文件对应的文件内容数据、以及文件属性数据。比如,当多媒体文件为Lottie动画渲染库的素材文件时,可以通过各自平台的Lottie动画渲染库中Animation的构造函数,获得动画结构Animation对象,其中,该动画结构Animation对象描述了Lottie动画渲染库素材文件的整体结构以及图层信息。又比如,当多媒体文件为PAG动画渲染库的素材文件时,可以通过各自平台的libpag库中PAGFile的Load函数,获得动画结构PAGFile对象,其中该动画结构PAGFile对象描述了PAG动画渲染库素材文件的整体结构以及图层信息。
203、当文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧。
其中,多媒体数据帧可以为多媒体文件中最小单位的单个数据,将多个多媒体数据帧进行组合后,能够得到多媒体文件。因此无论是视频文件还是动画渲染库的素材文件,都可以视为由多个多媒体数据帧组成的。多媒体数据帧可以描述多媒体文件中每帧数据的所在时间点、颜色、尺寸、采样率、通道类型等信息。多媒体数据帧的种类可以有多种,比如,当多媒体文件为视频文件时,多媒体数据帧可以为视频帧,当多媒体文件为动画渲染库的素材文件时,多媒体数据帧可以为动画帧,当多媒体文件为音频文件时,多媒体数据帧可以为音频帧,等等。
其中,解码器可以为将视频格式的视频数据流或者音频数据流进行解压的函数或者代码段,解压后的数据为视频帧数据或者音频帧数据。比如,解码器可以为视频格式的视频解码函数或者Lottie等动画渲染库的渲染函数,等等。
在实际应用中,如图8所示,当文件内容数据不支持目标多媒体文件格式的直接转换时,此时说明多媒体文件需要转换成为的目标文件不能直接使用多媒体文件的文件内容数据。比如,当多媒体文件为视频文件时,由于通过文件内容数据AVCodecContext可以直接获取到视频流或者音频流的编码信息,因此如果目标多媒体文件格式对应的目标文件可以直接使用视频流或者音频流,则说明文件内容数据支持目标多媒体文件格式的直接转换,此时,可以将文件内容数据AVCodecContext转换为目标文件能够使用的格式即可完成目标文件的构建;如果目标多媒体文件格式对应的目标文件不可以直接使用视频流或者音频流,则说明文件内容数据不支持目标多媒体文件格式的直接转换,此时,需要将文件内容数据转换为多媒体数据帧或进行其他方式的数据转换,才能完成目标文件的构建,因此,可以对文件内容数据进行解码,得到多媒体数据帧。
又比如,当多媒体文件为动画渲染库的素材文件时,如果文件内容数据支持目标多媒体文件格式的直接转换,此时,可以直接将文件内容数据转换为目标文件能够使用的格式即可完成目标文件的构建;如果文件内容数据不支持目标多媒体文件格式的直接转换,此时,需要将文件内容数据转换为多媒体数据帧或进行其他方式的数据转换,才能完成目标文件的构建。
在一实施例中,可以通过将当前多媒体文件格式与目标多媒体文件格式进行匹配,判定文件内容数据是否支持目标多媒体文件格式的直接转换。具体地,步骤“当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧”,可以包括:
检测所述多媒体文件的当前多媒体文件格式;
将所述当前多媒体文件格式与所述目标多媒体文件格式进行匹配,得到匹配结果;
当所述匹配结果确定所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧。
在实际应用中,比如,可以检测多媒体文件的当前多媒体格式,并将当前多媒体文件格式与目标多媒体文件格式进行匹配,得到匹配结果,当匹配结果确定文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧。
在一实施例中,比如,当多媒体文件的当前多媒体格式为视频格式,且目标多媒体文件格式为Lottie动画格式或者PAG动画格式时,将当前多媒体文件格式与目标多媒体文件格式进行匹配,得到的匹配结果可以确定文件内容数据不支持目标多媒体文件格式的直接转换,此时,可以对文件内容数据进行解码,得到多媒体数据帧。又比如,当多媒体文件的当前多媒体格式为视频格式,且目标多媒体文件格式为视频格式时,将当前多媒体文件格式与目标多媒体文件格式进行匹配,得到的匹配结果可以确定文件内容数据支持目标多媒体文件格式的直接转换,此时,可以直接对文件内容数据进行转换,并构建目标文件。
又比如,当多媒体文件的当前多媒体格式为Lottie动画格式,且目标多媒体文件格式为视频格式时,将当前多媒体文件格式与目标多媒体文件格式进行匹配,得到的匹配结果可以确定文件内容数据不支持目标多媒体文件格式的直接转换,此时,可以对文件内容数据进行解码,得到多媒体数据帧。又比如,当多媒体文件的当前多媒体格式为Lottie动画格式,且目标多媒体文件格式为PAG动画格式时,将当前多媒体文件格式与目标多媒体文件格式进行匹配,得到的匹配结果可以确定文件内容数据支持目标多媒体文件格式的直接转换,此时,可以直接对文件内容数据进行转换,并构建目标文件。
又比如,当多媒体文件的当前多媒体格式为PAG动画格式,且目标多媒体文件格式为视频格式时,将当前多媒体文件格式与目标多媒体文件格式进行匹配,得到的匹配结果可以确定文件内容数据不支持目标多媒体文件格式的直接转换,此时,可以对文件内容数据进行解码,得到多媒体数据帧。又比如,当多媒体文件的当前多媒体格式为PAG动画格式,且目标多媒体文件格式为Lottie动画格式时,将当前多媒体文件格式与目标多媒体文件格式进行匹配,得到的匹配结果可以确定文件内容数据支持目标多媒体文件格式的直接转换,此时,可以直接对文件内容数据进行转换,并构建目标文件。但是,由于Lottie动画渲染库的素材文件无法支持所有PAG特性,因此在转换过程中可能遇到不支持的特性,此时可以选择忽略无法识别的特性继续进行转换,也可以向用户发出转换失败的提示。
在一实施例中,由于未必所有的目标多媒体文件格式都支持多媒体数据帧,因此,可以在解码获取多媒体数据帧之前,对目标多媒体文件格式是否支持文件内容数据经过解码后得到多媒体数据帧的情况进行判断。具体地,步骤“当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧”,可以包括:
当所述文件内容数据不支持所述目标多媒体文件格式的直接转换,且所述目标多媒体文件格式为预设支持数据帧文件格式时,确定所述目标多媒体文件格式支持所述文件内容数据解码后得到的多媒体数据帧;
对所述文件内容数据进行解码,得到多媒体数据帧。
其中,预设支持数据帧文件格式为能够支持多媒体数据帧的多媒体文件格式,比如,预设支持数据帧文件格式可以包括视频格式、以及PAG动画格式等,也即,视频格式和PAG动画格式能够支持多媒体数据帧,Lottie动画格式不能够支持多媒体数据帧。
在实际应用中,如图8所示,当文件内容数据不支持目标多媒体文件格式的直接转换,且目标多媒体文件格式为预设支持数据帧文件格式时,说明目标多媒体文件格式支持文件内容数据经过解码后得到的多媒体数据帧,此时可以对文件内容数据进行解码,得到多媒体数据帧。比如,当目标多媒体文件格式为视频格式或者PAG动画格式时,可以对文件内容数据进行解码,得到多媒体数据帧;当目标多媒体文件格式为Lottie动画格式时,无需进行多媒体数据帧获取的步骤。
在一实施例中,对于不同多媒体文件格式的多媒体文件而言,获取多媒体数据帧的方法可能不同,因此可以根据多媒体文件的文件格式确定对文件内容数据进行解码的方法。具体地,步骤“对所述文件内容数据进行解码,得到多媒体数据帧”,可以包括:
根据所述文件内容数据绘制所述多媒体文件的多帧图像;
基于所述多媒体文件的多帧图像,获取多媒体数据帧。
在实际应用中,当多媒体文件的文件格式为动画格式,并且文件内容数据不支持目标多媒体文件格式的直接转换时,可以通过动画渲染库的渲染函数将文件内容数据转换成多媒体数据帧,其中,可以根据文件内容数据,对多媒体文件一帧一帧的进行处理,将多媒体文件中经过渲染后的图像数据进行转换,转换成为AVFrame格式的信息,从而得到多媒体文件对应的多媒体数据帧。
比如,多媒体文件的文件格式为Lottie动画格式,并且文件内容数据不支持目标多媒体文件格式的直接转换时,由于无法将经过渲染后得到的图像直接显示在一个纹理中,因此可以在每帧图像绘制完成后,通过平台的相关接口,获取LottieView中每帧数据对应的图像信息,此即多媒体文件对应的多媒体数据帧。
又比如,多媒体文件的文件格式为PAG动画格式,并且文件内容数据不支持目标多媒体文件格式的直接转换时,由于通过多媒体文件的纹理就可以得到多媒体文件对应的多媒体数据帧,因此可以直接将多媒体文件的纹理作为多媒体数据帧。
在一实施例中,当多媒体文件为视频文件时,可以通过视频解码函数获取多媒体数据帧。具体地,步骤“对所述文件内容数据进行解码,得到多媒体数据帧”,可以包括:
基于视频解码函数对所述文件内容数据进行解码,得到多媒体数据帧。
在实际应用中,比如,当多媒体文件的文件格式为视频格式,并且文件内容数据不支持目标多媒体文件格式的直接转换时,可以通过视频处理库FFmpeg中的AVPacket、avcodec_send_packet、以及avcodec_receive_frame等视频解码函数得到数据结构AVFrame。其中,AVFrame中可以存储解码后得到的数据,该AVFrame中记录了视频文件中多媒体数据帧对应的帧相关信息,包括但不限于多媒体数据帧的时间、颜色空间、长宽、采样率、通道类型、具体数据等等信息。
204、基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧。
在实际应用中,由于多媒体数据帧的格式未必能够直接用于构建目标文件,因此,可以对多媒体数据帧进行格式转换。比如,如图8所示,可以根据已经确定的目标多媒体文件格式,对多媒体数据帧进行格式转换,得到能够直接用于目标文件构建的格式转换后数据帧。
在实际应用中,已经获取到了包括多媒体数据帧的AVFrame,此时,可以根据目标多媒体文件格式判断获取到的AVFrame是否能够直接应用于目标文件的构建。比如,此时获取到的AVFrame的格式为YUV422,而构建目标文件需要AVFrame的格式为RGBA,此时可以通过转换函数将格式为YUV422的AVFrame进行转换,转换成格式为RGBA的AVFrame。其中,如果多媒体数据帧的格式为目标多媒体文件格式对应目标文件能够支持的格式时,也可以不进行多媒体数据帧的格式转换步骤。
在一实施例中,比如,将多媒体数据帧进行格式转换,转换为格式转换后数据帧的模块可以称为编码器。其中,编码器可以为将多媒体数据帧进行重新压缩,使其成为二进制流数据的函数或者代码段。
205、根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。
在实际应用中,由于格式转换后数据帧中包括多媒体文件的轨道信息或者图层信息,文件属性数据中包括多媒体文件的文件构成信息,因此,在构建目标文件时需要应用到格式转换后数据帧、以及文件属性数据。
在一实施例中,可以通过将格式转换后数据帧进行编码,得到多媒体数据流,以构建目标文件。具体地,步骤“根据所述格式转换后数据帧、以及所述文件属性数据,构建得到所述目标文件”,可以包括:
对所述格式转换后数据帧进行编码,得到多媒体数据流;
根据所述多媒体数据流、以及所述文件属性数据,构建得到所述目标文件。
在实际应用中,获取到格式转换后数据帧之后,可以对格式转换后数据帧编码得到多媒体数据流。然后根据多媒体数据流、以及文件属性数据生成目标文件的文件结构,并通过文件编码器将目标文件的二进制数据导出。其中,文件编码器可以为将文件对应的文件属性数据和文件内容数据压缩成二进制数据流的函数或者代码段。
比如,当目标多媒体文件格式为视频格式时,获取到格式转换后数据帧AVFrame之后,可以通过视频处理库FFmpeg的函数avcodec_send_frame和avcodec_receive_packet,将获取到的视频帧或者音频帧转换成对应轨道中的数据流信息,也即编码为多媒体数据流。然后根据多媒体数据流、以及文件属性数据,构建得到目标文件。
又比如,当目标多媒体文件格式为Lottie动画格式时,可以通过构建encode函数的方法,将文件属性数据、Animation中的layers数据等转换为JSON格式的数据,并进行存储,从而完成目标文件的构建。又比如,当目标多媒体文件格式为PAG动画格式时,可以通过调用encode函数的方法,将PAGFile转换为对应的字节流并进行存储,从而完成目标文件的构建。
在一实施例中,可以通过多媒体数据流的头部信息、以及文件属性数据的尾部信息,构建目标文件。具体地,步骤“根据所述多媒体数据流、以及所述文件属性数据,构建得到所述目标文件”,可以包括:
获取所述多媒体数据流的头部信息、以及所述文件属性数据的尾部信息;
根据所述多媒体数据流的头部信息、以及所述文件属性数据的尾部信息,构建得到所述目标文件。
在实际应用中,比如,当目标多媒体文件格式为视频格式时,可以调用视频处理库FFmpeg将获取到多媒体数据流的头部信息、以及文件属性数据的尾部信息写入,从而完成转换后文件的构建。
在一实施例中,由于并非所有情况下,文件内容数据都不支持目标多媒体文件格式的直接转换,因此,若文件内容数据支持目标多媒体文件格式的直接转换时,可以直接对文件内容数据进行格式转换。具体地,该文件格式转换方法还可以包括:
当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,基于所述目标多媒体文件格式,直接对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据;
根据所述格式转换后的文件内容数据、以及所述文件属性数据,构建得到所述目标文件。
在实际应用中,当目标多媒体文件格式包括在多媒体文件对应的预设文件格式内时,文件内容数据支持目标多媒体文件格式的直接转换,此时,可以直接对文件内容数据进行格式转换,得到格式转换后的文件内容数据,然后根据格式转换后的文件内容数据、以及文件属性数据,构建得到目标文件。
比如,当多媒体文件为Lottie动画渲染库的素材文件,目标多媒体文件格式为PAG动画格式时,由于二者图层结构十分相似,同时PAG动画渲染库已经实现了Lottie动画渲染库中的所有功能,因此,此时文件内容数据支持目标多媒体文件格式的直接转换,可以直接通过转换函数,将Lottie动画渲染库的Animation中Layers的图层信息转换成PAG动画格式支持的PAGFile中Layers的图层信息,即转换成格式转换后的文件内容数据,然后通过该格式转换后的文件内容数据、以及Animation中的文件属性数据,构建目标文件。
在一实施例中,由于Lottie无法支持所有PAG特性,因此在转换过程中会遇到不支持的特性,此时可以通过忽略掉不支持的特性,完成目标文件的构建。比如,当多媒体文件为PAG动画渲染库的素材文件,目标多媒体文件格式为Lottie动画格式时,由于Lottie无法支持所有PAG特性,因此在转换过程中会遇到不支持的特性,此时可以选择将不支持转换的文件内容子数据丢弃,并对文件内容数据中其余子数据进行格式转换,得到格式转换后的文件内容数据。
在一实施例中,在PAG动画格式的多媒体文件转换为Lottie动画格式的多媒体文件的过程中,如果不支持的特性是十分重要不能忽略的特性时,此时不能将不支持转换的文件内容子数据丢弃,而可以通知用户文件转换失败。
在一实施例中,又比如,在PAG动画格式的多媒体文件转换为Lottie动画格式的多媒体文件的过程中,如果在转换过程中遇到不支持的特性时,还可以通过将文件内容数据编码转换为多媒体数据流,再根据获取到的多媒体数据流构建目标文件的方式,实现PAG动画格式与Lottie动画格式之间多媒体文件的转换。
在一实施例中,又比如,在PAG动画格式的多媒体文件转换为Lottie动画格式的多媒体文件的过程中,如果在转换过程中遇到不支持的特性时,还可以通过将不支持转换的文件内容子数据用额外字段进行存储,以便完成不同文件格式多媒体文件之间的转换。如由于Lottie动画格式的多媒体文件能够使用JSON,那么可以在JSON中添加目前渲染过程中不支持的键值对,因此,后续对渲染程序更新后,可以对之前添加的不支持的特性进行渲染,从而完成PAG动画格式与Lottie动画格式之间多媒体文件的转换。
在一实施例中,可以通过转换函数对文件内容数据进行格式转换。具体地,步骤“当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,基于所述目标多媒体文件格式,直接对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据”,可以包括:
当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,根据所述多媒体文件的当前多媒体文件格式、以及所述目标多媒体文件格式,确定格式转换需要的转换函数;
通过所述转换函数对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据。
在实际应用中,比如,当多媒体文件为Lottie动画渲染库的素材文件,目标多媒体文件格式为PAG动画格式时,可以直接通过转换函数,将Lottie动画渲染库的Animation中Layers的图层信息转换成PAG动画格式支持的PAGFile中Layers的图层信息,即转换成格式转换后的文件内容数据。然后通过该格式转换后的文件内容数据、以及Animation中的文件属性数据,构建目标文件。因此在使用中编写对应的layer转换函数即可。
在一实施例中,比如,当多媒体文件为视频文件时,已经通过视频处理库FFmpeg获取到多媒体文件对应的文件属性数据AVFormatContext、以及文件内容数据AVCodecContext。由于通过文件内容数据AVCodecContext已经可以直接获得音频流或者视频流的编码信息,因此,当检测到目标多媒体文件格式对应的目标文件能够直接使用该音频流或者视频流,即文件内容数据支持目标多媒体文件格式的直接转换时,可以直接将文件内容数据AVCodecContext进行转换,转换为目标多媒体文件格式对应的目标文件能够使用的格式转换后的文件内容数据,并通过格式转换后的文件内容数据、以及文件属性数据,构建目标文件。
由上可知,本申请实施例可以获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式,对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据,当文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧,基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧,根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。该方案通过对格式转换前多媒体文件的文件格式、以及格式转换后目标多媒体文件格式的组合方式进行分析,当需要进行文件格式转换的组合方式不同时,可以确定合适的文件格式转换方法进行多媒体文件的格式转换,而不拘泥于利用同一种文件格式转换方法,从而能够实现不同多媒体文件格式的多媒体文件之间的转换,如可以实现视频文件与动画渲染素材文件之间的转换,还可以实现不同动画渲染素材文件之间的转换,提升了文件格式转换的灵活性。
根据前面实施例所描述的方法,以下将以该文件格式转换装置具体集成在网络设备举例作进一步详细说明。
参考图3,本申请实施例为多媒体文件为视频文件,目标多媒体文件格式为PAG动画格式时,该文件格式转换方法的具体流程可以如下:
301、网络设备通过视频处理库对视频文件进行读取,得到视频文件对应的轨道数据、以及文件属性数据。
在实际应用中,比如,当多媒体文件为视频文件时,可以通过视频处理库FFmpeg对视频文件进行读取,得到视频文件对应的轨道数据AVCodecContext、以及文件属性数据AVFormatContex,其中,轨道数据AVCodecContext包括视频轨道、音频轨道的编码信息,文件属性数据AVFormatContex包括视频文件的文件构成信息以及文件基本信息。
302、网络设备判断轨道数据是否支持PAG动画格式的直接转换。
在实际应用中,比如,网络设备可以判断轨道数据是否支持PAG动画格式的直接转换,但是,由于根据轨道数据AVCodecContext可以直接获得视频流或者音频流的编码信息,而PAG动画格式的多媒体文件不能直接使用该视频流或者音频流,因此,轨道数据不支持PAG动画格式的直接转换。
303、当轨道数据不支持PAG动画格式的直接转换时,网络设备判断PAG动画格式的多媒体文件是否支持视频帧数据。
在实际应用中,比如,当轨道数据不支持PAG动画格式的直接转换时,网络设备可以判断PAG动画格式的多媒体文件是否支持视频帧数据,由于PAG动画格式的多媒体文件能够支持视频数据帧,因此,可以进行视频数据帧的获取步骤。
304、当PAG动画格式的多媒体文件支持视频帧数据时,网络设备对轨道数据进行解码,得到视频数据帧。
在实际应用中,比如,网络设备可以通过视频处理库FFmpeg中的AVPacket、avcodec_send_packet、以及avcodec_receive_frame等视频解码函数对轨道数据进行解码,得到包括视频数据帧的数据结构AVFrame。其中,数据结构AVFrame中可以存储轨道数据经过解码后得到的数据,该数据结构AVFrame中记录了视频文件中每帧数据对应的时间、颜色空间、长宽、采样率、通道类型、具体数据等等信息。
305、网络设备对视频数据帧进行格式转换,得到PAG动画格式对应的格式转换后视频数据帧。
在实际应用中,比如,当获取到包括视频数据帧的数据结构AVFrame的格式为YUV422,而PAG动画格式对应的动画文件需要格式为RGBA的数据结构AVFrame时,可以通过转换函数将格式为YUV422的AVFrame,转换为格式为RGBA的AVFrame,也即转换为格式转换后视频数据帧。
306、网络设备根据格式转换后视频数据帧、以及文件属性数据,构建得到PAG动画渲染库的素材文件。
在实际应用中,比如,获取到格式转换后视频数据帧AVFrame之后,可以根据AVFrame获取到PAGFile,然后,可以通过直接调用Encode函数的方法,将PAGFile转换成对应的字节流进行存储,从而完成PAG动画渲染库的素材文件的构建。
由上可知,本申请实施例可以通过视频处理库对视频文件进行读取,得到视频文件对应的轨道数据、以及文件属性数据,判断轨道数据是否支持PAG动画格式的直接转换,当轨道数据不支持PAG动画格式的直接转换时,判断PAG动画格式的多媒体文件是否支持视频帧数据,当PAG动画格式的多媒体文件支持视频帧数据时,对轨道数据进行解码,得到视频数据帧,对视频数据帧进行格式转换,得到PAG动画格式对应的格式转换后视频数据帧,根据格式转换后视频数据帧、以及文件属性数据,构建得到PAG动画渲染库的素材文件。该方案通过对格式转换前多媒体文件的文件格式、以及格式转换后目标多媒体文件格式的组合方式进行分析,当需要进行文件格式转换的组合方式不同时,可以确定合适的文件格式转换方法进行多媒体文件的格式转换,而不拘泥于利用同一种文件格式转换方法,从而能够实现不同多媒体文件格式的多媒体文件之间的转换,如可以实现视频文件与动画渲染素材文件之间的转换,还可以实现不同动画渲染素材文件之间的转换,提升了文件格式转换的灵活性。
根据前面实施例所描述的方法,以下将以该文件格式转换装置具体集成在网络设备举例作进一步详细说明。
参考图4,本申请实施例为多媒体文件为Lottie动画渲染库的素材文件,目标多媒体文件格式为视频格式时,该文件格式转换方法的具体流程可以如下:
401、网络设备通过素材加载接口,获取Lottie动画渲染库的素材文件对应的图层数据、以及文件属性数据。
在实际应用中,比如,当多媒体文件为Lottie动画渲染库的素材文件时,可以通过各自平台的Lottie动画渲染库中Animation的构造函数,获得动画结构Animation对象,其中,该动画结构Animation对象中包括图层数据、以及文件属性数据,描述了Lottie动画渲染库素材文件的文件构成信息以及图层信息。
402、网络设备对图像数据进行解码,得到动画数据帧。
在实际应用中,由于视频无法识别图层数据,并且视频支持多媒体数据帧,因此,可以进行多媒体数据帧的获取。此时,可以根据获取到的图层数据,按照一帧一帧的形式,将经过渲染后得到的图像数据进行组装,组装成为AVFrame的格式,从而得到Lottie动画渲染库的素材文件对应的动画数据帧。
在一实施例中,当多媒体文件为Lottie动画渲染库的素材文件,并且图层数据不支持视频格式的直接转换时,由于无法将经过渲染后得到的图像直接显示在一个纹理中,因此可以在每帧图像绘制完成后,通过平台的相关接口,获取LottieView中数据对应的图像信息,此即Lottie动画渲染库的素材文件对应的动画数据帧。
403、网络设备对动画数据帧进行格式转换,得到视频格式对应的格式转换后动画数据帧。
在实际应用中,比如,当获取到包括动画数据帧的数据结构AVFrame的格式为YUV422,而视频格式对应的视频文件需要格式为RGBA的数据结构AVFrame时,可以通过转换函数将格式为YUV422的AVFrame,转换为格式为RGBA的AVFrame,也即转换为格式转换后动画数据帧。
404、网络设备根据格式转换后动画数据帧、以及文件属性数据,构建得到视频文件。
在实际应用中,比如,获取到格式转换后动画数据帧之后,可以通过视频处理库FFmpeg的函数avcodec_send_frame和avcodec_receive_packet,将获取到的格式转换后动画数据帧转换成对应轨道中的数据流信息,也即转换为多媒体数据流。然后可以调用视频处理库FFmpeg将多媒体数据流的头部信息、以及文件属性数据的尾部信息写入,从而完成视频文件的构建。
由上可知,本申请实施例可以通过素材加载接口,获取Lottie动画渲染库的素材文件对应的图层数据、以及文件属性数据,对图像数据进行解码,得到动画数据帧,对动画数据帧进行格式转换,得到视频格式对应的格式转换后动画数据帧,根据格式转换后动画数据帧、以及文件属性数据,构建得到视频文件。该方案通过对格式转换前多媒体文件的文件格式、以及格式转换后目标多媒体文件格式的组合方式进行分析,当需要进行文件格式转换的组合方式不同时,可以确定合适的文件格式转换方法进行多媒体文件的格式转换,而不拘泥于利用同一种文件格式转换方法,从而能够实现不同多媒体文件格式的多媒体文件之间的转换,如可以实现视频文件与动画渲染素材文件之间的转换,还可以实现不同动画渲染素材文件之间的转换,提升了文件格式转换的灵活性。
根据前面实施例所描述的方法,以下将以该文件格式转换装置具体集成在网络设备举例作进一步详细说明。
参考图5,本申请实施例为多媒体文件为PAG动画渲染库的素材文件,目标多媒体文件格式为视频格式时,该文件格式转换方法的具体流程可以如下:
501、网络设备通过素材加载接口,获取PAG动画渲染库的素材文件对应的图层数据、以及文件属性数据。
在实际应用中,比如,当多媒体文件为PAG动画渲染库的素材文件时,可以通过各自平台的libpag库中PAGFile的Load函数,获得动画结构PAGFile对象,其中该动画结构PAGFile对象中包括图层数据、以及文件属性数据,描述了PAG动画渲染库素材文件的文件构成信息以及图层信息。
502、网络设备对图像数据进行解码,得到动画数据帧。
在实际应用中,由于视频无法识别图层信息,并且视频支持多媒体数据帧,因此,可以进行多媒体数据帧的获取。此时,可以根据获取到的图层数据,按照一帧一帧的形式,将经过渲染后得到的图像数据进行组装,组装成为AVFrame的格式,从而得到PAG动画渲染库的素材文件对应的动画数据帧。
在一实施例中,当多媒体文件为PAG动画渲染库的素材文件,并且图层数据不支持视频格式的直接转换时,可以直接将PAG动画渲染库的素材文件的纹理设置为输出信息,通过纹理就可以得到PAG动画渲染库的素材文件对应的动画数据帧。
503、网络设备对动画数据帧进行格式转换,得到视频格式对应的格式转换后动画数据帧。
在实际应用中,比如,当获取到包括动画数据帧的数据结构AVFrame的格式为YUV422,而视频格式对应的视频文件需要格式为RGBA的数据结构AVFrame时,可以通过转换函数将格式为YUV422的AVFrame,转换为格式为RGBA的AVFrame,也即转换为格式转换后动画数据帧。
504、网络设备根据格式转换后动画数据帧、以及文件属性数据,构建得到视频文件。
在实际应用中,比如,获取到格式转换后动画数据帧之后,可以通过视频处理库FFmpeg的函数avcodec_send_frame和avcodec_receive_packet,将获取到的格式转换后动画数据帧转换成对应轨道中的数据流信息,也即转换为多媒体数据流。然后可以调用视频处理库FFmpeg将多媒体数据流的头部信息、以及文件属性数据的尾部信息写入,从而完成视频文件的构建。
由上可知,本申请实施例可以通过素材加载接口,获取PAG动画渲染库的素材文件对应的图层数据、以及文件属性数据,对图像数据进行解码,得到动画数据帧,对动画数据帧进行格式转换,得到视频格式对应的格式转换后动画数据帧,根据格式转换后动画数据帧、以及文件属性数据,构建得到视频文件。该方案通过对格式转换前多媒体文件的文件格式、以及格式转换后目标多媒体文件格式的组合方式进行分析,当需要进行文件格式转换的组合方式不同时,可以确定合适的文件格式转换方法进行多媒体文件的格式转换,而不拘泥于利用同一种文件格式转换方法,从而能够实现不同多媒体文件格式的多媒体文件之间的转换,如可以实现视频文件与动画渲染素材文件之间的转换,还可以实现不同动画渲染素材文件之间的转换,提升了文件格式转换的灵活性。
根据前面实施例所描述的方法,以下将以该文件格式转换装置具体集成在网络设备举例作进一步详细说明。
参考图6,本申请实施例为多媒体文件为Lottie动画渲染库的素材文件,目标多媒体文件格式为PAG动画格式时,该文件格式转换方法的具体流程可以如下:
601、网络设备通过素材加载接口,获取Lottie动画渲染库的素材文件对应的图层数据、以及文件属性数据。
在实际应用中,比如,当多媒体文件为Lottie动画渲染库的素材文件时,可以通过各自平台的Lottie动画渲染库中Animation的构造函数,获得动画结构Animation对象,其中,该动画结构Animation对象中包括图层数据、以及文件属性数据,描述了Lottie动画渲染库素材文件的文件构成信息以及图层信息。
602、网络设备对图层数据进行格式转换,得到格式转换后的图层数据。
在实际应用中,比如,已经通过各自平台的Lottie动画渲染库中Animation的构造函数,获取到了包括Lottie动画渲染库的素材文件对应的文件属性数据、以及图层数据的动画结构Animation。此时,当目标多媒体文件格式为PAG动画格式时,由于二者图层结构十分相似,同时PAG动画渲染库已经实现了Lottie动画渲染库中的所有功能,因此,可以直接通过转换函数,将Lottie动画渲染库的Animation中Layers的图层数据转换成PAG动画格式支持的PAGFile中的Layers,即转换成格式转换后的图层数据。
603、网络设备根据格式转换后的图层数据、以及文件属性数据,构建得到PAG动画渲染库的素材文件。
在实际应用中,比如,获取到PAGFile后,可以通过直接调用Encode函数的方法,将PAGFile转换成对应的字节流进行存储,从而完成转换后PAG动画渲染库的素材文件的构建。
由上可知,本申请实施例可以通过素材加载接口,获取Lottie动画渲染库的素材文件对应的图层数据、以及文件属性数据,对图层数据进行格式转换,得到格式转换后的图层数据,根据格式转换后的图层数据、以及文件属性数据,构建得到PAG动画渲染库的素材文件。该方案通过对格式转换前多媒体文件的文件格式、以及格式转换后目标多媒体文件格式的组合方式进行分析,当需要进行文件格式转换的组合方式不同时,可以确定合适的文件格式转换方法进行多媒体文件的格式转换,而不拘泥于利用同一种文件格式转换方法,从而能够实现不同多媒体文件格式的多媒体文件之间的转换,如可以实现视频文件与动画渲染素材文件之间的转换,还可以实现不同动画渲染素材文件之间的转换,提升了文件格式转换的灵活性。
根据前面实施例所描述的方法,以下将以该文件格式转换装置具体集成在网络设备举例作进一步详细说明。
参考图7,本申请实施例为多媒体文件为PAG动画渲染库的素材文件,目标多媒体文件格式为Lottie动画格式时,该文件格式转换方法的具体流程可以如下:
701、网络设备通过素材加载接口,获取PAG动画渲染库的素材文件对应的图层数据、以及文件属性数据。
在实际应用中,比如,当多媒体文件为PAG动画渲染库的素材文件时,可以通过各自平台的libpag库中PAGFile的Load函数,获得动画结构PAGFile对象,其中该动画结构PAGFile对象中包括图层数据、以及文件属性数据,描述了PAG动画渲染库素材文件的文件构成信息以及图层信息。
702、网络设备对图层数据进行格式转换,得到格式转换后的图层数据。
在实际应用中,比如,当多媒体文件为PAG动画渲染库的素材文件时,已经通过各自平台的libpag库中PAGFile的Load函数,获取到了包括文件属性数据、以及图层数据的动画结构PAGFile。此时,当目标多媒体文件格式为Lottie动画格式时,由于Lottie动画渲染库无法支持所有PAG动画渲染库的特性,因此,在进行文件转换的过程中可能遇到不支持的特性,此时可以选择将无法识别的特性进行丢弃,然后对图层数据进行格式转换,转换为Lottie动画格式支持的格式转换后的图层数据,还可以向用户提示文件转换失败。
703、网络设备根据格式转换后的图层数据、以及文件属性数据,构建得到Lottie动画渲染库的素材文件。
在一实施例中,比如,当目标多媒体文件格式为Lottie动画格式时,可以通过构建encode函数的方法,将文件属性数据、Animation中的layers图层数据等转换为JSON格式,并进行存储,从而完成转换后Lottie动画渲染库素材文件的构建。
由上可知,本申请实施例可以通过素材加载接口,获取PAG动画渲染库的素材文件对应的图层数据、以及文件属性数据,对图层数据进行格式转换,得到格式转换后的图层数据,根据格式转换后的图层数据、以及文件属性数据,构建得到Lottie动画渲染库的素材文件。该方案通过对格式转换前多媒体文件的文件格式、以及格式转换后目标多媒体文件格式的组合方式进行分析,当需要进行文件格式转换的组合方式不同时,可以确定合适的文件格式转换方法进行多媒体文件的格式转换,而不拘泥于利用同一种文件格式转换方法,从而能够实现不同多媒体文件格式的多媒体文件之间的转换,如可以实现视频文件与动画渲染素材文件之间的转换,还可以实现不同动画渲染素材文件之间的转换,提升了文件格式转换的灵活性。
为了更好地实施以上方法,本申请实施例还可以提供一种文件格式转换装置,该文件格式转换装置具体可以集成在网络设备中,该网络设备可以包括服务器、终端等,其中,终端可以包括:手机、平板电脑、笔记本电脑或个人计算机(PC,Personal Computer)等。
例如,如图9所示,该文件格式转换装置可以包括获取模块91、解释模块92、解码模块93、转换模块94和构建模块95,如下:
获取模块91,用于获取需要格式转换的多媒体文件、以及所述多媒体文件需要转换到的目标多媒体文件格式;
解释模块92,用于对所述多媒体文件进行解释,得到所述多媒体文件的文件内容数据、以及文件属性数据;
解码模块93,用于当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧;
转换模块94,用于基于所述目标多媒体文件格式,对所述多媒体数据帧进行格式转换,得到格式转换后数据帧;
构建模块95,用于根据所述格式转换后数据帧、以及所述文件属性数据,构建得到所述目标文件。
在一实施例中,所述解码模块93可以具体用于:
检测所述多媒体文件的当前多媒体文件格式;
将所述当前多媒体文件格式与所述目标多媒体文件格式进行匹配,得到匹配结果;
当所述匹配结果确定所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧。
在一实施例中,所述解码模块93可以包括确定子模块931和解码子模块932,如下:
确定子模块931,用于当所述文件内容数据不支持所述目标多媒体文件格式的直接转换,且所述目标多媒体文件格式为预设支持数据帧文件格式时,确定所述目标多媒体文件格式支持所述文件内容数据解码后得到的多媒体数据帧;
解码子模块932,用于对所述文件内容数据进行解码,得到多媒体数据帧。
在一实施例中,所述解码子模块932可以具体用于:
根据所述文件内容数据绘制所述多媒体文件的多帧图像;
基于所述多媒体文件的多帧图像,获取多媒体数据帧。
在一实施例中,所述构建模块95可以包括编码子模块951和第一构建子模块952,如下:
编码子模块951,用于对所述格式转换后数据帧进行编码,得到多媒体数据流;
第一构建子模块952,用于根据所述多媒体数据流、以及所述文件属性数据,构建得到所述目标文件。
在一实施例中,所述第一构建子模块952可以具体用于:
获取所述多媒体数据流的头部信息、以及所述文件属性数据的尾部信息;
根据所述多媒体数据流的头部信息、以及所述文件属性数据的尾部信息,构建得到所述目标文件。
在一实施例中,所述直接转换模块96可以包括直接转换子模块961和第二构建子模块962,如下:
直接转换子模块961,用于当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,基于所述目标多媒体文件格式,直接对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据;
第二构建子模块962,用于根据所述格式转换后的文件内容数据、以及所述文件属性数据,构建得到所述目标文件。
在一实施例中,所述直接转换子模块961可以具体用于:
当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,根据所述多媒体文件的当前多媒体文件格式、以及所述目标多媒体文件格式,确定格式转换需要的转换函数;
通过所述转换函数对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上可知,本申请实施例可以通过获取模块91获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式,通过解释模块92对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据,当文件内容数据不支持目标多媒体文件格式的直接转换时,通过解码模块93对文件内容数据进行解码,得到多媒体数据帧,通过转换模块94基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧,通过构建模块95根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。该方案通过对格式转换前多媒体文件的文件格式、以及格式转换后目标多媒体文件格式的组合方式进行分析,当需要进行文件格式转换的组合方式不同时,可以确定合适的文件格式转换方法进行多媒体文件的格式转换,而不拘泥于利用同一种文件格式转换方法,从而能够实现不同多媒体文件格式的多媒体文件之间的转换,如可以实现视频文件与动画渲染素材文件之间的转换,还可以实现不同动画渲染素材文件之间的转换,提升了文件格式转换的灵活性。
本申请实施例还提供一种网络设备,该网络设备可以集成本申请实施例所提供的任一种文件格式转换装置。
例如,如图10所示,其示出了本申请实施例所涉及的网络设备的结构示意图,具体来讲:
该网络设备可以包括一个或者一个以上处理核心的处理器101、一个或一个以上计算机可读存储介质的存储器102、电源103和输入单元104等部件。本领域技术人员可以理解,图10中示出的网络设备结构并不构成对网络设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器101是该网络设备的控制中心,利用各种接口和线路连接整个网络设备的各个部分,通过运行或执行存储在存储器102内的软件程序和/或模块,以及调用存储在存储器102内的数据,执行网络设备的各种功能和处理数据,从而对网络设备进行整体监控。可选的,处理器101可包括一个或多个处理核心;优选的,处理器101可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器101中。
存储器102可用于存储软件程序以及模块,处理器101通过运行存储在存储器102的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器102可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据网络设备的使用所创建的数据等。此外,存储器102可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器102还可以包括存储器控制器,以提供处理器101对存储器102的访问。
网络设备还包括给各个部件供电的电源103,优选的,电源103可以通过电源管理系统与处理器101逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源103还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该网络设备还可包括输入单元104,该输入单元104可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
尽管未示出,网络设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,网络设备中的处理器101会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器102中,并由处理器101来运行存储在存储器102中的应用程序,从而实现各种功能,如下:
获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式,对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据,当文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧,基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧,根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本申请实施例可以获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式,对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据,当文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧,基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧,根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。该方案通过对格式转换前多媒体文件的文件格式、以及格式转换后目标多媒体文件格式的组合方式进行分析,当需要进行文件格式转换的组合方式不同时,可以确定合适的文件格式转换方法进行多媒体文件的格式转换,而不拘泥于利用同一种文件格式转换方法,从而能够实现不同多媒体文件格式的多媒体文件之间的转换,如可以实现视频文件与动画渲染素材文件之间的转换,还可以实现不同动画渲染素材文件之间的转换,提升了文件格式转换的灵活性。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例提供一种计算机设备,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种文件格式转换方法中的步骤。例如,该指令可以执行如下步骤:
获取需要格式转换的多媒体文件、以及多媒体文件需要转换到的目标多媒体文件格式,对多媒体文件进行解释,得到多媒体文件的文件内容数据、以及文件属性数据,当文件内容数据不支持目标多媒体文件格式的直接转换时,对文件内容数据进行解码,得到多媒体数据帧,基于目标多媒体文件格式,对多媒体数据帧进行格式转换,得到格式转换后数据帧,根据格式转换后数据帧、以及文件属性数据,构建得到目标文件。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该存储介质中所存储的指令,可以执行本申请实施例所提供的任一种文件格式转换方法中的步骤,因此,可以实现本申请实施例所提供的任一种文件格式转换方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种文件格式转换方法、装置、以及计算机存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (9)
1.一种文件格式转换方法,其特征在于,包括:
获取需要格式转换的多媒体文件、以及所述多媒体文件需要转换到的目标多媒体文件格式;
对所述多媒体文件进行解释,得到所述多媒体文件的文件内容数据、以及文件属性数据;
当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧;
基于所述目标多媒体文件格式,对所述多媒体数据帧进行格式转换,得到格式转换后数据帧;
对所述格式转换后数据帧进行编码,得到多媒体数据流;
根据所述多媒体数据流、以及所述文件属性数据,构建得到目标文件,以实现视频格式的多媒体文件与动画格式的多媒体文件之间的文件格式转换或以实现不同动画格式的多媒体文件之间的文件格式转换。
2.根据权利要求1所述的文件格式转换方法,其特征在于,当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧,包括:
检测所述多媒体文件的当前多媒体文件格式;
将所述当前多媒体文件格式与所述目标多媒体文件格式进行匹配,得到匹配结果;
当所述匹配结果确定所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧。
3.根据权利要求1所述的文件格式转换方法,其特征在于,当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧,包括:
当所述文件内容数据不支持所述目标多媒体文件格式的直接转换,且所述目标多媒体文件格式为预设支持数据帧文件格式时,确定所述目标多媒体文件格式支持所述文件内容数据解码后得到的多媒体数据帧;
对所述文件内容数据进行解码,得到多媒体数据帧。
4.根据权利要求3所述的文件格式转换方法,其特征在于,所述多媒体文件的文件格式为动画格式;
对所述文件内容数据进行解码,得到多媒体数据帧,包括:
根据所述文件内容数据绘制所述多媒体文件的多帧图像;
基于所述多媒体文件的多帧图像,获取多媒体数据帧。
5.根据权利要求1所述的文件格式转换方法,其特征在于,所述目标多媒体文件格式为视频格式;
根据所述多媒体数据流、以及所述文件属性数据,构建得到所述目标文件,包括:
获取所述多媒体数据流的头部信息、以及所述文件属性数据的尾部信息;
根据所述多媒体数据流的头部信息、以及所述文件属性数据的尾部信息,构建得到所述目标文件。
6.根据权利要求1所述的文件格式转换方法,其特征在于,所述方法还包括:
当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,基于所述目标多媒体文件格式,直接对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据;
根据所述格式转换后的文件内容数据、以及所述文件属性数据,构建得到所述目标文件。
7.根据权利要求6所述的文件格式转换方法,其特征在于,当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,基于所述目标多媒体文件格式,直接对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据,包括:
当所述文件内容数据支持所述目标多媒体文件格式的直接转换时,根据所述多媒体文件的当前多媒体文件格式、以及所述目标多媒体文件格式,确定格式转换需要的转换函数;
通过所述转换函数对所述文件内容数据进行格式转换,得到格式转换后的文件内容数据。
8.一种文件格式转换装置,其特征在于,包括:
获取模块,用于获取需要格式转换的多媒体文件、以及所述多媒体文件需要转换到的目标多媒体文件格式;
解释模块,用于对所述多媒体文件进行解释,得到所述多媒体文件的文件内容数据、以及文件属性数据;
解码模块,用于当所述文件内容数据不支持所述目标多媒体文件格式的直接转换时,对所述文件内容数据进行解码,得到多媒体数据帧;
转换模块,用于基于所述目标多媒体文件格式,对所述多媒体数据帧进行格式转换,得到格式转换后数据帧;
编码子模块,用于对所述格式转换后数据帧进行编码,得到多媒体数据流;
第一构建子模块,用于根据所述多媒体数据流、以及所述文件属性数据,构建得到目标文件,以实现视频格式的多媒体文件与动画格式的多媒体文件之间的文件格式转换或以实现不同动画格式的多媒体文件之间的文件格式转换。
9.一种计算机存储介质,其上存储有计算机程序,其特征在于,当所述计算机程序在计算机上运行时,使得所述计算机执行如权利要求1-7任一项所述的文件格式转换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910993431.5A CN112689197B (zh) | 2019-10-18 | 2019-10-18 | 一种文件格式转换方法、装置、以及计算机存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910993431.5A CN112689197B (zh) | 2019-10-18 | 2019-10-18 | 一种文件格式转换方法、装置、以及计算机存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112689197A CN112689197A (zh) | 2021-04-20 |
CN112689197B true CN112689197B (zh) | 2022-07-08 |
Family
ID=75444934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910993431.5A Active CN112689197B (zh) | 2019-10-18 | 2019-10-18 | 一种文件格式转换方法、装置、以及计算机存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112689197B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113660156B (zh) * | 2021-08-09 | 2022-10-21 | 覃飞 | 一种传输文件的处理方法、装置、电子设备及存储介质 |
CN113766318A (zh) * | 2021-09-09 | 2021-12-07 | 世纪龙信息网络有限责任公司 | 视频生成方法、装置、存储介质及计算机设备 |
CN113965776B (zh) * | 2021-10-20 | 2022-07-05 | 江下信息科技(惠州)有限公司 | 一种多模式的音视频格式高速转换方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101164112A (zh) * | 2006-06-26 | 2008-04-16 | 松下电器产业株式会社 | 格式转换装置、格式转换方法和动图像解码系统 |
CN104365094A (zh) * | 2012-06-14 | 2015-02-18 | Kddi株式会社 | 动画图像编码装置、动画图像解码装置、动画图像编码方法、动画图像解码方法以及程序 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101018355A (zh) * | 2006-02-10 | 2007-08-15 | 杭州草莓资讯有限公司 | 手机影音与彩信格式自动转换系统与方法 |
CN102014262A (zh) * | 2010-10-27 | 2011-04-13 | 杭州海康威视软件有限公司 | 一种硬盘录像机、多媒体格式转换的系统及方法 |
CN102075528B (zh) * | 2010-12-27 | 2014-12-10 | 上海聚欣网络科技有限公司 | 一种播放多种封装格式的网络多媒体文件的方法与设备 |
CN102231836B (zh) * | 2011-06-27 | 2013-06-26 | 深圳市茁壮网络股份有限公司 | 一种gif文件在数字电视系统中的处理方法和装置 |
CN103200380A (zh) * | 2012-01-10 | 2013-07-10 | 北京世纪高蓝科技有限公司 | 多媒体数据格式转换方法 |
JP2014150403A (ja) * | 2013-01-31 | 2014-08-21 | Optim Corp | 携帯端末、ドキュメント管理方法、携帯端末用プログラム |
CN105657574B (zh) * | 2014-11-12 | 2019-01-22 | 阿里巴巴集团控股有限公司 | 一种视频文件制作方法以及装置 |
CN104780391A (zh) * | 2015-04-07 | 2015-07-15 | 无锡天脉聚源传媒科技有限公司 | 一种视频文件格式转换方法及装置 |
CN106791909B (zh) * | 2016-12-01 | 2020-03-17 | 中央电视台 | 一种视频数据处理方法、装置和服务器 |
US10755375B2 (en) * | 2017-02-24 | 2020-08-25 | The Trustees Of Columbia University In The City Of New York | Systems and methods for steganography based on text fonts |
CN109522284A (zh) * | 2018-11-26 | 2019-03-26 | 天津渤化工程有限公司 | 文件批量转换方法及装置 |
-
2019
- 2019-10-18 CN CN201910993431.5A patent/CN112689197B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101164112A (zh) * | 2006-06-26 | 2008-04-16 | 松下电器产业株式会社 | 格式转换装置、格式转换方法和动图像解码系统 |
CN104365094A (zh) * | 2012-06-14 | 2015-02-18 | Kddi株式会社 | 动画图像编码装置、动画图像解码装置、动画图像编码方法、动画图像解码方法以及程序 |
Also Published As
Publication number | Publication date |
---|---|
CN112689197A (zh) | 2021-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112689197B (zh) | 一种文件格式转换方法、装置、以及计算机存储介质 | |
CN111899322B (zh) | 视频处理方法、动画渲染sdk和设备及计算机存储介质 | |
CN108989885B (zh) | 视频文件转码系统、分割方法、转码方法及装置 | |
CN109840879B (zh) | 图像渲染方法、装置、计算机存储介质及终端 | |
CN109327698B (zh) | 动态预览图的生成方法、系统、介质和电子设备 | |
CN104159150A (zh) | 云终端、云服务器、媒体数据流播放系统及方法 | |
CN102819851B (zh) | 一种有声图片的计算机实现方法 | |
CN106470353B (zh) | 一种多媒体数据处理方法及其装置、电子设备 | |
CN110727825A (zh) | 动画播放的控制方法、装置、服务器和存储介质 | |
CN113411661B (zh) | 用于记录信息的方法、装置、设备、存储介质及程序产品 | |
JP4693072B2 (ja) | Jpegアプリケーションにおける可変長符号の復号 | |
CN103929607A (zh) | 基于屏幕录制的通信方法及应用客户端 | |
CN113643413A (zh) | 动画处理方法、装置、介质及电子设备 | |
KR20160015128A (ko) | 클라우드 스트리밍 서비스 시스템, 이미지 타입에 따른 클라우드 스트리밍 서비스 방법 및 이를 위한 장치 | |
CN117065357A (zh) | 媒体数据处理方法、装置、计算机设备和存储介质 | |
WO2014024255A1 (ja) | 端末および動画再生プログラム | |
US10659826B2 (en) | Cloud streaming service system, image cloud streaming service method using application code, and device therefor | |
CN109274902B (zh) | 视频文件处理方法和装置 | |
CN110189388B (zh) | 动画检测方法、可读存储介质及计算机设备 | |
US20150149578A1 (en) | Storage device and method of distributed processing of multimedia data | |
US20240305800A1 (en) | Intelligent video export | |
CN109495793B (zh) | 一种弹幕写入方法、装置、设备及介质 | |
CN104090898A (zh) | 本地音乐与库内音乐匹配的方法和装置 | |
CN111757168B (zh) | 音频解码方法、装置、存储介质及设备 | |
CN114979719B (zh) | 视频播放方法、装置、介质和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40041578 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |