首页 / 专利库 / 电脑编程 / 计算机编程 / 媒体同步系统

媒体同步系统

阅读:609发布:2024-02-15

专利汇可以提供媒体同步系统专利检索,专利查询,专利分析的服务。并且提供了一种通信系统,其中在电视或无线电节目(或类似节目)的音频中分布了多个代码字对。每对代码字包括ID代码字和同步代码字,ID代码字对于一个 指定 节目是相同的,同步代码字在节目中是独有的。便携用户设备能够使用嵌入的同步代码字来使其自身与节目同步。,下面是媒体同步系统专利的具体信息内容。

1.一种将代码字嵌入到音频信号中的方法,该方法包括:
接收多对代码字,每对代码字包含ID代码字和同步代码字;
对每对代码字的各代码字进行单独编码从而形成经过编码的代码字信号;
接收音频信号;以及
将经过编码的代码字信号与接收到的音频信号的不同部分进行组合,从而形成修改后音频信号,该修改后音频信号载有分布于所述音频信号中的所述多对代码字。
2.如权利要求1所述的方法,其中针对一个指定音频信号的多对代码字的全部的ID代码字是相同的,其中针对该音频信号的每个同步代码字是独有的。
3.如权利要求1或2所述的方法,其中将所述多对代码字连续地编码到所述音频信号中。
4.如权利要求1或2所述的方法,其中所述音频信号包含一个或多个中断点,其中将一个或多个额外的同步代码字编码到一个中断点之后的音频信号中。
5.如权利要求1至4中的任何一项所述的方法,其中编码步骤生成至少与所述同步代码字相关联的时间信息,该时间信息识别出所述代码字被编码到所述音频信号中的时间点。
6.一种将设备与音频信号同步的方法,该音频信号中嵌入了经过编码的多对代码字,每对代码字包含ID代码字和同步代码字,该方法包括:
接收具有经过编码的多对代码字的音频信号;以及
通过检测如下内容将所述设备与所述音频信号同步:i)一对代码字中的ID代码字和同步代码字;或者ii)一对代码字中的ID代码字和另一对代码字中的同步代码字。
7.如权利要求6所述的方法,还包括:使用检测到的ID代码字来检索与检测到的同步代码字的预期时间相关的时间信息,确定检测到的同步代码字的预期时间与检测到的同步代码字的实际时间之间的时间差别,并使用所确定的差别将所述设备与所述音频信号同步。
8.如权利要求7所述的方法,其中所述时间信息规定了相对于诸如所述音频信号的开始之类的所述音频信号中的指定点的预期时间。
9.如权利要求7或8所述的方法,包括使用所确定的差别来更改所述设备的计时器。
10.如权利要求6至9中的任何一项所述的方法,还包括存储行动信息,该行动信息规定了在接收所述音频信号的过程中所述设备在指定时间处应当采取的一个或多个行动。
11.如权利要求6至10中的任何一项所述的方法,包括:在同步前使用第一解码技术对接收到的音频信号中的经过编码的代码字进行解码,以及在同步后使用第二解码技术对经过编码的代码字进行解码。
12.如权利要求6至10中的任何一项所述的方法,包括:使用第一解码技术对接收到的音频信号中的经过编码的代码字进行解码,以及在预期代码字未被检测到的情况下使用第二解码技术对经过编码的代码字进行解码。
13.如权利要求11或12所述的方法,其中所述第一解码技术为盲解码技术,所述第二解码技术为非盲解码技术。
14.如权利要求6至13中的任何一项所述的方法,其中将所述设备与音频同步后,作为对接收到的音频信号中的跳过的响应,保持所述ID代码字并通过检测同步代码字来进行与所述音频信号的再同步。
15.一种用于将代码字嵌入到音频信号中的装置,该装置包括:
用于接收多对代码字的部件,每对代码字包含ID代码字和同步代码字;
用于对每对代码字的各代码字进行单独编码从而形成经过编码的代码字信号的部件;
用于接收音频信号的部件;以及
用于将经过编码的代码字信号与接收到的音频信号的不同部分进行组合、从而形成修改后音频信号的部件,该修改后音频信号载有分布于所述音频信号中的所述多对代码字。
16.如权利要求15所述的装置,其中针对一个指定音频信号的多对代码字的全部的ID代码字是相同的,其中针对该音频信号的每个同步代码字是独有的。
17.如权利要求15或16所述的装置,其中将所述多对代码字连续地编码到所述音频信号中。
18.如权利要求15或16所述的装置,其中所述音频信号包含一个或多个中断点,其中用于将多个经过编码的代码字信号进行组合的部件被配置为组合所述信号从而将一个或多个额外的同步代码字编码到一个中断点之后的音频信号中。
19.如权利要求15至18中的任何一项所述的装置,其中用于编码的部件被配置为生成至少与所述同步代码字相关联的时间信息,该时间信息识别出所述代码字被编码到所述音频信号中的时间点。
20.一种用于将设备与音频信号同步的装置,该音频信号中嵌入了经过编码的多对代码字,每对代码字包含ID代码字和同步代码字,该装置包括:
用于接收具有经过编码的多对代码字的音频信号的部件;以及
用于通过检测如下内容将所述设备与所述音频信号同步的部件:i)一对代码字中的ID代码字和同步代码字;或者ii)一对代码字中的ID代码字和另一对代码字中的同步代码字。
21.如权利要求20所述的装置,还包括:用于使用检测到的ID代码字来检索与检测到的同步代码字的预期时间相关的时间信息的部件,用于确定检测到的同步代码字的预期时间与检测到的同步代码字的实际时间之间的时间差别的部件,以及用于使用所确定的差别将用户设备与所述音频信号同步的部件。
22.如权利要求21所述的装置,其中所述时间信息规定了相对于诸如所述音频信号的开始之类的所述音频信号中的指定点的预期时间。
23.如权利要求21或22所述的装置,包括用于使用所确定的差别来更改所述设备的计时器的部件。
24.如权利要求20至23中的任何一项所述的装置,还包括用于存储行动信息的部件,该行动信息规定了在接收所述音频信号的过程中所述设备在指定时间处应当采取的一个或多个行动。
25.如权利要求20至24中的任何一项所述的装置,包括:用于在同步前使用第一解码技术对接收到的音频信号中的经过编码的代码字进行解码的部件,以及用于在同步后使用第二解码技术对经过编码的代码字进行解码的部件。
26.如权利要求20至24中的任何一项所述的装置,包括:用于使用第一解码技术对接收到的音频信号中的经过编码的代码字进行解码的部件,以及用于在预期代码字未被检测到的情况下使用第二解码技术对经过编码的代码字进行解码的部件。
27.如权利要求25或26所述的装置,其中所述第一解码技术为盲解码技术,所述第二解码技术为非盲解码技术。
28.如权利要求6至12中的任何一项所述的装置,还包括:作为对接收到的音频信号中的跳过事件的响应,通过保持之前解码的ID代码字并通过在所述跳过事件后检测新的同步代码字来将所述设备与所述音频信号再同步的部件。
29.一种用于将代码字嵌入到音频信号中的装置,该装置包括:
编码器,其被配置为接收多对代码字,每对代码字包含ID代码字和同步代码字,该编码器还被配置为对每对代码字的各代码字进行单独编码从而形成经过编码的代码字信号;
以及
组合器,其被配置为将经过编码的代码字信号与接收到的音频信号的不同部分进行组合,从而形成修改后音频信号,该修改后音频信号载有分布于所述音频信号中的所述多对代码字。
30.一种用于将设备与音频信号同步的装置,该音频信号中嵌入了经过编码的多对代码字,每对代码字包含ID代码字和同步代码字,该方法包括:
接收器,其被配置为接收具有经过编码的多对代码字的音频信号;以及同步控制器,其被配置为通过检测如下内容将所述设备与接收到的音频信号同步:i)一对代码字中的ID代码字和同步代码字;或者ii)一对代码字中的ID代码字和另一对代码字中的同步代码字。
31.如权利要求30所述的装置,包括用于接收听觉信号的麦克,并且其中所述接收器被配置为接收从所述麦克风获得的音频信号。
32.如权利要求15至31中的任何一项所述的装置,其中使用扩频编码、回声调制和临界频带编码中的一个或多个将所述代码字编码到所述音频信号中,从而使得所述代码字对于收听音频的用户不唐突。
33.一种包含计算机可执行指令的计算机程序产品,该计算机可执行指令用于引发可编程计算机设备执行权利要求1至14中的任何一项所述的全部方法步骤,或者被配置为权利要求15至32中的任何一项所述的装置。

说明书全文

媒体同步系统

技术领域

[0001] 本发明涉及用于将代码字嵌入到音频信号中的方法和装置,以及利用所嵌入的代码字将设备与音频信号同步化的方法和装置。本发明特别针对(但不限于)通信系统,在该通信系统中通过声学数据通道向便携式用户设备(如平板电脑或蜂窝电话)提供数据。

背景技术

[0002] 申请人已提出了许多声学数据通信系统。在WO2008/145994、WO2009/144470和WO02/45273中可找到之前的系统的实例,其描述了多个系统,在这些系统中,可在广播通道上或从本地储存设备(DVD等)传递的电视或无线电节目的音频内的隐藏数据能够被传送给便携式用户设备(如蜂窝电话)。在本文的语境中,数据在如下的意义上是隐藏的:为了试图将数据隐藏在音频中而对该数据进行编码从而使其对用户不显现。如本领域内的技术人员所理解的那样,可接受的数据可听平取决于涉及的应用和用户。在这些之前的专利申请中描述了若干用于将数据编码到音频中的技术,包括扩频编码、回声调制、临界频带编码等。这些数据隐藏技术中的任何一个都可在本发明中使用。

发明内容

[0003] 本发明的一个目的是对将数据隐藏在音频中的技术以及从声学声音中恢复隐藏数据的技术提供选择性并且在某些方面改进的技术。
[0004] 根据一个方面,本发明提供了一种将代码字嵌入到音频信号中的方法,该方法包括:接收多对代码字,每对代码字包含ID代码字和同步代码字;对每对代码字的各代码字进行单独编码从而形成经过编码的代码字信号;接收音频信号;以及将经过编码的代码字信号与接收到的音频信号的不同部分进行组合,从而形成修改后音频信号,该修改后音频信号载有分布于音频信号中的多对代码字。
[0005] 在一个实施例中,针对一个指定音频信号的多对代码字的全部的ID代码字是相同的,针对该音频信号的每个同步代码字是独有的。所述多对代码字可以是连续地编码到音频信号中,或者它们可以以分布式方式分布在整个音频中。
[0006] 其中的音频信号包含一个或多个中断点,优选地是将一个或多个额外的同步代码字编码到一个中断点之后的音频信号中,从而便于在中断之后进行再同步。
[0007] 编码步骤通常生成至少与同步代码字相关联的时间信息,该时间信息识别出代码字被编码到音频信号中的时间点。随后,可将该时间信息提供给接收设备,用于将该设备与进入的音频同步。
[0008] 本发明还提供了一种将设备与音频信号同步的方法,该音频信号中嵌入了经过编码的多对代码字,每对代码字包含ID代码字和同步代码字,该方法包括:接收具有经过编码的多对代码字的音频信号;以及通过检测如下内容将设备与音频信号同步:i)一对代码字中的ID代码字和同步代码字;或者ii)一对代码字中的ID代码字和另一对代码字中的同步代码字。
[0009] 该方法还可包括:使用检测到的ID代码字来检索与检测到的同步代码字的预期时间相关的时间信息,确定检测到的同步代码字的预期时间与检测到的同步代码字的实际时间之间的时间差别,并使用所确定的差别将设备与音频信号同步。在此情况下,时间信息可规定了相对于诸如所述音频信号的开始之类的所述音频信号中的指定点的预期时间。可使用所确定的差别来更改设备的计时器。
[0010] 可在所述设备中存储行动信息,该行动信息规定了在接收音频信号的过程中设备在指定时间处应当采取的一个或多个行动。
[0011] 在一个实施例中,在同步前使用第一解码技术对接收到的音频信号中的经过编码的代码字进行解码,以及在同步后使用第二解码技术对经过编码的代码字进行解码。
[0012] 在另一个实施例中,使用第一解码技术对接收到的音频信号中的经过编码的代码字进行解码,以及在预期代码字未被检测到的情况下使用第二解码技术对经过编码的代码字进行解码。
[0013] 第一解码技术可以是盲解码技术,第二解码技术可以是非盲解码技术。
[0014] 在一个实施例中,将设备与音频同步后,作为对接收到的音频信号中的跳过的响应,保持ID代码字并通过检测同步代码字来进行与音频信号的再同步。该跳过可以是快进操作或倒回操作。
[0015] 本发明还提供了一种用于将代码字嵌入到音频信号中的装置,该装置包括:用于接收多对代码字的部件,每对代码字包含ID代码字和同步代码字;用于对每对代码字的各代码字进行单独编码从而形成经过编码的代码字信号的部件;用于接收音频信号的部件;以及用于将经过编码的代码字信号与接收到的音频信号的不同部分进行组合、从而形成修改后音频信号的部件,该修改后音频信号载有分布于所述音频信号中的多对代码字。
[0016] 针对一个指定音频信号的多对代码字的全部的ID代码字可以是相同的,针对该音频信号的每个同步代码字可以是独有的。
[0017] 多对代码字可以连续地编码到音频信号中。
[0018] 其中的音频信号包含一个或多个中断点,用于将多个经过编码的代码字信号进行组合的部件组合所述信号从而将一个或多个额外的同步代码字编码到一个中断点之后的音频信号中。
[0019] 在一个实施例中,用于编码的部件生成至少与同步代码字相关联的时间信息,该时间信息识别出代码字被编码到音频信号中的时间点。
[0020] 本发明还提供了一种用于将设备与音频信号同步的装置,该音频信号中嵌入了经过编码的多对代码字,每对代码字包含ID代码字和同步代码字,该装置包括:用于接收具有经过编码的多对代码字的音频信号的部件;以及用于通过检测如下内容将设备与音频信号同步的部件:i)一对代码字中的ID代码字和同步代码字;或者ii)一对代码字中的ID代码字和另一对代码字中的同步代码字。
[0021] 该装置还可以包括:用于使用检测到的ID代码字来检索与检测到的同步代码字的预期时间相关的时间信息的部件,用于确定检测到的同步代码字的预期时间与检测到的同步代码字的实际时间之间的时间差别的部件,以及用于使用所确定的差别将用户设备与音频信号同步的部件。
[0022] 时间信息可规定相对于诸如所述音频信号的开始之类的所述音频信号中的指定点的预期时间。
[0023] 该装置还可以包括用于使用所确定的差别来更改设备的计时器的部件。还可存储行动信息,该行动信息规定了在接收音频信号的过程中设备在指定时间处应当采取的一个或多个行动。
[0024] 在一个实施例中,该装置具有:用于在同步前使用第一解码技术对接收到的音频信号中的经过编码的代码字进行解码的部件,以及用于在同步后使用第二解码技术对经过编码的代码字进行解码的部件。
[0025] 在另一个实施例中,该装置具有:用于使用第一解码技术对接收到的音频信号中的经过编码的代码字进行解码的部件,以及用于在预期代码字未被检测到的情况下使用第二解码技术对经过编码的代码字进行解码的部件。
[0026] 第一解码技术可以是盲解码技术,第二解码技术可以是非盲解码技术。
[0027] 该装置还可包括作为对接收到的音频信号中的跳过事件的响应,通过保持之前解码的ID代码字并通过在跳过事件后检测新的同步代码字来将设备与音频信号再同步的部件。该跳过事件可以是快进事件或倒回事件。
[0028] 本发明还提供了一种用于将代码字嵌入到音频信号中的装置,该装置包括:编码器,其被配置为接收多对代码字,每对代码字包含ID代码字和同步代码字,该编码器还被配置为对每对代码字的各代码字进行单独编码从而形成经过编码的代码字信号;以及组合器,其被配置为将经过编码的代码字信号与接收到的音频信号的不同部分进行组合,从而形成修改后音频信号,该修改后音频信号载有分布于所述音频信号中的多对代码字。
[0029] 本发明还提供了一种用于将设备与音频信号同步的装置,该音频信号中嵌入了经过编码的多对代码字,每对代码字包含ID代码字和同步代码字,该装置包括:接收器,其被配置为接收具有经过编码的多对代码字的音频信号;以及同步控制器,其被配置为通过检测如下内容将设备与接收到的音频信号同步:i)一对代码字中的ID代码字和同步代码字;或者ii)一对代码字中的ID代码字和另一对代码字中的同步代码字。
[0030] 该装置可包括用于接收听觉信号的麦克,并且接收器可被配置为接收从麦克风获得的音频信号。
[0031] 在一个实施例中,使用扩频编码、回声调制和临界频带编码中的一个或多个将代码字编码到音频信号中,从而使得代码字对于收听音频的用户不唐突。在回声调制的情况下,回声的极性和/或时间滞后和/或振幅可以根据将被隐藏到音频中的数据而变化。
[0032] 本发明还提供了一种包含计算机可执行指令的计算机程序产品,该计算机可执行指令用于引发可编程计算机设备执行上面所讨论的全部方法步骤,或者被配置为上面所讨论的装置。附图说明
[0033] 本发明的这些以及其它方面将会从下面的参照附图对示例性实施例的详细描述中变得明显,其中:
[0034] 图1示意性地示出了用于通过电视信号的音频部分将数据传输至蜂窝电话的信号系统;
[0035] 图2a为示出了由形成图1中所示出的系统的一部分的音频编码器执行的处理的示意框图
[0036] 图2b为示出了形成图2a中示出的编码器的一部分的FEC编码器的主要组件的框图;
[0037] 图2c为示出了通过图2a中示出的编码器将识别(ID)代码和同步代码添加到音频信号的方式的时序;
[0038] 图2d示出了通过图2a中示出的编码器将代码字嵌入到音频信号中的方式;
[0039] 图3为示出了蜂窝电话的主要组件的示意框图,该蜂窝电话包括用于对隐藏在接收到的音频信号中的数据进行恢复的软件应用程序;
[0040] 图4a为示出了对音频信号进行处理以恢复其中的隐藏数据的软件应用程序的主要处理模的示意框图;
[0041] 图4b为示出了图4a中示出的代码字提取模块的主要处理块的框图;
[0042] 图5为示出了一种有益方式的时序,在该有益方式中软件应用程序可利用ID代码字和同步代码字来与音频信号同步;
[0043] 图6a为示出了软件应用程序可在向前跳过事件的情况下与音频中的代码字再同步的方式的时序;
[0044] 图6b为示出了软件应用程序可在向后跳过事件的情况下与音频中的代码字再同步的方式的时序;
[0045] 图6c为示出了软件应用程序可在音频编码中断的情况下与音频中的代码字再同步的方式的时序;
[0046] 图6d为示出选择性地在音频中插入至少一个额外的同步代码字的时序,以辅助软件应用程序在音频编码中断的情况下与音频中的代码字再同步;以及
[0047] 图7示出了可将代码字对插入到音频信号中的选择性方式。

