CN106776663B - 音频文件的压缩方法和装置 - Google Patents

音频文件的压缩方法和装置 Download PDF

Info

Publication number
CN106776663B
CN106776663B CN201510833596.8A CN201510833596A CN106776663B CN 106776663 B CN106776663 B CN 106776663B CN 201510833596 A CN201510833596 A CN 201510833596A CN 106776663 B CN106776663 B CN 106776663B
Authority
CN
China
Prior art keywords
file
compressed
header
audio file
header file
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
Application number
CN201510833596.8A
Other languages
English (en)
Other versions
CN106776663A (zh
Inventor
孙嘉骏
杨雍
王志豪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201510833596.8A priority Critical patent/CN106776663B/zh
Publication of CN106776663A publication Critical patent/CN106776663A/zh
Application granted granted Critical
Publication of CN106776663B publication Critical patent/CN106776663B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1744Redundancy elimination performed by the file system using compression, e.g. sparse files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种音频文件的压缩方法和装置。该音频文件的压缩方法包括:获取原始音频文件;解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,数据文件为压缩过的文件;通过预设压缩算法对头部文件执行压缩,得到压缩头部文件;通过压缩头部文件和数据文件生成压缩音频文件。本发明解决了由于音频文件的头部文件过大而导致音频文件的加载时间长的技术问题。

Description

音频文件的压缩方法和装置
技术领域
本发明涉及数据处理领域,具体而言,涉及一种音频文件的压缩方法和装置。
背景技术
文件的大小影响文件的传输时间。为了减小文件的存储空间,减少文件的网络传输时间,便于文件的存放和下载,通常对文件执行压缩,比如,对音频文件执行压缩。
目前,在线点播使用的有损音频编码为高级音频编码(Advanced Audio Coding,简称为AAC)的音频格式、动态影像专家压缩标准音频层面3(Moving Picture ExpertsGroup Audio LayerⅢ,简称为MP3)的音频格式、音频压缩格式(OGG Vorbis,简称为OGG)、音频格式OPUS等。图1是根据相关技术中的音频格式各码率质量对比的示意图。音频中的码率,也即,音频的比特率,为音频的模拟信号转化为数字信号之后单位时间内的二进制数据量。如图1所示,横坐标表示音频文件的大小,单位为k,纵坐标表示不同大小的音频文件在不同音频格式下的码率,也即,在不同大小的音频文件下,四条曲线分别表示OPUS的码率曲线,ACC的码率曲线,MP3的码率曲线,OGG的码率曲线,OPUS的码率曲线和AAC的码率曲线在MP3的码率曲线和OGG的码率曲线之上。码率用于衡量音频文件的质量,音频格式的码率越高,音频格式对应的音频文件的音频质量就越好,因此,OPUS音频格式和AAC音频格式分别对应的音频质量高于MP3音频格式和OGG音频格式分别对应的音频质量。
表1 不同音频格式的平台支持度
Figure BDA0000857855170000021
表1是不同音频格式的平台支持度。如表1所示,对于Android***平台,支持ACC音频格式、MP3音频格式、OGG音频格式,但是不支持OPUS音频格式;对于IOS***平台,支持ACC音频格式、MP3音频格式,但是不支持OGG音频格式和OPUS音频格式;对于Chrome浏览器,支持AAC音频格式,MP3音频格式,OGG音频格式和OPUS音频格式;对于苹果计算机的最新操作***中的Safari浏览器平台,支持ACC音频格式,MP3音频格式,但是不支持OGG音频格式和OPUS音频格式;对于网页浏览器(Internet Explorer,简称为IE)平台支持ACC音频格式,MP3音频格式,但是不支持OGG音频格式和OPUS音频格式,因此,ACC音频格式和MP3音频格式在各个平台上的兼容度比较好,ACC音频格式对音频文件进行编码的效果最佳。
ACC音频格式的编码出现于1997年,是动态图像专家组(Moving Picture ExpertsGroup,简称为MPEG)中的MPEG-2音频编码技术,由Fraunhofer IIS、杜比实验室、AT&T、Sony等公司共同开发,以取代MP3格式。2000年,在MPEG-4标准出现之后,ACC重新集成了MPEG-4标准的特性,加入了音频编码增强算法SBR技术和为图图像处理软件PS技术,又称为MPEG-4AAC。
目前,在互联网中采用AAC音频格式对音频文件编码,最终输出格式为M4A格式的音频文件。但是,通过MPEG4生成的音频文件的头部文件过大,比如,播放时间为20分钟的音频文件大概有100K的头部文件,播放时间为40分钟的音频文件有200K的头部文件,音频文件的头部文件随着音频文件的播放时间的增长而变大,这样直接增长了音频文件加载到播放器的加载时间。
针对上述由于音频文件的头部文件过大而导致音频文件的加载时间长的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种音频文件的压缩方法和装置,以至少解决由于音频文件的头部文件过大而导致音频文件的加载时间长的技术问题。
根据本发明实施例的一个方面,提供了一种音频文件的压缩方法,包括:获取原始音频文件;解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,数据文件为压缩过的文件;通过预设压缩算法对头部文件执行压缩,得到压缩头部文件;通过压缩头部文件和数据文件生成压缩音频文件。
根据本发明实施例的另一方面,还提供了音频文件的压缩装置,包括:获取单元,用于获取原始音频文件;解析单元,用于解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,数据文件为压缩过的文件;压缩单元,用于通过预设压缩算法对头部文件执行压缩,得到压缩头部文件;生成单元,通过压缩头部文件和数据文件生成压缩音频文件。
在本发明实施例中,采用获取原始音频文件;解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件;通过预设压缩算法对头部文件执行压缩,得到压缩头部文件;通过压缩头部文件和数据文件生成压缩音频文件,达到了对原始音频文件的头部文件执行压缩的目的,减少了原始音频文件的存储空间,从而实现降低音频文件的加载时间的技术效果,进而解决了由于音频文件的头部文件过大而导致音频文件的加载时间长的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据相关技术中的音频格式各码率质量对比的示意图;
图2是根据本发明实施例的一种音频文件的压缩方法的计算机终端的硬件结构框图;
图3是根据本发明实施例的音频文件的压缩方法的流程图;
图4是根据本发明实施例的通过预设压缩算法对头部文件执行压缩的方法的流程图;
图5是根据本发明实施例的通过压缩头部文件和数据文件生成压缩音频文件的方法的流程图;
图6是根据本发明实施例的对音频文件执行压缩的示意图;
图7是根据本发明实施例的音频文件的压缩装置的示意图;
图8是根据本发明实施例的一种可选地音频文件的压缩装置的示意图;
图9是根据本发明实施例的一种可选地音频文件的压缩装置的示意图;
图10是根据本发明实施例的一种可选地音频文件的压缩装置的示意图;以及
图11是根据本发明实施例的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种音频文件的压缩方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图2是根据本发明实施例的一种音频文件的压缩方法的计算机终端的硬件结构框图。如图2所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图2所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。
存储器104可用于存储应用软件的软件程序以及模块,如本发明实施例中的音频文件的压缩方法对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的音频文件的压缩方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在上述运行环境下,本申请提供了如图3所示的音频文件的压缩方法。图3是根据本发明实施例一的音频文件的压缩方法的流程图。
图3是根据本发明实施例的音频文件的压缩方法的流程图。如图3所示,该音频文件的压缩方法的一种可选的方案包括如下步骤:
步骤S32,获取原始音频文件。
在本申请上述步骤S32提供的方案中,原始音频文件携带音频数据,通过终端的软件程序对音频数据进行处理,进而播放音频文件。可选地,从数据库中获取终端需要播放的原始音频文件。
本发明实施例的原始音频文件可以在数据库中用多个字段来表示,通过容器box存储字段数据,比如,通过sizeboxes容器存储原始音频文件的字段数据。容器box包含了原始音频文件的样本数和每个样本中包含的对原始音频文件的采样点数的大小,通过样本数和每个样本中采样点数的大小使原始音频文件的音频数据分解出数据帧。原始音频文件的数据中总的样本数与容器box中的样本数一致。可选地,有两种不同大小的容器box,一种容器box是用固定32位字段表示原始音频文件中每个样本的大小,在音轨track上定义所有样本的大小相同,其中,在载体上记录音频信号的通路为音轨track;另一种容器box是在每个样本的尺寸变化都很小的情况下,可以使用小的字段。
表2字段属性
字段 长度(字节) 描述
尺寸 4 容器box的字节数
类型 4 “stsz”
版本 1 0
标识 3 0
采样大小 4 采样的样本的大小
采样数量 4 track中的样本的数量
采样字节数 4*采样数量 每个采样的字节数
表2是字段属性,如表2所示,字段为尺寸,长度为4个字节,其中,这4个字节为整个容器box的字节;字段为类型,长度为4个字节,其中,容器的名称为“stsz”;字段为版本,长度为1个字节,其中,版本为0;字段为标志,长度为3个字节,其中,标志为0;字段为采样大小,长度为4个字节,其中,通过采样大小可以得出原始音频文件的每个样本中包含的采样点数的大小;字段为采样数量,长度为4个字节,可以通过采样数量得出原始音频文件在音轨track上定义的样本的数量;字段为entry_size,长度为4*采样数量,可以得到每个样本的字节数。
本发明实施例通过获取原始音频文件的字段,得到原始音频文件的尺寸、类型、版本、标识、采样大小、采样数量和每个样本的字节数,从而确定需要终端播放的音频文件。
步骤S34,解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,数据文件为压缩过的文件。
在本申请上述步骤S34提供的方案中,在获取原始音频文件之后,解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,原始音频文件的数据文件为压缩过的文件。原始音频文件包括原始音频文件的头部文件和原始音频文件的数据文件,在本申请上述步骤S32提供的方案中,获取原始音频文件,也即,获取包括头部文件和数据文件的音频文件。
原始音频文件的头部文件是音频文件的一部分,承担音频文件一定任务的数据,决定音频文件在播放时音频数据加载的时间和音频数据缓冲的速度,也即,原始音频文件的头部文件决定在启动音频文件的播放程序时音频文件的载入时间,原始音频文件的头部文件越大,启动音频文件的播放程序时音频文件的载入时间越长,原始音频文件的头部文件越小,启动音频文件的播放程序时音频文件的载入时间越短。原始音频文件的头部文件位于原始音频文件的开头,占用音频文件的前几个字节,可以用于描述原始音频文件的一些重要属性,比如,原始音频文件的文件标识、原始音频文件的头部文件的长度等重要属性,使与原始音频文件软件的格式相对应的软件程序根据音频文件的这些重要属性打开并处理音频文件。
本发明实施例的原始音频文件的头部文件存在大量重复数据和无用数据。在原始音频文件的头部文件的多个字段中,采样的音频数据为采样点,采样的音频数据的数据量为采样点数。可选地,在原始音频文件的头部文件中,通过线性编码调制(Pulse CodeModulation,简称为PCM)编码的采样点数在千万数量级,或者更大的采样数量,也即,音轨track中的样本的数量很大,在进行数据存储、数据传输和数据处理时存在较大的冗余。原始音频文件的头部文件中,每个采样点用四个字节表示,其中,四个字节中的部分字节是相同的。
通过步骤S32获取原始音频文件,可以获取到原始音频文件的头部文件的文件标识、原始音频文件的头部文件的长度。可选地,解析原始音频文件是通过预分析原始音频文件的头部文件的文件标识和原始音频文件的头部文件的长度以确定原始音频文件的头部文件,再按照原始音频文件的头部文件的字节数将原始音频文件的头部文件和原始音频文件的数据文件分离开,从而得到原始音频文件的头部文件和原始音频文件的数据文件。上述解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件的方式仅为本发明的优选实施例,并不代表本发明实施例的音频文件的压缩方法仅包括上述解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件的方式。为了提高解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件的效率,本发明实施例还可以包括其他能够解析原始音频文件的方式,此处不再一一举例。
本发明实施例中的原始音频文件的数据文件是压缩过的数据文件,原始音频文件采用PCM编码,通过对连续变化的模拟音频信号进行抽样、量化以及编码产生数字音频信号,得到原始数字音频信号流。利用原始数字音频信号流中的某些不敏感成分的特性,通过去除音频数据信号中不能被人耳感知,或者大量重复的冗余信号对原始数字音频信号流执行压缩,得到压缩的数字音频信号流,压缩的数字音频信号流可以用mdat字段表示。虽然原始数字音频信号流在压缩过程中损失部分音频数据,压缩的数字音频信号流与原始数字音频信号流中的音频数据不同,不能完全恢复原始音频文件的数据,但是压缩的数字音频信号流与原始数字音频信号流中的音频数据非常接近。在原始数字音频信号流不损失有用音频数据,或者在损失的音频数据可以忽略的情况下,对原始数字音频信号流执行压缩编码,从而得到压缩的数字音频信号流,减少了原始音频文件占用的内存容量,保证了原始数字音频信号流在听觉方面不产生失真的情况下,对原始音频数据信号进行尽可能大的压缩。
步骤S36,通过预设压缩算法对头部文件执行压缩,得到压缩头部文件。
在本申请上述步骤S36提供的方案中,在解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件之后,对原始音频文件的头部文件执行压缩,去除原始音频文件的冗余数据。计算机处理的信息以二进制数据表示的,通过预设的压缩算法将二进制信息中相同的字符串以特殊字符进行标记,通过合理的数学计算公式,对原始音频文件的头部文件执行压缩,得到压缩头部文件。
可选地,对原始音频文件的头部文件执行压缩包括对原始音频文件的头部文件执行有损压缩和无损压缩。对原始音频文件的头部文件执行有损压缩,也即,当头部文件的个别数据丢失对头部文件不会造成太大影响时,可以忽略对原始音频文件的头部文件影响不大的数据,对原始音频文件的头部文件执行压缩,从而得到原始音频文件的头部文件的压缩头部文件;对原始音频文件的头部文件进行无损压缩,也即,原始音频文件的头部文件在通过预设压缩算法执行压缩的过程中,压缩数据必须准确无误,从而得到原始音频文件的头部文件的压缩头部文件,比如,得到zip、rar无损压缩格式的压缩头部文件。可选地,压缩头部文件的大小与原始音频文件的头部文件的文件类型、文件大小、压缩方案、获取的压缩参数有关,通过确定原始音频文件的头部文件的文件类型、文件大小、压缩方案、获取的压缩参数从而达到对原始音频文件的头部文件进行执行压缩的目的。
本发明实施例通过预设压缩算法对头部文件执行压缩,得到压缩头部文件,减小了原始音频文件的头部文件的大小。在加载音频文件时,通过压缩的头部文件降低了音频文件加载的时间,提高了音频文件缓冲的速度。
步骤S38,通过压缩头部文件和数据文件生成压缩音频文件。
在本申请上述步骤S38提供的方案中,在通过预设压缩算法对头部文件执行压缩,得到压缩头部文件之后,通过原始音频文件的压缩头部文件和原始音频文件的数据文件生成压缩音频文件。可选地,合并原始音频文件的压缩头部文件和原始音频文件的数据文件,从而生成压缩音频文件。压缩音频数据文件包括压缩头部文件和原始音频文件的数据文件,原始音频文件的数据文件,也即,压缩音频文件的数据文件。通过压缩头部文件和数据文件生成压缩音频文件,可以提高音频文件的下载速度,降低音频文件在终端的缓冲时间。
通过上述步骤S32至步骤S38,本发明提供的方案可以实现通过获取原始音频文件,然后对解析原始音频文件进行解析,得到原始音频文件的头部文件和原始音频文件的数据文件,对原始音频文件的头部文件通过预设压缩算法执行压缩,从而得到压缩头部文件,减小了原始音频文件的头部文件的大小,并且通过压缩头部文件和数据文件生成压缩音频文件,降低了播放压缩音频文件时音频文件加载的时间,提高了音频文件缓冲的速度,进而解决了由于音频文件的头部文件过大而导致音频文件的加载时间长的技术问题。
作为一种可选的实施方式,本申请步骤S36通过预设压缩算法对头部文件执行压缩。预设压缩算法为对原始音频文件的头部文件中的多个字段进行处理,可以通过压缩软件中的压缩程序对原始音频文件的头部文件执行压缩,比如,通过WinZip压缩软件,或者WinRar压缩软件对原始音频文件的头部文件执行压缩,其中,WinZip压缩软件,或者WinRar压缩软件将其支持的格式的音频文件的头部文件进行压缩。
图4是根据本发明实施例的通过预设压缩算法对头部文件执行压缩的方法的流程图。如图4所示,该通过预设压缩算法对头部文件执行压缩的方法包括以下步骤:
步骤S402,获取头部文件的多个字段,其中,多个字段中的部分字段相同。
原始音频文件的头部文件包括多个字段。在本申请步骤S34解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件之后,获取原始音频文件的头部文件的多个字段。原始音频文件的多个字段中的部分字段是相同的。可选地,原始音频文件的多个字段中的部分字段通过字节表示的头部文件的内容相同。
步骤S404,对多个字段中相同的字段执行压缩,得到压缩字段。
在获取头部文件的多个字段之后,提取头部文件中多个字段中相同的字段,将多个字段中相同的字段执行压缩。可选地,在描述原始音频文件的头部文件的字段中,每个音频数据的采样点用四个字节表示,其中,四个字节中有两个字节为0x0000,为无效字节,可以将无效字节去掉,得到压缩头部文件,理论的头部文件的压缩率为50%。头部文件的压缩率为压缩后的文件的头部文件的大小与原始音频文件的头部文件的大小之比。
可选地,对原始音频文件的头部文件中的相同的字段执行有损压缩,也即,当头部文件的个别相同的字段丢失对头部文件不会造成太大影响时,可以忽略头部文件的个别相同的字段,从而得到原始音频文件的头部文件的压缩头部文件。可选地,对头部文件的个别相同的字段进行无损压缩,也即,头部文件的个别相同的字段在通过预设压缩算法执行压缩的过程中,头部文件的个别相同的字段必须准确无误,从而得到原始音频文件的头部文件的压缩头部文件。
步骤S406,获取多个字段中的未压缩字段。
原始音频文件的头部文件中不相同的字段为有效字段,未进行处理,也即,原始音频文件的头部文件中不相同的字段未执行压缩。在对原始音频文件中的多个字段中相同的字段执行压缩之后,获取多个字段中的未压缩字段。可选地,未压缩的字段所表示的尺寸,或者类型,或者版本,或者标识,或者采样大小,或者采样数量,或者每个采样的字节数不变。
步骤S408,合并压缩字段和未压缩字段,得到压缩头部文件。
在获取多个字段中的未压缩字段之后,合并压缩字段和未压缩字段,得到压缩头部文件。该压缩头部文件与原始音频文件的头部文件相比,允许损失一定的信息,压缩头部文件的音频数据与原始音频文件的头部文件的数据虽然不同,不能完全恢复原始音频文件的音频数据,但是经过压缩、解压的头部文件与原始音频文件的头部文件非常接近,所损失的头部文件的信息对原始音频文件的头部文件的影响小。该压缩头部文件也可以是准确无误保留原始音频文件的头部文件的信息,也即,压缩头部文件的字段所表示的尺寸,或者类型,或者版本,或者标识,或者采样大小,或者采样数量,或者每个采样的字节数不变。
该实施例获取原始音频文件的头部文件的字段,头部文件的字段中包括多个相同的字段,对多个相同的字段执行压缩,得到压缩字段,然后获取原始音频文件头部文件的字段中的未压缩字段,最后合并压缩字段和未压缩字段,得到压缩头部文件,实现了对头部文件执行压缩的目的。
作为一种可选的实施方式,本申请步骤S38通过压缩头部文件和数据文件生成压缩音频文件。该压缩头部文件是通过本申请步骤S36通过预设压缩算法对头部文件执行压缩,得到的压缩头部文件,该压缩音频文件的格式与压缩原始音频文件的头部文件的方法和压缩原始音频文件的数据文件的方法有关,比如,压缩音频文件的格式为zip、rar格式的压缩音频文件。
图5是根据本发明实施例的通过压缩头部文件和数据文件生成压缩音频文件的方法的流程图。如图5所示,该通过压缩头部文件和数据文件生成压缩音频文件的方法包括以下步骤:
步骤S502,获取压缩头部文件的文件标识。
获取原始音频文件的压缩头部文件的文件标识,该压缩头部文件的文件标识表示通过预设压缩算法对原始音频文件的头部文件所执行的压缩过程。在终端接收到音频数据文件时,通过该压缩头部文件的文件标识确定对压缩音频文件执行解压的后台算法,以及开始对压缩头部文件执行解压。
步骤S504,获取压缩头部文件的长度。
在本申请步骤S36通过预设压缩算法对头部文件执行压缩,得到压缩头部文件之后,压缩头部文件的长度也就确定,也即,压缩头部文件的字节数确定。通过压缩头部文件所占用的字节数获取压缩头部文件的长度。
步骤S506,合并压缩头部文件的文件标识,压缩头部文件的长度,压缩头部文件和数据文件,得到压缩音频文件。
在获取压缩头部文件的文件标识、获取压缩头部文件的长度之后,合并压缩头部文件的文件标识,压缩头部文件的长度,压缩头部文件和数据文件,得到压缩音频文件。该压缩音频文件降低了音频文件的存储空间。
该实施例通过获取压缩头部文件的文件标识,然后获取压缩头部文件的长度,合并压缩头部文件的文件标识,压缩头部文件的长度,压缩头部文件和数据文件,得到压缩音频文件,从而通过压缩头部文件和数据文件生成压缩音频文件,达到了降低音频文件的加载时间的效果。
作为一种可选的实施例,在本申请步骤S38通过压缩头部文件和数据文件生成压缩音频文件之后,该实施例的音频文件的压缩方法还包括:发送压缩音频文件至终端,其中,终端用于根据压缩头部文件的文件标识和压缩头部文件的长度对压缩头部文件执行解压,得到解压头部文件,并加载解压头部文件,根据解压头部文件播放数据文件。
可选地,本申请步骤S32至步骤S38由服务器端执行,在本申请步骤S38通过压缩头部文件和数据文件生成压缩音频文件之后,发送压缩音频文件至终端,该压缩音频文件是通过压缩头部文件和数据文件生成的压缩音频文件,该压缩音频文件包括文件标识、压缩头部文件的长度、压缩头部文件和数据文件,终端查找到压缩头部文件的文件标识后,确定解压压缩头部文件的后台算法,并且通过压缩头部文件的长度对压缩头部文件执行解压,得到解压头部文件,并加载解压头部文件,终端根据解压头部文件播放数据文件。
本发明实施例在通过压缩头部文件和数据文件生成压缩音频文件之后,将压缩音频文件发送至终端,终端在接收到该压缩音频文件之后,对该压缩音频文件按照后台算法执行解压,加载压缩头部文件。其中,终端对压缩音频文件执行解压的算法与对头部文件执行压缩的预设压缩算法相对应。终端在加载完压缩头部文件之后,播放压缩音频文件的数据文件。
举例而言,对于播放时间为40分钟、头部文件为200K的原始音频文件,采集大量原始音频文件的样本,解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,然后通过预设压缩算法对头部文件执行压缩,得到压缩头部文件,再通过压缩头部文件和数据文件生成压缩音频文件,并且在无线保真(Wireless-Fidelity,简称为WI-FI)网络下将压缩音频文件发送至终端,终端下载该原始音频文件从耗时1s降低至200ms,在第三代(Third Generation,简称为3G)移动通讯网络下,下载该音频文件从耗时4s降低至1s,从而提高了原始音频文件的下载效率。
本发明实施例的终端可以为企鹅FM电台。企鹅FM电台在对压缩音频文件进行首次缓冲时,缓冲的速度大大提升。终端也可以是其它播放音频文件的播放器,比如,酷狗音乐播放器、QQ音乐播放器、多米播放器等,终端也可以为客户端浏览器。
作为一种可选的实施例,该实施例的原始音频文件的格式为M4A格式。在MPEG-4标准中,普通的MPEG-4文件扩展名为“.mp4”。苹果公司在数字媒体播放程序iTunes以及便携式多功能数字多媒体播放器iPod中使用“.m4a”,从而区别MPEG-4的视频和音频文件,几乎所有支持MPEG-4音频的软件都可以支持文件扩展名为“.m4a”的音频文件。M4A格式的音频文件的“.m4a”扩展名是MPEG-4音频标准的文件的扩展名,可以利用很窄的带宽,通过数据帧重建、数据压缩,从而以最少的音频数据获得最佳的音频文件,可选地,M4A格式的音频文件通过ACC音频格式进行编码,可以将普通的“.mp4”音频文件修改为“.m4a”的音频文件。
作为一种可选的实施例,该实施例的预设压缩算法为GZIP压缩算法。GZIP压缩算法是GNU自由软件的文件压缩程序。可选地,在通过网络传输文件音频文件时,将原始音频文件通过GZIP压缩算法对原始音频文件的头部文件执行压缩,减少了原始音频文件的存储空间,且减少了网络传输音频数据的数据量,提高了音频文件的传输速度,进而提高了终端加载音频文件的速度,提高了音频文件的播放速度。
图6是根据本发明实施例的对音频文件执行压缩的示意图。如图6所示,该原始音频文件的文件扩展名为“.mp4”。该原始音频文件的字段的名称分别为“Ftype box”,“Moovbox”,“Mdat box”,其中,“Ftype box”字段和“Moov box”字段组成原始音频文件的头部文件,“Mdat box”为原始音频文件的数据文件。原始音频文件包括原始音频文件的头部文件和原始音频文件的数据文件,通过预设算法对原始音频文件的头部文件执行压缩,得到压缩率为25%的压缩音频文件。该压缩音频文件的压缩头部文件的文件标识通过“QIERFM”表示,压缩头部文件的长度通过“LEN”表示,压缩头部文件通过“Compress(head)”表示,压缩音频文件的数据文件通过“Mdat”表示,与原始音频文件的数据文件相同。
该实施例中的数据文件为压缩过的文件,通过获取原始音频文件,解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,再通过预设压缩算法对头部文件执行压缩,得到压缩头部文件,最后通过压缩头部文件和数据文件生成压缩音频文件,该实施例通过预设压缩算法对头部文件执行压缩,有利于降低头部文件的存储空间,通过压缩头部文件和数据文件生成压缩音频文件避免了在播放音频文件时由于音频文件的头部文件过大而导致音频文件的加载时间长的问题,极大地提高了音频文件的加载速度。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述音频文件的压缩方法的装置。图7是根据本发明实施例的音频文件的压缩装置的示意图。如图7所示,该音频文件的压缩装置包括:获取单元20,解析单元30,压缩单元40和生成单元50。
其中,获取单元20用于获取原始音频文件。解析单元30用于解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,数据文件为压缩过的文件。压缩单元40用于通过预设压缩算法对头部文件执行压缩,得到压缩头部文件。生成单元50通过压缩头部文件和数据文件生成压缩音频文件。
在该实施例的音频文件的压缩装置中,获取单元20可以用于执行本发明实施例中的步骤S32,解析单元30可以用于执行本发明实施例中的步骤S34,压缩单元40可以用于执行本发明实施例中的步骤S36,生成单元50可以用于执行本发明实施例中的步骤S38。
通过上述装置,获取单元20,解析单元30,压缩单元40和生成单元50,可以实现通过获取单元20获取原始音频文件,然后通过解析单元30解析原始音频文件进行解析,得到原始音频文件的头部文件和原始音频文件的数据文件,通过压缩单元40对原始音频文件的头部文件通过预设压缩算法执行压缩,从而得到压缩头部文件,减小了原始音频文件的头部文件的大小,并且通过生成单元50将压缩头部文件和数据文件生成压缩音频文件,降低了播放压缩音频文件时音频文件加载的时间,提高了音频文件缓冲的速度,进而解决了由于音频文件的头部文件过大而导致音频文件的加载时间长的技术问题。
本申请上述获取单元20可以用于获取原始音频文件,其中,原始音频文件携带的音频数据,通过终端的软件程序对音频数据进行处理,进而播放音频。可选地,获取单元20从数据库中获取终端需要播放的原始音频文件。
上述获取单元20获取的原始音频文件可以在数据库中用多个字段来表示,通过容器box存储字段数据。容器box包含了原始音频文件的样本数和每个样本中包含的对原始音频文件的采样点数的大小,通过样本数和每个样本中采样点数的大小使原始音频文件的音频数据分解出数据帧。原始音频文件的数据中总的样本数与容器box中的样本数一致。可选地,上述获取单元20获取原始音频文件的字段,得到原始音频文件的尺寸、类型、版本、标识、采样大小、采样数量和每个样本的字节数,从而通过上述获取单元20确定需要终端播放的音频文件。
在上述获取单元20获取原始音频文件之后,上述解析单元30解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,原始音频文件的数据文件为压缩过的文件。原始音频文件包括原始音频文件的头部文件和原始音频文件的数据文件,上述获取单元20获取原始音频文件,也即,获取包括头部文件和数据文件的音频文件。
通过上述获取单元20获取原始音频文件,可以获取到原始音频文件的头部文件的文件标识、原始音频文件的头部文件的长度。可选地,解析单元30解析原始音频文件是通过预分析原始音频文件的头部文件的文件标识和原始音频文件的头部文件的长度以确定原始音频文件的头部文件,再按照原始音频文件的头部文件的字节数将原始音频文件的头部文件和原始音频文件的数据文件分离开,从而得到原始音频文件的头部文件和原始音频文件的数据文件。上述解析单元30解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件的方式仅为本发明的优选实施例,并不代表上述解析单元30仅包括上述解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件的方式。为了提高解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件的效率,本发明实施例还可以包括其他能够解析原始音频文件的方式,此处不再一一举例。
在上述解析单元30解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件之后,通过上述压缩单元40对原始音频文件的头部文件执行压缩,去除原始音频文件的冗余数据。计算机处理的信息以二进制数据表示的,压缩单元40通过预设的压缩算法将二进制信息中相同的字符串以特殊字符进行标记,通过合理的数学计算公式,对原始音频文件的头部文件执行压缩,得到压缩头部文件。
可选地,上述压缩单元40对原始音频文件的头部文件执行压缩包括对原始音频文件的头部文件执行有损压缩和无损压缩。上述压缩单元40对原始音频文件的头部文件执行有损压缩,可以忽略对原始音频文件的头部文件影响不大的数据,对原始音频文件的头部文件执行压缩;上述压缩单元40对原始音频文件的头部文件进行无损压缩,压缩数据必须准确无误,从而得到原始音频文件的头部文件的压缩头部文件。
通过上述压缩单元40得到的压缩头部文件,减小了原始音频文件的头部文件的大小。在加载音频文件时,降低了音频文件加载的时间,提高了音频文件缓冲的速度。
在上述压缩单元40通过预设压缩算法对头部文件执行压缩,得到压缩头部文件之后,上述生成单元50通过原始音频文件的压缩头部文件和原始音频文件的数据文件生成压缩音频文件。可选地,上述生成单元50合并原始音频文件的压缩头部文件和原始音频文件的数据文件,从而生成压缩音频文件。
作为一种可选的实施方式,图8是根据本发明实施例的一种可选地音频文件的压缩装置的示意图。该音频文件的压缩装置包括:获取单元20,解析单元30,压缩单元40和生成单元50,其中,压缩单元40包括:第一获取模块41,压缩模块42,第二获取模块43和第一合并模块44。
第一获取模块41,用于获取头部文件的字段,其中,头部文件的字段中包括多个相同的字段。原始音频文件的头部文件包括多个字段。在得到原始音频文件的头部文件和原始音频文件的数据文件之后,第一获取模块41获取原始音频文件的头部文件的多个字段。原始音频文件的多个字段中的部分字段是相同的。可选地,原始音频文件的多个字段中的部分字段通过字节表示的头部文件的内容相同。
压缩模块42,用于对多个相同的字段执行压缩,得到压缩字段。
在第一获取模块41获取头部文件的多个字段之后,压缩模块42提取头部文件中多个字段中相同的字段,将多个字段中相同的字段执行压缩。
可选地,压缩模块42对原始音频文件的头部文件中的相同的字段执行有损压缩。压缩模块42也可以对头部文件的个别相同的字段进行无损压缩,从而得到原始音频文件的头部文件的压缩头部文件。
第二获取模块43,用于获取头部文件的字段中的未压缩字段。
在压缩模块42对原始音频文件中的多个字段中相同的字段执行压缩之后,通过第二获取模块43获取多个字段中的未压缩字段。可选地,通过第二获取模块43获取的未压缩的字段所表示的尺寸,或者类型,或者版本,或者标识,或者采样大小,或者采样数量,或者每个采样的字节数不变。
第一合并模块44,用于合并压缩字段和未压缩字段,得到压缩头部文件。
在第二获取模块43获取多个字段中的未压缩字段之后,通过合并模块44合并压缩字段和未压缩字段,得到压缩头部文件。
该实施例通过第一获取模块41获取原始音频文件的头部文件的字段,头部文件的字段中包括多个相同的字段,通过压缩模块42对多个相同的字段执行压缩,得到压缩字段,然后通过第二获取模块43获取原始音频文件头部文件的字段中的未压缩字段,最后通过第一合并模块44合并压缩字段和未压缩字段,得到压缩头部文件,实现了对头部文件执行压缩的目的。
作为一种可选的实施方式,图9是根据本发明实施例的一种可选地音频文件的压缩装置的示意图。该音频文件的压缩装置包括:获取单元20,解析单元30,压缩单元40和生成单元50,其中,压缩单元40包括:第一获取模块41,压缩模块42,第二获取模块43和第一合并模块44,生成单元50包括:第三获取模块51,第四获取模块52和第二合并模块53。
第三获取模51,用于获取压缩头部文件的预设文件标识。
第三获取模51获取的压缩头部文件的文件标识表示通过预设压缩算法对原始音频文件的头部文件所执行的压缩过程。在终端接收到音频数据文件时,通过该压缩头部文件的文件标识确定对压缩音频文件执行解压的后台算法,以及开始对压缩头部文件执行解压。
第四获取模块52,用于获取压缩头部文件的长度。
在通过合并模块44得到压缩头部文件之后,压缩头部文件的长度也就确定。
第二合并模块53,用于合并压缩头部文件的预设文件标识,压缩头部文件的长度,压缩头部文件和数据文件,得到压缩音频文件。
在第三获取模51压缩头部文件的文件标识,在第四获取模块52获取压缩头部文件的长度之后,第二合并模块53通过合并压缩头部文件的文件标识,压缩头部文件的长度,压缩头部文件和数据文件,得到压缩音频文件。该压缩音频文件降低了音频文件的存储空间,从而通过压缩头部文件和数据文件生成压缩音频文件,达到了降低音频文件的加载时间的效果。
作为一种可选的实施例,图10是根据本发明实施例的一种可选地音频文件的压缩装置的示意图。该音频文件的压缩装置包括:获取单元20,解析单元30,压缩单元40和生成单元50,其中,压缩单元40包括:第一获取模块41,压缩模块42,第二获取模块43和第一合并模块44,生成单元50包括:第三获取模块51,第四获取模块52和第二合并模块53,该音频文件的压缩装置还包括:发送单元60。
发送单元60,发送压缩音频文件至终端,其中,终端用于根据压缩头部文件的文件标识和压缩头部文件的长度对压缩头部文件执行解压,得到解压头部文件,并加载解压头部文件,根据解压头部文件播放数据文件。
可选地,发送单元60发送压缩音频文件至终端,该压缩音频文件是通过压缩头部文件和数据文件生成单元50生成的压缩音频文件,该压缩音频文件包括文件标识、压缩头部文件的长度、压缩头部文件和数据文件,在终端查找到压缩头部文件的文件标识后,确定解压压缩头部文件的后台算法,并且通过压缩头部文件的长度对压缩头部文件执行解压,得到解压头部文件,并加载解压头部文件,终端根据解压头部文件播放数据文件,该终端可以为客户端浏览器。
作为一种可选的实施例,该实施例的原始音频文件的格式为M4A格式。
作为一种可选的实施例,该实施例的预设压缩算法为GZIP压缩算法。
该实施例中的数据文件为压缩过的文件,通过获取原始音频文件,解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,再通过预设压缩算法对头部文件执行压缩,得到压缩头部文件,最后通过压缩头部文件和数据文件生成压缩音频文件,该实施例通过预设压缩算法对头部文件执行压缩,有利于降低头部文件的存储空间,通过压缩头部文件和数据文件生成压缩音频文件避免了在播放音频文件时由于音频文件的头部文件过大而导致音频文件的加载时间长的问题,极大地提高了音频文件的加载速度。
该实施例中的数据文件为压缩过的文件,通过获取单元20获取原始音频文件,通过解析单元30解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,再通过压缩单元40通过预设压缩算法对头部文件执行压缩,得到压缩头部文件,最后通过生产单元50压缩头部文件和数据文件生成压缩音频文件,该实施例通过预设压缩算法对头部文件执行压缩,有利于降低头部文件的存储空间,通过压缩头部文件和数据文件生成压缩音频文件避免了在播放音频文件时由于音频文件的头部文件过大而导致音频文件的加载时间长的问题,极大地提高了音频文件的加载速度。
实施例3
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一种音频文件的压缩方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
第一步,获取原始音频文件。
第二步,解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,数据文件为压缩过的文件;
第三步,通过预设压缩算法对头部文件执行压缩,得到压缩头部文件;
第四步,通过压缩头部文件和数据文件生成压缩音频文件。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:获取头部文件的字段,其中,头部文件的字段中包括多个相同的字段;对多个相同的字段执行压缩,得到压缩字段;获取头部文件的字段中的未压缩字段;合并压缩字段和未压缩字段,得到压缩头部文件。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:获取压缩头部文件的预设文件标识;获取压缩头部文件的长度;合并压缩头部文件的预设文件标识,压缩头部文件的长度,压缩头部文件和数据文件,得到压缩音频文件。
可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:发送压缩音频文件至终端,其中,终端用于根据压缩头部文件的文件标识和压缩头部文件的长度对压缩头部文件执行解压,得到解压头部文件,并加载解压头部文件,根据解压头部文件播放数据文件。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
实施例4
本发明的实施例还提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
可选地,图11是根据本发明实施例的一种计算机终端的结构框图。如图11所示,该计算机终端10可以包括:一个或多个(图中仅示出一个)处理器102,存储器104和传输装置106。
其中,存储器104可用于存储软件程序以及模块,如本发明实施例中的音频文件的压缩方法和装置对应的程序指令/模块,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述音频文件的压缩方法。存储器104可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置106包括一个网络适配器NIC,其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置106为射频RF模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器104用于存储预设动作条件和预设权限用户的信息、以及应用程序。
处理器102可以通过传输装置106调用存储器104存储的信息及应用程序,以执行下述步骤:
第一步,获取原始音频文件。
第二步,解析原始音频文件,得到原始音频文件的头部文件和原始音频文件的数据文件,其中,数据文件为压缩过的文件。
第三步,通过预设压缩算法对头部文件执行压缩,得到压缩头部文件。
第四步,通过压缩头部文件和数据文件生成压缩音频文件。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (12)

1.一种音频文件的压缩方法,其特征在于,包括:
获取原始音频文件;
根据头部文件的文件标识和头部文件的长度在所述原始音频文件中解析出所述头部文件;
根据所述头部文件的字节数,将所述原始音频文件中的头部文件和数据文件进行分离,得到所述原始音频文件的头部文件和所述原始音频文件的数据文件,其中,所述数据文件为压缩过的文件;
通过预设压缩算法对所述头部文件执行压缩,得到压缩头部文件;
通过所述压缩头部文件和所述数据文件生成压缩音频文件,其中,所述压缩音频文件中包括所述压缩头部文件的文件标识,所述压缩头部文件的文件标识用于表示通过预设压缩算法对所述头部文件所执行的压缩;
其中,通过预设压缩算法对所述头部文件执行压缩,得到压缩头部文件,包括以下步骤:获取所述头部文件的字段,其中,所述头部文件的字段中包括多个相同的字段;对所述多个相同的字段执行压缩,得到压缩字段;获取所述头部文件的字段中的未压缩字段;合并所述压缩字段和所述未压缩字段,得到所述压缩头部文件;
发送压缩音频文件至终端,其中,所述终端用于根据所述压缩头部文件的文件标识确定对压缩音频文件执行解压的后台算法,对压缩头部文件执行解压,所述终端对所述压缩音频文件执行解压的所述后台算法与对所述头部文件执行压缩的所述预设压缩算法相对应。
2.根据权利要求1所述的方法,其特征在于,通过所述压缩头部文件和所述数据文件生成压缩音频文件包括:
获取所述压缩头部文件的预设文件标识;
获取所述压缩头部文件的长度;以及
合并所述压缩头部文件的预设文件标识,所述压缩头部文件的长度,所述压缩头部文件和所述数据文件,得到所述压缩音频文件。
3.根据权利要求2所述的方法,其特征在于,在得到所述压缩音频文件之后,所述方法还包括:
发送所述压缩音频文件至终端,其中,所述终端用于根据所述压缩头部文件的文件标识和所述压缩头部文件的长度对所述压缩头部文件执行解压,得到解压头部文件,并加载所述解压头部文件,根据所述解压头部文件播放所述数据文件。
4.根据权利要求1所述的方法,其特征在于,所述原始音频文件的格式为M4A格式。
5.根据权利要求1所述的方法,其特征在于,所述预设压缩算法为GZIP压缩算法。
6.一种音频文件的压缩装置,其特征在于,包括:
获取单元,用于获取原始音频文件;
解析单元,用于根据头部文件的文件标识和头部文件的长度在所述原始音频文件中解析出所述头部文件;根据所述头部文件的字节数,将所述原始音频文件中的头部文件和数据文件进行分离,得到所述原始音频文件的头部文件和所述原始音频文件的数据文件,其中,所述数据文件为压缩过的文件;
压缩单元,用于通过预设压缩算法对所述头部文件执行压缩,得到压缩头部文件;以及
生成单元,通过所述压缩头部文件和所述数据文件生成压缩音频文件,其中,所述压缩音频文件中包括所述压缩头部文件的文件标识,所述压缩头部文件的文件标识用于表示通过预设压缩算法对所述头部文件所执行的压缩;
其中,所述压缩单元包括:第一获取模块,用于获取所述头部文件的字段,其中,所述头部文件的字段中包括多个相同的字段;压缩模块,用于对所述多个相同的字段执行压缩,得到压缩字段;第二获取模块,用于获取所述头部文件的字段中的未压缩字段;以及第一合并模块,用于合并所述压缩字段和所述未压缩字段,得到所述压缩头部文件;
所述装置还用于发送压缩音频文件至终端,其中,所述终端用于根据所述压缩头部文件的文件标识确定对压缩音频文件执行解压的后台算法,对压缩头部文件执行解压,所述终端对所述压缩音频文件执行解压的所述后台算法与对所述头部文件执行压缩的所述预设压缩算法相对应。
7.根据权利要求6所述的装置,其特征在于,所述生成单元包括:
第三获取模块,用于获取所述压缩头部文件的预设文件标识;
第四获取模块,用于获取所述压缩头部文件的长度;以及
第二合并模块,用于合并所述压缩头部文件的预设文件标识,所述压缩头部文件的长度,所述压缩头部文件和所述数据文件,得到所述压缩音频文件。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
发送单元,用于发送所述压缩音频文件至终端,其中,所述终端用于根据所述压缩头部文件的文件标识和所述压缩头部文件的长度对所述压缩头部文件执行解压,得到解压头部文件,并加载所述解压头部文件,根据所述解压头部文件播放所述数据文件。
9.根据权利要求6所述的装置,其特征在于,所述原始音频文件的格式为M4A格式。
10.根据权利要求6所述的装置,其特征在于,所述预设压缩算法为GZIP压缩算法。
11.一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至5任一项中所述的方法。
12.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至5任一项中所述的方法。
CN201510833596.8A 2015-11-25 2015-11-25 音频文件的压缩方法和装置 Active CN106776663B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510833596.8A CN106776663B (zh) 2015-11-25 2015-11-25 音频文件的压缩方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510833596.8A CN106776663B (zh) 2015-11-25 2015-11-25 音频文件的压缩方法和装置

Publications (2)

Publication Number Publication Date
CN106776663A CN106776663A (zh) 2017-05-31
CN106776663B true CN106776663B (zh) 2020-11-10

Family

ID=58965131

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510833596.8A Active CN106776663B (zh) 2015-11-25 2015-11-25 音频文件的压缩方法和装置

Country Status (1)

Country Link
CN (1) CN106776663B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108153873B (zh) * 2017-12-22 2022-04-22 深圳Tcl新技术有限公司 录制文件的压缩方法、电视机及可读存储介质
CN108492339B (zh) * 2018-03-28 2021-06-01 腾讯科技(深圳)有限公司 获取资源压缩包的方法、装置、电子设备及存储介质
CN110311972B (zh) * 2019-06-27 2022-02-22 百度在线网络技术(北京)有限公司 用于应用软件分发的检测方法、装置、设备及介质
CN111724824B (zh) * 2020-06-11 2021-12-03 北京凯视达信息技术有限公司 一种音频的储存和检索方法
CN117221016B (zh) * 2023-11-09 2024-01-12 北京亚康万玮信息技术股份有限公司 一种远程连接过程中数据安全传输方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102883188A (zh) * 2012-10-16 2013-01-16 北京千橡网景科技发展有限公司 实时下载播放mp4文件的方法和***
CN104219537A (zh) * 2013-05-31 2014-12-17 腾讯科技(北京)有限公司 视频数据处理的方法、装置及***
CN104952469A (zh) * 2014-03-31 2015-09-30 联发科技(新加坡)私人有限公司 一种音频文件处理方法及播放器

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9894379B2 (en) * 2001-07-10 2018-02-13 The Directv Group, Inc. System and methodology for video compression
JP2009037298A (ja) * 2007-07-31 2009-02-19 Brother Ind Ltd データ送信装置及びプログラム
BR112013020867A2 (pt) * 2011-02-16 2016-09-27 Panasonic Corp codificador de vídeo, método de codificação de vídeo, programa de codificação de vídeo, dispositivo de reprodução de vídeo, método de reprodução de vídeo, e programa de reprodução de vídeo
CN102638579B (zh) * 2012-03-29 2016-05-04 深圳市高正软件有限公司 一种基于移动设备数据传输的数据处理方法及***
CN104038307A (zh) * 2013-03-05 2014-09-10 鸿富锦精密工业(深圳)有限公司 数据流传输***及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102883188A (zh) * 2012-10-16 2013-01-16 北京千橡网景科技发展有限公司 实时下载播放mp4文件的方法和***
CN104219537A (zh) * 2013-05-31 2014-12-17 腾讯科技(北京)有限公司 视频数据处理的方法、装置及***
CN104952469A (zh) * 2014-03-31 2015-09-30 联发科技(新加坡)私人有限公司 一种音频文件处理方法及播放器

Also Published As

Publication number Publication date
CN106776663A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106776663B (zh) 音频文件的压缩方法和装置
KR101737294B1 (ko) 심볼 압축을 수반하는 데이터의 소스 코딩 및 디코딩을 위한 방법들 및 디바이스들
CN107395209B (zh) 数据压缩方法、数据解压缩方法及其设备
RU2630750C1 (ru) Устройство и способ для кодирования и декодирования исходных данных
KR101835340B1 (ko) 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
CN104244028B (zh) 一种基于码流自适应技术的内容分发方法、装置及***
JP6876928B2 (ja) 情報処理装置および方法
CN104661058A (zh) Mp4视频点播的数据流传输方法、客户端及点播***
CN105611395B (zh) 一种mp4格式视频在线播放的方法及***
CN104572966A (zh) 一种压缩文件的解压方法和装置
CN112584155B (zh) 一种视频数据处理方法和装置
KR20190040063A (ko) 인덱스 코딩 및 비트 스케줄링을 갖는 양자화기
US10474637B2 (en) Systems, media and methods for virtualized data compression
CN114205613A (zh) 互联网音视频数据同步压缩的方法和***
US20110202509A1 (en) Efficient extraction and compression of data
CN108737353B (zh) 一种基于数据分析***的数据加密方法及装置
CN113573059B (zh) 图像显示方法、装置、存储介质及电子装置
CN104572964A (zh) 一种压缩文件的解压方法和装置
CN105573775B (zh) Fpga配置文件加载方法和解码器
CN111417920A (zh) 数据处理方法及装置
US8593310B1 (en) Data-driven variable length encoding of fixed-length data
CN115361556A (zh) 一种基于自适应的高效视频压缩算法及其***
CN104219537A (zh) 视频数据处理的方法、装置及***
CN104113394B (zh) 通信调制信号的压缩及解压方法
CN113986820A (zh) 一种lz4格式文件转换为gzip格式文件的方法

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