数字音频处理的制作方法

文档序号:2821603阅读:565来源:国知局
专利名称:数字音频处理的制作方法
技术领域
本发明涉及数字音频处理。
背景技术
可闻水印方法是用来保护音频信号,其方法是把音频信号和用于传输或存储目的的另一信号(水印)组合在一起,这样原始信号的清晰程度就足以对其进行识别和/或或评价,但信号以加上水印的形式在商业上并不可用。为了使其可用,水印方法针对那些试图去掉水印的未授权的企图应该是安全的。
可以选择水印信号使其携带有用的信息(例如版权、广告或其它识别数据)。水印系统的一个期望特征是不参考原始信号源材料、只提供合适的软件和解密密钥就能够从加上水印的信号完全恢复出原始信号。
EP-A-1 189 372(松下)公开了许多用于保护音频信号不被误用的技术。在一种技术中,在把音频发布给用户之前对其进行压缩和加密。用户需要解密密钥来访问音频。密钥可由用户购买以访问音频。音频不能由用户取样,直到他们购买了密钥为止。其它技术在音频信号中嵌入了可闻水印来保护它。在一种技术中,音频信号根据预定的规则和可闻水印信号组合在一起。水印使音频信号衰减。组合被进行压缩以传输给播放器。播放器可以解压并再现衰减的音频信号,它允许用户决定是否希望购买允许他们去掉水印的“密钥”。通过向解压缩后的衰减的音频信号添加一个相等且相反的可闻信号就可以去掉水印。水印可以是使音频衰减的任何信号。水印可以是噪音。水印可以是像“这段音乐只用于试听”这样的“声明”。
采用频率编码(也称作“频谱编码”)的音频信号,例如数据压缩的信号像MP3(MPEG-1III层)信号、ATRACTM信号、PhilipsTMDCCTM信号或DolbyTMAC-3TM信号,音频信息被表示为一系列波段。所谓的音质技术是用来这种降低必须被编码以表示音频信号的波段的数量。
上述可闻水印技术并不应用于频率编码的音频信号。为了施加(或随后移除)可闻水印,必须把频率编码的音频信号解码回可再现的形式。但是,每次在一个有损耗的系统中对音频信号进行编码和解码,都会使其受损于衰减。

发明内容
本发明提供一种处理频谱编码的数字音频信号的方法,这种音频信号包括波段数据分量,其表示在各自波段内的音频贡献,该方法包括以下步骤更改包含一个或多个上述频带数据分量中的子集以产生频带更改过的数字音频信号,这种信号拥有更改过的频带数据分量;产生恢复数据以允许重新构造上述更改过的频带数据分量的原始值。
本技术的基础是下面的认识如果从频率编码的音频文件中有选择地移除频谱信息或使其中的频谱信息失真,当变质的文件随后被解码并播放时仍然保留了文件原始的可理解程度和/或一致性。原始文件质量的保留程度取决于没有被移除的波段的数量,以及被移除的频带在文件的全部频谱内容的环境中的优势。如果来自原始(信号)的大量频率分量(或“线”)没有被简单地移除,而是被取自任意选择的“水印”文件(也是频率编码的)的相同频率线的数据所取代(或混合),那么在解码后的输出中这两个文件的可理解性都得到了一定的保留。
因此可以通过用来自同样编码的水印信号的相同的频带替代(或组合)一个文件的一些或全部谱带实现可闻水印。不需要把任一信号解码回时域(音频样本)数据就可以完成这种操作。每个更改过的谱带的原始状态优选地被进行加密并可以存储在频率编码的文件的ancillary_data(副数据)段用于后来的恢复。
在所附权利要求中定义了本发明的各种其它相应的方面和功能。独立权利要求和从属权利要求的特征除了明确记载的之外,也可以按排列组合。