具体实施方式

[0048] 概述
[0049] 图1示出了本发明的第一实施例,其中通过编码器5将数据源1生成的代码字F(t)编码在来自音频源3的音频轨迹中,从而形成修改后的用于电视节目的音频轨迹。在该实施例中,代码字F(t)包括识别代码字和同步代码字,同步代码字用于使运行在用户移动电话21上的软件应用程序的操作与电视节目同步。当编码器5将代码字编译到音频中时,它将时间信息发送至服务器41,该时间信息识别每个代码字是在哪里被嵌入到音频信号中的(例如相对于音频信号的开始)。如下面将要进行的更详细描述那样,该时间信息用于控制用户移动电话21与电视节目的音频同步的操作。如图1中所示出,在信号生成器9中,编码器5输出的修改后的音频轨迹随后与来自视频源7的相应的视频轨迹组合从而形成输送电视节目的电视信号。在该实施例中,数据源1、音频源3、视频源7和编码器5都位于电视演播室中,电视信号由分配网络11分配,在该实施例中是无线电频率(RF)信号13。RF信号13由电视天线15接收,电视天线15向传统电视17提供电视信号。电视17具有用于展示视频轨迹的显示器(未示出)、以及未示出的用于将修改后的音频轨迹输出为听觉信号19的扬声器。
[0050] 如所示出的那样,在该实施例中,蜂窝电话21使用麦克风23检测电视17发射出的听觉信号19,麦克风23将检测到的听觉信号转换为相应的电信号。蜂窝电话21随后对电信号进行处理从而恢复出隐藏代码字F(t)。蜂窝电话21同样具有传统组件,如扬声器25、用于与蜂窝基站35通信的天线27、显示器29、用于输入数字和字母的小键盘31和用于访问菜单选项的菜单键33。从音频信号中恢复出的数据可用于例如将运行在蜂窝电话21上的软件应用程序与在电视17上展示的电视节目同步。例如,可在电视17上展示一个智竞赛节目,并安排蜂窝电话21生成和显示与智力竞赛相关的问题,这些问题是与智力竞赛节目同步展示的。这些问题可以是例如从服务器41获得并与如下的时间信息一起存储,该时间信息规定了相对于同步代码被从音频中恢复出的时间这些问题将向用户输出的时间。
在智力竞赛节目的最后,用户(通过小键盘31)输入到蜂窝电话21中的答案随后可以被通过蜂窝电话基站35和电信网39传送到远程服务器41。随后远程服务器41可对从很多用户接收到的答案进行整理,并根据给出正确答案的数量和输入答案的时间对这些答案分等级。时间信息也可被蜂窝电话21确定并与用户的答案一起传送到服务器41。本领域内的技术人员将理解的是,服务器41也可对从不同用户接收到的信息进行处理并整理各个用户的概况信息,这些信息可存储在数据库43中。该用户概况信息随后可被用于例如定向广告。
[0051] 服务器41识别出一个或多个“获胜”用户后,可以向这些用户发送信息或奖品。例如,可通过电信网39将消息连同优惠劵或其它票劵发送给这些用户。如图1中的虚线44所示,服务器41也可向数据源1提供将被编码到音频中的数据。
[0052] 如上面所提到,发明人实现了一种方式,其中数据被隐藏在音频信号中,该音频信号可以被改善从而便于电话21与电视节目同步。他们所做出的一种改进是,插入了分布在音频节目中的多对代码字,每对代码字包括识别(ID)代码字和同步代码字。通常,指定的电视节目中的ID代码字将会是相同的,而在电视节目中同步代码字是独有的。不同的电视节目将会具有不同的ID代码字,在某一个电视节目中使用的同步代码字也可以在另一个电视节目中使用。发明人发现,该配置有助于加快同步的速度,同时对可用代码字做出高效的使用。
[0053] 数据隐藏
[0054] 存在可将代码字隐藏在音频信号中的若干方式,向读者介绍的是Bender在1996年IBM系统杂志的35卷384期上的名称为“Techniques For Data Hiding”的论文(“Techniques For Data Hiding”,IBM Systems Journal,Vol 35,no 384,1996),其中详细讨论了将数据隐藏在音频中的不同技术。在该实施例中,通过向音频中添加回声同时通过回声的极性或延时的变化对数据进行编码,来将数据隐藏在音频中。该变化可通过例如使用无回声对应于二进制“0”和回声对应于二进制“1”的简单方案来实施。可选择性地,二进制“1”可通过在第一延时处添加回声来表示,二进制“0”可通过在不同的第二延时处添加回声来表示。回声的符号同样可随着将被隐藏的数据而变化。在一个更复杂的编码方案中,二进制“1”可通过回声(处于同一时间或相继应用的两个或多个回声)的第一组合或第一序列来表示,二进制“0”可通过回声的不同的第二组合或第二序列来表示。
[0055] 这种回声编码技术的更多细节可在本申请人早期的申请WO2009/144470中找到,在此通过引用将其内容并入本文中。但是,为了完整性,现将会参照图2对编码处理给予简单描述。图2a为示出了由图1中所示出的编码器块5的主要组件的框图。如所示出的那样,编码器5包括FEC编码器71,FEC编码器71将每个代码字与其它代码字分开编码从而为每个代码字生成相应的消息数据。FEC编码器71输出的消息数据被传送到回声生成和整形模块73,回声生成和整形模块73还接收音频信号,消息数据将会被隐藏到该音频信号中。随后回声生成和整形模块73生成音频的回声,该回声取决于将要被传送的消息数据。随后在组合器模块75中将生成的回声与原始音频信号组合。组合器模块75还为每个代码字(或者至少为每个同步代码字)记录时间信息,该时间信息规定了音频信号中代码字被编码的时间点(例如,从音频信号的开始到音频信号中与代码字的结束相对应的点的时间)。该时间信息被提供给服务器41,在服务器41中可将时间信息与在音频内的指定时间处将要进行的行动相结合。从组合器模块75输出的修改后的音频信号随后被发送至增益控制模块77,用于在具有隐藏数据的音频信号准备与相应的视频信号组合前对其进行适当的增益控制。
[0056] 图2b为示出了该实施例中使用的FEC编码器模块71的主要组件的框图。每个输入到FEC编码器71中的代码字被单独处理,从而使得每个代码字的编码和后继解码能够与其它代码字的编码和解码独立。如所示出的那样,在该实施例中,FEC编码器71具有Reed-Solomon编码器模块81,其使用缩短的(13,6)块代码来表示输入的代码字。Reed-Solomon编码器51输出的数据随后被发送至卷积编码器83,其对数据进行卷积编码。
随后通过数据交叉模块85将卷积编码器83输出的数据位彼此交叉,从而防止错误的突然发生。最后,同步数据添加器模块87添加一连串的同步位,这将帮助电话21对接收到的听觉信号3中的经过编码的数据进行定。同步数据添加器模块87的输出表示输入代码字的消息数据,该消息数据随后被发送至回声生成和整形模块73。
[0057] 图2c和2d为示出了将代码字编码并添加到音频信号90中的方式的时序。具体地,在该实施例中,添加了代码字对91-1至91-4。每个代码字对91包括ID代码字93和同步代码字95。如上面所讨论,各ID代码字93全部相同,各同步代码字95在被编码的电视节目中全都是独有的。各同步代码字95优选地是彼此相关联,因为这会有助于解码(如下面将会讨论的那样)。例如,各同步代码字95可从一个同步代码字开始按所定义的量增长(例如,增长1)到下一个。在该实施例中,多个代码字对91被连续地添加到电视节目的音频中,使得第二代码字对91在第一代码字对91后立即增加,直到音频信号结束为止。这为解码处理提供了便利,因为只要电话21找到了一个代码字,它可使用该代码字的结束边界作为下一个代码字等的开始边界。
[0058] 如下面将要更详细描述的那样,ID代码字93允许电话21识别电视节目以及其在节目中应当采取的相应的行动的组;同步代码字95允许电话21将它需要采取的行动的执行与电视节目同步。
[0059] 蜂窝电话
[0060] 图3示出了该实施例中使用的蜂窝电话21的主要组件。如所示出的那样,蜂窝电话21包括麦克风23,其用于接收听觉信号(如用户的声音或载有隐藏代码字的电视节目的音频)并将它们转化成电气等效信号。随后通过过滤器51对这些电信号进行过滤从而去除(通常是超出300Hz至3.4kKz的频带的)多余频率。随后通过模数转换器53对过滤后的音频进行数字化,这通常以8kHz的取样频率对过滤后的音频进行样本采集并以13至16位数字值表示每个样本。数字化音频(D(t))的数据流随后被输入到处理器63(其可包含一个或多个处理单元)。当进行语音呼叫时,处理器63对接收到的音频进行压缩并随后将其发送至RF处理单元57,RF处理单元57将压缩音频数据调制成一个或多个RF载波信号,用于通过天线27传送到基站35。同样,通过天线27接收到的压缩音频数据被馈送到RF处理单元57,RF处理单元57对接收到的RF信号进行调制,从而对来自RF载波信号的压缩音频数据进行恢复,随后将其发送至处理器63进行解压缩。随后通过数模转换器59和放大器61将再生的音频样本输出到扬声器25。
[0061] 如图3a所示,处理器63由存储在存储器65中的软件控制。软件包操作系统软件67(用于控制蜂窝电话21的一般操作)、用于访问因特网的浏览器68和用于为蜂窝电话21提供额外功能的应用程序软件69。在该实施例中,应用程序软件69用于引发蜂窝电话21以上面讨论的方式与电视节目进行交互。为了做到这点,使用应用程序软件69对其通过麦克风23接收到的电视节目的音频信号进行接收和处理,从而恢复出控制应用程序软件69的隐藏代码字F(t)。
[0062] 图4a是示出了应用程序软件69的主要功能模块的框图。如所示出的那样,应用程序软件69包括代码字提取模块101,其对来自模/数转换器53的音频信号样本进行处理从而对隐藏在其中的代码字进行恢复。图4b是示出了代码字提取模块101的主要组件的框图。如所示出的那样,其中具有回声探测器103,其对接收到的音频信号中的回声进行检测,还具有数据恢复模块105,该模块对回声进行处理从而确定其代表的数据值。最初回声探测器103不知道每个符号周期开始和结束的位置或者数据消息的开始所在的位置。因此,每次新的样本到达时回声探测器103都会对一批样本进行分析从而确定其是否包含装载了隐藏数据符号的回声。随后通过数据恢复模块105对回声探测器103的输出进行分析,从而确定最可能的符号边界。随后数据恢复模块105通过找到同步数据添加器87添加的同步位来确定消息的开始位置。在这一点上,数据恢复模块105能够开始恢复整个数据消息。一旦获得同步,因为代码字是连续地隐藏在音频中的,因此回声探测器103可使用所确定的当前代码字的符号边界和消息边界来确定下一个隐藏代码字的近似符号和消息边界,这降低了恢复隐藏代码字所需要的处理量。
[0063] 随后通过FEC解码模块107对数据恢复模块105输出的消息数据进行处理,FEC解码模块107将FEC编码器71执行的FEC编码逆转从而将它输出的代码字再生。在该实施例中,FEC解码模块107具有盲解码操作模式和非盲解码操作模式。提供控制器109来依赖于解码控制信号地控制FEC解码模块107的操作模式。具体地,在盲解码操作模式中,FEC解码模块107在不使用任何有关其中可能包含的代码字的先验信息的情况下对进入数据消息进行处理。在非盲解码操作模式中,FEC解码模块107使用有关期望代码字的先验信息,以尝试改善解码处理。具体地,在该实施例中使用的ID代码字93与同步代码字95的交替结构中,如果前面的代码字为同步代码字95,则下一个的代码字应当是ID代码字93。此外,由于在整个电视节目中使用的是相同的ID代码字,因此预期的ID代码字的值应当与之前的ID代码字的值相同。同样,如果前面解译的代码字是ID代码字,则下一个代码字应当是同步代码字95;由于某一个同步代码字的值与前一个同步代码字相关联(例如,加1),因此也可预先确定下一个同步代码字的预期值。额外地或选择性地,电话21可预先知道被编码在电视节目中的所有代码字以及它们出现的顺序。因此,一旦电话21完成了一个代码字的解码,便可根据预先存储的信息来确定预期的下一个代码字。在任何一种情况中,FEC解码模块107都可使用对预期的下一个代码字的认识,从而控制其解码处理,例如,使用相关性处理、最大似然法处理或Viterbi处理。
[0064] 在一个实施例中,FEC解码模块107通常在盲解码操作模式中运行;如果代码字输出中的置信度落在阈值以下或者如果根本检测不到代码字,则控制器109将FEC解码模块107切换到在非盲解码操作模式下操作。选择性地,控制器109可控制FEC解码模块107的操作,使其在盲解码操作模式中操作,直到电话21自身与音频信号中的代码同步为止,在该点上控制器109将FEC解码模块107切换到在非盲解码操作模式下操作;如果电话21丢失掉了与接收到的音频信号中的代码字的同步,则切换回到盲解码模式。
[0065] 返回到图4a,提取到的代码字被发送至ID代码字处理模块111和同步控制器113。ID代码字处理模块111忽视同步代码字并处理ID代码字。具体地,ID代码字处理模块111最初使用提取到的ID代码字93从数据库115中检索行动和时间文件117。从数据库115获得的行动和时间文件117针对于隐藏了代码字的电视节目。数据库115可为一系列已经或将要安排在指定时期(例如过去一周和接下来的24小时)播放的不同的电视节目存储各个行动和时间文件117。这些时间是编码器5在对音频信号编码的过程中识别出的时间(或者从那里得到的时间),这些行动是服务器41确定的将要由电话21在电视节目中执行的行动。每个电视节目的行动和时间文件117可通过无线电链路从服务器41下载到数据库115中,或者在存储卡上提供给电话21。
[0066] 如上面所讨论的那样,电视节目中的ID代码字93都是相同的。因此,如果ID代码字处理模块103检测到新的ID代码字,则它假定用户已经改变了频道,并且它会相应地通知同步控制器105。ID代码字处理模块111还停止输出控制器121的操作。ID代码字处理模块111可等待下一个ID代码字93,从而在停止输出控制器121前确认ID代码字的改变——只是在所检测到的新的ID代码字被错误地解码的情况下才如此。如果确认了新的ID代码字,则ID代码字处理模块103从本地数据库115(如果可用的话)或在数据库未存储在本地的情况下从远程数据库(未示出)中,检索用于与已检测到的新代码字相对应的新电视节目的行动和时间文件117。
[0067] 同步控制器113还接收代码字提取模块101输出的代码字和从数据库115检索到的行动和时间文件117。同步控制器113使用从音频信号中检测到的同步代码字95来控制计时器119,计时器119用于控制应该执行(在行动和时间文件117中规定的)行动的时间。具体地,电视节目的行动和时间文件117包括电视21将要执行的一系列行动以及每个行动应当被执行的时间。例如,相对于电视节目的开始或者相对于上一个事件来界定时间。计时器119与该开始点或前一个事件同步,从而输出控制器121可在正确的时间输出需要被执行的行动。例如,行动和时间文件117可规定,指定行动应当在从电视节目的开始起的12分钟23秒处发生。计时器119与节目的开始同步,从而在准确的时间执行相关的行动。同时可在电视节目的开始是对计时器119进行设置并使其“自由运行”来控制行动的输出,由于用户可以控制播放速度(例如使用暂停、快进、倒回等),行动和时间文件117包括每个同步代码字95出现在音频信号中的时间。这样,同步控制器113可将接收到同步代码字95的实际计时器值与(在行动和时间文件117中规定的)预期的计时器值进行对比,并使用实际时间与预期时间之间的差别来改变计时器119。这样,如果用户确实跳过电视节目的某些部分,则将会在接收下一个同步代码字时对计时器119进行更新,从而使相关行动在正确的时间被输出和执行。
[0068] 由于电话21可位于噪声环境中,一些代码字可能不会被代码字提取模块101检测到。因此,将输出控制器121设计为在计时器119示出相应的时间时依照行动和时间文件117来输出后续的行动。这样,指定行动的执行并不准确地取决于检测到的相应同步代码字。行动的触发与对代码字进行准确解码的任务被分离开。
[0069] 在该实施例中,由于同步控制器113具有行动和时间文件117,它知道预期会有什么同步代码字。如果接收到的同步代码字未与预期代码字中的一个相匹配,则同步控制器113将会停止输出控制器121的操作。它可立即作出这个动作,或者它可以等待对下一个同步代码字进行解码以查看最后一个代码字是否错误、或者用户是否可能改变了频带并且正在观看另一个电视节目(其同样以类似的代码字被解码)之后才作出这个动作。
[0070] 当电话21与进入的音频中的代码字同步时,同步控制器113还确定下一个预期的代码字并将其发送至代码字提取模块101(作为解码控制信号),用于控制FEC解码模块107(使用上面描述的盲解码操作模式或非盲解码操作模式)对消息数据进行解码的方式。
[0071] 输出控制器121输出的行动引发应用程序软件69执行规定的行动,例如生成数据(如给用户的问题)并将其在显示器29上输出,并接收用户通过小键盘31输入的答案。随后应用程序软件69将用户的答案传送至远程服务器41(通过预先存储的URL、E.164号码等来识别),同时一起发送表示用户输入每个答案所消耗的时间的时间数据(由应用程序软件69使用内部计时器(未示出)来计算)。应用程序软件69也可显示接收到的从服务器41返回的表示该用户相对于参与该问答比赛的其它用户做得如何的结果信息。
[0072] 优点
[0073] 如上面所讨论的那样,插入多对ID代码字93和同步代码字95的优点之一是,它允许与音频流快速同步。具体地,由于ID代码字93以与同步代码字95分开的方式被编码到音频中,同步控制器113可通过检测ID代码字93并随后检测同步代码字95或者通过检测同步代码字95并随后检测ID代码字93来与进入的音频同步。这会使得达到同步所需要的时间大幅节省。具体地,通过该实施例中使用的回声编码处理(其具有非常低的比特率),会在大约5至30秒的电视音频上对每个代码字进行编码,这取决于FEC编码器所执行的编码。如果每个代码字都将是独有的并且假定相同的编码空间(即,把相同数量的独有代码字作为具有独有组合的代码字对91的代码空间),则每个代码字将会需要为该实施例中使用的代码字的长度的大约两倍。因此,如果电话21在一个这种长度的代码字的开始后便开始尝试对音频进行解码,则电话21在与音频同步前,它将必须等待到下一个完整代码字的结束为止。但是,通过将长代码字分为两个更短的代码字——一个公共的ID代码字和一个独有的同步代码字,并通过允许同步控制器113对ID代码字93进行同步并随后对同步代码字95进行同步、或者对同步代码字95进行同步并随后对ID代码字93进行同步,在最坏的情况中达到同步的延时将会被降低四分之一。
[0074] 除了当电话21开始解码处理时快速同步的优点以外,该实施例中使用的对代码字的划分方法还为快速再同步提供了便利——例如如果用户在音频流中向前跳过或向后跳过或者编码中存在中断。在这些情况下,代码字提取模块101接收到并发送至同步控制器113的下一个同步代码字将会出现乱序,并因此导致计时器119被重置到音频中的适当的点,如前面所描述的那样。图6中示出了这些情景。
[0075] 具体地,图6a示出了用户决定从时间t1向前跳过至时间t2(对应于ID代码字93的中间)的情景。但是,在该实施例中,同步控制器113假定用户未改变电视节目,因此ID代码字93将会是相同的。因此,同步控制器113可在时间t3对下一个同步代码字95(在此情况下为SYNC12)进行解码后与音频进行再同步。
[0076] 图6b示出了用户决定从时间t4向后跳过至时间t5(对应于ID代码字93的中间)的情景。再次,同步控制器113假定用户未改变电视节目,因此ID代码字93将会是相同的。因此,同步控制器113可在时间t6对下一个同步代码字95(在此情况下为SYNC11)进行解码后与音频进行再同步。同样,通过将在再同步后的同步代码字与前面的同步代码字进行对比,可检测用户在媒体节目中进行了向前/向后跳过。
[0077] 图6c示出了在音频信号中插入编码中断的情景。发生这种中断的原因可以是这部分对应的电视音频部分非常平静,或者这部分对应于将广告插入到电视节目中的点。在此情况下,编码的中断开始于时间t7并在时间t8结束。同步控制器113在对同步代码(SYNC21)解码后在时间t9再次与音频同步。从图6c中可以看到,中断结束后的第一个代码字优选的是同步代码字95——因为这会使同步控制器113在中断后进行与电视节目的音频再同步所消耗的时间最小化。当节目中存在已知的中断点用于进行广告时,数据库115会存储在该中断点发生同步丢失的指示。如果广告中断的持续时间是已知的,则数据库储也可存储指示将发现下一个代码字的时间的数据。但是,在很多情况中,尽管中断点是预先已知的,但是广告中断的长度将是预先未知的。
[0078] 此外,在优选的实施例中,在中断后插入一个或多个额外的同步代码字95——因为这会允许同步控制器113快速再同步,即使无法在音频信号中检测到第一个或第二个代码字——也许是因为为了适应期望的广告中断长度而对电视节目进行了改变,同时将电视节目保持为电视时间表中的设定持续时间;或者是因为背景噪声(其在广告中断期间会趋向于变得更高)阻止了中断后的第一个代码字的正确解码。图6d中示出了这种额外的同步代码字,图6d中示出了中断后的两个连续的同步代码字(SYNC21和SYNC22)。在该实例中,可能未检测到第一个代码字,在这种情况下,同步控制器113会在对SYNC22解码后的时间t10处与音频再同步。
[0079] 修改和其它的替代方案
[0080] 上面已经描述了许多实施例,示出了将多个代码字对中的ID代码字93和同步代码字95隐藏在音频信号中的方式。本领域内的技术人员可以理解的是,可对上面的实施例进行若干修改和改进,现将对这些修改中的一些进行描述。
[0081] 在上面的这些实施例中,代码字对是连续地嵌入到音频信号中的。这不是必需的。代码字对可以分布在音频信号中,使得相邻代码字对之间具有间隙(音频信号未承载隐藏数据的时间段)。图7中示出了这种配置,图7还示出每个代码字对中的代码字的顺序不必是相同的。这对于中断后插入代码字对的情况是有用的——使得中断后的第一个代码字为同步代码字。在上述实施例中,代码字对是以交替方式被添加到音频中的。尽管这是优选的,但是不是必需的,因为可能会在代码字对之间插入额外的代码字。图6d中示出了这种实施例的一个实例。
[0082] 在上述的这些实施例中,对音频样本的各种处理是通过运行在蜂窝电话上的软件来执行的。本领域内的技术人员可以理解的是,这些处理的一部分或全部可以通过专用硬件电路构成,尽管软件是优选的,这是由于软件具有在生产后被添加到蜂窝电话的能力以及装载时可升级的能力。引发蜂窝电话以上述方式操作的软件可以作为信号提供,或者在诸如光盘之类的载体或其它载体介质上提供。此外,可使用其它便携设备来代替上面讨论的使用蜂窝电话执行各种处理,例如膝上型电脑、掌上电脑、平板电脑等。
[0083] 在上面的实施例中,电视节目是通过RF通信链路13传送到用户的。本领域内的技术人员可以理解的是,电视节目可以通过任何适当的分配技术分配到用户,如通过有线电视、因特网、卫星电视等。它也可以通过诸如DVD或BD之类的存储介质获得并通过适当的DVD/BD播放器读取。
[0084] 在上面的实施例中,蜂窝电话拾取电视节目的音频。本领域内的技术人员可以理解的是,当音频是通过无线电或其它扬声器系统获得时,例如在电影院或其它现场舞台表演中,上述技术也可以使用。
[0085] 在上面的实施例中,假定代码字是隐藏在电视系统的电视演播室端的音频中的。在一个选择性实施例中,可将代码字隐藏在电视系统的用户端的音频中,例如在播放过程中或记录过程中(如果在本地记录节目)通过机顶盒来实现。机顶盒可用于在将电视节目输出给用户前将适当的数据隐藏到音频中。
[0086] 在上面的实施例中,将同步位添加到了所传送的数据中从而使得解码器能够识别每个符号周期的边界以及每个消息的开始和结束。这种同步位的使用显著提升了需要传送的消息的总体长度(在某些情况中增加多达25%)。此外,由于每个位的解码都会遭受噪声的影响,因此匹配度并不完美,这会降低成功同步的可能性。如在申请人先前的专利申请WO2009/144470中所描述的那样,同步位是不需要的。具体地,当回声探测器103未能适当地与进入的数据同步时,相比于回声探测器与进入的数据同步时的错误率,FEC解码模块41将会具有更高的错误率。因此,可使用FEC解码模块107输出的错误率来控制接收器与进入数据的同步。
[0087] 本领域内的技术人员可以理解的是,上面描述的将数据隐藏在音频中的技术可在传送听觉信号前进行或者它可以实时进行。即使在当数据被实时嵌入音频信号中的情况下,某些处理也是可以提前进行的。例如,可提前对数据进行FEC编码从而使得只有回声生成和回声整形是实时执行的。
[0088] 为了将添加的回声的突出性最小化,编码数据的数据速率优选的是保持在每秒1到20个符号之间。这对应于50毫秒到1秒之间的符号周期。在一些实施例中,长符号周期是有益的,因为多个添加的回声将会跨越音频中的话语,这会便于将数据回声隐藏在音频中。较长的符号周期还降低了回声的可听度。这是因为相对于静止的或固定的回声,人们对于变化的回声更敏感。因此,通过使用较长的符号周期,回声的变化率更低,使得用户更不易察觉回声的存在。
[0089] 通常,添加到发送器中的音频信号中的数据的数据速率是常量并且被接收器知道。这个认识降低了用于在接收到的信号中锁定数据的接收器电路的复杂性。但是,这对于本发明不是必需的,可在接收器中提供更复杂的电路从而允许接收器尝试不同的数据速率直到确定了实际的数据速率为止。同样,接收器可使用其它技术使其与传送的数据同步,从而使其在接收数据之前便知道符号边界的位置。
[0090] 在上面的实施例中,使用FEC编码技术来允许接收器能够对接收到的数据中的错误进行校正。本领域内的技术人员可以理解的是,这种编码技术对于本发明不是必需的。但是,它们是优选的,因为它们有助于对听觉链路上的传送处理中发生的错误进行校正。
[0091] 在上面的实施例中,与接收器一起提供了单个发送器。本领域内的技术人员可以理解的是,可提供多个发送器和/或多个接收器。此外,发送器的各组件进可分布在多个不同实体上。例如,发生器的编码和数据隐藏部分可设置在电视分配系统的头端中或者用户的机顶盒中。
[0092] 在另一个修改中,多个数据代码字可被编码为“彼此重叠”——在音频中的相同点处,例如使用不同的回声滞后,假定代码字之间不相互干扰。在上面讨论的本申请人的先前申请中描述了实现这点的方式。
[0093] 在上面的实施例中,描述了多个处理模块和电路。本领域内的技术人员可以理解的是,这些处理模块和电路可作为硬件电路提供或者作为运行在通用处理器的存储器中的软件模块提供。在此情况下,软件可在诸如CD-ROM之类的存储介质上提供,或者通过计算机网络(如因特网)的载波信号将其下载到适当的可编程设备上。软件可以编译形式、部分编译形式或非编译形式提供。
[0094] 本领域内的技术人员可以理解的是,上面这些实施例中描述的比特率、采样率等的准确数值不是本发明的必需特征,它们可在不脱离本发明的情况下进行变化。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