用于同步媒体的方法

文档序号:10489093阅读:220来源:国知局
用于同步媒体的方法
【专利摘要】提供了一种方法,包括:接收正被媒体渲染源渲染的媒体流的媒体样本;由计算设备确定与所述媒体样本潜在匹配的多个媒体记录;由所述计算设备向客户端设备提供包括所述多个媒体记录之一的特征的信息的对准文件,其中预计所述多个媒体记录之一在所述对准文件中的特征在预定时间出现在所述媒体流中。
【专利说明】
用于同步媒体的方法
[00011 本申请是申请日为2011年5月4日、申请号为201180032480.4、发明名称为"用于同 步媒体的方法和系统"的发明专利申请的分案申请。
[0002] 相关申请的交叉引用
[0003] 本申请要求2010年5月4日提交的序列号为61/331,015的美国临时专利申请的优 先权,通过引用将其全部内容合并于此。
技术领域
[0004] 本公开涉及媒体的媒体信息检索和同步。例如,本公开涉及音乐信息检索以及文 本转录(textual transcription)或歌词同步,例如在卡拉OK的领域中。本公开还涉及其它 形式的媒体的同步。
【背景技术】
[0005] 同步媒体(诸如音乐歌词)显示系统典型地包括歌词显示装置,其与音乐回放装置 操作地耦接,并被音乐回放装置控制。在这些系统中,音乐回放装置知道当前播放的音乐音 轨(audio track)中的当前时间位置。音乐音频时间位置被提供给歌词显示装置。歌词显示 装置使用定时信息来确定对应的歌词文本位置,并显示对应的歌词文本用于用户与音乐音 频同步地欣赏。广泛可得的卡拉OK系统以此方式操作。
[0006] 现有的同步媒体(例如歌词)系统典型地具有被设计为包括音乐回放装置的系统 的构成部分的歌词显示装置,该系统通常在共享的物理壳体中、或者由共同的控制机构(诸 如计算机程序)控制。偶遇任意环境或周边音乐源(例如,在咖啡馆、餐馆、汽车、商店等中) 的音乐听众将没有办法欣赏同步媒体(例如歌词),除非在任意环境或周边源的音乐回放装 置操作地耦接到集成的歌词显示装置。

【发明内容】

[0007] 在一个方面,提供了一种同步媒体的方法。该方法包括客户端设备接收正被媒体 渲染源渲染的媒体流的媒体样本,所述媒体样本与对应于所述媒体样本的采样时间的时间 戳关联。所述方法还包括确定指示所述媒体流中对应于所述媒体样本的采样时间的时间位 置的时间偏移,以及使用实时时间戳、所述媒体样本的时间戳以及所述时间偏移计算实时 偏移,其中所述实时时间戳指示当前时间。所述方法还包括所述客户端设备在对应于所述 实时偏移的位置渲染第二媒体流,以与正被所述媒体渲染源渲染的媒体流同步。
[0008] 在另一方面,提供了一种同步媒体的方法。所述方法包括客户端设备向位置识别 模块发送正被媒体渲染源渲染的歌曲的音频样本。所述音频样本与对应于所述音频样本的 采样时间的时间戳关联。所述方法还包括客户端设备从所述位置识别模块接收时间偏移, 其指示所述歌曲中对应于所述音频样本的采样时间的时间位置。所述方法还包括:使用实 时时间戳、所述音频样本的时间戳以及所述时间偏移计算实时偏移,其中所述实时时间戳 指示当前时间;接收所述歌曲的文本歌词;以及所述客户端设备在对应于所述实时偏移的 位置渲染所述文本歌词,以与正被所述媒体渲染源渲染的歌曲同步。
[0009] 在再一方面,提供了一种非暂时性计算机可读介质,其中存储可由计算设备执行 的指令,所述指令用于使得所述计算设备执行功能。所述功能包括客户端设备向位置识别 模块发送正被媒体渲染源渲染的歌曲的音频样本。所述音频样本与对应于所述音频样本的 采样时间的时间戳关联。所述功能还包括客户端设备从所述位置识别模块接收时间偏移, 其指示所述歌曲中对应于所述音频样本的采样时间的样本的时间位置。所述功能还包括: 使用实时时间戳、所述音频样本的时间戳以及所述时间偏移计算实时偏移,其中所述实时 时间戳指示当前时间;接收所述歌曲的文本歌词;以及所述客户端设备在对应于所述实时 偏移的位置渲染所述文本歌词,以与正被所述媒体渲染源渲染的歌曲同步。
[0010] 在再一方面,提供了执行这里描述的方法的示例设备或系统。
[0011]在又一方面,提供了一种方法,包括:接收正被媒体渲染源渲染的媒体流的媒体样 本;由计算设备确定与所述媒体样本潜在匹配的多个媒体记录;由所述计算设备向客户端 设备提供包括所述多个媒体记录之一的特征的信息的对准文件,其中预计所述多个媒体记 录之一在所述对准文件中的特征在预定时间出现在所述媒体流中。
[0012] 在再一方面,提供了一种方法,包括:由客户端设备向计算设备发送正被媒体渲染 源渲染的媒体流的媒体样本;在客户端设备接收包括与所述媒体样本潜在匹配的多个媒体 记录之一的特征的信息的对准文件,其中所述对准文件包括所述媒体记录的预计在预定时 间出现在所述媒体流中的特征;以及确定正被所述媒体渲染源渲染的媒体流是否与所述对 准文件的媒体记录匹配。
[0013] 在再一方面,提供了一种方法,包括:由客户端设备向计算设备发送正被媒体渲染 源渲染的媒体流的媒体样本;在客户端设备接收包括与所述媒体样本潜在匹配的多个媒体 记录之一的特征的信息的对准文件,其中所述对准文件包括所述媒体记录的预计在预定时 间出现在所述媒体流中的特征;以及比较正被所述媒体渲染源渲染的所述媒体流与所述对 准文件的媒体记录,以确定正被所述媒体渲染源渲染的媒体流是否已经中断。
[0014] 之前的总结仅是示例性的,并不意在作为任何方式的限定。在以上描述的示例方 面、实施例和特征之外,其它方面、实施例和特征也将通过参考附图和以下的详细描述而变 得明显。
【附图说明】
[0015] 图1示出了用于识别媒体内容、并将数据与所识别的媒体内容同步的系统的一个 示例。
[0016] 图2示出了用于同步媒体流的方法的说明性实施例的流程图。
[0017] 图3A-3B示出了用于识别媒体样本的媒体内容或时间偏移、并将数据与所识别的 媒体内容同步的系统的示例。
[0018] 图4示出了用于将歌词与正被媒体渲染源渲染的歌曲同步的方法的说明性实施例 的流程图。
[0019] 图5示出了音乐信息的示例。
[0020] 图6示出了用于识别媒体样本的媒体内容或时间偏移、并将数据与所识别的媒体 内容同步的系统的另一示例。
【具体实施方式】
[0021] 在下面的详细说明中,参考形成说明的一部分的附图。在附图中,类似的符号典型 地标识类似的元素,除非另有声明。详细说明、附图和权利要求中描述的说明性实施例不 意图为限制性。可以采用其它实施例,并且可以进行其它改变,而不偏离这里所呈现的主题 的精神和范围。很容易理解,本公开的各方面(如这里一般描述以及在附图中图示的)可以 大量不同的配置进行布置、替代、组合、分割以及设计,它们全部被本文明确预想到。
[0022] 在示例实施例中,提供了同步媒体的系统和方法。可以使用客户端设备(例如便携 式客户端设备)来捕获正被媒体渲染源渲染的媒体流的样本。客户端设备可以使用参考时 钟确定对应于正被捕获的媒体样本的采样时间的时间戳。采样时间可以优选是起始,但也 可以是媒体样本的结尾、中间或任何其它预定时间。客户端设备可以向位置识别模块发送 媒体样本,以确定时间偏移并可选地确定时间尺度比,该时间偏移指示媒体流中对应于媒 体样本的采样时间的时间位置,该时间尺度比指示基于媒体流的参考速度的由媒体渲染源 正渲染媒体流的速度。客户端设备可以使用指示当前时间的实时时间戳、媒体样本的时间 戳、时间偏移、以及可选地使用时间尺度比,来计算实时偏移。客户端设备可以接着在对应 于实时偏移的位置处渲染第二媒体流,以与正由媒体渲染源渲染的媒体流同步。例如,这里 所描述的系统和方法可以被执行来基于第一媒体流的捕获样本控制第二媒体流的同步回 放。在其它示例中,客户端设备包括麦克风,用以从媒体渲染源接收媒体流或记录。客户端 设备还可以包括摄像机、振动传感器、无线电接收器、网络接口等中的任何一个,用以接收 媒体流。
[0023] 在一个示例中,系统和方法可以被用于使用移动音乐信息检索设备,而与周边播 放的音乐同步地显示歌词,该移动音乐信息检索设备可以不被操作地耦接到音乐回放装置 (播放周边音乐的装置)来确定对应于播放的音乐的定时信息。不需要来自音乐回放装置的 定时信息。例如,音乐信息检索设备可被配置为识别播放的音乐,以及响应地检索和显示与 音乐中的当前时间点同步的对应歌词,而不需要用户干预。
[0024]现在参考附图,图1示出了用于识别媒体内容、并将数据与所识别的媒体内容同步 的系统的一个示例。系统包括媒体渲染源102,其以任何已知的方式渲染和呈现来自媒体流 的媒体内容。媒体流可以被存储在媒体渲染源102上、或者从外部源(诸如模拟或数字广播) 接收。在一个示例中,媒体渲染源102可以是无线电台或电视内容提供商,其广播媒体流(例 如音频和/或视频)和/或其它信息。媒体渲染源102还可以是以记录或现场格式播放音频媒 体、显示视频媒体的任何类型的设备。在替代实施例中,例如,媒体渲染源102可以包括现场 表演作为音频源和/或视频源。
[0025] 媒体渲染源102可以通过图形显示器、音频扬声器、MIDI乐器、操纵木偶 (animatronic puppet)等、或者由媒体植染源102提供的任何其它类型的表达,来植染或呈 现媒体流。
[0026] 客户端设备104通过包含媒体接收器106的样本捕获模块接收来自媒体渲染源102 的媒体流的渲染。在图1中,媒体接收器106被显示为天线,并且媒体渲染源102将媒体流无 线地广播到客户端设备104。然而,取决于媒体流的形式,媒体渲染源102可以使用无线或有 线通信技术渲染媒体。
[0027] 在其它示例中,媒体接收器106可以包括麦克风、摄像机、振动传感器、无线电接收 器、网络接口等中的任何一个。作为具体示例,媒体渲染源102可以播放音乐,并且客户端设 备104可以包括麦克风,用以接收音乐的样本。
[0028] 除了接收媒体流的渲染,客户端设备104并非操作地耦接到媒体渲染源102。以此 方式,客户端104不受媒体渲染源102控制,客户端设备104也不是媒体渲染源102的构成部 分。在图1所示的示例中,客户端设备104是独立于媒体渲染源102的实体。
[0029] 客户端设备102捕获所渲染的媒体流的媒体样本。这可以自动发生而不需要用户 干预,或者可以通过用户激活按钮或其它应用以触发样本捕获来进行。例如,客户端设备 104的用户可以按下按钮以通过麦克风记录10秒的音频数字样本,或者使用相机捕获静止 图像或视频序列。
[0030] 客户端设备104可以被实施为小型便携式(或移动)电子设备的一部分,所述电子 设备诸如蜂窝电话、无线蜂窝电话、个人数据助理(PDA)、个人媒体播放器设备、无线上网 (web-watch)设备、个人耳机设备、应用特定设备、或混合设备,它们包括上述功能中的任何 功能。客户端设备104也可以实施为个人计算机,其包括膝上型计算机或非膝上型计算机配 置两者。客户端设备104也可以是更大设备或系统的组件。
[0031] 客户端设备104被操作来捕获媒体渲染源102渲染的媒体流的部分,用于识别位置 信息。作为示例,客户端设备104操作地耦接到服务器108,其包括位置识别模块110和可选 的内容识别模块112。虽然图1示出了服务器108包括位置识别模块110和内容识别模块112 两者,但例如,位置识别模块110和/或内容识别模块112中的任一者可以是与服务器108分 离的独立实体。替代地,位置识别模块110和内容识别模块112两者可以是同一实体,或者 位置识别模块110和内容识别模块112的功能可以由同一实体执行。此外,位置识别模块110 和/或内容识别模块112可以位于客户端设备104中,或者可以在通过网络连接到客户端设 备104的远程服务器上,如图1中所示。
[0032] 服务器108从客户端设备104接收媒体样本(通过有线或无线连接),并且位置识别 模块110基于此时正被捕获的媒体样本识别对应的估计时间位置(T s),该估计时间位置指 示媒体样本在媒体流中的时间偏移。在某些示例中,Ts也可以是从媒体流的起始起经过的 时间量。
[0033] 内容识别模块112也可以可选地执行对所接收的媒体样本的内容识别。如果标识 不是已知的,则内容识别对媒体流中的内容进行识别,例如音乐声轨。内容识别模块112可 被用在或者合并在任何示例媒体样本信息检索系统内,这些系统例如由英国伦敦的Shazam Entertainment、加州埃默里维尔的Gracenot、或加州圣何塞的Me Iodi s提供。这些服务操作 来接收环境音频的样本,识别音频样本的音乐内容,以及向用户提供关于音乐的信息,包括 轨道名称、艺术家、专辑、封面(artwork )、传记、唱片分类目录、音乐会门票等。
[0034] 在这一点上,内容识别模块112包括媒体搜索引擎114,并可以包括或有权访问对 参考媒体内容对象和记录(例如,音乐声轨、视频剪辑、电影和电视节目)进行索引的数据库 116,以将接收到的媒体样本与存储的信息进行比较,从而识别所接收的媒体样本内的媒体 内容。一旦已经识别了媒体流内的媒体对象,便可以将标识信息和其它元数据报告回到客 户?而设备104。
[0035] 元数据还可以包括数据和对其它有关内容和服务的超链接,包括推荐、广告、出 价,以预览、标书签和购买音乐记录、视频、音乐会门票、以及奖赠内容;以及便利于在万维 网上浏览、探究(exploring)和发现有关内容。
[0036] 替代地,客户端设备104可以从媒体渲染源102捕获媒体流的样本,并对该样本执 行初始特征提取处理,以创建该媒体样本的指纹(fingerprint)。客户端设备104可以接着 将指纹信息发送给位置识别模块110和/或内容识别模块112,其可以仅基于指纹信息而识 别有关该样本的信息。以此方式,例如,可以在客户端设备104、而不是在位置识别模块110 和/或内容识别模块112执行更多的计算或识别处理。
[0037] 如所述,数据库116可以包括许多媒体内容对象,每个媒体内容对象可以由唯一的 标识符(例如souncLID)识别。数据库116可以不一定为每个记录存储实际媒体内容(诸如 音频或视频文件),因为可以使用souncLID从其它地方检索文件。然而,在某些实施例中,数 据库116可以存储媒体内容文件。媒体内容数据库索引可以非常大,例如包含用于数百万或 者甚至数十亿的文件的索引。可以递增地将新内容添加到数据库索引中。
[0038] 数据库116还可以包括用于每个存储的音频、视频或媒体文件、或者用于每个存储 的媒体索引的信息。例如,可以与每个文件一起存储元数据,其指示关于文件的信息,诸如 艺术家名字、歌曲的长度、歌曲的歌词、歌词的行或词的时间索引、专辑封面、或文件的任何 其它识别或有关信息。
[0039]图1的系统允许捕获的媒体样本的时间偏移被识别,并且允许基于存储的信息识 别媒体样本。虽然图1示出了具有给定配置的系统,但可以其它方式布置系统内的组件。例 如,媒体搜索引擎114可以独立于内容识别模块112,或者媒体样本处理可以发生在客户端 104或服务器108。因此,应该理解,这里所述的配置本质上仅是示例,并且还可以使用许多 替代配置。
[0040]图1中的系统、尤其是位置识别模块110可以识别媒体流内的媒体样本的偏移。可 选地,系统可被用于使用内容识别模块112,使用媒体流内的媒体样本来识别媒体流中的内 容。
[0041 ]本领域中已知各种媒体样本识别技术,用于使用媒体内容对象的数据库执行媒体 样本和媒体样本的特征的计算内容识别。以下的美国专利和公布描述了媒体辨识技术的可 能示例,并且通过引用将每一个都完整地合并到这里,如同在此说明书中完整地记载一样: Keny on等,美国专利No .4,843,562,题为 "Broadcast Information Classification System and Method" ;Kenyon,美国专利Νο·4,450,531,题为"Broadcast Signal Recognition System and Method" ;Haitsma等,美国专利申请公布Ν〇·2008/0263360,题为 "Generating and Matching Hashes of Multimedia Content" ;Wang和Culbert,美国专利 No.7,627,477,题为"Robust and Invariant Audio Pattern Matching" ;Wang,Avery,美 国专利申请公布Ν〇·2007/0143777,题为"Method and Apparatus for Identification of Broadcast Source" ;Wang和Smith,美国专利No.6,990,453,题为"System and Methods for Recognizing Sound and Music Signals in High Noise and Distortion" ;以及 Blum 等,美国专利Νο·5,918,223,题为"Method and Article of Manufacture for Content-Based Analysis,Storage,Retrieval,and Segmentation of Audio Information"。
[0042]简要地,通过接收媒体记录和采样媒体记录而开始识别媒体记录。例如,将该记录 与数字化且归一化的参考信号片段相关,以获得针对每个作为结果的相关片段的相关函数 峰,从而当相关函数峰之间的间隔在预定限值内、并且与相关函数峰一致的RMS功率值的模 式(pattern)在来自数字化的参考信号片段的RMS功率值的模式的预定限值内匹配时提供 辨识信号,如在美国专利No. 4,450,531中所述。因此识别了匹配的媒体内容。此外,例如,媒 体内容中的媒体记录的匹配位置由匹配相关片段的位置以及相关峰的偏移给出。
[0043]在另一示例中,一般地,可以通过识别或计算媒体样本的特性或指纹以及将指纹 与之前识别的指纹进行比较而识别媒体内容。样本内计算指纹的特定位置取决于样本中的 可再现点。这种可再现地可计算位置称为"界标(landmark)"。界标在样本内的位置可以由 样本本身确定,即取决于样本质量并且可再现。即,每次重复处理时,可以针对同一信号计 算相同或类似的界标。加界标方案可以对每秒声音记录标记约5至约10个界标;然而,加界 标密度取决于媒体记录内的活动量。一个加界标技术(公知为功率规范(Power Norm))是在 记录中的许多时间点计算瞬时功率,并选择局部最大值。这么做的一个方法是通过直接对 波形进行整流和滤波而计算包络。另一方法是计算信号的希尔伯特(Hi Ibert)变换(求积 分),并使用希尔伯特变换和原始信号的平方大小的和。也可以使用计算界标的其它方法。 [0044] 一旦已经计算了界标,在记录中的每个界标时间点或其附近计算指纹。通过所使 用的指纹识别(fingerprinting)方法定义特征与界标的接近度。在某些情况中,如果特征 清楚地对应于界标并且不对应于前一或后一界标,则认为该特征接近该界标。在其它情况 中,特征对应于多个相邻界标。指纹一般是一个值或值的集合,其总结记录中在该时间点或 其附近的特征的集合。在一个实施例中,每个指纹是单个数值,其是多个特征的散列 (hashed)函数。指纹的其它示例包括频谱片指纹、多片指纹、LPC系数、对数倒谱(cepstral) 系数、以及频谱图峰的频率分量。
[0045] 可以通过对信号的任意类型的数字信号处理或频率分析来计算指纹。在一个示例 中,为了生成频谱片指纹,在每个界标时间点附近执行频率分析,以提取最上几个频率峰。 指纹值从而可以是最强频谱峰的单频率值。关于计算音频样本的特性或指纹的更多信息, 读者可以参考授权给Wang和Smith的美国专利No · 6,990,453,题为"System and Methods for Recognizing Sound and Music Signals in High Noise and Distortion",通过引 用将其全文合并到这里,如同在该说明书中全文记载一样。
[0046] 因此,内容识别模块112将接收样本并计算样本的指纹。内容识别模块112可以通 过与附加的辨识引擎通信而计算指纹。为了识别样本,内容识别模块112可以接着访问数据 库116,以通过如下方式将样本的指纹与已知音轨的指纹匹配:生成数据库116中的文件与 等效指纹之间的对应关系来定位一文件,该文件具有最大数目的线性地有关的对应关系, 或者其特性指纹的相对位置最严密地匹配样本的相同指纹的相对位置。即,识别界标对之 间的线性对应关系,并根据线性地有关的对的数目对集合计分。例如,当可以在允许的容限 内利用基本相同的线性等式描述统计上大量的对应样本位置和文件位置时,可以发生线性 对应关系。具有最高统计上重要的得分的集合(即具有最大数目的线性地有关的对应关系) 的文件是胜出的文件,并被认为是匹配的媒体文件。
[0047] 作为识别媒体流内的内容的技术的再一示例,可以使用局部匹配技术分析媒体样 本,以识别其内容。例如,一般地,可以通过首先匹配从相应的样本导出的某些指纹对象来 表征两个媒体样本之间的关系。针对每个媒体样本生成指纹对象的集合,每个指纹对象发 生在特定位置。根据相应媒体样本的内容确定每个位置,并且每个指纹对象表征相应特定 位置处或附近的一个或多个局部特征。接着,针对每对匹配的指纹对象确定相对值。接着生 成相对值的直方图。如果发现统计上重要的峰值,则将这两个媒体样本表征为基本匹配。此 外,可以确定时间拉伸比,其表示:与原始音轨相比,音频样本已被加速或减慢多少。对于此 方法更详细的说明,读者可以参考授权给Wang和Culbert的美国专利No . 7,627,477,题为 "Robust and Invariant Audio Pattern Matching",通过引用将其全文合并于此,如同在 该说明书中全文记载一样。
[0048] 此外,在以上公布中描述的系统和方法可以不仅返回媒体样本的标识。例如,使用 授权给Wang和Smith的美国专利No . 6,990,453中描述的方法,除了可以返回关联于所识别 的音轨的元数据之外,还可以返回从所识别的样本的起始起的媒体样本的相对时间偏移 (RTO),称为估计的所识别的媒体流位置T s。为了确定记录的相对时间偏移,可以将样本的 指纹与指纹所匹配的原始文件的指纹比较。每个指纹出现在给定时间,从而在匹配指纹以 识别样本之后,(样本中的匹配指纹的)第一指纹与存储的原始文件的第一指纹之间的时 间差将是样本的时间偏移,例如进入到歌曲中的时间量。因此,可以确定取得样本的相对时 间偏移(例如,67秒进入到歌曲中)。也可以使用其它信息来确定RT0。例如,可以考虑直方图 峰值的位置作为从参考记录的起始到样本记录的起始的时间偏移。
[0049] 还可以根据媒体样本的类型执行其它形式的内容识别。例如,可以使用视频识别 算法来识别视频流(例如电影)内的位置。Oostveen, J.等的"Feature Extraction and a Database Strategy for Video Fingerprinting",Lecture Notes in Computer Science (计算机科学中的讲稿),2314(2002年3月11日),117-128页中描述了示例视频识别算法,通 过引用将其全部内容合并于此。例如,可以通过确定哪个视频帧被识别而导出视频样本到 视频中的位置。为了识别视频帧,可以将媒体样本的帧划分为行和列的网格,并且对于网格 的每个块,计算像素的亮度值的平均值。可以将空间滤波器应用到计算的平均亮度值,以导 出网格的每个块的指纹比特。指纹比特可被用于唯一地识别帧,并且可被与包括已知媒体 的数据库的指纹比特进行比较或匹配。可以将从帧中提取的指纹比特称为子指纹,并且指 纹块是来自连续帧的固定数据的子指纹。使用子指纹和指纹块,可以执行视频样本的识别。 基于媒体样本包括哪个帧,可以确定进入到视频中的位置(即时间偏移)。
[0050] 此外,也可以执行其它形式的内容和/或位置识别,诸如使用加水印方法。可以通 过位置识别模块110使用加水印方法来确定时间偏移,使得媒体流可已经不时地嵌入水印, 并且例如,每个水印通过直接地或经由数据库查找而间接地指定水印的时间或位置。替代 地,如果媒体流包括直接或间接地指示时间或位置偏移值的所嵌入的水印,则客户端设备 104可以确定正被渲染的媒体的样本的时间偏移,而无需与位置识别模块110进行通信。
[0051] 在每个前述用于实施内容识别模块112的功能的示例内容识别方法中,识别处理 的副作用可能是媒体样本在媒体流内的时间偏移(例如,估计的所识别的媒体流位置!^)。 因此,在这些情况中,位置识别模块110可以与内容识别模块112相同,或者可以通过内容识 别模块112执行位置识别模块110的功能。
[0052]因此,用户可以从客户端设备104向位置识别模块110发送位置识别查询,位置识 别模块110可以使用这里描述的任何技术来将与内容有关的信息返回到客户端设备104,并 且可选地,可访问内容识别模块112来识别内容。这里所描述的示例实施例适用于任何类 型的媒体流,例如预录或现场音乐、音频、视频、音频和视频的组合、或者任何其它类型的遵 循媒体流中的位置的时间线的媒体或事件序列。示例实施例还适用于任何格式的媒体流, 例如,CD、DVD上的媒体、压缩的数字媒体、MIDI文件、动画序列、控制序列、脚本、幻灯片等。 [0053]在其它示例中,客户端设备104或服务器108还可以访问媒体流库数据库118,以选 择对应于所采样的媒体的媒体流,其接着可被返回给客户端设备104以被客户端设备104渲 染。媒体流库数据库118可以位于客户端设备104中或服务器108中,或者替代地,客户端设 备104和服务器108之一或两者均可以通过网络连接到媒体流库数据库118。在图1中,例如, 媒体流库数据库118被显示为连接到服务器108。此外,媒体流库数据库118中的信息或媒体 流库数据库118本身可被包括在数据库116内。
[0054] 媒体流库数据库118中的对应于媒体样本的媒体流可由客户端设备104的用户手 动选择,由客户端设备104编程地选择,或者由服务器108基于例如内容识别模块112确定的 媒体样本的标识而选择。所选择的媒体流可以是与媒体样本不同类型的媒体,并且可以与 媒体渲染源102正在渲染的媒体同步。例如,媒体样本可以是音乐,并且所选择的媒体流可 以是歌词、乐谱、吉他符号谱、音乐伴奏、视频、操纵木偶舞蹈、动画序列等,它们可以与音乐 同步。客户端设备104可以接收所选择的对应于媒体样本的媒体流,并且可以与正被媒体渲 染源102渲染的媒体同步地渲染所选择的媒体流。
[0055] 正被媒体渲染源102渲染的媒体的估计时间位置由位置识别模块110确定,并被用 于确定所选择的媒体流内渲染所选择的媒体流的对应位置。客户端设备104可以接着与正 被媒体渲染源102渲染的媒体同步地渲染和呈现所选择的媒体流。
[0056] 客户端设备104可以包括位置追踪模块120,以确保两个媒体流之间的精确同步。 当触发客户端设备104捕获媒体样本时,从客户端设备104的参考时钟记录时间戳(To)。在 任意时间t,从估计的所识别的媒体流位置Ts加上从时间戳的时间起经过的时间而确定估 计的实时媒体流位置T r(t):
[0057] Tr(t)=Ts+t-To 等式(1)
[0058] Tr(t)是从参考点(诸如媒体流的起始)至媒体流的当前正被渲染的实时位置经过 的时间量。因此,使用Ts(g卩,从媒体流的起始至媒体流的基于记录的样本的位置的估计的 时间经过量),可以计算T r(t)。接着,客户端设备104使用Tr(t)来与正被媒体渲染源102渲染 的媒体同步地呈现所选择的媒体流。例如,客户端设备104可以在时间位置T r(t)处或者在 使得已经经过了时间量Tr(t)的位置处开始渲染所选择的媒体流。
[0059] 位置追踪可能由于许多原因而丧失同步。在一个实例中,媒体流可能被媒体渲染 源102以非预期的速度渲染。例如,如果正在未校准的唱机转盘或CD播放器上播放音乐记 录,则音乐记录可能被比预期的参考速度播放得更快或更慢,或者以与存储的参考媒体流 不同的方式播放。或者,有时,DJ可能有意地改变音乐记录的速度,以获得一定的效果,诸如 匹配多个轨道之间的节奏。在这样的情况中,随着t增大,估计的位置T r(t)可能变得不正 确,结果,选择的媒体流可能丧失同步。作为参考速度的示例,CD播放器被预期以每秒44100 个样本而渲染;45RPM黑胶唱片被预期在唱机转盘上以每分钟45转而播放;并且NTSC视频流 被预期以每秒60帧而播放。
[0060] 在某些实施例中,为了减轻或阻止所选择的媒体流丧失与媒体渲染源102正在渲 染的媒体的同步,可以根据速度调整比率R调整估计的位置Tr(t)。例如,在美国专利No. 7, 627,477,题为"Robust and invariant audio pattern matching"(通过引用将其全部内 容合并于此)中描述的方法可被执行来识别媒体样本、所估计的识别的媒体流位置^、和速 度比率R。
[0061 ] 为了估计速度比率R,计算匹配指纹的变化部分的交叉频率(cross-frequency)比 率,并且,因为频率与时间成反比,所以交叉时间比率是交叉频率比率的倒数。交叉速度比 率R是交叉频率比率(例如,交叉时间比率的倒数)。
[0062] 更具体地,使用上述方法,可以通过生成样本的时间-频率频谱图(例如,计算傅里 叶变换以生成每个帧中的频率分布(bin))并识别频谱图的局部能量峰,来表征两个音频样 本之间的关系。与局部能量峰有关的信息被提取和总结到指纹对象的列表中,每个指纹对 象可选地包括位置字段、变化成分、和不变成分。从各个音频样本的频谱图导出的某些指纹 对象可接着被匹配。针对每对匹配的指纹对象来确定相对值,其例如可以是各个音频样本 的参数值的商或对数差。
[0063] 在一个示例中,从媒体样本的频谱图中选择频谱峰的局部对,并且每个局部对包 括指纹。类似地,从已知媒体流的频谱图中选择频谱峰的局部对,并且每个局部对包括指 纹。确定样本和已知媒体流之间的匹配指纹,并计算针对样本和媒体流中的每个的频谱峰 之间的时间差。例如,样本的两个峰之间的时间差被确定并与已知媒体流的两个峰之间的 时间差进行比较。可以确定这两个时间差的比率,并可以生成包括这样的比率(例如从匹配 的指纹对中提取)的直方图。可以将直方图的峰值确定为实际速度比率(例如,媒体渲染源 102正在播放媒体的速度与渲染参考媒体文件的参考速度相比的比率)。因此,可以通过找 到直方图中的峰值(例如,使得直方图中的峰值将两个音频样本之间的关系表征为相对节 距(pitch),或者在线性拉伸的情况下表征为相对回放速度)而获得速度比率R的估计。
[0064] 替代地,可以从来自样本和已知媒体流的匹配指纹的频率值确定相对值。例如,样 本的一对频谱图峰的锚点的频率值被确定并与媒体流的一对频谱图峰的锚点的频率值进 行比较。可以确定这两个频率值的比率,并且可以生成包括这种比率(例如从匹配的指纹对 中提取)的直方图。可以将直方图的峰值确定为实际速度比率R。在等式中,
[0065]
等式(2 )
[0066] 其中f稱和f流是匹Sd指纹的变化频率值,如Wang和Culber的美国专利No. 7,627, 477中所描述的,通过引用将其全文合并于此。
[0067] 因此,可以使用来自两个音频样本的对应变化成分从匹配的指纹对象估计全局相 对值(例如,速度比率R)。变化成分可以是从每个指纹对象的位置附近的局部特征确定的频 率值。速度比率R可以是频率或时间增量(delta time)的比率,或者是导致用于描述两个音 频样本之间的映射的全局参数的估计的某些其它函数。例如,速度比率R可以被认为是相对 回放速度的估计。
[0068] 也可以使用其它方法估计速度比率R。例如,可以捕获媒体的多个样本,并且可以 对每个样本执行内容识别,以针对第k个样本,在参考时钟时间To(k)获得多个估计的媒体 流位置T s (k)。从而,R可以被估计为:
[0069;
[0070: I以下等式:
[0071;
[0072] 因此,可以使用在时间跨度上估计的时间位置Ts来计算速度比率R,以确定媒体渲 染源102正在渲染媒体的速度。
[0073] 使用速度比率R,可以将实时媒体流位置的估计计算为:
[0074] Tr(t)=Ts+R(t-To)等式(5)
[0075]实时媒体流位置表示媒体样本的时间位置。例如,如果媒体样本来自于具有4分钟 长度的歌曲,并且如果Tr(t)是1分钟,则其表示歌曲已经经过了 1分钟。
[0076]图1中的系统还可以包括间断检测模块122,其可以包含在客户端设备104和/或服 务器108内,或者间断检测模块122的功能例如可以可选地由客户端设备104的组件和/或服 务器108的组件执行。替代地,如图1中所示,间断检测模块122可以是例如使用无线或有线 通信技术与客户端设备104和/或服务器108通信的独立实体。
[0077]间断检测模块122可以检测正被媒体渲染源102渲染的媒体流是否被意外地中断。 这可能在如下情况中发生:例如,在媒体渲染源102上改变了频道,或者某人停止了媒体流 的播出或者跳到媒体流中的不同位置。如果从媒体库数据库118选择的媒体流将继续播放, 则这两个媒体流将丧失同步或不连贯。间断检测模块122可以停止所选择的媒体流或者尝 试重新同步这两个媒体流。因此,间断检测模块122可以验证是否正与正被媒体渲染源102 渲染的媒体流同步地渲染所选择的媒体流。
[0078] 如以上作为示例方法所描述的,可以通过执行周期性的位置和/或内容识别采样 以计算速度比率R,来实施间断检测模块122的功能,并且因此,间断检测模块122可以与服 务器108通信。如果在某点上,内容识别不再成功,则正被媒体渲染源102渲染的媒体流已经 停止。或者,如果不同的媒体流被识别,则可能频道改变,正在播放新的轨道,等等。
[0079] 为了确定正被媒体渲染源102渲染的媒体流中的间断,间断检测模块122可以周期 性地从客户端设备104接收媒体样本,并且对媒体样本执行指纹提取。间断检测模块122也 可以从位置识别模块110接收信息,该信息包括对准文件,该对准文件包括贯穿媒体流的参 考媒体流的多个指纹。间断检测模块122可以接着将从周期性地接收的媒体样本提取的指 纹与对准文件中的指纹进行比较,以确定正被媒体渲染源102渲染的媒体流是否已被中断。 当未发现可识别的指纹匹配时,间断检测模块122可以确定媒体流已被中断或结束。
[0080] 例如也可以使用上述方法或者授权给Wang和Smith的美国专利No. 6,990,453中描 述的方法来执行指纹匹配。
[0081] 此外,间断检测模块122可以(从内容识别模块112)获知媒体流的内容识别,并因 此可以接收用于媒体流的指纹的文件。间断检测模块122将预计某些指纹在预定时间会出 现在样本中,并且,如果未见到预期的指纹,则可以确定间断。例如,如果已经经过了某一时 间量而没有预定指纹匹配,则可以确定间断。
[0082] 在确定了间断的类型时,间断检测模块122可以进行多个事情之一。在一个示例 中,基于速度漂移的检测,间断检测模块122可以对速度比率R进行调整,从而执行媒体流的 重新同步。在另一示例中,基于大间断的检测,间断检测模块122可以使用位置识别模块110 重新对准媒体流,以便执行媒体流的重新同步。在再一示例中,间断检测模块122可以使用 内容识别模块112来检测新媒体流,并选择不同的匹配的媒体流和新流中的新位置用于同 步。在另一示例中,如果位置和/或内容识别失败,间断检测模块122可以指示客户端设备 104停止渲染所选择的媒体。
[0083]例如,客户端设备104可以从间断检测模块122接收通知,并接着停止显示所选择 的媒体流或改变为显示从媒体流库数据库118中选择的新媒体流,该新媒体流与正从媒体 渲染源102渲染的新媒体流同步。
[0084] 间断检测模块122可以因此替代地执行或指示客户端设备104执行对从媒体库数 据库118选择的媒体与正被媒体渲染源102渲染的媒体的对准的更新。间断检测模块122可 以基于错误预测的指纹匹配的对准而确定调整所选择的媒体在客户端设备104上的渲染的 偏移值,使得将所选择的媒体与媒体渲染源102对媒体流的渲染重新对准和同步。
[0085] 替代地,如果间断检测模块122不再识别到来自周期性地接收的媒体样本的指纹 与对准文件中的指纹的匹配,则间断检测模块122可以告知客户端设备104执行从媒体流库 数据库118选择的媒体与媒体渲染源102正渲染的媒体的重新同步。为了这么做,客户端设 备104可以重新执行以下方法:捕获媒体的新样本并将新样本发送到位置识别模块110,以 确定时间偏移。
[0086] 仍然,替代地,基于指纹匹配的连续缺失,间断检测模块122可以确定媒体流不再 被渲染(例如如果位置检测模块110未检测到匹配的时间偏移),并因此例如可以指示客户 端设备104停止渲染所选择的媒体,或者执行新内容识别。客户端设备104可以发送新样本 给内容识别模块112,以识别正被媒体渲染源102渲染的新媒体流。如果识别的媒体流已改 变,则客户端设备104可以从媒体流库数据库118选择新媒体流,其对应于要被客户端设备 104同步渲染的媒体样本。
[0087]图2示出了用于同步媒体流的方法200的说明性实施例的流程图。应该理解,对于 这里公开的此以及其它处理和方法,流程图示出了当前实施例的一个可能的实施方式的功 能和操作。在这一点上,每个方框可以表示程序代码的模块、片段或部分,其包括可由处理 器执行用于实施处理中的特定逻辑功能或步骤的一个或多个指令。程序代码可以存储在任 何类型的计算机可读介质中,例如存储设备,包括盘或硬盘驱动器。计算机可读介质可以包 括非暂时性计算机可读介质,例如,短时段内存储数据的计算机可读介质,如寄存器存储 器、处理器高速缓存和随机存取存储器(RAM)。计算机可读介质也可以包括非暂时性介质, 诸如二次或永久长期存储装置,如只读存储器(R0M)、光或磁盘、光盘只读存储器(CD-ROM)。 计算机可读介质也可以是任何其它易失性或非易失性存储系统。例如,计算机可读介质可 以被认为是计算机可读存储介质。
[0088]此外,图2中每个方框可以表示被布线以执行处理中的特定逻辑功能的电路。替代 的实施方式包含在本公开的示例实施例的范围内,其中,可以不以所显示或说明的顺序执 行功能,包括基本同时或以相反顺序执行,这取决于所涉及的功能,如本领域的技术人员所 理解的。
[0089]初始地,在方框202,客户端设备接收正被媒体渲染源渲染的媒体流的媒体样本。 客户端设备可以在媒体流被渲染时通过记录媒体样本而接收媒体样本。媒体样本与时间戳 关联或具有时间戳,该时间戳对应于媒体样本的采样时间。例如,客户端设备可以捕获正被 渲染的媒体流的样本,并且基于客户端设备上的时钟记录样本被记录的时间。
[0090] 接着可以确定媒体样本的时间偏移,其指示媒体流中对应于媒体样本的采样时间 的时间位置,如在方框204所示。例如,客户端设备可以将媒体流的样本发送到位置识别模 块,该位置识别模块将返回媒体样本的识别和时间偏移。替代地,客户端设备可以确定时间 偏移。
[0091] 可选地,接着确定时间尺度比,其指示基于媒体流的参考速度的由媒体渲染源渲 染媒体的速度,如在方框206所示。时间尺度比可以由客户端设备或者由服务器确定,并被 返回给客户端设备。时间尺度比不是同步媒体流所必须的;然而,在某些实施例中可以包括 时间尺度比。
[0092] 接着使用实时时间戳、媒体样本的时间戳、时间偏移、以及可选地使用时间尺度 比,来确定指示当前时间的实时偏移,如方框208中所示。可以使用上述等式(1)或等式(4) 计算实时偏移。
[0093] 客户端设备可以接着在对应于实时偏移的位置处渲染第二媒体流,以与正被媒体 渲染源渲染的媒体流同步,如方框210所示。客户端设备可以接收第二媒体流,或者可以例 如基于正被媒体渲染源渲染的媒体流的标识而从客户端设备的存储器(例如本地存储装 置)或者从数据库选择第二媒体流。第二媒体流可以与正被媒体渲染源渲染的媒体流有关, 并且可以基于媒体流的内容识别而被选择。在某些示例中,第二媒体流可以是对应于识别 的媒体流的歌词。替代地,第二媒体流可以是任何类型的媒体流,例如电影、声轨、歌词、文 本、视频剪辑、图片、幻灯片、文档等。
[0094]在一个实施例中,可以执行方法200来将歌曲歌词在第一设备上的显示与正被第 二设备或媒体渲染源播放的歌曲同步。第一设备的用户因此可以实时地观看对应于识别的 周边音乐的歌词。可以在与周边音乐同步的时间位置处显示歌词文本。在一个示例中,当歌 曲正被第二设备播放时,可以在第一设备的显示器上滚动歌词文本,使得当该歌词被歌唱 时显示歌词文本。
[0095] 在此示例中,提供用于向用户触发信息传送事件的方法和系统。收听任何媒体渲 染源(例如在家中收听流行音乐的商业无线电广播)的用户可能感兴趣于随同正播放的特 定歌曲一起歌唱,并因此期望获得歌曲歌词。使用采样设备(诸如移动(或蜂窝)电话、录影 机、相机、个人数字助理(PDA)或掌中宝),用户捕获媒体渲染源的样本,并例如将样本发送 到服务提供商。为了发送样本,用户可以拨打预定电话号码以访问服务,并接着将电话听筒 保持在音频信号源(即,用户的家用立体声系统的扬声器)的可听距离内,以捕获环境的样 本。在此示例中,经验环境包括在用户的家用立体声系统上播放的音乐。替代地,用户可以 使用采样设备来记录正被播放的音乐的样本,并可以将样本发送到服务器。
[0096] 服务提供商或服务器采用的系统使用辨识引擎来将捕获的样本与数据库中的音 乐记录进行比较,以识别歌曲并因此为用户触发期望的事件。在此示例中,触发的事件是 将对应于从捕获的样本辨识的歌曲的歌词信息传送给用户。
[0097] 可以实时和延迟模式的多种不同的方式完成事件的实现,即,将期望的歌曲歌词 传送给用户。在实时模式中,传送歌词数据,使得用户可以阅读歌词,以在广播歌曲时及时 地随同歌曲而歌唱。因此,对应于捕获的样本的歌曲的数据被从数据库读出,并被服务提供 商发送给能够显示文本的用户设备。
[0098] 取决于显示设备和用户偏好,可以批量布置的方式发送歌词的实时传送,在批量 布置中同时下载整个歌词数据或者相对大的部分,或者,使用分离布置发送歌词的实时传 送,在分离布置中,自动将歌词数据与歌曲同步,并且随着歌曲的前进而分片地发送给用 户。对于批量传送,用户可以选择将歌词的显示与正被播放的歌曲同步(使得在广播中的歌 曲表演者歌唱或说出歌词之前以合适的时间间隔显示歌词),或者,在某些应用中,用户设 备可以配置为执行批量发送的同步。服务提供商可以发送歌词数据,以自动与广播歌曲同 步,而用户或用户设备不需要任何动作。通过导出捕获的样本在辨识的歌曲中的时间位置 而实现这样的自动同步,并且例如接着可以随着歌曲前进而分片地将歌词发送到用户设 备。
[0099] 事件实现的延迟模式包括在歌曲广播之后的某个时间传送对应于采样的歌曲的 歌词。可以与被表征为更耗时的传送方法(诸如,邮件、邮递(courier)以及传真传输)一起 使用与利用实时模式相同的传送方法。
[0100] 在示例实施例中,可以通过语音或触摸音调(即DTMF音调)收集附加用户输入,以 进一步控制歌词传送或触发附加事件,诸如交易事件。例如,通过分别经由捕获设备或传送 设备、电话和文本显示设备而与用户交互,服务提供商可以向用户提供购买选项,以获得包 含歌词被寻找的广播和识别的歌曲的唱片专辑。
[0101]图3A-3B示出了用于识别媒体内容并将数据与识别的媒体内容同步的系统的另一 示例。在图3A的系统中,媒体内容可以是歌曲,并且系统被操作来使用客户端设备304捕获 被随机媒体渲染源302渲染的歌曲的样本,以及识别样本的时间偏移,并接着提供歌曲的歌 词在客户端设备304上的同步显示。
[0102] 媒体渲染源302可以是任何形式。图3A中所示的示例包括收音机和电视、预录的音 频和视频(例如磁带、CD、DVD、MP3等)、因特网和基于计算机的系统上的媒体、现场演示或 表现。其它示例包括电话、来自周边环境的感官刺激、以及可以单独或组合地形成典型媒体 渲染源的元件的其它组件。
[0103] 客户端设备304可以被用于从媒体渲染源302捕获歌曲的样本。客户端设备304可 以包括麦克风或其它组件用以记录样本。客户端设备304可以接着通过无线或有线通信将 样本发送到服务器306。在图3A中示出的示例中,客户端设备304通过无线通信网络(未示 出)与服务器306通信。无线通信网络可以是任何无线网络,例如,下述中的任一个:蜂窝无 线网络、无线局域网(WLAN)或Wi-Fi网络、蓝牙网络或其它无线个人区域网(WPAN)、无线城 域网(WMAN)、或无线广域网(WffAN)。
[0104] 服务器306包括位置识别模块308和内容识别模块310。然而,位置识别模块308和/ 或内容识别模块310中的任一个可以是独立的实体,或者替代地,位置识别模块308和/或内 容识别模块310可以是同一实体或者可以具有由同一实体执行的功能。
[0105]服务器306使用这里描述的任何方法,从客户端设备304接收样本并执行内容识 另IJ。服务器306可以访问歌曲数据库312,以将样本与歌曲的已知样本进行比较以识别样本, 以及检索关于识别的样本的信息。服务器306可以接着访问歌词数据库314,以检索识别的 歌曲的歌词。
[0106]关于歌曲的信息以及包括歌曲的所有歌词的批量文件接着被发送到客户端设备 304,如图3B中所示。信息的一部分可以包括所估计的识别的媒体流位置Ts,客户端设备304 可以使用该位置1计算所估计的实时媒体流位置Tr(t)。所估计的识别的媒体流位置Ts是识 别的音轨的长度内的对应于音频样本的起始的时间。歌词可以是注释了时间的歌词316,其 包括关于歌词的每行或每词的媒体流时间位置的信息。在一个示例中,歌词可以包括在XML 文件中,该XML文件包括包含注释的时间字段,或者,可以其它方式将定时信息嵌入在歌词 内。客户端设备304可以接着在时间位置T r(t)渲染歌词,使得与正被媒体渲染源302渲染的 歌词同步地(例如,同时或大致同时)显示歌词的文本。
[0107] 替代地,服务器306可以不在一个文件中将歌曲的所有歌词都发送到客户端设备 304,而是可以与正被媒体渲染源302渲染的歌曲同步地将歌词流式传输到客户端设备304。 可以在媒体渲染源302渲染歌词前的时刻将歌词发送到客户端设备304,使得客户端设备 304有时间来接收歌词,并与媒体渲染源302渲染的歌词同步地显示歌词。
[0108] 图4示出了用于将歌词与正被媒体渲染源渲染的歌曲同步的方法400的说明性实 施例的流程图。初始地,如方框402中所示,客户端设备向位置识别模块发送正由媒体渲染 源渲染的歌曲的音频样本。音频样本与时间戳(To)关联、或具有时间戳(To),该时间戳(T 0) 对应于音频样本的采样时间。客户端设备将从位置识别模块接收样本的时间偏移(Ts)并可 选地接收时间尺度比(R),时间偏移(T s)指示歌曲中对应于音频样本的采样时间的时间位 置,时间尺度比(R)指示基于歌曲的参考速度的由媒体渲染源渲染歌曲的速度,如方框404 中所示。时间尺度比可选地被用于校正歌曲的渲染与歌曲的参考速度相比的差。因此,时间 尺度比可被用于补偿歌曲中的时间漂移。
[0109] 客户端设备接着使用指示当前时间的实时时间戳、音频样本的时间戳、时间偏移、 以及可选地使用时间尺度比,来计算实时偏移,如方框406所示。
[0110] 客户端设备将接收歌曲的文本歌词,如方框408所示。歌词可以是注释了时间的歌 词,其包括用于歌词的行组、每行、或词的时间标签。时间标签可以指示歌曲中被歌唱的歌 词的时间位置(例如对应于经过了的时间量)。例如可以将歌词作为文本文件或XML文件发 送到客户端设备。客户端设备可以接着在对应于实时偏移的位置渲染文本歌词,以与被媒 体渲染源渲染的歌曲同步,如方框410所述。客户端设备可以滚动的方式渲染歌词,从而在 歌唱歌词时显示文本歌词。此外,例如,可以在歌唱歌词的词时突显歌词,可以使用指针来 指示正在歌唱哪些歌词,或者可以使用其它方法来指示在歌唱歌词的词时(或基本同时)正 在歌唱的词。在这一点上,例如,客户端设备可以动画的方式渲染歌词,使得在歌唱歌词的 词时(例如同步地)显示该词,或者使得显示所有词、或者比当前正在歌唱的词更多的词,而 以动画的方式强调正被歌唱的那些词。可以使用任何类型的动画来显示歌词。
[0111] 客户端设备还可以在不同的或以后的时段向位置识别模块发送歌曲的附加样本, 以接收对时间偏移的更新。以此方式,客户端设备可以验证例如在时间上歌词被同步地显 示。客户端设备可以在更新的时间偏移位置显示歌词,以确保歌词匹配在歌曲的渲染中可 能的改变,例如,如果音乐家减慢节奏,或者在歌曲中具有任何中断。
[0112]使用方法400,用户的设备(例如,蜂窝电话)可以记录正被任何类型的随机媒体渲 染源渲染的音乐的样本,并接着将歌词与歌曲同步,用于在用户的设备上显示。例如,用户 的设备可以因此操作为现场卡拉OK设备。
[0113]在另一实施例中,方法200可被执行以将音乐信息(例如,吉他符号谱或传统乐谱 或音乐游戏格式)在第一设备上的显示与正被第二设备或媒体渲染源播放的歌曲同步。第 一设备的用户可以因此实时地观看与识别的周边音乐对应的音乐信息。可以在与周边音乐 同步的时间位置显示音乐信息。在一个示例中,当第二设备播放歌曲时,可以在第一设备上 的显示器上滚动音乐信息,使得当渲染音乐信息时显示该信息。
[0114]图5示出了音乐信息的示例,其可以包括传统的乐谱502、吉他符号谱504、或其它 乐谱。可以将音乐信息作为注释了时间的音乐文件提供给用户的设备,该注释了时间的音 乐文件指示每行的时间顺序。用户的设备可以接着在播放音乐时与音乐同步地显示音乐信 息。这使得用户能够以同步的方式随同用户正听的歌曲进行演奏。
[0115]乐谱/符号谱的同步使用音频辨识,以随着音乐源正渲染音乐而及时显示乐谱/符 号谱,并且提供音乐家能够实时地随着音乐而进行演奏的方法。这对于音乐家是有用的,例 如,在学习音乐时,许多演奏者希望随同收音机上的音乐或其它喜欢的歌曲进行演奏。同步 的乐谱/符号谱使得音乐家能够在音乐过程中受到引导,并且能够被指示在歌曲中听到音 符的点要演奏什么。
[0116] 在另一示例中,音乐家可以在乐器(例如,吉他、钢琴、木管乐器、乐器数字界面 (midi)设备等)上演奏音乐,并且使用这里描述的方法,可以识别音乐家正在演奏的歌曲。 此外,可以将歌曲的音乐信息(例如吉他符号谱/传统乐谱/音乐游戏格式)返回到设备,并 在音乐家的设备的屏幕上显示。可以在音乐家演奏歌曲时与歌曲同步地显示乐谱。
[0117] 此示例同步方法使用音频辨识来识别音乐家演奏的音乐,并接着及时地与音乐同 步乐谱/符号谱。这可以帮助音乐家,因为当学习音乐时,大多数演奏者可能知道歌曲的开 始,但不知道歌曲的其余部分。此外,这使得演奏者能够学习音乐而不需要停止和开始演奏 以及在乐谱中翻页(因为音乐将贯穿音乐家的设备上的歌曲)。
[0118] 在另一实施例中,这里描述的方法可被执行来将电影或音乐视频在第一设备上的 显示与被第二设备或媒体渲染源播放的媒体(例如声轨或歌曲)同步。第一设备的用户因此 可以实时地观看对应于识别的周围音乐的音乐视频。可以在与周边音乐同步的时间位置显 示音乐视频。
[0119] 在再一实施例中,媒体流可以是视频流,并且第二媒体流可以是视频流的声轨。此 外,或者作为替代,媒体流可以是声轨,并且第二媒体流可以是电影。
[0120] 在再一实施例中,第二媒体流可以是第一媒体流的替代版本,例如不同语言的版 本。或者,第二媒体流可以具有与第一媒体流不同的分辨率,例如,高清或者7.1声道环绕 声,使得通过同步第二媒体流,可以提供第一媒体流的更高质量的版本。
[0121] 图6示出了用于识别媒体内容并将媒体与识别的媒体内容同步的系统的另一示 例。在图6的系统中,媒体内容可以是歌曲,并且系统被操作来使用客户端设备604捕获正被 随机媒体渲染源602渲染的歌曲的样本,并且识别时间偏移并可选地识别歌曲,以及接着提 供歌曲的音乐视频在客户端设备604上的同步显示。
[0122] 客户端设备604可以从媒体渲染源602捕获歌曲的样本,并将样本发送到服务器 606,其包括位置识别模块608和内容识别模块610(例如,它们的每个可以是同一实体、或独 立的实体)。位置识别模块608从客户端设备604接收样本,确定样本的时间偏移。内容识别 模块610可以可选地使用这里描述的任一方法执行内容识别。内容识别模块610可以访问歌 曲数据库612,以将样本与歌曲的已知样本比较,以识别样本,并且检索关于识别的样本的 信息。内容识别模块610可以接着访问电影数据库614,以检索识别的歌曲的音乐视频。
[0123] 位置识别模块608将向客户端设备604返回估计的识别的媒体流位置1,其可用于 计算所估计的实时媒体流位置Tr(t)。所估计的识别的媒体流位置1是识别的音轨的长度内 对应于音频样本的起始的时间。音乐视频可以是注释了时间的视频,其例如包括关于每帧 或每组帧的媒体流时间位置的信息。客户端设备604可以从服务器606接收音乐视频,并接 着在时间位置T r(t)渲染音乐视频,使得与正被媒体渲染源602渲染的歌曲同步地(例如,同 时或大致同时)显示音乐视频。
[0124] 虽然这里已经公开了各个方面和实施例,但对于本领域的技术人员而言,其它方 面和实施例将是很明显的。这里公开的各个方面和实施例是为了说明的目的,而不意在限 制,真正的范围和精神由所附的权利要求指示。可以进行许多修改和变化而不偏离其精神 和范围,如对本领域的技术人员所明显的。根据之前的描述,对本领域的技术人员而言,在 所列举的方法和装置之外,本公开的范围内功能上等同的方法和装置是显然的。这种修改 和改变也意在落于所附权利要求的范围内。
【主权项】
1. 一种方法,包括: 接收正被媒体渲染源渲染的媒体流的媒体样本; 由计算设备确定与所述媒体样本潜在匹配的多个媒体记录; 由所述计算设备向客户端设备提供包括所述多个媒体记录之一的特征的信息的对准 文件,其中预计所述多个媒体记录之一在所述对准文件中的特征在预定时间出现在所述媒 体流中。2. 如权利要求1所述的方法,还包括基于所述多个媒体记录的特征与所述媒体样本的 特征的时间对应关系,确定与所述媒体样本潜在匹配的所述多个媒体记录。3. 如权利要求1所述的方法,还包括基于指示所述媒体样本在所述媒体流中的时间偏 移的时间位置,确定与所述媒体样本潜在匹配的所述多个媒体记录。4. 如权利要求1所述的方法,其中所述对准文件包括所述多个媒体记录中的给定媒体 记录的多个指纹,所述指纹发生在所述媒体记录中在所述媒体样本的内容存在在所述媒体 记录中的时间之后的界标时间位置处。5. 如权利要求1所述的方法,还包括: 在对应界标处确定所述媒体样本的多个指纹,以便识别所述媒体样本的指纹和界标 对;以及 基于所述媒体记录的指纹和界标对、与所述媒体样本的指纹和界标对的比较,确定与 所述媒体样本潜在匹配的所述多个媒体记录。6. 如权利要求1所述的方法,还包括: 从所述多个媒体记录确定与所述媒体样本的匹配;以及 提供所述匹配的对准文件,其包括所述匹配的预计在预定时间出现在所述媒体流中的 特征的信息。7. 如权利要求1所述的方法,其中接收所述媒体样本包括从所述客户端设备接收所述 媒体样本。8. 如权利要求1所述的方法,其中接收所述媒体样本包括随时间递增地接收所述媒体 样本的部分,并且其中,所述方法还包括: 继续基于所述多个媒体记录的特征与随时间接收的所述媒体样本的特征的时间对应 关系,确定所述媒体记录中的哪些与所述媒体样本潜在匹配,直到接收了足够的数据以明 确地识别匹配的媒体记录为止。9. 如权利要求1所述的方法,其中接收所述媒体样本包括随时间递增地接收所述媒体 样本的部分,并且其中,所述方法还包括: 继续基于所述多个媒体记录的特征与随时间接收的所述媒体样本的特征的时间对应 关系,确定所述媒体记录中的哪些与所述媒体样本潜在匹配,直到发现具有阈值数目的时 间对应关系的媒体记录为止。10. 如权利要求1所述的方法,其中接收所述媒体样本包括随时间递增地接收所述媒体 样本的部分,并且其中,所述方法还包括: 基于对所述媒体样本的明确识别,提供指示与所述媒体样本的匹配的信息。11. 一种方法,包括: 由客户端设备向计算设备发送正被媒体渲染源渲染的媒体流的媒体样本; 在客户端设备接收包括与所述媒体样本潜在匹配的多个媒体记录之一的特征的信息 的对准文件,其中所述对准文件包括所述媒体记录的预计在预定时间出现在所述媒体流中 的特征;以及 确定正被所述媒体渲染源渲染的媒体流是否与所述对准文件的媒体记录匹配。12. 如权利要求11所述的方法,其中所述对准文件包括所述多个媒体记录中的给定媒 体记录的多个指纹,所述指纹发生在所述媒体记录中在所述媒体样本的内容存在在所述媒 体记录中的时间之后的时间位置处。13. 如权利要求11所述的方法,其中确定正被所述媒体渲染源渲染的媒体流是否与所 述对准文件的媒体记录匹配包括确定正被所述媒体渲染源渲染的所述媒体流是否已经中 断。14. 如权利要求11所述的方法,其中确定正被所述媒体渲染源渲染的媒体流是否与所 述对准文件的媒体记录匹配包括确定正被所述媒体渲染源渲染的所述媒体流是否已经结 束。15. 如权利要求11所述的方法,其中确定正被所述媒体渲染源渲染的媒体流是否与所 述对准文件的媒体记录匹配包括确定在所述媒体流中是否不再见到所述对准文件中的预 期指纹。16. 如权利要求11所述的方法,还包括: 接收正被所述媒体渲染源渲染的所述媒体流的附加媒体样本;以及 其中确定正被所述媒体渲染源渲染的媒体流是否与所述对准文件的媒体记录匹配包 括确定所述附加媒体样本的特征是否与所述对准文件的媒体记录的特征具有时间对应关 系。17. 如权利要求11所述的方法,基于在所述媒体流与所述对准文件的媒体记录之间没 有预定指纹匹配的经过的时间量,确定存在不连续性。18. 如权利要求17所述的方法,还包括:基于存在不连续性,向所述计算设备发送正被 所述媒体渲染源渲染的所述媒体流的新媒体样本。19. 如权利要求11所述的方法,还包括: 所述客户端设备与正被所述媒体渲染源渲染的所述媒体流同步地渲染第二媒体流;以 及 基于所述媒体流与所述对准文件的媒体记录的对准,确定所述第二媒体流的渲染与所 述媒体流之间的同步。20. 如权利要求19所述的方法,其中基于所述媒体流与所述对准文件的媒体记录的对 准确定所述第二媒体流的渲染与所述媒体流之间的同步包括:基于所述媒体流的参考速 度,确定与所述媒体流正被所述媒体渲染源渲染的速度相关联的时间尺度比。21. 如权利要求11所述的方法,还包括: 基于所述媒体流的参考速度,确定与所述媒体流正被所述媒体渲染源渲染的速度相关 联的时间尺度比; 基于所述时间尺度比确定正被所述媒体渲染源渲染的媒体流是否与所述对准文件的 媒体记录匹配,以对所述媒体流与所述对准文件的媒体记录的匹配的时间漂移进行补偿。22. 如权利要求11所述的方法,还包括: 所述客户端设备与正被所述媒体渲染源渲染的所述媒体流同步地渲染第二媒体流;以 及 基于所述媒体流与所述对准文件的媒体记录的误对准,确定所述第二媒体流的渲染与 所述媒体流之间的同步的中断。23. 如权利要求22所述的方法,还包括基于所述中断,中止所述第二媒体流的渲染。24. 一种方法,包括: 由客户端设备向计算设备发送正被媒体渲染源渲染的媒体流的媒体样本; 在客户端设备接收包括与所述媒体样本潜在匹配的多个媒体记录之一的特征的信息 的对准文件,其中所述对准文件包括所述媒体记录的预计在预定时间出现在所述媒体流中 的特征;以及 比较正被所述媒体渲染源渲染的所述媒体流与所述对准文件的媒体记录,以确定正被 所述媒体渲染源渲染的媒体流是否已经中断。25. 如权利要求24所述的方法,还包括确定正被所述媒体渲染源渲染的媒体流是否与 所述对准文件的媒体记录匹配。26. 如权利要求24所述的方法,还包括确定正被所述媒体渲染源渲染的媒体流是否已 经结束。27. 如权利要求24所述的方法,还包括确定在所述媒体流中是否不再见到所述对准文 件中的预期指纹。28. 如权利要求24所述的方法,其中所述对准文件包括所述多个媒体记录中的给定媒 体记录的多个指纹,所述指纹发生在所述媒体记录中在所述媒体样本的内容存在在所述媒 体记录中的时间之后的时间位置处。29. 如权利要求24所述的方法,还包括: 接收正被所述媒体渲染源渲染的所述媒体流的附加媒体样本;以及 确定所述附加媒体样本的特征是否与所述对准文件的媒体记录的特征具有时间对应 关系。
【文档编号】G10H1/36GK105843968SQ201610334894
【公开日】2016年8月10日
【申请日】2011年5月4日
【发明人】A.L-C.王, R.波沃, W.M.米尔斯, C.J.P.巴顿, P.G.英格尔布雷赫特, D.S.米克赫吉
【申请人】沙扎姆娱乐有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1