CN112383618A - 一种音频文件优化方法、装置、计算机设备及存储介质 - Google Patents
一种音频文件优化方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112383618A CN112383618A CN202011263253.XA CN202011263253A CN112383618A CN 112383618 A CN112383618 A CN 112383618A CN 202011263253 A CN202011263253 A CN 202011263253A CN 112383618 A CN112383618 A CN 112383618A
- Authority
- CN
- China
- Prior art keywords
- audio
- file
- audio file
- user
- optimized
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/565—Conversion or adaptation of application format or content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本案涉及人工智能,提供一种音频文件优化方法、装置、计算机设备及存储介质,方法部分:包括将音频文件在客户端进行音频优化操作,先将音频文件转换成类型化数组,再将类型化数组转换成用于缓存音频的原音频缓冲对象,根据原音频缓冲对象的声道数量以及采样率构建一个新的目标音频缓冲对象,是为了不污染原始的音频文件,避免用户对编辑优化后的音频不满意,需要重新编辑时文件已经丢失;客户端将目标时间段的音频数据传入至目标音频缓冲对象中,得到优化音频文件,因此,可以节省服务器硬件资源,将原本消耗性能的音频剪辑操作在客户端中进行,避免大量重复音频传输到服务器,容易造成服务器资源压力。
Description
技术领域
本发明涉及人工智能技术领域,应用于音频处理技术领域,尤其涉及一种音频文件优化方法、装置、计算机设备及存储介质。
背景技术
随着用户需求与媒体技术的发展,音频的数量也呈指数级的爆炸增长,对音频进行优化也成为人们关注的音频处理方式。
目前音频处理方式是将用户音频文件上送到服务器,由服务器进行文件体积大小、时长等信息,然后返回剪辑后的信息,由用户确认剪辑后的信息是否准确。
但是,因为音频文件一般体积比较大,用户需要等待较长时间才可以得到剪辑结果,如果剪辑结果不满意的情况下,需要反复执行上传音频、剪辑、确认的流程,造成用户流量的浪费。另外,一方面,由于服务器难以实时反馈用户编辑后的音频,用户体验较差,容易造成用户流失;另一方面,大量重复音频传输到服务器,容易造成服务器资源压力。
发明内容
本发明提供一种音频文件优化方法、装置、计算机设备及存储介质,以解决一方面,由于服务器难以实时反馈用户编辑后的音频,用户体验较差,容易造成用户流失;另一方面,大量重复音频传输到服务器,容易造成服务器资源压力的问题。
一种音频文件优化方法,包括:
检测用户上传的文件是否为音频文件;
若检测到用户上传的文件为音频文件时,则将所述音频文件转换为类型化数组;
将所述类型化数组转换成用于缓存音频的原音频缓冲对象;
获取所述原音频缓冲对象的声道数量以及采样率;
根据所述声道数量以及所述采样率建立目标音频缓冲对象;
根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据;
将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,并将所述优化音频文件实时反馈给用户确认;
若检测到用户确认优化音频文件无误,则将所述优化音频文件上传至服务器。
一种音频文件优化装置,包括:
检测模块,用于检测用户上传的文件是否为音频文件;
第一转换模块,用于若检测到用户上传的文件为音频文件时,则将所述音频文件转换为类型化数组;
第二转换模块,用于将所述类型化数组转换成用于缓存音频的原音频缓冲对象;
第一获取模块,用于获取所述原音频缓冲对象的声道数量以及采样率;
第一建立模块,用于根据所述声道数量以及所述采样率建立目标音频缓冲对象;
提取模块,用于根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据;
反馈模块,用于将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,并将所述优化音频文件实时反馈给用户确认;
上传模块,用于若检测到用户确认优化音频文件无误,则将所述优化音频文件上传至服务器。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述音频文件优化方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述音频文件优化方法的步骤。
上述音频文件优化方法、装置、计算机设备及存储介质,所实现的其中一个方案中,将音频文件在客户端进行音频优化操作,先将音频文件转换成类型化数组,再将类型化数组转换成用于缓存音频的原音频缓冲对象,根据原音频缓冲对象的声道数量以及采样率构建一个新的目标音频缓冲对象,是为了不污染原始的音频文件,避免用户对编辑优化后的音频不满意,需要重新编辑时文件已经丢失;客户端将目标时间段的音频数据传入至目标音频缓冲对象中,得到优化音频文件,优化音频文件将实时反馈至用户,优化音频文件需要经过用户确认之后才送上服务器,因此,可以节省服务器宽带、CPU和内存等硬件资源,将原本消耗性能的音频剪辑操作在客户端中进行,避免大量重复音频传输到服务器,容易造成服务器资源压力。
附图说明
为了更清楚地说明本发明的技术方案,下面将对本发明的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中音频文件优化方法的一应用环境示意图;
图2是本发明一实施例中音频文件优化方法的一流程图;
图3是本发明一实施例中音频文件优化方法的另一流程图;
图4是本发明一实施例中音频文件优化方法的另一流程图;
图5是本发明一实施例中音频文件优化方法的另一流程图;
图6是本发明一实施例中音频文件优化方法的另一流程图;
图7是本发明一实施例中音频文件优化方法的另一流程图;
图8是本发明一实施例中音频文件优化装置的一原理框图;
图9是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的音频文件优化方法,该音频文件优化方法可应用如图1所示的应用环境中。具体地,该音频文件优化方法应用在音频文件优化系统中,该音频文件优化系统包括如图1所示的客户端和服务器,客户端与服务器通过网络进行通信。其中,客户端又称为用户端,是指与服务器相对应,为客户提供本地服务的程序。客户端可安装在但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备上。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一实施例中,如图2所示,提供一种音频文件优化方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤:
S10:检测用户上传的文件是否为音频文件;
其中,客户端通过预设方式监听用户上传文件的操作,用户上传文件可以为视频文件、文档文件、音频文件等;若客户端监听到所述用户上传文件的操作,则检测用户上传的文件是否为音频文件。
其中,通过android判断用户上传的文件是否为音频文件;可选地,根据音频文件扩展名来判断上传的文件是否为音频文件;优选地,根据音频文件的头信息来判断上传的文件是否为音频文件。
S20:若检测到用户上传的文件为音频文件时,则将所述音频文件转换为类型化数组;
其中,使用浏览器提供的系统API接口将音频文件实例化为一个音频对象,音频对象中除了音频信息外,还存在其他诸如文件大小等信息,处理难度较大,因此,需要将音频对象转换成为ArrayBuffer数组(类型化数组)。
其中,ArrayBuffer能将音频对象进行数组化,以得到ArrayBuffer数组(类型化数组),并将ArrayBuffer数组(类型化数组)存入缓存区,ArrayBuffer数组便于对音频对象进行剪裁、拼装、重组等。
S30:将所述类型化数组转换成用于缓存音频的原音频缓冲对象;
其中,将ArrayBuffer数组(类型化数组)转换成用于缓存音频的原AudioBuffer对象(音频缓冲对象),AudioBuffer对象(音频缓冲对象)表示存在内存里的一段短小的音频资源,AudioBuffer对象是一个仅包含音频的数据对象,仅缓存音频数据,能够方便后期处理。
可理解地,音频文件无法直接转换为AudioBuffer对象,需要将音频文件转换为ArrayBuffer数组,再从为ArrayBuffer数组中转出AudioBuffer对象。
S40:获取所述原音频缓冲对象的声道数量以及采样率;
S50:根据所述声道数量以及所述采样率建立目标音频缓冲对象;
其中,获取原AudioBuffer对象(音频缓冲对象)的channels(声道数量)以及sampleRate(采样率),再根据createBuffer方法,传入channels(声道数量)和sampleRate(采样率),以创建一个长度为0的目标AudioBuffer对象(音频缓冲对象),需要注意地,建立新的目标AudioBuffer对象,是为了不污染原始的音频文件,避免用户对编辑优化后的音频不满意,需要重新新编辑时音频文件已经丢失的情况。
S60:根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据;
在一实施例中,如图3所示,步骤S60中,也即所述根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据,具体包括如下步骤:
S61:根据用户的剪辑操作来获取需剪辑的目标时间段对应的起点时刻至终点时刻;
其中,目标时间段对应的起点时刻是指用户对音频文件进行剪辑操作的起始时间点,目标时间段对应的终点时刻是指用户对音频文件进行剪辑操作的终止时间点。
其中,以一个12s的音频文件为例,用户需要提取第3秒至第5秒的音频文件,由此,根据用户的剪辑操作获取到需剪辑的目标时间段对应的起点时刻位第3秒,目标时间段对应的终点时刻为第5秒,由此,网页设置偏移量的帧数起点为offset1,帧数终点为offset2,由此当用户在网页上操作提取音频文件的第3秒至第5秒时,其对应的帧数offset为offset1~offset2。
S62:通过所述原音频缓冲对象的属性获得所述原音频缓冲对象的采样率;
S63:根据采样率以及所述起点时刻得到帧数起点;
S64:根据采样率以及所述终点时刻得到帧数终点;
其中,每秒一般对应的样本帧数为23.4375帧,样本帧数不是固定值,其主要与sampleRate(采样率)有关,而具体的sampleRate(采样率)通过原音频缓冲对象的属性获取得到。
例如,以一秒钟对应23.4375帧为例,根据采样率以及所述起点时刻得到帧数起点为23.4375*3=70.3125帧,根据采样率以及所述终点时刻得到帧数终点为23.4375*5=117.1875帧。四舍五入,即帧数起点offset1为70帧,帧数终点offset2为117帧,因此其对应的帧数offset为70~117帧。
S65:根据帧数起点以及帧数终点从原音频缓冲对象中提取出目标时间段的音频数据。
其中,如果用户要提取一个共12秒的音频文件中的第3秒至第5秒,可以将原AudioBuffer对象(音频缓冲对象)中的70到117帧中间的音频数据提取出来即可。
在图3对应的实施例中,采样率通过原音频缓冲对象的属性获取得到,每个不同的音频文件的采样率可能不同,因而根据音频的采样率以及起点时刻得到帧数起点,再根据音频的采样率以及终点时刻得到帧数终点,根据该音频文件的采样率作为参数以得到精准的帧数起点以及帧数终点,最后根据帧数起点以及帧数终点提取出目标时间段的音频,以得到该目标时间段下精准的音频。
S70:将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,并将所述优化音频文件实时反馈给用户确认;
在一实施例中,如图4所示,步骤S70中,也即将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,具体包括如下步骤:
S71:将音频数据传入至所述目标音频缓冲对象中,得到剪辑后的音频文件,音频文件包括多个通道数据;
其中,原AudioBuffer对象(音频缓冲对象)中的70到117帧中间的音频数据拷贝至长度为0的目标AudioBuffer对象(音频缓冲对象)中,得到剪辑后的音频文件;因为步骤S50中仅创建了一个空的目标AudioBuffer对象,目标AudioBuffer对象中仅包含了channels(声道数量)以及sampleRate(采样率),未存在真实的音频数据,因此需要将音频数据拷贝至目标AudioBuffer对象后才是完整的音频文件。
S72:根据预设通道数据的顺序对所述目标音频缓冲对象中的原通道数据的顺序进行通道顺序调整,得到优化音频文件。
其中,用户可以改动通道数据的顺序,从而得到不同的优化音频文件,因为通道数据可以包括单音道数据或者多音道数据,单音道数据或者多音道数据可以发出不同的声音。
其中,以一个12s的音频文件为例,根据用户的剪辑操作剪辑出第3秒至第5秒的音频文件,第3秒至第5秒的音频文件中原通道数据的顺序为1->2->3->4->5,根据预设通道数据的顺序2->3->1->5->4,将1->2->3->4->5的通道数据顺序调整为2->3->1->5->4的通道数据顺序,通过调整通道数据的顺序来形成不同声音的音频,以去掉原通道数据中的噪音,得到最终优化音频文件。
在图4对应的实施例中,用户可以通过目标音频缓冲对象中的通道数据进行剪辑,以实现对音频文件剪辑,并且用户可以根据预设通道顺序对调整通道数据的顺序进行调整,以得到调整后的音频文件,用户可根据个人喜好调整通道数据的顺序,以得到不同的音频文件。
S80:若检测到用户确认优化音频文件无误,则将所述优化音频文件上传至服务器。
其中,在得到优化音频文件之后,将优化音频文件展示给用户进行确认,由用户确认是否准确,如果准确再将该优化音频文件上传至服务器,因此,若检测到用户确认优化音频文件无误后,则可以将优化音频文件上传至服务器;若检测到用户取消该优化音频文件,并检测到用户提出重新剪辑音频文件的请求后,则重新对音频文件进行剪辑。
在一实施例中,如图5所示,步骤S80中,也即将所述优化音频文件上传至服务器,具体包括如下步骤:
S81:在优化音频文件的通道数据中加入加密片段,得到目标优化音频文件;
S82:将所述目标优化音频文件上传至服务器。
其中,用户可以选择在优化音频文件的通道数据中加入加密片段,以得到加密后的目标优化音频文件,以使得上传至服务器的音频文件为加密后的音频文件。
优选地,可以在需要使用优化音频文件时,将目标优化音频文件中的加密片段进行剔除,以得到加密前的优化音频文件,以避免上传至服务器的音频文件在互联网中泄露。
在图5对应的实施例中,用户可在优化音频文件的通道数据中混入自己的加密片段,在优化音频文件上传至服务器时进行加密,进而避免音频文件在互联网中泄露造成负面影响,提高音频文件传输时的安全性。
在图2对应的实施例中,将音频文件在客户端进行音频优化操作,先将音频文件转换成类型化数组,再将类型化数组转换成用于缓存音频的原音频缓冲对象,根据原音频缓冲对象的声道数量以及采样率构建一个新的目标音频缓冲对象,是为了不污染原始的音频文件,避免用户对编辑优化后的音频不满意,需要重新编辑时文件已经丢失;客户端将目标时间段的音频数据传入至目标音频缓冲对象中,得到优化音频文件,优化音频文件将实时反馈至用户,优化音频文件需要经过用户确认之后才送上服务器,因此,可以节省服务器宽带、CPU和内存等硬件资源,将原本消耗性能的音频剪辑操作在客户端中进行,避免大量重复音频传输到服务器,容易造成服务器资源压力。
在一实施例中,如图6所示,步骤S10之前,也即所述检测用户上传的文件是否为音频文件之前,具体还包括如下步骤:
S90:通过网页页面建立上传文件类型的页面标签作为用户上传文件的入口;
其中,通过网页页面建立type(上传文件类型)为file的input(页面标签)作为用户上传文件的入口。本方案通过input(页面标签)将文件读入客户端内存中,后续再在客户端内存中进行音频文件剪辑操作,剪辑操作完成后再将优化音频文件上传至服务器中。
S100:通过所述页面标签的变化来监听用户是否通过所述上传文件的入口上传文件;
S110:若通过所述页面标签的变化监听到用户通过所述上传文件的入口上传文件,则读取并存储用户上传的文件。
可选地,用户通过页面标签上传文件具体方法:首先,在html添加input(页面标签)按钮,再通过selectVideo检测是否触发input(页面标签)的变化,通过input(页面标签)的变化来监听用户是否通过所述上传文件的入口上传文件,若通过所述页面标签的变化监听到用户通过所述上传文件的入口上传文件,则用户选择需要上传的文件,则读取并存储用户上传的文件。
在图6对应的实施例中,通过页面标签将文件读入客户端,以将文件上传至客户端内,再在客户端进行优化音频的操作,以实现零流量,无需上送音频文件到服务器就可以实现音频文件的剪辑优化。
在一实施例中,如图7所示,步骤S70中,也即将所述优化音频文件实时反馈给用户确认之后,具体还包括如下步骤:
S120:若检测到用户重新剪辑音频文件的请求,则直接获取所述原音频缓冲对象;
其中,在用户没有确认优化音频文件无误之前,用户均可以重新剪辑音频文件,若检测到用户重新剪辑音频文件的请求,则直接获取所述原音频缓冲对象。
S130:以原音频缓冲对象建立另一目标音频缓冲对象;
用户可以直接基于原AudioBuffer对象(音频缓冲对象)进行编辑,以原AudioBuffer对象(音频缓冲对象)建立另一目标AudioBuffer对象(音频缓冲对象),可理解地,用户可以以原AudioBuffer对象(音频缓冲对象)建立一个或者多个另一目标AudioBuffer对象(音频缓冲对象),也即以原AudioBuffer对象(音频缓冲对象)建立第2、3、4、n个目标AudioBuffer对象(音频缓冲对象)。
S140:根据用户的重新剪辑操作从所述原音频缓冲对象中提取出另一音频数据,并将所述另一音频数据存储在所述另一目标音频缓冲对象中,得到重新剪辑的音频文件;
其中,根据用户的重新剪辑操作从所述原音频缓冲对象中提取出另一音频数据,具体可参见步骤S60,此处不做累述;将所述另一音频数据存储在所述另一目标音频缓冲对象中,得到重新剪辑的音频文件,具体可参见步骤S70,此处不做累述。
S150:将所述重新剪辑的音频文件实时反馈给用户确认。
在图7对应的实施例中,客户端检测到用户取消优化音频文件,说明优化音频文件无法满足用户诉求,用户可以基于原音频缓冲对象下进行复制,得到多个原音频缓冲对象,再在多个原音频缓冲对象下建立目标音频缓冲对象,再进行优化操作。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明的实施过程构成任何限定。
在一实施例中,提供一种音频文件优化装置,该音频文件优化装置与上述实施例中音频文件优化方法一一对应。如图8所示,该音频文件优化装置包括检测模块10、第一转换模块20、第二转换模块30、第一获取模块40、第一建立模块50、提取模块60、反馈模块70和上传模块80。各功能模块详细说明如下:
检测模块10,用于检测用户上传的文件是否为音频文件;
第一转换模块20,用于若检测到用户上传的文件为音频文件时,则将所述音频文件转换为类型化数组;
第二转换模块30,用于将所述类型化数组转换成用于缓存音频的原音频缓冲对象;
第一获取模块40,用于获取所述原音频缓冲对象的声道数量以及采样率;
第一建立模块50,用于根据所述声道数量以及所述采样率建立目标音频缓冲对象;
提取模块60,用于根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据;
反馈模块70,用于将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,并将所述优化音频文件实时反馈给用户确认;
上传模块80,用于若检测到用户确认优化音频文件无误,则将所述优化音频文件上传至服务器。
在一实施例中,所述音频文件优化装置还包括第二建立模块、监听模块和存储模块,所述第二建立模块、监听模块和存储模块具体用于:
第二建立模块,用于通过网页页面建立上传文件类型的页面标签作为用户上传文件的入口;
监听模块,用于通过所述页面标签的变化来监听用户是否通过所述上传文件的入口上传文件;
第一存储模块,用于若通过所述页面标签的变化监听到用户通过所述上传文件的入口上传文件,则读取并存储用户上传的文件。
在一实施例中,所述提取模块具体用于:
根据用户的剪辑操作来获取需剪辑的目标时间段对应的起点时刻至终点时刻;
通过所述原音频缓冲对象的属性获得所述原音频缓冲对象的采样率;
根据采样率以及所述起点时刻得到帧数起点;
根据采样率以及所述终点时刻得到帧数终点;
根据帧数起点以及帧数终点从原音频缓冲对象中提取出目标时间段的音频数据。
在一实施例中,所述音频文件优化装置还包括第二获取模块、第三建立模块、第二存储模块和反馈模块,所述第二获取模块、第三建立模块、第二存储模块和反馈模块具体用于:
第二获取模块,用于若检测到用户重新剪辑音频文件的请求,则直接获取所述原音频缓冲对象;
第三建立模块,用于以原音频缓冲对象建立另一目标音频缓冲对象;
第二存储模块,用于根据用户的重新剪辑操作从所述原音频缓冲对象中提取出另一音频数据,并将所述另一音频数据存储在所述另一目标音频缓冲对象中,得到重新剪辑的音频文件;
反馈模块,用于将所述重新剪辑的音频文件实时反馈给用户确认。
在一实施例中,所述反馈模块70具体用于:
将音频数据传入至所述目标音频缓冲对象中,得到剪辑后的音频文件,音频文件包括多个通道数据;
根据预设通道数据的顺序对所述目标音频缓冲对象中的原通道数据的顺序进行通道顺序调整,得到优化音频文件。
在一实施例中,所述上传模块具体用于:
在优化音频文件的通道数据中加入加密片段,得到目标优化音频文件;
将所述目标优化音频文件上传至服务器。
关于音频文件优化装置的具体限定可以参见上文中对于音频文件优化方法的限定,在此不再赘述。上述音频文件优化装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部服务器通过网络连接通信。该计算机程序被处理器执行时以实现一种音频文件优化方法。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
检测用户上传的文件是否为音频文件;
若检测到用户上传的文件为音频文件时,则将所述音频文件转换为类型化数组;
将所述类型化数组转换成用于缓存音频的原音频缓冲对象;
获取所述原音频缓冲对象的声道数量以及采样率;
根据所述声道数量以及所述采样率建立目标音频缓冲对象;
根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据;
将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,
并将所述优化音频文件实时反馈给用户确认;
若检测到用户确认优化音频文件无误,则将所述优化音频文件上传至服务器。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
检测用户上传的文件是否为音频文件;
若检测到用户上传的文件为音频文件时,则将所述音频文件转换为类型化数组;
将所述类型化数组转换成用于缓存音频的原音频缓冲对象;
获取所述原音频缓冲对象的声道数量以及采样率;
根据所述声道数量以及所述采样率建立目标音频缓冲对象;
根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据;
将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,
并将所述优化音频文件实时反馈给用户确认;
若检测到用户确认优化音频文件无误,则将所述优化音频文件上传至服务器。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种音频文件优化方法,其特征在于,包括:
检测用户上传的文件是否为音频文件;
若检测到用户上传的文件为音频文件时,则将所述音频文件转换为类型化数组;
将所述类型化数组转换成用于缓存音频的原音频缓冲对象;
获取所述原音频缓冲对象的声道数量以及采样率;
根据所述声道数量以及所述采样率建立目标音频缓冲对象;
根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据;
将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,并将所述优化音频文件实时反馈给用户确认;
若检测到用户确认优化音频文件无误,则将所述优化音频文件上传至服务器。
2.如权利要求1所述的音频文件优化方法,其特征在于,所述检测用户上传的文件是否为音频文件之前,还包括:
通过网页页面建立上传文件类型的页面标签作为用户上传文件的入口;
通过所述页面标签的变化来监听用户是否通过所述上传文件的入口上传文件;
若通过所述页面标签的变化监听到用户通过所述上传文件的入口上传文件,则读取并存储用户上传的文件。
3.如权利要求1所述的音频文件优化方法,其特征在于,所述根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据,包括:
根据用户的剪辑操作来获取需剪辑的目标时间段对应的起点时刻至终点时刻;
通过所述原音频缓冲对象的属性获得所述原音频缓冲对象的采样率;
根据采样率以及所述起点时刻得到帧数起点;
根据采样率以及所述终点时刻得到帧数终点;
根据帧数起点以及帧数终点从原音频缓冲对象中提取出目标时间段的音频数据。
4.如权利要求1所述的音频文件优化方法,其特征在于,所述将所述优化音频文件实时反馈给用户确认之后,还包括:
若检测到用户重新剪辑音频文件的请求,则直接获取所述原音频缓冲对象;
以原音频缓冲对象建立另一目标音频缓冲对象;
根据用户的重新剪辑操作从所述原音频缓冲对象中提取出另一音频数据,并将所述另一音频数据存储在所述另一目标音频缓冲对象中,得到重新剪辑的音频文件;
将所述重新剪辑的音频文件实时反馈给用户确认。
5.如权利要求1所述的音频文件优化方法,其特征在于,所述将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,包括:
将音频数据传入至所述目标音频缓冲对象中,得到剪辑后的音频文件,音频文件包括多个通道数据;
根据预设通道数据的顺序对所述目标音频缓冲对象中的原通道数据的顺序进行通道顺序调整,得到优化音频文件。
6.如权利要求1所述的音频文件优化方法,其特征在于,所述将所述优化音频文件上传至服务器,包括:
在优化音频文件的通道数据中加入加密片段,得到目标优化音频文件;
将所述目标优化音频文件上传至服务器。
7.一种音频文件优化装置,其特征在于,包括:
检测模块,用于检测用户上传的文件是否为音频文件;
第一转换模块,用于若检测到用户上传的文件为音频文件时,则将所述音频文件转换为类型化数组;
第二转换模块,用于将所述类型化数组转换成用于缓存音频的原音频缓冲对象;
第一获取模块,用于获取所述原音频缓冲对象的声道数量以及采样率;
第一建立模块,用于根据所述声道数量以及所述采样率建立目标音频缓冲对象;
提取模块,用于根据用户的剪辑操作从所述原音频缓冲对象中提取出目标时间段的音频数据;
反馈模块,用于将所述音频数据传入至所述目标音频缓冲对象中,得到优化音频文件,并将所述优化音频文件实时反馈给用户确认;
上传模块,用于若检测到用户确认优化音频文件无误,则将所述优化音频文件上传至服务器。
8.如权利要求7所述的音频文件优化装置,其特征在于,所述音频文件优化装置还包括:
第二建立模块,用于通过网页页面建立上传文件类型的页面标签作为用户上传文件的入口;
监听模块,用于通过所述页面标签的变化来监听用户是否通过所述上传文件的入口上传文件;
第一存储模块,用于若通过所述页面标签的变化监听到用户通过所述上传文件的入口上传文件,则读取并存储用户上传的文件。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述音频文件优化方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述音频文件优化方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011263253.XA CN112383618B (zh) | 2020-11-12 | 2020-11-12 | 一种音频文件优化方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011263253.XA CN112383618B (zh) | 2020-11-12 | 2020-11-12 | 一种音频文件优化方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112383618A true CN112383618A (zh) | 2021-02-19 |
CN112383618B CN112383618B (zh) | 2022-09-13 |
Family
ID=74583447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011263253.XA Active CN112383618B (zh) | 2020-11-12 | 2020-11-12 | 一种音频文件优化方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112383618B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104917671A (zh) * | 2015-06-10 | 2015-09-16 | 腾讯科技(深圳)有限公司 | 基于移动终端的音频处理方法和装置 |
CN107123424A (zh) * | 2017-04-27 | 2017-09-01 | 腾讯科技(深圳)有限公司 | 音频文件处理方法及装置 |
CN108377409A (zh) * | 2018-03-05 | 2018-08-07 | 广东欧珀移动通信有限公司 | 一种多媒体文件的无缝播放方法、终端设备及存储介质 |
CN108399921A (zh) * | 2018-02-27 | 2018-08-14 | 北京酷我科技有限公司 | 一种音频竖线波形图的生成方法 |
CN111078930A (zh) * | 2019-12-13 | 2020-04-28 | 集奥聚合(北京)人工智能科技有限公司 | 音频文件数据处理方法及装置 |
US20200210475A1 (en) * | 2018-12-31 | 2020-07-02 | Audiobyte Llc | Audio and visual asset matching platform |
-
2020
- 2020-11-12 CN CN202011263253.XA patent/CN112383618B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104917671A (zh) * | 2015-06-10 | 2015-09-16 | 腾讯科技(深圳)有限公司 | 基于移动终端的音频处理方法和装置 |
CN107123424A (zh) * | 2017-04-27 | 2017-09-01 | 腾讯科技(深圳)有限公司 | 音频文件处理方法及装置 |
CN108399921A (zh) * | 2018-02-27 | 2018-08-14 | 北京酷我科技有限公司 | 一种音频竖线波形图的生成方法 |
CN108377409A (zh) * | 2018-03-05 | 2018-08-07 | 广东欧珀移动通信有限公司 | 一种多媒体文件的无缝播放方法、终端设备及存储介质 |
US20200210475A1 (en) * | 2018-12-31 | 2020-07-02 | Audiobyte Llc | Audio and visual asset matching platform |
CN111078930A (zh) * | 2019-12-13 | 2020-04-28 | 集奥聚合(北京)人工智能科技有限公司 | 音频文件数据处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
金益等: "一种基于WebVR实现3D音效可视化的方法", 《软件工程》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112383618B (zh) | 2022-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110209652B (zh) | 数据表迁移方法、装置、计算机设备和存储介质 | |
US20170103047A1 (en) | Mechanisms to Compose, Execute, Save, and Retrieve Hyperlink Pipelines in Web Browsers | |
US11070648B2 (en) | Offline client replay and sync | |
US11989392B2 (en) | Embedding productivity applications in third party platforms | |
CN112073405A (zh) | 网页数据加载方法、装置、计算机设备及存储介质 | |
CN106656920B (zh) | Http服务的处理方法、装置、存储介质及处理器 | |
CN102473171A (zh) | 将有关本地机器的信息传达给浏览器应用 | |
CN111222153B (zh) | 应用程序权限管理方法、装置和存储介质 | |
CN112650456A (zh) | 打印方法、装置和电子设备 | |
CN113050942A (zh) | 页面生成方法、装置、可读介质及电子设备 | |
CN103970882A (zh) | 渲染页面的方法及装置 | |
CN112383618B (zh) | 一种音频文件优化方法、装置、计算机设备及存储介质 | |
CN113742023A (zh) | 权限配置方法、装置、计算机设备和存储介质 | |
CN109194706A (zh) | 网络资源拨测方法及终端 | |
CN103051722B (zh) | 一种确定页面是否被劫持的方法及相关设备 | |
CN107580253A (zh) | 一种报错页面处理方法和装置 | |
CN111552643A (zh) | 多浏览器网页访问同步方法、系统 | |
CN111381786B (zh) | 文本打印方法、装置、计算机设备和存储介质 | |
CN114706786A (zh) | 移动终端的应用程序测试方法、装置、设备及介质 | |
CN110362773B (zh) | 跨域通信方法、装置、计算机设备及存储介质 | |
CN110505258B (zh) | 网页加载及响应方法、装置、计算机设备和存储介质 | |
US10176150B2 (en) | Remotely providing fonts for an electronic document | |
KR20160132854A (ko) | 콘텐츠의 캡처를 통한 자산 수집 서비스 제공 기법 | |
CN111212016A (zh) | 跨站请求处理方法、装置及电子设备 | |
CN117376300B (zh) | 一种消息全渠道发送方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |