本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
以下分别进行详细说明。
请参阅图1所示,本发明一个实施例提供的音频信号的编码方法,可以包括如下步骤:
101、将待编码的音频信号划分为多个音频分块。
其中,每个音频分块中包括多个分块信号。
在本发明实施例中,音频信号的编码装置为了实现对音频信号的加密,首先将待编码的音频信号划分为多个音频分块,待编码的音频信号具体可以为一个音频码流,音频信号的编码装置将音频信号分为多个音频分块,具体划分为多少个音频分块可以由音频信号的长度以及使用的加密算法来决定,此处划分得到的多个音频分块至少为两个,也可以是三个或者其他个数,此处不做限定。另外,本发明实施例中,将音频信号划分为多个音频分块之后,每个音频分块包括有多个分块信号,其中音频分块中包括的分块信号可以是多种数据宽度的分块信号,例如,若音频分块的最高采样位宽为16位或者32位,那么在每个音频分块中都包括有对应于最高位宽下的各种数据宽度的分块信号。
102、按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号。
其中,音频分块的最高采样位宽为N位,N为正整数,M为小于N位的正整数。
在本发明实施例中,音频信号的编码装置将一个待编码的音频信号划分为多个音频分块之后,对于每个音频分块,从中提取出数据宽度小于M位的分块信号,这些被提取出的分块信号作为需要加密的信号由步骤103进行进一步的加密处理。其中,本发明实施例中从每个音频分块中获取到的分块信号都满足如下特征:数据宽度小于M位,且M是小于N位的一个正整数,N指的是每个音频分块的最高采样位宽。例如,N为16位时,M可以为小于16的一个正整数,当M为3时,表示步骤102中获取到的是每个音频分块中数据宽度为1位和2位的分块信号。N的取值越大表示待编码的音频信号是高采样率、高数据位的音频,通过M的不同赋值可以实现对待编码的音频信号中哪些数据宽度的分块信号进行编码,M的取值越大表示在每个音频分块中需要加密的分块信号越多,M的取值越小表示在每个音频分块中需要加密的分块信号越少。
需要说明的是,在本发明实施例中,步骤102通过从每个音频分块中按照采样位宽来获取小于M位的数据宽度对应的分块信号,实质上是将每个音频分块中的分块信号都分成了两类分块信号,其中一种是数据宽度小于M位的,另一种是数据宽度大于或等于M位的,数据宽度小于M位的可以认为是音频分块中的低位分块信号,数据宽度大于或等于M位的可以认为是音频分块中的高位分块信号。其中,对于每个音频分块中的低位分块信号需要进一步的执行步骤103,而对于每个音频分块中的高位分块信号则无需执行步骤103,M的具体取值可以认为是加密的深度,即步骤102中M的取值越大,表示对音频分块的加密越深。M的取值可以根据具体的应用场景由音频信号的编码装置来提前设定,也可以是根据应用场景中对音频信号的播放质量来确定,在本发明实施例中的一些实施例中,步骤101中将一个待编码的音频信号划分为多少个音频分块也可以由加密密钥的长度以及加密的深度(即M)为确定。
在本发明的一些实施例中,步骤102中M的取值可以固定不变,这样的话从每个音频分块中获取到的分块信号的数据宽度都是满足小于一个固定的M值的,例如,当M固定为3时,从每个音频信号中获取到的分块信号的数据宽度都是1位和2位。在本发明的另一些实施例中,M的取值还可以不唯一,具体的,步骤102按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号,具体可以包括如下步骤:
按照采样位宽从所有音频分块的一些分块中获取第一数据宽度对应的分块信号;
按照采样位宽从所有音频分块的另一些分块中获取第二数据宽度对应的分块信号,其中,第一数据宽度和第二数据宽度不相等。
也就是说,在本发明的一些实施例中,步骤102中M的取值可以为两个,分别为第一数据宽度和第二数据宽度,那么对于待编码的音频信号的所有音频分块,其中一些分块可以按照第一数据宽度来获取分块信号,另一些分块可以按照第二数据宽度来获取分块信号,由于步骤102中获取到的分块信号是用于步骤103中的加密处理,故当M的取值不唯一时可以认为步骤102是按照多个加密深度来获取分块信号。举例说明如下:M的取值可以为3,也可以为4,若将一个待编码的音频信号划分为5个音频分块,那么对于其中的2个分块可以获取小于3位的数据宽度对应的分块信号,对于其余的3个分块可以获取小于4位的数据宽度对应的分块信号。
103、使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密。
在本发明实施例中,音频信号的编码装置从每个音频分块中获取到小于M位的数据宽度对应的分块信号之后,使用对称加密算法对获取到的每个音频分块中小于M位的数据宽度对应的分块信号进行加密。
在本发明实施例中,步骤102获取到的是每个音频分块中小于M位的数据宽度对应的分块信号,步骤103中也是针对这些分块信号进行加密的,而对于每个音频分块中大于或等于M位的数据宽度对应的分块信号则无需执行步骤103,也就是不需要对每个音频分块中大于或等于M位的数据宽度对应的分块信号进行加密,故相当于音频信号的每个音频分块中只有数据宽度为低位的分块信号被加密,对于数据宽度为高位的分块信号没有被加密,由于音频信号采用了对部分的分块信号进行加密的方式,只有授权用户可以通过解密还原出音频信号中被加密的低位分块信号,得到完整的音频信号,授权用户可以正常使用音频信号,故可以防止音频信号被恶意用户的非法使用。由于音频信号采用了对部分的分块信号进行加密的方式,对于音频信号的每个音频分块中数据宽度为高位的分块信号并没有被加密,所以对于非授权用户也可以使用音频信号的高位分块信号,但是无法使用音频信号的低位分块信号,即非授权用户也可以体验品质略低的音频信号,但是相对于授权用户仍无法得到最优的体验,既可以保护授权用户的权益,也可以对非授权用户进行部分开放。
需要说明的是,在本发明实施例中,步骤103中按照对称加密算法加密的是每个音频分块中的部分分块信号,而不是每个音频分块中的全部分块信号,由于每个音频分块中的低位分块信号被加密,对于非授权用户来说,无法获取到使用的加密密码,故无法从每个音频分块中解密出被加密的低位分块信号,而只能获取到每个音频分块中的高位分块信号,这些高位分块信号可以被正常使用,而低位分块信号由于被加密无法使用,非授权用户通过高位分块信号的使用仍能体验到品质略低的音频信号,所以本发明实施例中即使对音频分块的低位分块信号进行了加密,也不会导致非授权用户完全不能使用音频信号,而是可以使用部分音频信号,这对于所有用户来说仍是非常友好的,用户体验度很高,同时若用户需要体验完整的音频信号,仍可以成为授权用户,授权用户拥有加密密钥可以解密出完整的音频信号,授权用户可以体验到无损的音频信号,用户体验度也很高。
在本发明实施例中,音频信号的编码装置使用的对称加密算法可以有多种,例如,数据加密算法(Data Encryption Algorithm,DEA)、三重数据加密算法(Triple Data Encryption Algorithm,TDEA)、RC5分组密码算法、高级加密标准(Advanced Encryption Standard,AES)。其中,音频信号的编码装置使用的密钥可以提前发送给音频信号的解码装置使用。
在本发明的一些实施例中,步骤103使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密之后,本发明实施例提供的音频信号的编码方法,还可以包括如下步骤:
A1、在每个音频分块中分别设置标志位,其中,标志位用于指示每个音频分块中被加密的分块信号。
也就是说,为了便于解码端的解密,在完成对每个音频分块的加密之后,还可以在每个加密分块中设置一个标志位,对每个音频分块中被加密的分块信号进行指示,那么通过标志位,音频信号的解码装置就可以完成对音频分块的解密。每个音频分块中设置的标志位能够指示对哪些分块信号进行加密以及采用的加密方式,例如,对于音频信号的编码端和解码端,若采用的对称加密算法没有提前预置,也可以通过标志位来指示采用了哪种加密算法,通过在音频分块中设置的标志位,解码端可以确定应该使用哪种算法来解密。
通过前述的实施例说明可知,前述步骤102中M的取值也可以不唯一,对于音频信号的编码端和解码端,若M的取值没有唯一的,并且没有提前确定,还可以通过标志位来具体指示每个音频分块中被加密的分块信号的数据宽度,即所有音频分块中哪些分块信号是按照第一数据宽度获取到的,哪些分块信号是按照第二数据宽度获取到的。
在本发明的一些实施例中,步骤103使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密,具体可以包括如下步骤:
B1、将从每个音频分块中提取出的小于M位的数据宽度对应的分块信号组成一个分块信号组合,则每个音频分块中提取出小于M位的数据宽度对应的分块信号后在每个音频分块中留下有空位;
B2、使用对称加密算法对分块信号组合进行加密;
B3、将加密后的分块信号组合中包括的各个分块信号填充回空位。
其中,步骤B1中,从每个音频分块中提取出小于M位的数据宽度对应的分块信号之后,将提取到的所有分块信号组成一个分块信号组合,则在原来的音频分块中由于小于M位的数据宽度对应的分块信号被提取出,那么保留下这些分块信号的位置,称之为空位,执行步骤B2,对得到的分块信号组合进行加密,所以只需要执行一次加密,就可以完成对音频信号中每个音频分块的加密,加密完成后,执行步骤B3,将提取出的各个分块信号填充到原音频分块中保留的空位,即没有改变各个音频分块中分块信号的位置和顺序,只是对其中小于M位的数据宽度对应的分块信号进行了加密。
在本发明的另一些实施例中,步骤103使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密,具体可以包括如下步骤:
C1、使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号分别进行加密。
也就是说,在每个音频分块中对小于M位的数据宽度对应的分块信号进行加密是单独进行的,每个音频分块都需要分别进行加密。
进一步的,上述步骤C1使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号分别进行加密,包括:
分别使用不同的密钥对每个音频分块中小于M位的数据宽度对应的分块信号进行加密。
其中,每个音频分块在加密时使用一个密钥,那么对于所有的音频分块,分别使用了不同的密钥,通过使用多个密钥使得加密过程进一步的复杂,可以防止加密数据被破解,提高数据加密的安全性。
在本发明的一些实施例中,步骤103使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密之后,本发明实施例提供的音频信号的编码方法,还可以包括如下步骤:
D1、对加密后的每个音频分块进行无损压缩。
其中,在完成步骤103的加密过程之后,还可以进一步的对加密后的每个音频分块进行无损压缩,也就是毫无损失地将音频信号进行压缩,能够在完全保存原文件的所有数据的前提下,将音频信号的体积压缩的更小,而将压缩后的音频信号还原后,能够实现与源信号相同的大小、相同的码率。具体的,音频信号的编码装置可以使用flac或者ape对音频分块进行无损压缩。
进行的,若对音频分块进行了无损压缩,则前述的步骤A1在每个音频分块中分别设置标志位,具体可以包括:
对加密后的每个音频分块进行无损压缩之后,在每个音频分块的压缩域中设置对应的标志位,其中,标记位还用于指示对每个音频分块采用的压缩格式。
也就是说,可以将标志位设置在音频分块的压缩域中,例如,若按照flac进行无损压缩,标志位可以设置在文件头中,若按照ape进行无损压缩,标志位可以设置在结构体头部中,具体采用哪种压缩方式,此处不做限定。
通过以上实施例对本发明实施例的描述可知,首先将待编码的音频信号划分为多个音频分块,其中,每个音频分块中包括多个分块信号,然后按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号,且M小于音频分块的最高采样位宽,最后使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密。由于音频信号的每个音频分块中只有数据宽度小于M位的分块信号被加密,而对于音频信号的每个音频分块中数据宽度大于或等于M的分块信号则没有被加密,故相当于音频信号的每个音频分块中只有数据宽度为低位的分块信号被加密,对于数据宽度为高位的分块信号没有被加密,由于音频信号采用了对部分的分块信号进行加密的方式,只有授权用户可以通过解密还原出音频信号中被加密的低位分块信号,得到完整的音频信号,授权用户可以正常使用音频信号,故可以防止音频信号被恶意用户的非法使用。由于音频信号采用了对部分的分块信号进行加密的方式,对于音频信号的每个音频分块中数据宽度为高位的分块信号并没有被加密,所以对于非授权用户也可以使用音频信号的高位分块信号,但是无法使用音频信号的低位分块信号,即非授权用户也可以体验品质略低的音频信号,但是相对于授权用户仍无法得到最优的体验,既可以保护授权用户的权益,也可以对非授权用户进行部分开放。
以上实施例对本发明提供的音频信号的编码方法进行了说明,接下来介绍本发明实施例提供的音频信号的解码方法,应用于音频信号的解码场景中,请参阅如图2所示,主要可以包括如下步骤:
201、获取待解码的音频信号。
其中,音频信号包括有多个音频分块,每个音频分块中包括多个分块信号。
在本发明实施例中,若需要使用已加密的音频信号时,需要对待解码的音频信号进行解码,由音频信号的解码装置首先获取到待解码的音频信号,其中,待解码的音频信号就是前述实施例中描述的已加密的音频信号,通过前述实施例中的描述可知,音频信号包括有多个音频分块,每个音频分块中包括有多个分块信号。
202、按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号。
其中,音频分块的最高采样位宽为N位,N为正整数,M为小于N位的正整数。
在本发明实施例中,音频信号的解码装置获取到多个音频分块之后,对于每个音频分块,从中提取出数据宽度小于M位的分块信号,这些被提取出的分块信号作为需要解密的信号由步骤203进行进一步的加密处理。其中,本发明实施例中从每个音频分块中获取到的分块信号都满足如下特征:数据宽度小于M位,且M是小于N位的一个正整数,N指的是每个音频分块的最高采样位宽。例如,N为16位时,M可以为小于16的一个正整数,当M为3时,表示步骤202中获取到的是每个音频分块中数据宽度为1位和2位的分块信号。N的取值越大表示待编码的音频信号是高采样率、高数据位的音频,通过M的不同赋值可以实现对待编码的音频信号中哪些数据宽度的分块信号进行解码,M的取值越大表示在每个音频分块中需要加密的分块信号越多,M的取值越小表示在每个音频分块中需要加密的分块信号越少。音频信号的解码装置保持与音频信号的编码装置相同的方式获取小于M位的数据宽度对应的分块信号,这些获取到的小于M位的数据宽度对应的分块信号是被编码装置加密过的,通过步骤202获取到这些已加密的分块信号,是为进一步的执行步骤203。
需要说明的是,在本发明实施例中,步骤202通过从每个音频分块中按照采样位宽来获取小于M位的数据宽度对应的分块信号,实质上是将每个音频分块中的分块信号都分成了两类分块信号,其中一种是数据宽度小于M位的,另一种是数据宽度大于或等于M位的,数据宽度小于M位的可以认为是音频分块中的低位分块信号,数据宽度大于或等于M位的可以认为是音频分块中的高位分块信号。其中,对于每个音频分块中的低位分块信号是已加密的信号,故需要进一步的执行步骤203,而对于每个音频分块中的高位分块信号并没有加密,则无需执行步骤203,音频信号的解码装置采用M的具体取值由音频信号的编码装置来确定,即解密的深度需要与加密的深度保持一致,即步骤202中M的取值越大,表示对音频分块的加密越深。M的取值可以根据具体的应用场景由音频信号的编码装置来提前设定,也可以是根据应用场景中对音频信号的播放质量来确定,音频信号的编码装置确定出M的具体取值,在解码端,音频信号的解码装置采用该M的取值获取到每个音频分块中小于M位的数据宽度对应的分块信号。
在本发明的一些实施例中,步骤202按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号,具体可以包括如下步骤:
E1、从待解码的音频信号的每个音频分块中分别提取出标志位;
E2、按照标志位分别从每个音频分块中获取已加密的分块信号,已加密的分块信号为音频分块中小于M位的数据宽度对应的分块信号。
也就是说,音频信号的编码装置在每个音频分块中设置有标志位,音频信号的解码装置可以从每个音频分块中分别提取到标志位,然后根据标志位的指示分别从每个音频分块中获取到已加密的分块信号,这些已加密的分块信号就是标志位指示的音频分块中小于M位的数据宽度对应的分块信号。
在本发明的一些实施例中,步骤202中M的取值可以固定不变,这样的话从每个音频分块中获取到的分块信号的数据宽度都是满足小于一个固定的M值的,例如,当M固定为3时,从每个音频信号中获取到的分块信号的数据宽度都是1位和2位。在本发明的另一些实施例中,M的取值还可以不唯一,具体的,步骤E2按照标志位分别从每个音频分块中获取已加密的分块信号,包括:
按照标志位中指示的已加密的分块信号的数据宽度从每个音频分块中获取标志位指示的数据宽度对应的分块信号。
也就是说,在本发明的一些实施例中,若M的取值可以为两个,分别为第一数据宽度和第二数据宽度,那么对于待编码的音频信号的所有音频分块,其中一些分块可以按照第一数据宽度来获取分块信号,另一些分块可以按照第二数据宽度来获取分块信号,当M的取值不唯一时需要在每个音频分块的标志位中指示出每个音频分块中被加密的分块信号的数据宽度。举例说明如下:M的取值可以为3,也可以为4,若将一个待编码的音频信号划分为5个音频分块,那么对于其中的2个分块可以获取小于3位的数据宽度对应的分块信号,对于其余的3个分块可以获取小于4位的数据宽度对应的分块信号,那么就需要在音频信号的每个音频分块中分别指示出使用的数据宽度为3还是4。
在本发明的一些实施例中,步骤201获取待解码的音频信号之后,本发明实施例提供的音频信号的解码方法还可以包括如下步骤:
F1、对待解码的音频信号中每个音频分块进行解压缩。
其中,若音频信号的编码装置对音频信号进行了压缩,音频信号的解码装置在获取到音频信号之后,还需要执行步骤F1,对音频信号的每个音频分块进行解压缩。解压缩需要使用与压缩相反的方式对音频信号进行解压缩,对于音频信号的编码端和解码端,若编码端已经与解码端提前进行了协商,解码端在获取到音频信号之后可以按照预置的压缩格式进行解压缩,得到无损的音频信号。
进一步的,在本发明的一些实施例中,步骤F1对待解码的音频信号中每个音频分块进行解压缩,具体可以包括如下步骤:
根据每个音频分块的压缩域中设置的标志位获取每个音频分块被压缩采用的压缩格式;
按照压缩格式对每个音频分块进行解压缩,得到无损的多个音频分块。
其中,若音频信号的编码装置通过标志位指示了采用的压缩格式,那么音频信号的解码装置首先从音频分块的压缩域中获取到标志位,通过该标志位确定编码装置使用的压缩格式,接下来按照压缩格式对每个音频分块进行解压缩,得到无损的多个音频分块。
203、使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行解密。
在本发明实施例中,音频信号的解码装置分别从每个音频分块中获取小于M位的数据宽度对应的分块信号之后,使用对称加密算法对获取到的每个音频分块中小于M位的数据宽度对应的分块信号进行解密。
在本发明实施例中,步骤202获取到的是每个音频分块中小于M位的数据宽度对应的分块信号,步骤203中也是针对这些分块信号进行解密的,而对于每个音频分块中大于或等于M位的数据宽度对应的分块信号则无需执行步骤203,也就是不需要对每个音频分块中大于或等于M位的数据宽度对应的分块信号进行解密,故相当于音频信号的每个音频分块中只有数据宽度为低位的分块信号被解密,对于数据宽度为高位的分块信号无需进行解密,由于音频信号采用了对部分的分块信号进行加密的方式,只有授权用户可以通过解密还原出音频信号中被加密的低位分块信号,得到完整的音频信号,授权用户可以正常使用音频信号,故可以防止音频信号被恶意用户的非法使用。由于音频信号采用了对部分的分块信号进行加密的方式,对于音频信号的每个音频分块中数据宽度为高位的分块信号并没有被加密,所以对于非授权用户也可以使用音频信号的高位分块信号,但是无法使用音频信号的低位分块信号,即非授权用户也可以体验品质略低的音频信号,但是相对于授权用户仍无法得到最优的体验,既可以保护授权用户的权益,也可以对非授权用户进行部分开放。
在本发明实施例中,音频信号的编码装置使用的哪个对称加密算法进行加密时,音频信号的解码装置也需要使用对应的算法来进行解密。音频信号的解码装置使用的密钥可以从音频信号的编码装置获取到。
在本发明的一些实施例中,步骤203使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行解密,具体可以包括如下步骤:
G1、将从每个音频分块中提取出的小于M位的数据宽度对应的分块信号组成一个分块信号组合,则每个音频分块中提取出小于M位的数据宽度对应的分块信号后在每个音频分块中留下有空位;
G2、使用对称加密算法对分块信号组合进行解密;
G3、将解密后的分块信号组合中包括的各个分块信号填充回所述空位。
其中,步骤G1中,从每个音频分块中提取出小于M位的数据宽度对应的分块信号之后,将提取到的所有分块信号组成一个分块信号组合,则在原来的音频分块中由于小于M位的数据宽度对应的分块信号被提取出,那么保留下这些分块信号的位置,称之为空位,执行步骤G2,对得到的分块信号组合进行解密,所以只需要执行一次解密,就可以完成对音频信号中每个音频分块的解密,解密完成后,执行步骤G3,将提取出的各个分块信号填充到原音频分块中保留的空位,即没有改变各个音频分块中分块信号的位置和顺序,只是对其中小于M位的数据宽度对应的分块信号进行了解密。
在本发明的另一些实施例中,步骤203使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行解密,具体可以包括如下步骤:
使用对称加密算法的密钥对每个音频分块中小于M位的数据宽度对应的分块信号分别进行解密。
也就是说,在每个音频分块中对小于M位的数据宽度对应的分块信号进行解密是单独进行的,每个音频分块都需要分别进行解密。每个音频分块在解密时使用一个密钥,那么对于所有的音频分块,分别使用了不同的密钥,通过使用多个密钥使得解密过程进一步的复杂,可以防止加密数据被破解,提高数据加密的安全性。
通过以上实施例对本发明实施例的描述可知,首先获取待解码的音频信号,接下来按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号,且M小于音频分块的最高采样位宽,最后使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行解密。由于音频信号的每个音频分块中只有数据宽度小于M位的分块信号被加密,由于音频信号采用了对部分的分块信号进行加密的方式,只有授权用户可以通过解密还原出音频信号中被加密的低位分块信号,得到完整的音频信号,授权用户可以正常使用音频信号,故可以防止音频信号被恶意用户的非法使用。由于音频信号采用了对部分的分块信号进行加密的方式,对于音频信号的每个音频分块中数据宽度为高位的分块信号并没有被加密,所以对于非授权用户也可以使用音频信号的高位分块信号,但是无法使用音频信号的低位分块信号,即非授权用户也可以体验品质略低的音频信号,但是相对于授权用户仍无法得到最优的体验,既可以保护授权用户的权益,也可以对非授权用户进行部分开放。
为便于更好的理解和实施本发明实施例的上述方案,下面举例相应的应用场景来进行具体说明。
请参阅如图3和图4所示,图3为本发明实施例提供的音频信号的编码的实现过程示意图,图4为本发明实施例提供的音频信号的解码的实现过程示意图。本发明实施例中利用密码学手段对数字音频进行了部分加密,加密之后的音频是格式兼容的,也就是说利用其他的播放器也能进行播放,但是音频信号的质量会有所降低,此音频质量可以通过加密深度来控制,加密之后的音频利用特定的授权播放器可以完全还原出原始的音频。
接下来举例说明中以两种无损音频格式flac与ape为例,给出具体的实现过程,主要包含两部分:编码端与解码端。
首先从编码端进行说明。
例如,编码端通过服务器来实现,主要实现对于音频信号的加密。
首先,根据密钥长度以及需要进行加密的深度,确定分块大小,然后将一个音频信号划分为多个音频分块,加密的深度取为3位,如图3所示,在每个音频分块中提取出低3位的分块信号,图3中用右斜线表示的方块标识一个音频分块中数据宽度为低3位的分块信号,当每个音频分块中的低3位的分块信号提取出来之后,在原来的音频分块中就存在空位,将每个音频分块的需要进行加密的低位分块信号取出来组成一个分块信号组合,采用对称加密算法对分块信号组合进行加密,可选的算法有DES,3DES,TDEA,RC5,AES等,密钥长度可以选64位,128位,256位等等。加密深度可以是从低位开始的若干位,例如图3中所示的3位,每个分块所需要加密的位数必须是加密分块的整数倍(即密钥长度),如图3中用左右交叠线表示的是加密后的分块信号。完成对分块信号组合的加密后,将加密后的分块信号填充回原来的空位,得到已加密的音频信号。
在得到已加密的音频信号之后,对部分加密后的分块信号进行无损压缩。对于不同的压缩格式,需要分别在压缩域的相应的标志位进行标记,以便解码端能够对加密的音频信号进行正确解码。若采用flac格式进行无损编码,在文件头(STREAMINFO)类型的元数据块(METADATA_BLOCK)的头域(header)中做相应的标示。在该header的7位头域类型(BLOCK_TYPE)字段中,7-126是保留字段,可以使用其中的几个码字来指示音频信号所采用的加密方式。若采用ape格式进行无损编码,在APE结构体头部(structAPE_HEADER)中,第二个字段没有使用,可以在该字段中指示音频信号所采用的加密方式。
接下来从解码端进行说明。例如,解码端通过客户端来实现,具体用于对音频文信号的解密播放。
解码端首先对下载的无损音频信号进行解压缩,并从相应的文件头信息中获取音频信号所采用的加密方式。从解码之后的音频信号中提取出每个音频分块中之前加密的分块信号,如图4所示,得到已加密的分块信号,用左右交叠线来表示,在每个音频分块中提取出已加密的分块信号,当每个音频分块中的已加密的分块信号提取出来之后,在原来的音频分块中就存在空位,将每个音频分块的需要进行解密的分块信号取出来组成一个分块信号组合,利用从编码端获取的密钥对其进行解密,得到低3位的分块信号,如图4中用右斜线表示的分块信号,将解密之后的低位数据填充回原来的位置,还原出无损音频信号,并进行播放。
通过以上对本发明实施例的举例可知,本发明实施例可以提高用户友好度,使得非授权的用户也可以播放品质略微有所降低的音频信号,并且可以增加了用户粘附度,使得授权用户更加忠实于特定的播放器,能够保护无损音乐的版权,防止了恶意的用户的非法下载。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
为便于更好的实施本发明实施例的上述方案,下面还提供用于实施上述方案的相关装置。
请参阅图5-a所示,本发明实施例提供的一种音频信号的编码装置500,可以包括:块划分单元501、分块信号获取单元502和加密单元503,其中,
块划分单元501,用于将待编码的音频信号划分为多个音频分块,其中,每个音频分块中包括多个分块信号;
分块信号获取单元502,用于按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号,所述音频分块的最高采样位宽为N位,所述N为正整数,所述M为小于所述N位的正整数;
加密单元503,用于使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密。
在本发明的一些实施例中,请参阅如图5-b所示,音频信号的编码装置500,还包括:标记单元504,其中,
所述标记单元504,用于所述加密单元503使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密之后,在每个音频分块中分别设置标志位,所述标志位用于指示每个音频分块中被加密的分块信号。
在本发明的一些实施例中,所述标志位还用于指示每个音频分块中被加密的分块信号的数据宽度。
在本发明的一些实施例中,请参阅如图5-c所示,所述加密单元503,包括:
组合模块5031,用于将从每个音频分块中提取出的所述小于M位的数据宽度对应的分块信号组成一个分块信号组合,则每个音频分块中提取出小于M位的数据宽度对应的分块信号后在每个音频分块中留下有空位;
加密模块5032,用于使用对称加密算法对所述分块信号组合进行加密;
填充模块5033,用于将加密后的所述分块信号组合中包括的各个分块信号填充回所述空位。
在本发明的一些实施例中,所述加密单元503,具体用于使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号分别进行加密。
在本发明的一些实施例中,所述加密单元503,具体用于分别使用不同的密钥对每个音频分块中小于M位的数据宽度对应的分块信号进行加密。
在本发明的一些实施例中,所述分块信号获取单元502,具体用于按照采样位宽从所有音频分块的一些分块中获取第一数据宽度对应的分块信号;按照采样位宽从所有音频分块的另一些分块中获取第二数据宽度对应的分块信号,其中,所述第一数据宽度和所述第二数据宽度不相等。
在本发明的一些实施例中,请参阅如图5-d所示,相对于如图5-a所示,音频信号的编码装置500,还包括:压缩单元505,其中,
所述压缩单元505,用于所述加密单元使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密之后,对加密后的每个音频分块进行无损压缩。
具体的,标记单元504,具体用于所述压缩单元对加密后的每个音频分块进行无损压缩之后,在每个音频分块的压缩域中设置对应的标志位,所述标记位还用于指示对每个音频分块采用的压缩格式。
通过以上实施例对本发明实施例的描述可知,首先将待编码的音频信号划分为多个音频分块,其中,每个音频分块中包括多个分块信号,然后按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号,且M小于音频分块的最高采样位宽,最后使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行加密。由于音频信号的每个音频分块中只有数据宽度小于M位的分块信号被加密,而对于音频信号的每个音频分块中数据宽度大于或等于M的分块信号则没有被加密,故相当于音频信号的每个音频分块中只有数据宽度为低位的分块信号被加密,对于数据宽度为高位的分块信号没有被加密,由于音频信号采用了对部分的分块信号进行加密的方式,只有授权用户可以通过解密还原出音频信号中被加密的低位分块信号,得到完整的音频信号,授权用户可以正常使用音频信号,故可以防止音频信号被恶意用户的非法使用。由于音频信号采用了对部分的分块信号进行加密的方式,对于音频信号的每个音频分块中数据宽度为高位的分块信号并没有被加密,所以对于非授权用户也可以使用音频信号的高位分块信号,但是无法使用音频信号的低位分块信号,即非授权用户也可以体验品质略低的音频信号,但是相对于授权用户仍无法得到最优的体验,既可以保护授权用户的权益,也可以对非授权用户进行部分开放。
请参阅图6-a所示,本发明实施例提供的一种音频信号的解码装置500,可以包括:音频信号获取单元601、分块信号获取单元602和解密单元603,其中,
音频信号获取单元601,用于获取待解码的音频信号,所述音频信号包括有多个音频分块,每个音频分块中包括多个分块信号;
分块信号获取单元602,用于按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号,其中,所述音频分块的最高采样位宽为N位,所述N为正整数,所述M为小于所述N位的正整数;
解密单元603,用于使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行解密。
在本发明的一些实施例中,请参阅如图6-b所示,所述分块信号获取单元602,包括:
标志位提取模块6021,用于从待解码的音频信号的每个音频分块中分别提取出标志位;
分块信号获取模块6022,用于按照所述标志位分别从每个音频分块中获取已加密的分块信号,所述已加密的分块信号为音频分块中小于M位的数据宽度对应的分块信号。
在本发明的一些实施例中,所述分块信号获取模块6022,具体用于按照所述标志位中指示的已加密的分块信号的数据宽度从每个音频分块中获取所述标志位指示的数据宽度对应的分块信号。
在本发明的一些实施例中,请参阅如图6-c所示,所述解密单元603,包括:
组合模块6031,用于将从每个音频分块中提取出的所述小于M位的数据宽度对应的分块信号组成一个分块信号组合,则每个音频分块中提取出小于M位的数据宽度对应的分块信号后在每个音频分块中留下有空位;
解密模块6032,用于使用对称加密算法对所述分块信号组合进行解密;
填充模块6033,用于将解密后的所述分块信号组合中包括的各个分块信号填充回所述空位。
在本发明的一些实施例中,所述解密单元603,具体用于使用对称加密算法的密钥对每个音频分块中小于M位的数据宽度对应的分块信号分别进行解密。
在本发明的一些实施例中,请参阅如图6-d所示,相对于如图6-a所示,所述音频信号的解码装置600,还包括:解压缩单元604,其中,
所述解压缩单元604,用于所述音频信号获取单元获取待解码的音频信号之后,对待解码的音频信号中每个音频分块进行解压缩。
在本发明的一些实施例中,请参阅如图6-e所示,所述解压缩单元604,包括:
压缩格式获取模块6041,用于根据每个音频分块的压缩域中设置的标志位获取每个音频分块被压缩采用的压缩格式;
解压缩模块6042,用于按照所述压缩格式对每个音频分块进行解压缩,得到无损的多个音频分块。
请参阅如图7所示的音频信号的编解码系统700,包括:如前述图5-a、图5-b、图5-c、图5-d中任一项所述的音频信号的编码装置500和如图6-a、图6-b、图6-c、图6-d、图6-e中任一项所述的音频信号的解码装置600。
音频信号的编码装置500和音频信号的解码装置600的实现方式请参阅前述的实施例描述,此处不再一一说明。
通过以上实施例对本发明实施例的描述可知,首先获取待解码的音频信号,接下来按照采样位宽分别从每个音频分块中获取小于M位的数据宽度对应的分块信号,且M小于音频分块的最高采样位宽,最后使用对称加密算法对每个音频分块中小于M位的数据宽度对应的分块信号进行解密。由于音频信号的每个音频分块中只有数据宽度小于M位的分块信号被加密,由于音频信号采用了对部分的分块信号进行加密的方式,只有授权用户可以通过解密还原出音频信号中被加密的低位分块信号,得到完整的音频信号,授权用户可以正常使用音频信号,故可以防止音频信号被恶意用户的非法使用。由于音频信号采用了对部分的分块信号进行加密的方式,对于音频信号的每个音频分块中数据宽度为高位的分块信号并没有被加密,所以对于非授权用户也可以使用音频信号的高位分块信号,但是无法使用音频信号的低位分块信号,即非授权用户也可以体验品质略低的音频信号,但是相对于授权用户仍无法得到最优的体验,既可以保护授权用户的权益,也可以对非授权用户进行部分开放。
图8是本发明实施例提供的一种服务器结构示意图,该服务器1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1022(例如,一个或一个以上处理器)和存储器1032,一个或一个以上存储应用程序1042或数据1044的存储介质1030(例如一个或一个以上海量存储设备)。其中,存储器1032和存储介质1030可以是短暂存储或持久存储。存储在存储介质1030的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1022可以设置为与存储介质1030通信,在服务器1000上执行存储介质1030中的一系列指令操作。
服务器1000还可以包括一个或一个以上电源1026,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1058,和/或,一个或一个以上操作系统1041,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于前述实施例中描述的音频信号的编码方法。
以下主要以本发明实施例的音频信号的解码方法应用于终端中来举例说明,该终端可以包括智能手机、平板电脑、电子书阅读器、动态影像专家压缩标准音频层面3(Moving Picture Experts Group Audio Layer III,MP3)播放器、动态影像专家压缩标准音频层面4(Moving Picture Experts Group AudioLayer IV,MP4)播放器、膝上型便携计算机和台式计算机等等。
请参考图9,其示出了本发明实施例所涉及的终端的结构示意图,具体来讲:
终端可以包括射频(Radio Frequency,RF)电路20、包括有一个或一个以上计算机可读存储介质的存储器21、输入单元22、显示单元23、传感器24、音频电路25、无线保真(wireless fidelity,WiFi)模块26、包括有一个或者一个以上处理核心的处理器27、以及电源28等部件。本领域技术人员可以理解,图9中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路20可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器27处理;另外,将涉及上行的数据发送给基站。通常,RF电路20包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路20还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System ofMobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(LongTerm Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器21可用于存储软件程序以及模块,处理器27通过运行存储在存储器21的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器21可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器21可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器21还可以包括存储器控制器,以提供处理器27和输入单元22对存储器21的访问。
输入单元22可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元22可包括触敏表面221以及其他输入设备222。触敏表面221,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面221上或在触敏表面221附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面221可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器27,并能接收处理器27发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面221。除了触敏表面221,输入单元22还可以包括其他输入设备222。具体地,其他输入设备222可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元23可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成,该显示单元23可包括前述实施例中描述的显示屏幕。显示单元23可包括显示面板231,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板231。进一步的,触敏表面221可覆盖显示面板231,当触敏表面221检测到在其上或附近的触摸操作后,传送给处理器27以确定触摸事件的类型,随后处理器27根据触摸事件的类型在显示面板231上提供相应的视觉输出。虽然在图9中,触敏表面221与显示面板231是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面221与显示面板231集成而实现输入和输出功能。
终端还可包括至少一种传感器24,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板231的亮度,接近传感器可在终端移动到耳边时,关闭显示面板231和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路25、扬声器251,传声器252可提供用户与终端之间的音频接口。音频电路25可将接收到的音频数据转换后的电信号,传输到扬声器251,由扬声器251转换为声音信号输出;另一方面,传声器252将收集的声音信号转换为电信号,由音频电路25接收后转换为音频数据,再将音频数据输出处理器27处理后,经RF电路20以发送给比如另一终端,或者将音频数据输出至存储器21以便进一步处理。音频电路25还可能包括耳塞插孔,以提供外设耳机与终端的通信。
WiFi属于短距离无线传输技术,终端通过WiFi模块26可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了WiFi模块26,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器27是终端的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器21内的软件程序和/或模块,以及调用存储在存储器21内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器27可包括一个或多个处理核心;优选的,处理器27可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器27中。
终端还包括给各个部件供电的电源28(比如电池),优选的,电源可以通过电源管理系统与处理器27逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源28还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元是触摸屏显示器,终端的存储器21与上述数据库类似,可以存储采样时间段、采样时间间隔、帧率统计值。
且本实施例的终端中一个或者一个以上程序存储于存储器21中,且经配置以由一个或者一个以上处理器27执行前述实施例中描述的音频信号的解码方法。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
综上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照上述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对上述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。