从下面对说明性实施例的详细说明将会了解本发明的上述和其它目的、特征和优势,说明性实施例要结合附图阅读,在附图中图1是音频数据处理系统的示意图;图2是说明本实施例的商业应用的示意图;图3示意地说明MP3帧;
图4a是说明向源文件施加水印的步骤的示意流程图;图4b是说明从加上水印的文件去除水印的步骤的示意流程图;图5a到5c示意地说明施加水印到源文件;图6a和6b示意地说明位速率更改;图7a到7c示意地说明源文件频率线的替换;图8a到8c示意地说明由最有意义的水印频率线代替源文件频率线;图9a到9c示意地说明对源文件和水印文件频率线之间距离的检测;图10a和10b示意地说明用于接收并使用加上水印的数据的设备;以及图11a和11b示意地说明对源文件水印线的交换。
具体实施例方式
虽然将在MP3系统的环境中描述下面的实施例,但显然该技术(和发明)并不局限于MP3,而是可以应用于其它类型的频谱编码(频率编码)的音频文件或流式数据,例如(但不仅是)ATRACTM格式、PhilipsTMDCCTM格式或DolbyTMAC-3TM格式的文件或流式数据。
图1是一个基于软件控制的通用个人计算机的音频数据处理系统的示意图,该计算机有系统单元10、显示器20和用户输入设备30,例如键盘、鼠标等等。
系统单元10包括像中央处理单元(CPU)40、随机访问存储器(RAM)50、磁盘存储器60(固定和可移动磁盘,例如可移动光盘70)和提供到网络连接90(例如互连网连接)的链路的网络接口卡(NIC)80这样的部件。该系统可以从存储介质(例如固定磁盘或可移动磁盘)或通过像网络连接这样的传输介质运行软件以执行下面所描述的一些或全部数据处理操作。
图2是说明对下面要描述的实施例的商业应用的示意图。图2显示了两个数据处理系统100、110,它们由互连网连接120相连。其中一个数据处理系统100被设计成MP3-压缩的音频文件的“所有者”,另一个110被设计为该文件期望中的购买者。
在第一步1,购买者请求下载或传输该音频文件。在第二步2,所有者以加上水印的形式把文件传输给购买者。购买者听取(在步骤3)加上水印的文件。加上水印的版本说明购买者购买该文件,所以在步骤4购买者向所有者请求密钥。这个请求会涉及有利于所有者的财务转让(例如信用卡支付)。
在步骤5所有者提供一个密钥以解密音频文件中的所谓恢复数据。恢复数据允许移除水印并重新构造该文件到它的完整质量(当然,作为一个压缩过的文件,它的“完整质量”可能比原始版本有轻微的衰减,即使这种衰减在听觉上可能完全无法察觉,或者难以被非专业用户察觉)。购买者在步骤6解密恢复数据,并在步骤7听取不加水印的文件。
上述步骤不必全部通过网络执行。例如,购买者可以通过(例如)杂志封面所带的免费光盘获得加了水印的材料(步骤2)。这样就不需要上面的步骤1和2。
使用频率编码的数据压缩音频数据压缩的一组编码技术涉及把音频信号分割成不同的波段(例如,使用多相滤波器),把不同的频带转换成频域数据(使用类似富立叶变换的方法),并分析频域中的数据,这里该过程可以使用音质现象(例如相邻频带屏蔽和噪音屏蔽效果)以移除或量化信号分量而不会对重新构造的音频信号有很大的主观衰减。
压缩是通过基于分析结果对频谱数据的频带-特定的再-量化而得到的。该过程的最后阶段是把频谱数据和相关数据打包成可以由解码器拆包的形式。再-量化过程是不可逆的,因而无法从压缩的格式精确地恢复原始音频,压缩被称为“有损耗的”。用于特定标准的解码器从编码的位流拆包出频谱数据,并通过转换频谱信息为时域样本而有效地再合成(一个版本的)原始数据。
MPEG I&II音频编码标准(第3层),通常称为“MP3”标准,遵循上面的一般过程。MP3压缩的数据文件是从大量独立的帧构造成的,每个帧由4段构成header、side_info、main_data和ancillary_data。ISO标准11172-3MPEG-1III层中给出了MP3格式的完整定义。
图3的上部示意性地说明了上述结构,一个MP3帧150包括header(H)、side_info(S)、main_data(M)和ancillary_data(A)。
帧头包含与帧中的其它数据有关的一般信息,例如位速率、原始数据的采样率、编码级别、立体声-数据-组织等等。虽然所有帧是有效独立的,但对于这个一般数据从帧到帧能够变化的程度仍然有一些实际的限制。每一帧的总长度通常可以从帧头中给出的信息得到。side_info段描述在接下来的main_data段中数据的组织,并提供频带比例因子、查表指示符等等。
图3的第二部分示意性地显示了main_data段160,它包括big_value区域(B)和Count_1区域(C)。main_data段给出了实际的音频频谱信息,这些信息被组织成几种可能的不同分组形式中的一种,实际的分组形式可以从header和side_info段确定。但一般说来,数据被表示为升频顺序的量化的频带值。这些值中有一些就是简单的1-位字段(在count_1数据子段中),指示特定频带中的数据的缺失或存在,如果存在的话就是数据的符号。这些值中的一些隐含为0(在zero_data子段中),因为没有为它们提供任何编码信息。对main_data段有三个子划分,即big_value区域。在这些区域中,频谱值被编码器存储为Huffman表的查找值。Huffman编码仅用来通过用较短的代码来表示较频繁使用的频谱值而进一步降低位速率。
big_value区域中任意给定频率线的实际频谱值是由三个不同数据确定的1.用于该谱线的Huffman编码[在main_data中找到]2.在预定的Huffman表的集合中哪个Huffman表正在使用中,[在side_info中找到]3.对该频率线正在使用什么比例因子[在side_info和main_data中找到](实际对每条线有一个缩放系数)所有这三个数据从帧到帧都可以变化。
ancillary_data区只是跟随在主数据区后面的未使用空间。因为编码器之间对音频帧中保存多少数据没有标准化,因而音频数据的大小、以及由此ancillary_data的大小从帧到帧都可以有较大变化。通过对前面的段或高效或低效的打包、通过对频谱数据或严重或轻微的量化、或者通过增加或减少文件的标称位速率都可以改变ancillary_data段的大小。
水印技术现在将参考给MP3压缩的音频文件加水印来描述本技术的一种实施例。但应该理解本技术也可应用于其它频谱编码系统,只要对数据格式和组织进行适当的(常规)改变。还有,尽管本技术决不局限于这种状况,但假设没有水印的MP3文件有足够的质量(即,由压缩过程而产生的衰减足够小)使得用户有兴趣去除水印以使用文件。
为了方便描述起见,在这个例子中还将假设水印和源文件的初始格式是相同的(相同的采样率、MPEG版本和层、立体编码和短/长块应用)。同样,这不是该过程所要求的。
在本技术中,可闻水印的实现是通过用来自相同编码的水印信号的等价频带代替(或组合)文件中一些或全部谱带。这个操作可以在MP3-编码级别(或者在后-Huffman-查找级别)通过对编码的位流的操作来完成,即不把任一信号解码回时域(音频样本)数据。每个更改过的谱带的原始状态都被进行加密并存储在MP3文件的ancillary_data段中用于以后的恢复。通过扩展ancillary_data段,或者使用已有的空间就可以为此获得空间。因此不需要完全解码音频数据并随后对其重新编码,这样可以避免(通过解码和再编码过程而造成的)对音频信号的进一步衰减。
这个描述中将使用下列术语源文件=包含将要向其施加水印的音频材料的MP3文件水印文件=包含可闻水印信号的MP3文件为将要替换哪些频率线设置一种策略。可以简单地使用固定线组,或根据源文件和水印文件的内容来改变线。在第一个例子中,选择了简单的固定线组,然后描述替代策略方法。
根据所选择的策略,这时可以确定存储恢复数据所需的ancillary_data空间的量。如上所述,通过提高加了水印的数据的输出位速率就可以简单地实现这一点。大多数情况下,简单地提高位速率到下一个更高的合法值(并用它来限制可以保存的恢复数据的数量)就足够了。对可变位速率的编码方案来说,可以更精确地调节位速率的变化。
MP3编码器通常设法以使每帧中的空闲空间最小化,好的或理想的编码器在ancillary_data区域中应该具有零空间。为了确定是否有有用空间为帧所用需要分析帧头。
帧中用来容纳加密后的恢复数据可能需要的数据空间的量是可变的,但通常每一帧最少需要几个字节来携带恢复帧头信息。为已经更改过的谱线携带恢复数据所需的数据容量取决于更改过的线的数量和特性。通常,在该技术的经验性的试验中,当水印材料初始位速率为128K位/秒时这个数量是大约100字节每帧,但这个数字随后将受位速率的增加所控制(即随其而调整),比如位速率从128K位/秒增加到160K位/秒将使数据帧大小增加约100字节,见下面论证这个结论的计算。
对每数据帧的字节数(″bpf″)有一个公式,在这个公式中总的位速率″B″是一个变量。音频采样率″SR″是另一变量。这个公式用于MPEG1第3层bpf=144*B/SR“正常”(即,非VBR“可变速率”)MP3文件中的位速率只能是几个合法值中的一个。例如,对MPEG-1第3层来说,这些合法值是32、40、48、56、64、80、96、112、128、160、192、224、256或320K位/秒。
因此,对一个音频采样率是44.1KHz的文件来说,如果位速率从128K位/秒增加到160K位/秒,则用这种测算所提供的额外容量将是144*(160,000-128,000)/44100=约104.5字节每帧提升到更高的位速率是非常有用的,因为没有详细的分析将很难确保在任意给定音频帧中辅助数据被附加在main_data之后同时保持位速率不变。这是因为所谓的“位容器”——其中一个音频帧能够在编码器的判断下跨越达三个数据帧之多。如果音频帧(通过附加辅助区域、改变main_data值或通过任意其它方式)被扩展,它可有多种撞击效果,这些效果使得后来的帧不可能适应它们的可用空间。图4a的流程图中示意性地说明了这个基本过程。
在步骤200把水印读入存储器并分解(一帧帧的,或者从整体上)。存储加水印策略所需的来自水印的频谱信息。在这个阶段能够方便地反查到相关的Huffman表和其它相关信息(例如,比例因子)以使实际的频谱值可用。
在步骤205读取初始源帧头(也可能是几个初始帧)以建立帧格式、可用的恢复数据空间等等。一个循环过程现在启动(从步骤210到步骤240),依次应用于每个源文件帧。
在步骤210读取下一源文件帧和下一个水印文件帧。在步骤215,根据当前策略确定要更改的谱线,把与该策略相关的源文件帧的频率线的频谱信息保存在恢复区中(例如,RAM50的一部分)。
然后在步骤220把水印的当前帧应用到当前的源文件帧。因此,由于这一步在循环安排中被重复执行,结果是水印文件的第一帧被应用于源文件的第一帧,等等。如果水印文件的帧数小于源文件,就重复水印帧的顺序。
用下面两种可能方法中的一种来更改由该策略所确定的每个谱线的原始值1.参考来自水印的顺序的对应帧,用水印中那条线的值来替换该值,可能还乘以一个比例因子k(它在一般情况中可能是1或0,也存在k不是1或0的可能性)或者用它来更改。比例因子可以是可变的,这种情况下它可以和恢复数据存储在一起,或者它可以是固定的,至少关于特定的源文件是固定的,这种情况下它可以是隐含的或只为该文件存储一次;或者2.把该值和来自水印的相关值组合在一起--例如,50∶50平均过程。
当用来替换原始值的频谱值可以取自和用于原始线相同的Huffman表时,这两种方法操作都非常成功。如果该表不包含替换所需的正确的值,就使用返回最接近的值的Huffman编码。这两种情况下,当确定替换值时还可以考虑每条线的实际比例因子。
在步骤225,一旦已经施加了水印,就存储(例如,在磁盘存储器60中)包括更改过的帧头信息在内的每个帧的更改过的帧数据。并在步骤230对可以应用到该帧的恢复数据加密并存储。
在步骤225可以更改帧头以便提高位速率到可以提供所需的额外空间的程度,以便向已有的音频帧施加水印并附加恢复数据(如在步骤215中所保存的)到音频帧的main_data区域作为ancillary_data。要写的第一件事是组织数据,例如哪些频带正在被保存、可能的UMID(SMPTE通用材料标识符)或元数据信息、以及实际保存的频带。这里需要额外考虑的是数据必须被加密以防止对原始数据的未授权的恢复;使用常用的基于密钥的软件加密技术。
图6a和6b中示意性地说明了更改帧头数据的过程,更改帧头数据是为了提高可用数据容量以便存储恢复数据。在图6a中,帧头指定了特定的位速率,该位速率又确定了每帧的大小。在图6b中,帧头已经被改成了更高的合法值(例如,下一个更高的合法值)。这就给出了更大的帧大小。因为header、side_info和main_data部分的大小没有增加,所以ancillary_data区的大小增加了帧大小变化的总量。
在步骤240,检测是否已经处理了所有源文件。如果没有,就重复步骤210到240,按照需要的次数重复使用水印文件,直到整个源文件都被处理完为止。图5a到5c示意性地说明了这个过程,在这几幅图中水印文件310比源文件300更短。按照需要重复水印文件310以便将该水印应用到整个源文件上。
如果所有源文件都处理过了,该流程就在步骤250关于该文件终止。
加过水印的文件,包括更改过的谱线数据和加密后的恢复数据都被存储在(例如)磁盘60和/或通过网络90进行传输。
在上述方法中,应该理解更改可以在音频帧基础上进行。MP3标准允许音频帧跨越多个数据帧。
图4b示意性地说明了从加上水印的文件中移除水印的步骤。
在步骤255,装载加过水印的文件的一帧(例如装入图1的RAM中)。在步骤260,使用上面描述的密钥来解密与该帧相关的恢复数据。在步骤265,把恢复数据应用到加过水印的文件帧以重新构造包括帧头和音频数据在内的对应的源文件帧。术语“应用”表示使用一个过程,该过程实际上是最初向源文件施加水印的过程的逆过程。实际上该过程可能比施加水印要简单的多,因为,在恢复阶段不需要设置策略、不需要选择频带等等。对每个帧a.解密恢复信息(恢复信息的第一个数据可以是加密的“长度”字段)b.分析恢复数据的策略部分以查看必须在它的正确位置中放回什么。有些要放回的信息可能对所有帧都是固定的并且对非流式冲洗(washing)(例如,策略本身)可能只被指定在在第一帧中;一些要放回的信息从帧到帧可以不同-像实际的频谱信息-(它取决于策略)。这暗示该恢复数据优选地包括所有帧的策略。
c.使用恢复数据用它的(原始)值覆盖或修正帧中更改过的数据。
d.写入新的帧header(再次设置原始帧速率)、side_info和main_data,但没有恢复数据。
因为采用施加水印过程,音频成帧与数据帧1∶1的关系并不是必需的,这样就会使上述方法复杂化,因而在释放数据帧之前需要一些缓冲。
注意(由于使用施加水印过程),可以不需把数据向下解码到时域数据(音频样本)层次就能够实现原始材料的恢复。
在步骤270,如果有更多加了水印的帧要处理,控制返回步骤255.否则,该过程在275结束。
变体可以几种方式来更改上述的通用过程。下面的描述给出了多种变体,它们可以用来更改通用过程,可以单独应用或组合应用。
1.选择替换频率线的方法在通用过程中,所描述的方法使用简单的固定频率线组来进行更改。图7a到7c示意性地说明了这个过程。图7a示意性地说明了源文件的一帧的一组16条频率线。图7b示意性地说明了水印文件的对应帧的一组16条线。水印文件的线被画成阴影。在图7c中,根据预定的(固定)替换策略,源文件的第2、4、8、10、14和16条线(从图的顶部开始计数)已经被水印文件的对应线所替换。
对使用中的材料的特性敏感的替代方法或许能够给出更好(例如,主观上更容易理解)的结果。下面给出了三个例子(1.1到1.3)例1.1 通过分析水印来选择要更改的谱线。因为水印在步骤200被进行了分解,检查了频谱信息,并根据在每帧中哪些频率线占有优势而构建了一张权重表。当读取了所有水印帧之后,最经常占有优势(在整个水印文件上进行平均)的谱线的集合被用于给所有帧施加水印,考虑源文件帧的可用空间。
例如1.2 根据每个水印帧中的优势线,要更改的源文件的线从帧到帧是可变的。为每个水印帧按大小创建一张频率线表。在处理每个源文件帧时,选择被更改的频率线为在当前水印帧中占据优势的那些频率线。图8a到8c示意性地说明了这个过程。如前,图8a示意性地说明了一个源文件帧的一组16条频率线。图8b示意性地说明了来自水印文件的对应帧的对应的一组16条线。水印帧中最主要的线(在图8b中是最长的线)被替换到源文件中,结果如图8c所示。注意只替换了4条线。这是为了说明在下面的例1.4之下要描述的自适应替换方法。
例1.3 要更改的源文件的线取决于水印和源文件中频谱数据的组合。一个例子是根据可能的加水印之前和加水印之后的线之间的差值来计算权重,并选择给出最高值(即,由于水印,更高的间距引起对源文件更大的衰减)的线。这降低了源文件Huffman查找表不能容纳水印的值的可能性。而且,图9a到9c示意性地说明了这个过程。图9a示意性地说明了一个源文件帧的一组16条频率线,图9b示意性的说明了来自水印文件的对应帧的对应的一组16条线。图9c示意性地表示两帧的对应线之间的“距离”(这个示意表示中的长度差值)。根据当前策略可以容纳多少条线,距离最大的n条线将被替换。
例子1.4 伪随机选择可以根据伪随机顺序(由一个种子值产生)替换地得到要缩放的线的同一性。种子值可以是整个文件的部分恢复数据或者可从解密密钥导出。
上述所有技术(基础技术和例1.1到1.4中的变体)可以施加到下列方案一个源文件的线被一个水印文件的线所代替,或者一个源文件的线被根据一个水印文件的线进行了更改,乃至组合策略。在使用固定策略的基础方案中,不必存储每个帧有哪些已经被更改的细节。采用更具有自适应性的策略,识别哪些线已经被更改的直接方法就是把这些信息和恢复数据存储在一起。实际上,如果恢复数据(解密后)识别出那些为其提供了恢复信息的线,也就暗示了这样的细节。
例1.5 适应更改的线的数量。更改的线的数量不必是预定的或固定的。甚至固定的线策略(前面所述基础布置)也能够允许在每一帧中更改可变数量的线。策略能够根据优先级顺序(并且可能服从于允许的最大更改数)更改可变数量的线。在步骤210(图4a)可以检测到ancillary_data段中空闲空间的量。选择多条线进行更改以便必要的恢复数据将会适应ancillary_data中的可用空间。如果通过改变文件的总位速率而增加了ancillary_data空间,这个增加也要考虑进去。
在上面的例1.2和1.3中,要更改的频率线可能从帧到帧是变化的。如果所选的频带的变化速度过大,会产生可闻的副作用。通过使相关加权过程的结果遭受低通滤波(换句话说,即限制对于要更改的谱线集合所允许的帧到帧的变化的量)可以降低这些副作用。如果更改的频率线代表过高的音频频率也可能会发生不希望有的副作用。为了减轻这个潜在的问题,可以限制由更改的频率线所代表的音频频率。
同样,如果水印和源文件频率线在短块或长块范围内,那么直接替换它们是无效的。会发生一些进一步的解码和再编码,或者替换是和原始源文件中相同的编码。在这点上,注意MP3文件能够根据用于在时域和频域间转换的两个不同的MDCT(更改过的离散余弦变换)块长度来存储频谱信息。所谓的“长块”由18个样本组成,“短块”由6个样本组成。拥有两个块大小的目的是优化或者至少增强对时间分辨率或频率分辨率的转换。短块有很好的时间分辨率但频率分辨率很差,长块则正好相反。因为MDCT变换对两个块大小是不同的,来自一种类型的块的一组系数(即,频率线)不能被直接替换成一个不同类型的块。
另外,如果水印的立体声编码模式不同于源文件的立体声编码模式,也可能发生不希望的结果。这种情况下可能对水印进行一些进一步的解码或再编码。
在所有三个例子1.1到1.5中,在施加水印过程中所更改的源文件频率线的数量可以由一个固定的数来限制,(策略-驱动、用户提供或硬编码),或者可以由可用的恢复空间来限制,或者由这两者共同限制。哪种方法最适合(包括简单的固定线方法)将取决于多种因素,包括可用的处理能力、源文件和水印的特性、所需源文件(由水印引起)的衰减程度。
2.改变Huffman表和比例因子上面的描述只涉及了对main_data频谱信息的更改(和恢复存储)。也可以更改原始数据的其它方面,例如用于特定频率线的频谱数据的Huffman表。这个操作将被完成以确保正确的代码可用于更改过的频谱数据(而不只是给出近似的后查找值的代码)。
同样,可以改变side_info和main_data段中的比例因子以便更好地表示水印频谱数据的频谱级。这可能对(例如)降低潜在的所不希望的作用有用,由此,加了水印的材料中的水印级别趋向于遵循源文件材料中的级别。
3.保存恢复数据的方法如上所述,隐藏恢复数据的优选方法是在每个音频帧中使用ancillary_data空间。通过使用现有的空间、或者通过提高位速率以创建额外的空间可以实现这一点。这个方法的优势是所存储的恢复数据位于它所涉及的帧中,这样不用参考其它帧就可以恢复每个帧。然而,其它机制也是可能的MP3格式允许特殊的ID帧成为文件的一部分,通常在文件的开头或结尾。这些帧可以用于存储与施加水印操作有关的信息,这些信息对所有帧都是公共的,例如UMID和元数据信息、施加水印策略、固定的水印掩码等等。
恢复数据可以简单地以数据块(不必以MP3格式)附加到MP3文件中。
4.对不在big_value区域中的频率线的使用4.1 使用水印的Count_1区域上述方法通常把main_data段的big_value区域中的频谱数据作为水印更改的目标。水印和源文件的频谱数据也被存储在它们自的main_data段的count_1区域中。来自这个区域的数据也可用于施加水印,并且,在(例如)水印在count_1区域中有重要的频谱信息的情况下,能够增强加了水印的文件的质量。
4.2 重新定义源文件的区域边界源文件通过扩展任意(或全部的)源文件的big_value区域或源文件的count_1区域的长度能够更容易地容纳水印。例如,水印在big_value区域可以有与源文件帧的count_1区域中的频率线对应的频率线。或者,水印在count_1区域可以有与源文件帧的0区域中的频率线对应的频率线。这个选择将需要更多的恢复信息(例如)以便考虑区域边界的变化。
5.文件VS流式上面的描述通常已经假设水印系统的输入和输出已经是MP3文件。对该系统的扩展或改变将允许处理流式数据,例如在广播状况中(那里该过程未必能够访问到数据流的开始或结尾)。因此,虽然上面的例子指的是“文件”,但相同的技术应该被看作也能应用于通常的音频“信号”,而它可能是流式信号。
这将涉及确保每个帧中包含了用于恢复自己所需的所有恢复数据,包括所有的更改线策略信息和用于施加水印(或由其更改)的线的描述或定义,以及用于确保恢复数据的解密密钥要么对所有帧都相同要么可以从每个帧中的数据计算出来的方法,(也许对密钥本身使用公共密钥加密系统)。它还将涉及考虑由于填充位而导致的数据帧大小的可变性。帧大小变化以便维持恒定的每帧平均位速率。
6.固定音调水印上面的描述已经假定水印信号是取自水印文件,而水印文件在必要时会被多次重复以匹配源文件的长度。
这种方案的替换方案允许直接从固定的音调、噪音源或其它周期或重复信号发生器产生水印频谱数据,产生的水印频谱数据可以是任意复杂程度的,并由一种能够匹配源文件信号内容的方式控制着,但必须以某种能够使未受权的移除更难进行的方式进行调制。
(例如)当为了归档目的而需要源文件数据的自动损伤时这种途径可能会是有用的,但不需要任何特定的水印内容。下面在例子7.1和7.2中描述了其它相关的技术。
7.谱线的交叉不是用来自水印文件的谱线去更改或替换源文件中的线,而是使用一种交叉方法。
在这种方法中,源文件中的线被相互交换、缩放或删除,而且不参考另外的水印文件或直接产生的信号。恢复源文件的原始状态所需的数据被存储为恢复数据。被交换、缩放或删除的线从帧到帧或以其它间距可以变化的。可以通过上面描述的策略中的任意策略来选择要由示例技术7.1和7.2中的任意一个处理的线。技术7.1和7.2也可以组合施用。
例7.1 交叉/交换在一种安排中,在源文件中线组被进行交换。与这种安排相关的恢复数据只需识别这些线,因而相对较少。线的交换可替换地按照由种子值所提供的伪随机顺序来执行。在这个实例中,种子值可以构成整个文件的恢复数据以及解密密钥。谱线的交叉/交换无需被限制为只在单个帧中发生。它也可以发生在帧之间(例如,跨越多个连续的帧)。
图11a和11b中示意性地说明了这种技术的一个例子。如前,图11a示意性地说明了一个源文件帧中的一组16条频率线。图11b示意性地说明了来自加了水印的文件的对应帧的对应的一组16条线。这些线已经被按照相邻对进行了互换,因此源文件的第1和第2条线(从图的上部开始计数)、第3和第4条线、第5和第6条线(等等)已经被进行了互换。为了图的清晰起见,这只是一个简单的例子。当然,也可以采用更复杂的交换策略使得在没有正确的密钥时要恢复文件更加困难。
例7.2 删除在这个安排中,所选的源文件谱线都被删除。与这个安排相关的恢复数据需要提供删除的线。
8.多级可以提供两级或多级(两组或多组)恢复数据,例如可以通过各自不同的密钥来访问。第一级可以允许移除任何水印消息(例如,一条口头消息),但留下残留级别的噪音(衰减),这些噪音是该材料不适合专业或高保真应用。第二级可以允许移除这个噪音。可以想象用户将为第二级密钥付出更高的费用,和/或限制第二级密钥只能为特定类别的用户使用,例如专业用户。
9.部分恢复用户可以支付特殊费用以恢复特定的时段(例如,在时间编码01:30:45:00和01:31:44:29之间的60秒)。这需要额外的步骤检测用户已经付过费的时段,并只对该时段应用恢复数据。
另一种将上述过程更改为像这样的部分恢复的方式是在施加水印期间,单个帧(或帧组)使它们的恢复数据被的不同密钥的预测顺序加密。
在冲洗(即去掉水印)期间,只有那些跨越所需段的帧才被冲洗(恢复)。这些帧可以被a.以原始位速率写到一个单独的文件
b.写为一个洗过的段嵌在加了水印的文件中,这种情况下所有帧的位速率都将提高(因为使文件的某一段具不同的位速率在实践中是不推荐的)。
应用图10a示意性地说明了接收并使用加了水印的文件的一种装置。数字广播数据信号由天线400(例如数字音频广播天线或卫星碟式天线)或从有线连接(未显示)接收并被传给“机顶盒”(STB)410。术语“机顶盒”是一个通用术语,指的是用于处理广播或有线信号的解调器和/或解码器和/或解密器单元。该术语实际上并不像字面意思那样表示STB必须被放置在电视机或其它装置的顶部,所说的″机″也不一定是电视机。
STB和内容提供商(未显示,但类似于图2的“所有者”100)有一个电话(调制解调器)连接420。内容提供商传送加了水印的音频文件,该文件被按照上面所描述的过程施加可闻水印而故意进行了衰减。STB把这些信号解码为“基带”(模拟)格式,该格式可由电视机、收音机或放大器430放大并通过扬声器440输出。
在操作中,用户接收加了水印的音频内容并收听它。如果用户决定购买未加水印的版本,用户可以(例如)按下STB410或远程命令设备(未显示)上的“支付”按钮450。如果用户有一个由内容提供商确认的帐号(支付方法),STB就简单地通过电话连接420向内容提供商发送一个请求,并接着接收解密密钥420以允许对恢复数据解密,然后按照上面所描述的将恢复数据施加到加了水印的文件。如果没有已经建立的支付方法,用户可以(例如)输入(敲入或刷卡)信用卡号到STB410,输入的信用卡号可以被关于该交易而传输到内容提供商。
根据内容提供商进行的安排,用户可以购买只听取一次未加水印的内容的权利,也可以购买用户想要的任意次数,或者是限定的次数。
图10b中显示了第二种装置,这种装置中接收器460至少包括解调器、解码器、解密器和音频放大器以便能够处理来自天线400(或来自有线连接)的加了水印的音频数据。接收器还有一个“智能卡”读取器470,可以在其中插入一张智能卡480。和其它通用的广播服务一样,智能卡规定了一组用户有权接收的内容服务。这可以取决于用户和内容提供商或广播电台之间建立的支付方式所覆盖的一组服务。
内容提供商广播加了水印的音频内容,如上所述。这可以由任何有合适的接收器的人接收并收听(以加了水印的,即衰减了的形式),因而鼓励用户准备为接收未加水印形式的材料而付款。拥有允许收听这些内容的智能卡的那些用户也可以对恢复数据进行解密并收听未加水印形式的内容。例如,解密密钥可以存储在智能卡上,以减少对电话连接的需要。
智能卡和电话-支付装置在图10a和10b的实施例之间当然是可以互换的。也可以使用这二者的组合,这样用户可以有一个智能卡以允许它收听基础的服务组,加上正在使用的电话连接以为其它(高级)内容服务获取密钥。
在目前,由于已经用软件控制的数据处理设备实现了(至少部分地)上述本发明的实施例,应该理解提供这样的软件控制的计算机程序以及存储或传输该计算机程序的存储或传输介质也可以被想象成本发明的特征。
还要注意上面描述的一些安排和排列可能导致恢复的文件和施加水印之前的原始文件不是逐位相同。但是,在MP3和其它用于表示声音的编码技术中有等价的方式,以使与输入文件并非逐位相同的最终文件听起来仍然相同。例如,数据成帧可以不同,或者未使用的ancillary_data空间的量可以不同。在本发明的实施例的环境中这样的结果是可以接受的。
虽然这里已经参考附图详细描述了本发明的说明性实施例,但应该理解本发明并不仅限于这些明确的实施例,本领域的技术人员在不偏离所附权利要求定义的本发明的范围和精神的情况下可对这些实施例进行不同的修改和改进。
权利要求
1.一种处理频谱编码的数字音频信号的方法,所处理的音频信号包括频带数据分量,它表示在各自的频带内的音频贡献,该方法包括下列步骤更改包含一个或多个所述频带数据分量的子集以产生频带-更改过的数字音频信号,该信号具有更改过的频带数据分量;并产生恢复数据以允许重新构造出所述更改过的频带数据分量的原始值。
2.权利要求1的方法,包括对所述恢复数据加密的步骤。
3.权利要求1的方法,其中所述恢复数据包括上述频带数据分量的所述子集。
4.权利要求1的方法,其中所述更改步骤包括用来自频谱编码的数字音频水印信号的对应频带数据分量乘以一个比例因子来替换所述频带数据分量中的一个或多个。
5.权利要求1的方法,其中所述更改步骤包括把所述频带数据分量的一个或者多个同来自频谱编码的数字音频水印信号的对应的频带数据分量组合在一起。
6.权利要求1的方法,其中所述频带数据分量的所述子集是所述频带数据分量的预定子集。
7.权利要求1的方法,其中所述恢复数据定义了哪些所述频带数据分量在所述频带数据分量的所述子集中。
8.权利要求4的方法,包括下列步骤检测所述水印信号的哪些所述频带数据分量在水印信号的至少一部分中是最主要的,这些最主要的频带数据分量形成了所述频带数据分量的所述子集。
9.权利要求8的方法,其中所述检测步骤包括检测所述水印信号的哪些所述频带数据分量在所述水印信号的整体上是最主要的。
10.权利要求8的方法,其中所述水印信号和所述数字音频信号被各自编码为连续的数据帧,其表示所述水印信号和所述数字音频信号各自的时段,所述检测步骤包括检测所述水印信号的哪些所述频带数据分量在所述水印信号的一组一个或多个所述数据帧上是最主要的,这些最主要的频带数据分量形成了关于所述数字音频信号的对应的一组一个或多个帧的所述频带数据分量子集。
11.权利要求5的方法,包括下列步骤检测所述水印信号的哪些所述频带数据分量在所述水印信号的至少一部分上是最主要的,这些最主要的频带数据分量形成了所述频带数据分量的所述子集。
12.权利要求11的方法,其中所述检测步骤包括检测所述水印信号的哪些所述频带数据分量在所述水印信号的整体上是最主要的。
13.权利要求11的方法,其中所述水印信号和所述数字音频信号被各自编码为连续的数据帧,其表示所述水印信号和所述数字音频信号各自的时段,所述检测步骤包括检测所述水印信号的哪些所述频带数据分量在所述水印信号的一组一个或多个所述数据帧上是最主要的,这些最主要的频带数据分量形成了关于所述数字音频信号的对应的一组一个或多个帧的所述频带数据分量的所述子集。
14.权利要求4的方法,包括下列步骤检测所述水印信号的哪些所述频带数据分量与所述数字音频信号的对应频带数据分量在所述水印信号和所述数字音频信号的至少对应部分上区别最大,这些区别最大的频带数据分量形成了所述频带数据分量的所述子集。
15.权利要求5的方法,包括下列步骤检测所述水印信号的哪些所述频带数据分量与所述数字音频信号的对应频带数据分量在所述水印信号和所述数字音频信号的至少对应部分上区别最大,这些区别最大的频带数据分量形成了所述频带数据分量的所述子集。
16.权利要求7的方法,其中形成所述频带数据分量的所述子集的所述频带数据分量是由伪随机函数定义的。
17.权利要求1的方法,其中以数据格式的形式存储所述数字音频信号,所述数据格式至少有格式定义数据,指定可以用来存储所述数字音频信号的数据量;所述频带数据分量;和0或更多的辅助数据空间。
18.权利要求17的方法,包括在所述辅助数据空间存储所述恢复数据的步骤。
19.权利要求17的方法,包括下列步骤更改所述格式定义数据以指定更大量的数据来存储所述数字音频信号,由此增加所述辅助数据空间的大小。
20.权利要求1的方法,包括向所述频带-更改过的数字音频信号附加所述恢复数据的步骤。
21.权利要求1的方法,包括下列步骤根据可以用于所述恢复数据的数据容量来调整在所述频带数据分量的所述子集中的所述频带数据分量的数量。
22.一种处理频谱编码的数字音频信号的方法,所处理的音频信号包括频带数据分量和恢复数据,该频带数据分量表示在各自的频带内的音频贡献,该恢复数据表示所述频带数据分量子集的原始值,该方法包括下列步骤根据所述恢复数据来更改所述频带数据分量的所述子集以重新构造所述频带数据分量的所述子集的所述原始值。
23.权利要求22的方法,包括对所述恢复数据解密的步骤。
24.一种发布频谱编码的音频内容材料的方法,所述方法包括下列步骤按照权利要求1的方法来处理所述频谱编码的音频内容材料,以形成频带-更改过的数字信号和恢复数据;对所述恢复数据加密以形成加密的恢复数据;提供所述频带-更改过的数字信号和所述加密的恢复数据给接收用户;提供解密密钥给所述接收用户以允许所述接收用户对所述加密的恢复数据进行解密。
25.权利要求24的方法,其中所述提供步骤只在接收到来自所述接收用户的付款时才会发生。
26.一种接收频谱编码的音频内容材料的方法,所述方法包括下列步骤从内容提供商接收频带-更改过的数字信号和加密的恢复数据,所述频带-更改过的数字信号和所述恢复数据是根据权利要求1的方法产生的;接收解密密钥以允许对所述加密的恢复数据进行解密;对所述加密的恢复数据解密以形成解密的恢复数据;根据权利要求22的方法用所述解密的恢复数据来处理所述频带-更改过的数字信号。
27.权利要求26的方法,包括下列步骤向所述内容提供商提供付款。
28.一种携带有用于执行权利要求1的方法的程序代码的计算机软件。
29.一种用来提供根据权利要求28的软件的介质。
30.权利要求29的介质是存储介质。
31.权利要求29的介质是传输介质。
32.一种携带有用于执行权利要求22的方法的程序代码的计算机软件。
33.一种用来提供根据权利要求33的软件的介质。
34.权利要求33的介质是存储介质。
35.权利要求33的介质是传输介质。
36.一种用于处理频谱编码的数字音频信号的设备,所处理的数字音频信号包括频带数据分量,它表示在各自的频带内的音频贡献,该设备包括数据修改器,用于更改包括一个或多个所述频带数据分量的子集;和数据发生器,用于产生恢复数据以允许重新构造出所述频带数据分量的所述子集的原始值。
37.权利要求36的设备,包括用于加密所述恢复数据的加密器。
38.一种用于处理频谱编码的数字音频信号的设备,所处理的数字音频信号包括频带数据分量和恢复数据,该频带数据分量表示在各自的频带内的音频贡献,该恢复数据表示所述频带数据分量子集的原始值,该设备包括数据修改器,用于根据所述恢复数据来更改所述频带数据分量的所述子集以重新构造出所述频带数据分量的所述子集的所述原始值。
39.权利要求38的设备,包括用于对所述恢复数据解密的解密器。
40.一种包括权利要求38的设备的机顶盒。
41.一种包括权利要求38的设备的音频接收器。
42.频谱编码的音频数据包括格式定义数据;频带数据分量;和加密的恢复数据,定义了对所述频带数据分量的改变。
全文摘要
一种处理频谱编码的数字音频信号的方法,所处理的数字音频信号包括频带数据分量,其表示在各自的频带内的音频贡献,该方法包括下列步骤更改包含一个或多个频带数据分量的子集;产生恢复数据以允许重新构建出更改过的频带数据分量的原始值。
文档编号G10L19/018GK1534919SQ200410033240
公开日2004年10月6日 申请日期2004年3月31日 优先权日2003年3月31日
发明者W·E·C·肯蒂斯, W E C 肯蒂斯, P·D·索普, 索普 申请人:索尼英国有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1