CN103562909A - 客户端设备识别数据流的内容的方法及系统 - Google Patents

客户端设备识别数据流的内容的方法及系统 Download PDF

Info

Publication number
CN103562909A
CN103562909A CN201280019133.2A CN201280019133A CN103562909A CN 103562909 A CN103562909 A CN 103562909A CN 201280019133 A CN201280019133 A CN 201280019133A CN 103562909 A CN103562909 A CN 103562909A
Authority
CN
China
Prior art keywords
client device
signature file
media content
media
content
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.)
Pending
Application number
CN201280019133.2A
Other languages
English (en)
Inventor
A.L-C.王
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.)
Shazam Entertainment Ltd
Original Assignee
Shazam Entertainment 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
Priority claimed from US13/101,051 external-priority patent/US9275141B2/en
Application filed by Shazam Entertainment Ltd filed Critical Shazam Entertainment Ltd
Publication of CN103562909A publication Critical patent/CN103562909A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/35Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
    • H04H60/37Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying segments of broadcast information, e.g. scenes or extracting programme ID
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/439Processing of audio elementary streams
    • H04N21/4394Processing of audio elementary streams involving operations for analysing the audio stream, e.g. detecting features or characteristics in audio streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/8549Creating video summaries, e.g. movie trailer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H2201/00Aspects of broadcast communication
    • H04H2201/90Aspects of broadcast communication characterised by the use of signatures

Abstract

提供了通过客户端设备识别数据流中的内容的方法和系统。该方法包括在客户端设备处接收表示从媒体内容和标识媒体内容的信息中提取的一个或多个特征的签名文件。该方法还包括基于与签名文件的比较,客户端设备对接收到的由媒体呈递源呈递的媒体内容进行内容识别。客户端设备可以基于包括客户端设备的物理位置、客户端设备的网络地址、客户端设备之前的内容识别请求、流派偏好、艺术家偏好和用户配置文件的任意数量的因素来接收一组签名文件。

Description

客户端设备识别数据流的内容的方法及系统
相关申请的交叉引用
本申请要求2011年6月10日提交的美国临时申请序列号61/495,571的优先权,其全部内容通过引用并入本说明书。本申请还要求2011年5月4日提交的美国专利申请序列号13/101,051的优先权,该专利申请要求2011年2月18日提交的美国临时申请61/444,458的优先权,这些专利申请中的每一个专利申请的全部内容都通过引用并入本说明书。每个交叉引用的相关申请的全部内容都通过引用并入本说明书。
技术领域
本发明涉及识别媒体流的内容。例如,本公开涉及基于存储在客户端设备上的签名文件对媒体流内容进行内容识别的客户端设备。
背景技术
用于各种数据类型(如,音频或视频)的内容识别系统使用许多不同的方法。客户端设备可以捕获记录媒体流(如,无线电广播)的媒体样本,然后可以请求服务器在媒体记录(也称为媒体轨道)数据库中对匹配进行搜索以便识别媒体流。例如,样本记录可以传递给内容识别服务器模块,内容识别服务器模块可以进行样本内容识别,并返回识别结果给客户端设备。然后,辨识结果可以在客户端设备上显示给用户,或用于各种后续服务,如购买或引用相关信息。内容识别的其他应用包括例如广播监测或内容敏感广告。
现有的内容识别系统可能需要用户交互以发起内容识别请求。很多时候,用户可能例如在一首歌曲结束后发起请求,错过识别这首歌曲的机会。
此外,在内容识别系统中,中央服务器从客户端设备接收内容识别请求并执行计算密集的程序,以识别样本内容。当提供结果给客户端设备时,由于可用于执行辨识的服务器的数量有限,大量请求可能会导致延迟。
发明内容
在一些示例中,提供了一种方法,包括在客户端设备处接收签名文件,签名文件表示从媒体内容和标识媒体内容的信息中提取的一个或多个特征。该方法还包括基于与签名文件的比较,客户端设备对接收到的由媒体呈递源(rendering source)呈递的媒体内容进行内容识别。
在其他示例中,提供了一种方法,包括通过服务器从客户端设备的签名文件数据库确定一组签名文件,每个签名文件表示从相应的媒体内容和标识相应的媒体内容的信息中提取的一个或多个特征。该方法还包括将该组签名文件提供给客户端设备。
本说明书描述的任何一种方法也可以被提供为存储在非临时性计算机可读介质上的指令的形式,当通过计算设备执行时,这些指令使得计算设备执行该方法的多个功能。更多示例还可以包括制造品,它包括具有编码于其上的计算机可读指令的有形计算机可读介质,这些指令可以包括用来执行本说明书所描述的方法的功能的指令。
在更多的示例中,可以使用任何类型的设备或者任何类型的设备都可以被配置为执行本说明书所描述的任何过程或方法中的逻辑功能。
在其他示例中,提供了一种客户端设备,包括数据库和耦合到数据库的内容识别模块。数据库被配置为接收并存储签名文件,签名文件表示从媒体内容和标识媒体内容的信息中提取的一个或多个特征。内容识别模块被配置为基于与签名文件的比较对接收到的通过媒体呈递源呈递的媒体内容进行内容识别。
在另一些示例中,提供了一种服务器,包括被配置为存储签名文件的数据库,每一个签名文件都表示从相应的媒体内容和标识相应的媒体内容的信息中提取的一个或多个特征。该服务器还包括内容识别模块,该内容识别模块耦合到数据库,并被配置为从存储的客户端设备的签名文件中确定一组签名文件,并将该组签名文件提供给客户端设备,以使得客户端设备能够对接收到的媒体内容进行内容识别。
前述概述只是示例性的,不用于任何方式的限制。除上面描述的示例性方面、实施例和特征之外,通过参照附图和下面的详细描述,更多的方面、实施例和特征将变得显而易见。
附图说明
图1示出了用于识别数据流内容的系统的一个示例。
图2示出了准备签名的示例性系统。
图3示出了示例性内容识别方法。
图4示出了用于识别数据流内容的示例性方法的流程图。
图5示出了用于识别数据流内容并确定客户端设备的签名文件的示例性系统。
具体实施方式
在下面的详细描述中,参照多张附图,这些附图也构成本说明书的一部分。在附图中,除非上下文另有规定,否则相似的符号通常标识相似的组件。在说明书、附图和权利要求中描述的示例性实施例的目的不是为了限制。在不偏离本说明书所展示的主题的精神或范围的情况下,可以使用其他的实施例,还可以做出其他的变化。很容易理解的是,本公开的各个方面,如在本说明书中一般性描述的,如在附图中示出的,可以被布置、替换、组合、分离和设计成各种不同的配置,所有这些都在本说明书的明确设想之中。
除了其他之外,本公开可以描述客户端设备识别数据流内容的方法和系统。该方法可以包括在客户端设备接收表示从媒体内容和标识媒体内容的信息中提取的一个或多个特征的签名文件。该方法还可以包括客户端设备基于与签名文件的比较对接收到的由媒体呈递源呈递的媒体内容进行内容识别。客户端设备可以基于包括客户端设备的物理位置、客户端设备的网络地址、客户端设备的前一内容辨识请求、流派偏好、艺术家偏好和用户配置文件的多个因素中的任意数量的因素接收一组签名文件。
现在参看附图,图1示出了用于识别数据流内容的系统的一个示例。虽然图1示出了具有给定配置的系统,但系统内的组件可以以其他方式布置。该系统包括媒体或数据呈递源102,以任何已知的方式呈递和展示来自媒体流的内容。媒体流可以存储在媒体呈递源102上,或从外部源(如,模拟或数字广播)接收。在一个实施例中,媒体呈递源102可以是广播媒体流(例如,音频和/或视频)和/或其他信息的无线电电台或电视内容提供商。媒体呈递源102也可以是任何类型的播放记录的或实时格式的音频或视频媒体的设备。在一个替代性实施例中,媒体呈递源102可以包括例如作为音频源和/或视频源的现场表演。媒体呈递源102可以通过例如图形显示器、音频扬声器、MIDI乐器、动画电子模型(animatronic puppet)等或媒体呈递源102呈递的任何其他类型的呈现来呈递或展示媒体流。
客户端设备104通过输入接口106从媒体呈递源102接收呈递的媒体流。在一个实施例中,输入接口106可以包括天线,在此情形中,媒体呈递源102可以将媒体流无线广播到客户端设备104。然而,根据媒体流的形式,媒体呈递源102可以使用无线或有线通信技术呈递媒体。在其他的示例中,输入接口106可以包括麦克风、视频摄像机、振动传感器、无线电接收器、网络接口等中的任一种。作为特定的示例,媒体呈递源102可以播放音乐,输入接口106可以包括麦克风以接收音乐样本。
在多个示例中,除了接收呈递的媒体流之外,客户端设备104可能不能可操作地耦合到媒体呈递源102。以这种方式,客户端设备104可以不受媒体呈递源102控制,并且可以不是媒体呈递源102的集成的部分。在图1所示的示例中,客户端设备104是与媒体呈递源102分离的实体。
输入接口106被配置为捕获呈递的媒体流的媒体样本。输入接口106可以被预编程为无需用户干预地连续地捕获媒体样本,以记录所有接收的音频并将记录存储在缓冲器108中。缓冲器108可以存储多个记录,或者可以存储有限时间的记录,这样客户端设备104可以例如以预定的时间间隔或者以使得在时间上往回的某个长度的历史可用于分析的方式来记录并存储记录。在其他的示例中,捕获媒体样本可以由用户激活触发样本捕获的按钮或其他应用程序引起或触发。例如,客户端设备104的用户可以按下按钮,通过麦克风记录十秒钟的数字音频样本,或使用相机捕获静止图像或视频序列。
客户端设备104可以实现为具有较小外形的便携式(或移动)电子设备如,手机、无线手机、个人数据助理(PDA)、平板计算机、个人媒体播放设备、无线网络观看设备、个人耳机设备、专用设备或包括任何上述功能的混合设备中的一部分。客户端设备104也可以实现为个人计算机,包括膝上型计算机和非膝上型计算机配置。客户端设备104也可以是更大的设备或系统的组件。
客户端设备104还包括位置识别模块110和内容识别模块112。位置识别模块110被配置为从缓冲器108接收媒体样本,并基于在那一时刻捕获的媒体样本识别指示媒体样本在呈递的媒体流(或在呈递的媒体流片段)中的时间偏移量的对应的估计时间位置(Ts)。在一些示例中,时间位置(Ts)也可以是自媒体流开始起已经经过的时间量。例如,媒体流可以是无线电广播,时间位置(Ts)可以对应于正在呈递的歌曲的已经经过的时间量。
内容识别模块112被配置为从缓冲器108接收媒体样本,并对接收到的媒体样本进行内容识别。内容识别对媒体流进行识别,或对与媒体样本相关或有关的信息进行识别。内容识别模块112可被配置为接收环境音频样本,识别音频样本的音乐内容,并提供与该音乐有关的信息,包括音轨名称、艺术家、曲集、艺术作品、传记、唱片、音乐会门票等。
在此方面,内容识别模块112包括媒体搜索引擎114,并可以包括或耦合到数据库116,该数据库116对参考媒体流进行索引化处理,例如,以比较接收到的媒体样本和存储的信息,从而识别接收到的媒体样本内的轨道。一旦识别出媒体流内的轨道,轨道特性或其他信息就可以显示在客户端设备104的显示器上。
数据库116可以存储包括用来识别内容片段的信息的内容模式(contentpattern)。内容模式可以包括媒体记录,如音乐、广告、广告词(jingles)、电影、纪录片、电视和电台节目。每个记录都可以通过唯一标识符(例如,sound_ID)识别。替代性地,数据库116不一定存储每个记录的音频或视频文件,因为sound_ID可用于从其他地方获取音频文件。内容模式可以包括其他信息(除包括媒体记录之外或者不包括媒体记录),如包括描述媒体记录内容的时间映射特征集合的参考签名文件,其具有与媒体记录的时间轴对应的时间维度,其中每一个特征都可以是对每个映射时间点附近的内容的描述。一般情况下,例如,可以对签名文件中的特征进行选择,以可以在存在噪声和失真的情况下再现。特征可以从媒体记录之中在离散时间位置处稀疏地提取,每一个特征都可以与感兴趣特征对应。稀疏特征的示例包括Lp范数幂峰值、频谱能量峰值、链接凸点(linked salient point)等。对于更多的示例,读者可以参考Wang和Smith的美国专利第6,990,453号,该专利通过引用被整体并入本说明书中。
替代性地,连续的时间轴可以密集地表示,其中每一个时间值都具有对应的可以被包括或表示在媒体记录的签名文件中的特征值。这种密集特征的示例包括特征波形(如在Kenyon的美国专利第7,174,293号描述的,该专利通过引用被整体并入本说明书)、频谱位图光栅(如美国专利第5,437,050号描述的,该专利通过引用被整体并入本说明书)、活动矩阵(如美国公开专利申请第2010/0145708号描述的,该专利通过引用被整体并入本说明书)和能量通量位图光栅(energy flux bitmap raster)(如美国专利第7,549,052号描述的,该专利通过引用被整体并入本说明书)。
在一个实施例中,签名文件包括媒体记录的稀疏特征表示。记录的特征可以从使用重叠的短时快速傅立叶变换(FFT)提取的频谱图中获得。频谱图的峰值可以在对应的能量值为局部最大值的时间-频率位置处选择。例如,峰值可以通过识别每个候选位置周围区域中的最大值点来选择。心理声学掩蔽标准也可以用来抑制听不见的能量峰值(inaudible energy peak)。每一个峰值都可以编码为一对时间和频率值。此外,可以记录峰值的能量幅度。在一个示例中,音频采样速率为8KHz,FFT帧的大小可能会在大约64-1024bin之间变化,帧之间的跳距(hop size)使得大约与前一帧有25-75%的重叠。增加频率分辨率可能导致更低的时间精度。并且,频率轴可以弯曲(warp)和内插到对数标度之上,如梅尔频率。
与这些特征相关联的许多特征或信息可以组合成签名文件。签名文件可以将特征排序成按时间递增排列的列表。每个特征Fj都可以与数据结构(dataconstruct)中的时间值tj相关联,列表可以是这种结构的数组;例如,这里j是第j个结构的索引。在使用连续时间表示(例如,连续频谱图帧)的示例中,时间轴可以隐含在列表数组的索引中。每一个媒体记录中的时间轴都可以被获得作为自记录开始处起的偏移量,因此,时间零指示记录开始。
图2示出了生成签名文件的示例性系统。该系统包括媒体记录数据库202、特征提取模块204以及媒体签名数据库206。媒体记录数据库202可以包括多个媒体记录的副本(例如,歌曲或视频)或对多个媒体记录的副本的引用。特征提取模块204可以耦合到媒体记录数据库202,并且可以接收媒体记录进行处理。图2概念性地示出了从媒体记录数据库202接收音频轨道的特征提取模块。
特征提取模块204可以使用任何上述示例方法从媒体记录提取特征来生成用于媒体记录的签名文件208。特征提取模块204可以将签名文件208存储在媒体签名数据库206中。例如,媒体签名数据库206可以存储带有相关联的标识符的签名文件,如图2所示。例如,签名文件的生成可以在批处理模式下进行,参考媒体记录库可以被预处理为对应的提取特征参考签名文件的库。输入到特征提取模块204的媒体记录可以存储在缓冲器中(例如,其中将旧的记录从滚动缓冲器发送出去并接收新的记录)。可以提取特征,并可以从媒体记录的滚动缓冲器的连续操作中连续创建签名文件,以根据需要不留时间间隙地或基于需求进行表示。在按需示例中,特征提取模块204可以在必要时从媒体记录数据库202获取媒体记录,以响应于对应特征的请求提取特征。在一个示例中,然后,由此得到的参考签名文件库可以存储或提供给客户端设备104。
得到的签名文件的大小可能会随着所使用的特征提取方法的不同而变化。在一个示例中,所选频谱图的峰密度(例如,特征)可以选择在大约每秒10-50点之间。峰可以选择为每单位时间的前N个最大能量峰,例如,一秒帧中的前10个峰。在一个示例中,使用每秒10个峰,用32位来编码每个峰的频率(例如,8位用于频率值,24位用来编码时间偏移量),可能需要每秒40个字节来编码特征。歌曲的平均长度大约为三分钟,一首歌大约会产生7.2千字节大小的签名文件。对于其他的签名编码方法,例如,跳距为100毫秒的频谱图中的每一个偏移处32位的特征会产生类似大小的指纹。
在另一个示例中,签名文件可能大约为5-10KB的量级,并可以与从中获得约20秒长的样本的媒体记录的一部分对应,并在结束样本捕获之后指向媒体记录的一部分。
在一些示例中,签名文件可以通过描述记录的特征来表示媒体记录的指纹。在这方面,媒体记录的签名可以视为是记录的指纹,签名或指纹可以被包括在签名文件之中。
图2中所示的系统可以被包括在客户端设备104或服务器122之中。在系统被包括在客户端设备之中的一个示例中,媒体记录数据库202可以包括本地存储的媒体(例如,音乐库)。在其他的示例中,客户端设备104可以接收来自服务器或从流(如,无线电广播、流传输的互联网广播等)中捕获的原始内容(例如,音乐文件),并进行签名提取以使用签名文件填充数据库116。在另一些示例中,接收到新的媒体记录(例如,用户购买新的歌曲并下载歌曲到客户端设备104)时,客户端设备104可以提取签名特征以生成新媒体记录的签名文件。客户端设备104可以将信息与生成的签名文件相关联,如识别原始内容的信息(如,歌曲标题、艺术家、流派等)、广告等,或从服务器接收到的与原始内容相关联的任何信息。
再参照图1,数据库116可以包括多个媒体记录的签名文件,并可以持续更新,以包括新媒体记录的签名文件。数据库116可以接收用于删除旧的签名文件的指令以及纳入来自服务器的新的签名文件的指令。数据库116可以进一步包括与提取的媒体文件的特征相关联的信息。数据库116可以包括多个签名文件,使得客户端设备104能够执行与本地存储的签名文件进行内容匹配的内容识别。
数据库116还可以包括每个存储的签名文件的信息,诸如元数据,该元数据表示有关例如艺术家名称、歌曲长度、歌曲的歌词、歌词的行或单词的时间索引、曲集艺术品之类的签名文件的信息,或任何其他标识文件或与文件相关的信息。元数据还可以包括数据和到其他相关内容和服务的超链接,包括推荐、广告、提供预览、书签以及购买音乐记录、视频、音乐会门票和奖励内容;以及为了方便浏览、探索、发现万维网上的相关内容。
内容识别模块112也可以包括签名提取器118,签名提取器118可以被配置为生成从捕获的媒体样本中提取出的特征的签名流,每个特征都可以具有对应的样本内的时间位置。提取出的特征的签名流可以用来与存储在数据库116中的签名文件比较,以识别对应的媒体记录。在一些示例中,签名提取器116可以被配置为使用上述生成签名文件的方法中的任何一种从媒体样本中提取特征,以生成提取特征的签名流。签名流可以基于例如观测到的媒体流实时确定和生成。
内容识别模块112和/或签名提取器118还可以被配置用来比较媒体样本内的特征和签名文件的对准,以识别对应时刻的特征匹配。
图1中的系统还包括客户端设备104可以通过无线或有线链接与之耦合的网络120。服务器122被设置为耦合到网络120,服务器122包括位置识别模块124和内容识别模块126。虽然图1示出服务器122包括位置识别模块124和内容识别模块126,但是位置识别模块124和/或内容识别模块126中的任意一个都可以是例如远离服务器122的单独的实体。此外,位置识别模块124和/或内容识别模块126可以在例如通过网络120连接到服务器122的远程服务器上。
在一些示例中,客户端设备104可以捕获媒体样本,并可以通过网络120将媒体样本发送给服务器122,以确定媒体样本中的内容的特性。服务器122的位置识别模块124和内容识别模块126可以被配置为类似于客户端设备104的位置识别模块110和内容识别模块112运行。在这方面,内容识别模块126包括媒体搜索引擎128,并可以包括或耦合到索引化参考媒体流的数据库130,例如,以比较接收到的媒体样本和存储的信息,以识别接收到的媒体样本中的轨道。一旦已经识别出媒体流内的轨道,轨道特性或其他信息就可以返回给客户端设备104。
响应于从客户端设备104接收到的内容识别查询,服务器122可以对从中获得媒体样本的媒体记录进行识别,和/或获取与识别的媒体记录对应的签名文件。然后,服务器122可以返回识别媒体记录的信息和与媒体记录对应的签名文件给客户端设备104。
在其他的示例中,客户端设备104可以从媒体呈递源102捕获媒体流的样本,并且可以对样本进行初始处理,以创建媒体样本的签名文件/指纹。然后,客户端设备104可以发送指纹信息给服务器122的位置识别模块124和/或内容识别模块126,它可以单独基于指纹信息对与样本有关的信息进行识别。以这种方式,更多的计算或识别处理可以在客户端设备104而不是在例如服务器122处进行。
在又一些示例中,如上所述,客户端设备104还可以被配置为本地执行内容识别,通过比较媒体样本内的特征和签名文件的对准(alignment),以识别对应时刻的特征匹配。
各种内容识别技术在本领域中已经是广为人知的,用于使用媒体轨道数据库进行媒体样本和媒体样本特征的计算内容识别。下列美国专利和出版物描述了可能的媒体辨识技术的示例,每一个都通过引用被完整并入本说明书中,就像在本说明书中完整提出:Kenyon等人的标题为《Broadcast InformationClassification System and Method》的美国专利第4,843,562号;Kenyon的标题为《Broadcast Signal Recognition System and Method》的美国专利第4,450,531号;Haitsma等人的标题为《Generating and Matching Hashes of MultimediaContent》的美国专利申请公开号2008/0263360;Wang和Culbert的标题为《Robust and Invariant Audio Pattern Matching》的美国专利第7,627,477号;Wang,Avery的标题为《Method and Apparatus for Identification of BroadcastSource》的美国专利申请公开号2007/0143777;Wang和Smith的标题为《Systemand Method for Recognizing Sound and Music Signals in High Noise andDistortion》的美国专利第6,990,453号;Blum等人的标题为《Method and Articleof Manufacture for Content-Based Analysis,Storage,Retrieval,and Segmentationof Audio Information》的美国专利第5,918,223号;以及Master等人的标题为《System and Method for Identifying Original Music》的美国专利申请公开号2010/0145708。
简要地说,内容识别模块(在客户端设备104或服务器122之内)可以被配置为接收媒体记录和对媒体记录进行采样。记录可能与数字化、归一化的参考信号片段相关,以获得的每一个作为结果的相关片段的相关函数峰值,以便当相关函数峰值之间的间距在预定限度之内时提供辨识信号。例如,如在美国专利第4,450,531号(通过引用完整并入本说明书之中)中提及的,与相关函数峰值重合的RMS功率值图形可以在来自数字化的参考信号片段的RMS功率值图形的预定限度内匹配。因此,可以识别匹配的媒体内容。此外,媒体内容中的媒体记录的匹配位置由例如匹配的相关片段的位置以及相关峰值的偏移量给出。
图3示出了另一种示例性的内容识别方法。一般情况下,媒体内容可以通过识别或计算媒体样本的特征或指纹并比较指纹和先前识别的参考媒体文件的指纹来识别。样本内计算指纹的特定位置可能取决于样本中可以再现的点。这种可再现计算的位置被称为“界标(landmark)”。样本中界标的位置可以通过样本本身确定,即取决于样本质量,并且是可以再现的。也就是说,每次重复该过程时,相同的信号可以计算相同或类似的界标。界标标记方案对于声音记录可以每秒标记约5至10个界标;然而,界标标记的密度可能与媒体记录内的活动量有关。一种被称为功率范数(power norm)的界标标记技术是计算记录内多个时间点处的瞬时功率以选择局部最大值。这样做的方法之一是通过直接对波形进行整形和滤波计算出包络线(envelop)。另一种方法是计算信号的希尔伯特(正交)变换,并使用希尔伯特变换和原始信号的幅值的平方和。也可以使用其他的方法来计算界标。
图3示出了样本的dB(幅度)随时间变化的示例性曲线图。曲线图示出了多个标识的界标位置(L1至L8)。一旦已经确定界标,就在记录中的每一个界标时间点处或其附近计算指纹。特征与界标的接近度由所使用的指纹方法定义。在某些情况下,如果特征清楚地与界标对应,而不是与前面或后面的界标对应,那么认为该特征在界标附近。在其他情况下,特征与多个相邻的界标对应。指纹通常是汇总记录中的界标时间点处或其附近的一组特征的一个值或一组值。在一个示例中,每一个指纹都是单个数值,该数值是多个特征的散列函数。指纹的其他示例包括频谱切片(slice)指纹、多切片指纹、LPC系数、倒谱(cepstral)系数和频谱峰值的频率分量。
指纹可以通过任何类型的数字信号处理或信号频率分析计算得到。在一个示例中,为了生成频谱切片指纹,在每个界标时间点的邻域中进行频率分析,以提取前几个频谱峰值。然后,指纹值可以是最强频谱峰值的单个频率值。欲了解有关计算音频样本的特征或指纹的更多信息,读者可以参考Wang和Smith的标题为《System and Methods for Recognizing Sound and MusicSignals in High Noise and Distortion》的美国专利第6,990,453号,其全部内容通过引用并入本说明书中,就像此描述中的完整陈述。
因此,参照图1,客户端设备104或服务器122可以接收记录(例如,媒体/数据样本)并计算记录的指纹。在一个示例中,为了对记录相关的信息进行识别,客户端设备104的内容识别模块112可以随后访问数据库116以便通过生成等效指纹和数据库116中的文件之间的对应关系来匹配记录的指纹和已知音频轨道的指纹,以找到具有最多的线性相关对应关系或其特征指纹的相对位置与记录中相同指纹的相对位置最为匹配的文件的位置。
参看图3,示出了样本界标和指纹匹配(或基本匹配)的参考文件的散布图。样本可以与多个参考文件比较以生成多个散布图。生成散布图之后,可以对界标对之间的线性对应关系进行识别,并可以根据线性相关的界标对的数量对集合进行评分。当例如可以使用大致相同的线性方程在允许的容差范围内描述统计学上大量的对应的样本位置和参考文件位置时,可能出现线性对应关系。具有最高的统计学意义得分的,即具有最多的线性相关对应关系的文件集合是获胜的文件,可以被视为是匹配的媒体文件。
在一个示例中,为了生成文件的得分,可以生成偏移值的直方图。样本和指纹匹配的参考文件之间的界标时间位置的偏移值可能不同。图3示出了示例性的偏移值直方图。参考文件可被赋予等于直方图峰值的分数(例如,在图3中,分数=28)。每一个参考文件都可以以这种方式进行处理来生成得分,具有最高得分的参考文件可被确定为与样本匹配。
此外,在上述出版物中描述的系统和方法可能返回不仅仅是媒体样本的特性。例如,使用Wang和Smith的美国专利第6,990,453号中描述的方法,除了返回与识别的音频轨道相关联的元数据以外,还可以返回自识别的样本开始起的媒体样本的相对时间偏移量(RTO)。为了确定记录的相对时间偏移,可以比较样本的指纹和这些指纹所匹配的原始文件的指纹。每一个指纹都发生在给定的时间,因此在匹配指纹以识别样本之后,(样本中的匹配指纹的)第一指纹和所存储的原始文件的第一指纹之间的时间差将是样本的时间偏移量,例如,在一首歌中偏移的时间量。因此,可以确定抽取样本的相对时间偏移量(例如,一首歌曲中的67秒)。也可以使用其他的信息来确定RTO。例如,直方图的峰值位置可被视为是从参考记录的开始到样本记录的开始的时间偏移量。
根据媒体样本的类型,也可以进行其他形式的内容识别。例如,视频识别算法可被用来识别视频流内(例如,电影)的位置。Oostveen,J.等人的《Feature Extraction and a Database Strategy for Video Fingerprinting》(LectureNotes in Computer Science,2314,2002年3月11日,117-128)描述了示例性的视频识别算法,其全部内容通过引用并入本说明书中。例如,视频样本在视频中的位置可以通过确定哪个视频帧被识别来推导。为了识别该视频帧,媒体样本的帧可以被划分成行和列的网格,对于每个网格块,计算像素亮度值的平均值。空间滤波器可以应用于计算出的平均亮度值来导出每个网格块的指纹比特(fingerprint bits)。指纹比特可用来唯一地识别该帧,并可以与包括已知媒体的数据库的指纹比特进行比较或匹配。从帧中提取的指纹比特可以被称为子指纹,指纹块是来自连续帧的固定数量的子指纹。利用子指纹和指纹块,可以进行视频样本识别。基于媒体样本包括了哪个帧,可以确定视频中的位置(例如,时间偏移)。
此外,也可以进行其他形式的内容识别,例如使用水印方法。客户端设备104的位置识别模块110(相似地,服务器122的位置识别模块124)可以使用水印方法来确定时间偏移量,使媒体流可以具有以一定时间间隔嵌入的水印,而每个水印直接地或者通过例如数据库查找间接地指定水印的时间或位置。
在前述某些示例性的实现内容识别模块112的功能的内容识别方法中,识别过程中的副产物可以是媒体流内的媒体样本的时间偏移量。因此,在这些示例中,位置识别模块110可以与内容识别模块112相同,或位置识别模块110的功能可以由内容识别模块112执行。
在一些示例中,客户端设备104或服务器122还可以通过网络120访问媒体流库数据库132,以便选择随后可以返回给客户端设备104的与被采样媒体对应的媒体流以便通过客户端设备104呈现。媒体流库数据库132中的信息或流媒体库数据库132本身都可以被包括在数据库116之中。
媒体呈递源102呈递的媒体的估计时间位置通过位置识别模块110来确定,并用来确定呈递所选择的媒体流的、选择的媒体流中对应位置。当客户端设备104被触发捕获媒体样本时,根据客户端设备104的参考时钟记录时间戳(T0)。与媒体样本的采样时刻对应的时间戳记录为T0,并可以称为同步点。采样时刻可以优选地是开始处,但也可以是媒体样本的结束处、中间或任何其他的预定时刻。因此,媒体样本可以带有时间戳,这样使得媒体流中从固定的任意参考时间点起的对应的时间偏移量都是已知的。在任何时刻t,估计的实时媒体流位置Tr(t)根据估计的识别的媒体流位置Ts加上自时间戳的时刻经过的时间来确定:
Tr(t)=Ts+t–T0    等式(1)
Tr(t)是从媒体流的开始处到当前呈递的媒体流的实时位置经过的时间量。因此,可以使用Ts(即,基于记录的样本估计的从媒体流的开始处到媒体流的某个位置经过的时间量)计算Tr(t)。然后,客户端设备104使用Tr(t)与媒体呈递源102正在呈递的媒体同步地展现选择的媒体流。例如,客户端设备104可以在时间位置Tr(t)处或在使得已经经过时间量Tr(t)的位置处开始呈现选择的媒体流,以便与媒体呈递源102正在呈递的媒体同步地呈现呈递和展现选择的媒体流。
在一些实施例中,估计的位置Tr(t)可以根据速度调节比R调整。例如,标题为《Robust and invariant audio pattern matching》的美国专利第7,627,477号(其全部内容通过引用被并入本说明书)描述的方法可以实现用于识别媒体样本、估计的识别的媒体流位置Ts和速度比R。为了估计速度比R,计算匹配指纹变化部分的交叉频率比,由于频率与时间成反比,因此交叉时间比是交叉频率比的倒数。跨速比(cross-speed ratio)R是交叉频率比(例如,交叉时间比的倒数)。
也可以使用其他方法估计速度比R。例如,可以捕获多个媒体样本,可以对每个样本进行内容识别,以获得第k个样本在参考时钟时刻T0(k)的多个估计的媒体流位置Ts(k)。然后,R可以估计为:
R k = T S ( k ) - T S ( 1 ) T 0 ( k ) - T 0 ( 1 )    等式(2)
为了表示R随时间变化,也可以使用下面的等式:
R k = T S ( k ) - T S ( k - 1 ) T 0 ( k ) - T 0 ( k - 1 )    等式(3)
因此,可以使用某一段时间上的估计的时间位置Ts来计算速度比R,以确定媒体呈递源102正在以何种速度呈递媒体。
使用速度比R,实时媒体流位置的估计值可以计算为:
Tr(t)=TS+R(t-T0)   等式(4)
实时媒体流位置指示媒体样本的时间位置。例如,如果媒体样本来自一首长度为四分钟的歌曲,并且如果Tr(t)为一分钟,那么表明这首歌已经经过了一分钟。时间信息可以通过客户端设备在内容识别过程中确定。
图4示出了用于识别数据流中的内容的示例性方法400的流程图。图4中所示的方法400展示了方法的一个实施例,例如,该方法可以和图1中所示的系统一起使用,例如,该方法可以通过计算设备(或计算设备的多个组件),如客户端设备或服务器执行。方法400可以包括如一个或多个块402-410所示的一个或多个操作、功能或行为。虽然这些块以一定顺序示出,但这些块也可以并行和/或以不同于此处描述的顺序执行。此外,各个块根据想要的实现可被组合成更少的块、划分成更多的块和/或移除。
应该理解的是,对于本说明书中公开的这些和其他的过程和方法,该流程图显示了本发明的实施例的一种可能的实现的功能和操作。在这方面,每一个块都可以表示程序代码的一个模块、片段或部分,包括可以通过处理器执行以实现特定的逻辑功能或过程中的多个步骤的一条或多条指令。程序代码可以存储在任何类型的计算机可读介质或数据存储装置上,例如,如包括磁盘或硬盘驱动器的存储设备。计算机可读介质可以包括非临时性计算机可读介质或存储器,例如,如短时间存储数据的计算机可读介质,像寄存器存储器、处理器高速缓存和随机存取存储器(RAM)。计算机可读介质还可以包括非临时性介质,如辅助的或持久性的长期存储装置,例如,像只读存储器(ROM)、光盘或磁盘、致密盘只读存储器(CD-ROM)。计算机可读介质还可以是任何其他的易失性或非易失性存储系统。计算机可读介质可以视为是例如有形的计算机可读存储介质。
此外,图4中的每一个块都可以代表被导线连接以执行过程中的特定的逻辑功能的电路。本领域中一般的技术人员应该理解的是,替代性的实现包括在本公开的示例性实施例的范围之内,其中根据所涉及的功能,多个功能可以不按照所示的或所讨论的顺序执行,包括基本同时或以相反的顺序。
方法400包括:在块402中,在客户端设备接收媒体流的样本。客户端设备可以连续、零散或每隔一段时间接收媒体流,媒体流可以包括任何类型的数据或媒体,如无线电广播、电视节目的音频/视频,或所呈现的任何音频。媒体流可以由源连续地呈递,因此,客户端设备可以连续地接收媒体流。在一些实例中,客户端设备可能会接收到基本连续的媒体流,使得客户端设备接收所呈递的媒体流的主要部分,或使得客户端设备基本上在所有时间都接收媒体流。客户端设备可以使用例如麦克风捕获媒体流的样本。
方法400包括:在块404中,在客户端设备处,确定样本特征的签名流。例如,客户端设备可以在接收媒体流时通过输入接口(例如,麦克风)以增量的方式接收媒体流的样本,并可以提取这些样本的特征以生成对应的签名流增量。由于媒体呈递源呈递媒体流的进行,每一个增量样本都可能包括前面的样本之后的某个时间的内容。使用例如上述的任何一种提取样本特征的方法都可以根据媒体流的样本生成签名流。
当媒体流是正在进行中的媒体流时,签名流可以在正在进行的基础上实时生成。以这种方式,签名流中特征的数量可能会随着时间的推移而增加。
方法400包括:在块406中,确定样本的签名流和至少一个媒体记录的签名文件之间的特征随着时间的推移是否基本匹配。例如,客户端设备可以比较签名流中的特征和存储的签名文件中的特征。签名流中的特征可能是或可以包括界标-指纹对,签名文件可能包括例如给定的参考文件的界标-指纹对。因此,客户端设备可以对签名流和签名文件的界标-指纹对进行比较。
方法400包括:在块408中,确定匹配特征的数量是否高于阈值,并基于匹配特征的数量,在块410中识别匹配的媒体记录。例如,客户端设备可以被配置为确定媒体样本的签名流和存储的签名文件之间的匹配特征的数量,并对每一个签名文件的匹配特征的数量进行排序。具有最大数量的匹配特征的签名文件可被视为是匹配的,通过该签名文件识别或引用的媒体记录可被识别为样本的匹配记录。
在一个示例中,当匹配特征的数量小于阈值时,块406可以在块408之后重复执行,这样可以对签名流和签名文件之间的特征进行反复比较。随着时间的推移,当媒体流被连续地接收时,客户端设备可以接收更多的签名流内容(例如,一首歌曲的更长的部分),累积的数据可以合在一起处理,利用处理更前面的片段得到的结果,以在更长的样本内寻找匹配。
客户端设备可以连续接收媒体流,并可以基于与存储的签名文件的比较来连续进行内容识别。以这种方式,客户端设备可以尝试识别接收到的所有内容。内容识别可以基本上连续地进行,这样例如在客户端设备运行或包括内容识别功能的应用程序运行时,一直或者或始终进行内容识别。
在一些示例中,内容识别可以在接收到媒体流时进行。客户端设备可以被配置为连续地接收来自麦克风的数据流(例如,始终捕获周边环境音频)。客户端设备可以被配置为连续地进行内容识别,以进行被动的内容识别而无需用户输入(例如,用户不需要触发客户端设备进行内容识别)。客户端设备的用户可以启动连续进行内容识别的应用程序或可以配置客户端设备上的设置使得客户端设备连续进行内容识别。
使用图4中的方法400,特征内容可以通过客户端设备本地识别(基于本地存储的内容模式)。方法400使得所有的内容识别处理能够在客户端设备上进行(例如,提取样本特征、搜索存储在手机上的一组有限的签名文件等)。例如,对于优惠,与优惠内容有关的签名文件可以被提供给客户端设备(例如,预加载在客户端设备上),客户端设备可以被配置为运行在连续辨识模式,并能够识别这组有限的内容。
在一个示例中,当特征内容是由客户端设备捕获时,客户端设备可以进行内容识别,并提供表示辨识的通知(例如,弹出式窗口)。方法400可以为用户提供零点击(例如,被动的)的标记体验,以在识别出特征内容时通知用户。
图5示出了用于识别数据流中的内容并确定客户端设备的签名文件的示例性系统500。在图5中描述的系统功能或组件中的一个或多个可以被划分成更多的功能或物理组件,或组合成更少的功能或物理组件。在一些其他的示例中,更多的功能和/或物理组件可以添加到图5所示的示例中。
系统500包括辨识服务器502和请求服务器504。辨识服务器502可以被配置为从客户端设备接收确定内容特性的查询,该查询可以包括内容样本。辨识服务器502包括位置识别模块506和包括媒体搜索引擎510的内容识别模块508,并耦合到数据库512和媒体流库数据库514。辨识服务器504可以例如被配置为类似于图1中的服务器122运行。
请求服务器504可以被配置为指示客户端设备以连续识别模式运行,使得在处于连续识别模式的客户端设备处,客户端设备在接收到的数据流中连续地进行内容识别(而不是发送查询给辨识服务器502以识别内容或除发送查询给辨识服务器502之外还这样做)。请求服务器504可以耦合到包括内容模式或签名文件的数据库516,并且请求服务器504可以访问数据库516以获取内容模式并将这些内容模式发送给客户端设备。
在一个示例中,请求服务器504发送给客户端设备一个或多个签名文件,以及可选的在客户端设备处连续地进行媒体流中的内容的内容识别的指令。客户端设备可以响应地工作在连续模式。请求服务器504可以在辨识服务器502正在经历大容量的内容识别请求的时候发送指令给客户端设备,因此,请求服务器502通过指示一些客户端设备在本地进行内容识别来进行负载均衡。示例性的可能接收到大容量的请求的时候包括当大量的观众调谐电视时正在电视上播放歌曲或广告的时候。在此情况下,请求服务器504可以提前计划,提供与将要在播放期间呈现的歌曲或广告匹配的签名文件给客户端设备,并包括用于客户端设备在本地进行内容识别的指令。该指令可以包括客户端设备应该何时进行本地内容识别的指示,如指示在将来的某个时间执行此操作且持续一段时间。在一些示例中,对于优惠,只要进行优惠活动,就可以将签名文件提供给客户端设备以对文件进行本地缓存(例如,约100至500个文件),而指令可以指示客户端设备进行本地内容识别。
在一些示例中,请求服务器504可以提供一个或多个签名文件给客户端设备。请求服务器504可以发送签名/指纹数据库给客户端设备,使得客户端设备能够以单机方式来识别内容,而无需连接到请求服务器504。在其他的示例中,该请求服务器504可以提供原始内容或记录给客户端设备,客户端设备可以从原始内容中提取签名以填充客户端设备上的本地数据库。
请求服务器504可以基于多个标准选择将要提供给客户端设备的签名文件。例如,请求服务器504可以接收与用户的配置文件(profile)有关的信息,并可以选择要提供给客户端设备的、与用户的配置文件相关的签名文件。具体地说,用户可以指示对某一音乐流派、某些艺术家、音乐类型、音乐来源等的偏好,请求服务器504可以提供与这些偏好相关的媒体的签名文件,也可以基于客户端设备上可用的预定的存储限制来提供一定量的内容以便存储签名文件。
作为另一个示例,请求服务器504可以接收与客户端设备(过去或当前)的位置相关的信息,并可以选择要提供给客户端设备的与客户端设备的位置相关联的签名文件。具体地说,请求服务器404可以接收指示客户端设备位于音乐会的信息,并可以选择与音乐会上的音乐流派或艺术家相关联的签名文件以便将其提供给客户端设备。在另一个示例中,客户端设备的其他的物理或地理位置粒度(granularity)可以用来从较大的签名文件集合或池中选择要提供给客户端设备的签名文件,如基于位于某个国家(例如,提供与当地偏好的歌曲对应的签名文件),某个州或某个县。
也可以使用其他类型的位置以用于选择性确定,包括网络地址位置,如当客户端设备通过Wi-Fi网络节点连接到网络时,MAC地址可以用作位置。同样地,与蓝牙或RFID设备相关联的网络或无线地址也可使用。任何网络地址都可以被确定,并可以与位置数据库交叉引用来确定客户端设备的物理位置。
在更进一步的实施例中,设备类型或配置类型可以用作选择发送到设备的签名文件的基础。例如,某些设备类型或配置类型可以与在特定的国家或特定的服务提供商(在已知区域内经营)的设备使用相关联,这些信息可以用来确定或推断客户端设备的位置。
作为另一个示例,请求服务器504可以接收与存储在客户端设备上的媒体内容相关的信息,并可以选择要提供给客户端设备且与存储在客户端设备上的媒体内容相关的签名文件。签名文件可以以多种方式相关,如通过艺术家、流派、类型、年份、节奏等。
作为另一个示例,请求服务器504可以接收与客户端设备之前识别的媒体内容相关的信息,并可以选择要提供给客户端设备且与客户端设备或辨识服务器502之前识别的内容相关的签名文件。在此示例中,请求服务器504可以存储由客户端设备或辨识服务器502识别的内容的列表,以选择和提供与识别内容相关的内容模式。
作为另一个示例,请求服务器504可以基于第三方接收到的信息选择要提供给客户端设备的签名文件。第三方可以提供对请求服务器504的选择,以便选择提供给客户端设备的签名文件。在一个示例中,第三方广告商可以基于要被包括在今后将在广播或电视广告中播放的广告中的内容选择签名文件。
作为另一个示例,请求服务器504可以根据与客户端设备的用户配置文件相关联的所购买歌曲的列表基于数据库中排序的签名文件来选择要提供给客户端设备的签名文件。例如,请求服务器504可以根据用户配置文件从数字媒体服务提供商接收歌曲列表,并可以选择相同流派、艺术家、类别等的歌曲的签名文件。
作为另一个示例,请求服务器504可以基于指示与属于内容识别历史的多份内容的受欢迎程度的统计简档来选择将要提供给客户端设备的内容模式。在此示例中,请求服务器404可以维护辨识服务器502识别的媒体内容列表,并可以基于对每个媒体内容的内容识别请求的数量对媒体内容的受欢迎程度进行排序。对于已经接收到数量高于阈值的内容识别请求(例如,给定时间段内1000个请求)的媒体内容,请求服务器504可以选择这些媒体内容的签名文件,并将这些签名文件提供给客户端设备。以这种方式,客户端设备将拥有签名文件的本地副本,并可以在本地进行内容识别。
在进一步的实施例中,请求服务器504可以基于标准的任意组合选择将要提供给客户端设备的签名文件,如基于客户端设备的位置和从第三方接收的选择的签名文件(例如,第三方基于客户端设备的位置识别要提供给客户端设备的多个签名文件)。
一般情况下,在某些示例中,请求服务器504可以被配置为基于客户端设备(或客户端设备的用户)将请求对所选内容进行内容识别的概率来选择将要提供给客户端设备的签名文件。例如,对于已经发布的新的或流行歌曲,或对于辨识服务器502在过去的一天中已经接收到内容识别请求的尖峰(spike),请求服务器504可以将这些歌曲的签名文件提供给客户端设备,以使得客户端设备可以进行本地内容识别,而不需要与辨识服务器502通信。这可以卸载(offload)辨识服务器502的业务量,并使得通过在客户端设备上进行本地内容识别能够更快地进行内容识别。因此,在一些示例中,可以根据标记频率生成概率排序的媒体数据库。例如,辨识服务器502可以确定最流行的内容识别请求的统计信息,并可以提供与请求对应的媒体的签名文件给客户端设备,使得客户端设备可以进行内容识别。
在一些示例中,当客户端设备连接到辨识服务器时,辨识服务器可以提供多个签名文件给客户端设备(例如,约20MB的内容,其中可能包括大约1000个歌曲签名文件和这些歌曲的信息)。在一个示例中,辨识服务器(或其他的连接服务器)可以确定客户端设备是否以及何时通过选择的通信信道(例如,宽带或WiFi连接)与辨识服务器通信,然后,辨识服务器可以使用所选择的通信信道将签名文件传输到客户端设备,以避免通过速度较慢、较拥挤的通信信道传输数据和/或避免用户负担有限的数据计划。在某些情况下,辨识服务器可以确定服务器和客户端设备之间的通信接口包括足够的带宽容量以传输一组签名文件。在某些情况下,辨识服务器可以确定网络接口通过由蜂窝无线服务提供商提供的蜂窝无线网络实现,并可以在确定通信接口通过本地有线或无线宽带连接(WiFi)实现时将一组签名文件提供给客户端设备。
客户端设备执行辨识请求可以减少辨识服务器的负荷,并且还可以准备进行更多的即时辨识(例如,不需要与服务器进行通信)。与辨识服务器执行并响应所有的内容辨识请求相反,辨识服务器可以选择性地确定要发送给客户端设备用于客户端设备进行内容辨识的签名文件(以准备本地缓存潜在的识别)。
虽然已经在此公开了各个方面和实施例,但其他的方面和实施例对于本领域的技术人员来说将是显而易见的。本说明书所公开的各个方面和实施例都用于说明的目的,而不是为了进行限制,真正的范围通过所附权利要求表示。对于本领域技术人员来说显而易见的是,可以在不脱离其范围的情况下做出许多修改和变化。根据前面的描述,除了本说明书中所列举的那些,还有在本公开的范围内的功能上等效的方法和装置对本领域的技术人员来说也都是显而易见的。这些修改和变化都落在所附权利要求书的范围之内。

Claims (42)

1.一种方法,包括:
在客户端设备处接收签名文件,其中签名文件表示从媒体内容和标识媒体内容的信息中提取的一个或多个特征;以及
基于与签名文件的比较,客户端设备对接收到的由媒体呈递源呈递的媒体内容进行内容识别。
2.如权利要求1所述的方法,其中所述签名文件包括从媒体内容中提取的一个或多个特征的在时间上映射的集合,其中一个或多个特征中的每一个描述了映射时间点附近的媒体内容。
3.如权利要求1所述的方法,其中从媒体内容中提取的一个或多个特征与媒体内容频谱图中对应的能量值是局部最大值的峰值对应,并且签名文件包括峰值和对应的时间位置的数据对。
4.如权利要求1所述的方法,其中从媒体内容提取的一个或多个特征与媒体内容频谱图中的频谱位图光栅对应。
5.如权利要求1所述的方法,其中媒体内容频谱图中的峰值与每秒大约10至大约50个峰值对应。
6.如权利要求1所述的方法,进一步包括在客户端设备处接收与多个媒体内容对应的一组签名文件,其中多个媒体内容基于客户端设备的物理位置。
7.如权利要求1所述的方法,进一步包括在客户端设备处接收与多个媒体内容对应的一组签名文件,其中多个媒体内容基于客户端设备的网络地址。
8.如权利要求1所述的方法,进一步包括在客户端设备处接收与多个媒体内容对应的一组签名文件,其中多个媒体内容基于从包括客户端设备之前的内容辨识请求、流派偏好、艺术家偏好和用户配置文件的组中选择出来的因素。
9.如权利要求1所述的方法,进一步包括在客户端设备处接收与多个媒体内容对应的一组签名文件,其中多个媒体内容基于流行的媒体内容的统计排序。
10.如权利要求1所述的方法,进一步包括客户端设备使用麦克风接收由媒体呈递源呈递的媒体内容。
11.如权利要求1所述的方法,进一步包括客户端设备在连续的基础上接收由媒体呈递源呈递的媒体内容。
12.如权利要求1所述的方法,其中客户端设备对接收到的由媒体呈递源呈递的媒体内容进行内容识别包括:
确定接收到的媒体内容的一个或更多的特征;以及
比较接收到的媒体内容的一个或更多的特征与签名文件表示的从媒体内容中提取的一个或多个特征,以确定一个或多个特征的匹配。
13.如权利要求12所述的方法,其中确定接收到的媒体内容的一个或多个特征包括确定接收到的媒体内容的一组指纹,每一个指纹与接收到的媒体内容内的界标相关联。
14.如权利要求1所述的方法,其中在客户端设备处接收签名文件包括从服务器接收签名文件。
15.如权利要求14所述的方法,其中客户端设备包括存储多个签名文件的数据库,其中签名文件是所述多个签名文件之一,并且所述方法进一步包括:在客户端设备处从服务器接收对数据库的更新,其中所述更新包括将一个或多个新的签名文件并入数据库或从数据库移除一个或多个现有的签名文件的指令。
16.如权利要求1所述的方法,其中在客户端设备处接收签名文件包括:
在客户端设备处接收媒体内容;以及
通过客户端设备处理媒体内容以生成媒体内容的签名文件。
17.一种在其上存储有客户端设备可执行的指令的非临时性计算机可读介质,使得客户端设备执行以下功能,包括:
在客户端设备处接收签名文件,其中所述签名文件表示从媒体内容和标识媒体内容的信息中提取的一个或多个特征;以及
基于与签名文件的比较,客户端设备对接收到的由媒体呈递源呈递的媒体内容进行内容识别。
18.如权利要求17所述的非临时性计算机可读介质,其中所述指令通过客户端设备可进一步执行以使得客户端设备执行以下功能,包括:
确定接收到的媒体内容的一组指纹,每一个指纹与接收到的媒体内容内的界标相关联;以及
比较接收到的媒体内容的该组指纹与签名文件表示的从媒体内容中提取的一个或多个特征,以确定一个或多个特征的匹配。
19.一种客户端设备,包括:
数据库,被配置为接收且并入签名文件,其中所述签名文件表示从媒体内容和标识媒体内容的信息中提取的一个或多个特征;以及
内容识别模块,耦合到数据库,并被配置为基于与签名文件的比较对接收到的由媒体呈递源呈递的媒体内容进行内容识别。
20.如权利要求19所述的客户端设备,其中所述数据库被进一步配置为接收与多个媒体内容对应的一组签名文件,其中所述多个媒体内容基于客户端设备的类型或客户端设备的配置中的一个或多个,其中客户端设备的类型或客户端设备的配置指示客户端设备的给定的位置或给定的服务提供商。
21.如权利要求19所述的客户端设备,进一步包括被配置为接收由媒体呈递源呈递的媒体内容的麦克风。
22.一种方法,包括:
通过服务器确定来自客户端设备签名文件数据库的一组签名文件,其中每一个签名文件表示从相应的媒体内容和与相应的媒体内容相关联的信息中提取的一个或多个特征;以及
将所述一组签名文件提供给客户端设备。
23.如权利要求22所述的方法,其中所述标识相应的媒体内容的信息包括歌曲的标题、歌曲的艺术家和歌曲的流派中的一个或多个。
24.如权利要求22所述的方法,其中每一个签名文件包括与相应的媒体内容内的界标相关联的相应的媒体内容的指纹。
25.如权利要求22所述的方法,其中将所述一组签名文件提供给客户端设备包括:
服务器识别与客户端设备的通信接口;以及
确定通信接口包括用于传输所述一组签名文件的足够的带宽量。
26.如权利要求25所述的方法,其中确定通信接口包括用于传输所述一组签名文件的足够的带宽量包括:确定通信接口通过本地无线宽带连接(WiFi)实现。
27.如权利要求25所述的方法,其中将所述一组签名文件提供给客户端设备包括:
服务器识别与客户端设备的通信接口;
确定通信接口通过由蜂窝无线提供商提供的蜂窝无线网络实现;以及
在确定通信接口通过本地无线宽带连接实现时将所述一组签名文件提供给客户端设备。
28.如权利要求22所述的方法,其中相应的媒体内容包括歌曲,所述方法进一步包括:
服务器根据与用户配置文件相关联的并由数字媒体服务提供商提供的购买的歌曲的列表对数据库中的签名文件进行排序;以及
基于排序确定给客户端设备的所述一组签名文件。
29.如权利要求22所述的方法,其中确定客户端设备的所述一组签名文件包括基于客户端设备的位置确定要包括在所述一组签名文件中的签名文件。
30.如权利要求22所述的方法,其中确定客户端设备的所述一组签名文件包括基于服务器接收到的并且客户端设备所请求的之前的内容识别请求来确定要包括在所述一组签名文件中的签名文件。
31.如权利要求22所述的方法,其中确定客户端设备的所述一组签名文件包括基于存储在客户端设备上的媒体内容来确定要包括在所述一组签名文件中的签名文件。
32.如权利要求22所述的方法,其中确定客户端设备的所述一组签名文件包括基于流派偏好、艺术家偏好和相应的媒体内容的创作日期中的一个或多个来确定要包括在所述一组签名文件中的签名文件。
33.如权利要求22所述的方法,其中确定客户端设备的所述一组签名文件包括基于客户端设备上对所述一组签名文件的预定的存储限制来确定多个签名文件。
34.如权利要求22所述的方法,进一步包括为与相应的媒体内容相关的一组广告提供所述一组签名文件。
35.如权利要求22所述的方法,其中确定来自客户端设备的签名文件数据库的所述一组签名文件包括基于指示多份媒体内容受欢迎程度的统计简档来确定要包括在所述一组签名文件中的签名文件。
36.如权利要求22所述的方法,其中确定来自客户端设备的签名文件数据库的所述一组签名文件包括基于与服务器上所请求的内容识别请求的历史相关的统计简档来确定要包括在所述一组签名文件中的签名文件。
37.如权利要求22所述的方法,进一步包括:
服务器接收多个内容识别请求,其中每一个内容识别请求包括内容样本;
服务器基于与签名文件对应的媒体内容的频率对数据库中的签名文件进行排序,所述媒体内容是多个内容识别请求的对象;以及
基于排序将所述一组签名文件提供给客户端设备。
38.一种在其中存储有通过计算设备可执行的指令的非临时性计算机可读介质,以使得计算设备执行以下功能,包括:
通过计算设备确定来自客户端设备的签名文件数据库的一组签名文件,其中每一个签名文件表示从相应的媒体内容和与相应的媒体内容相关联的信息中提取的一个或多个特征;以及
将所述一组签名文件提供给客户端设备。
39.如权利要求38所述的非临时性计算机可读介质,其中每一个签名文件包括与相应的媒体内容内的界标相关联的相应的媒体内容的指纹。
40.如权利要求38所述的非临时性计算机可读介质,其中所述指令通过计算设备可进一步执行,以使得计算设备执行以下功能,包括:基于与计算设备上请求的内容识别请求的历史相关的统计简档来确定要包括在所述一组签名文件中的签名文件。
41.一种服务器,包括:
数据库,被配置为存储签名文件,其中每一个签名文件表示从相应的媒体内容和与相应的媒体内容相关联的信息中提取的一个或多个特征;以及
内容识别模块,耦合到数据库,并被配置为从存储的客户端设备的签名文件中确定一组签名文件,并将所述一组签名文件提供客户端设备以使得客户端设备能够对接收到的媒体内容进行内容识别。
42.如权利要求41所述的服务器,其中所述内容识别模块被进一步配置为基于与服务器上接收到的媒体内容的内容识别请求的历史相关的统计简档从客户端设备的签名文件数据库中确定一组签名文件。
CN201280019133.2A 2011-02-18 2012-02-14 客户端设备识别数据流的内容的方法及系统 Pending CN103562909A (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201161444458P 2011-02-18 2011-02-18
US61/444,458 2011-02-18
US13/101,051 2011-05-04
US13/101,051 US9275141B2 (en) 2010-05-04 2011-05-04 Methods and systems for processing a sample of a media stream
US201161495571P 2011-06-10 2011-06-10
US61/495,571 2011-06-10
PCT/US2012/025079 WO2012112573A1 (en) 2011-02-18 2012-02-14 Methods and systems for identifying content in a data stream by a client device

Publications (1)

Publication Number Publication Date
CN103562909A true CN103562909A (zh) 2014-02-05

Family

ID=46672918

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280019133.2A Pending CN103562909A (zh) 2011-02-18 2012-02-14 客户端设备识别数据流的内容的方法及系统

Country Status (6)

Country Link
EP (1) EP2676208A1 (zh)
KR (1) KR20140038374A (zh)
CN (1) CN103562909A (zh)
CA (1) CA2827514A1 (zh)
IN (1) IN2013MN01551A (zh)
WO (1) WO2012112573A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111183615A (zh) * 2017-08-10 2020-05-19 尼尔森(美国)有限公司 用于最小侵入性的媒体计量器的媒体装置检测方法和设备

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2504757B (en) 2012-08-09 2015-03-25 Nvidia Corp Reference clock calibration
US10366419B2 (en) 2012-11-27 2019-07-30 Roland Storti Enhanced digital media platform with user control of application data thereon
US10339936B2 (en) 2012-11-27 2019-07-02 Roland Storti Method, device and system of encoding a digital interactive response action in an analog broadcasting message
US9451048B2 (en) 2013-03-12 2016-09-20 Shazam Investments Ltd. Methods and systems for identifying information of a broadcast station and information of broadcasted content
US20190028766A1 (en) * 2017-07-18 2019-01-24 Audible Magic Corporation Media classification for media identification and licensing

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1592906A (zh) * 2000-07-31 2005-03-09 沙扎姆娱乐有限公司 用于在强噪声和失真下识别声音和音乐信号的系统和方法
CN101142591A (zh) * 2004-04-19 2008-03-12 兰德马克数字服务有限责任公司 内容采样和标识
US20090083281A1 (en) * 2007-08-22 2009-03-26 Amnon Sarig System and method for real time local music playback and remote server lyric timing synchronization utilizing social networks and wiki technology

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4450531A (en) 1982-09-10 1984-05-22 Ensco, Inc. Broadcast signal recognition system and method
US4843562A (en) 1987-06-24 1989-06-27 Broadcast Data Systems Limited Partnership Broadcast information classification system and method
US5437050A (en) 1992-11-09 1995-07-25 Lamb; Robert G. Method and apparatus for recognizing broadcast information using multi-frequency magnitude detection
US5918223A (en) 1996-07-22 1999-06-29 Muscle Fish Method and article of manufacture for content-based analysis, storage, retrieval, and segmentation of audio information
US7174293B2 (en) 1999-09-21 2007-02-06 Iceberg Industries Llc Audio identification system and method
KR100893671B1 (ko) 2001-02-12 2009-04-20 그레이스노트, 인크. 멀티미디어 콘텐트의 해시들의 생성 및 매칭
DK1504445T3 (da) 2002-04-25 2008-12-01 Landmark Digital Services Llc Robust og invariant lydmönster-matching
WO2005079499A2 (en) 2004-02-19 2005-09-01 Landmark Digital Services Llc Method and apparatus for identification of broadcast source
CN1845591A (zh) * 2005-04-06 2006-10-11 上海渐华科技发展有限公司 卡拉ok接收装置
TWI330795B (en) * 2006-11-17 2010-09-21 Via Tech Inc Playing systems and methods with integrated music, lyrics and song information
WO2010065673A2 (en) 2008-12-02 2010-06-10 Melodis Corporation System and method for identifying original music

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1592906A (zh) * 2000-07-31 2005-03-09 沙扎姆娱乐有限公司 用于在强噪声和失真下识别声音和音乐信号的系统和方法
CN101142591A (zh) * 2004-04-19 2008-03-12 兰德马克数字服务有限责任公司 内容采样和标识
US20090083281A1 (en) * 2007-08-22 2009-03-26 Amnon Sarig System and method for real time local music playback and remote server lyric timing synchronization utilizing social networks and wiki technology

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111183615A (zh) * 2017-08-10 2020-05-19 尼尔森(美国)有限公司 用于最小侵入性的媒体计量器的媒体装置检测方法和设备
CN111183615B (zh) * 2017-08-10 2022-01-18 尼尔森(美国)有限公司 检测呈现媒体的媒体装置的设备、方法、存储介质

Also Published As

Publication number Publication date
KR20140038374A (ko) 2014-03-28
EP2676208A1 (en) 2013-12-25
CA2827514A1 (en) 2012-08-23
IN2013MN01551A (zh) 2015-06-12
WO2012112573A1 (en) 2012-08-23

Similar Documents

Publication Publication Date Title
KR101578279B1 (ko) 데이터 스트림 내 콘텐트를 식별하는 방법 및 시스템
US20120191231A1 (en) Methods and Systems for Identifying Content in Data Stream by a Client Device
JP6060155B2 (ja) 受信データの比較を実行しその比較に基づいて後続サービスを提供する方法及びシステム
US9451048B2 (en) Methods and systems for identifying information of a broadcast station and information of broadcasted content
JP4945877B2 (ja) 高い雑音、歪み環境下でサウンド・楽音信号を認識するシステムおよび方法
JP5259212B2 (ja) 音楽連動型広告配信方法、装置およびシステム
WO2020093883A1 (zh) 获取视频片段的方法、装置、服务器和存储介质
CN102959544A (zh) 用于同步媒体的方法和系统
CN1636240A (zh) 利用音频内容标识来销售产品的系统
JP2007531903A (ja) ネットワークに接続された携帯デバイスにおける特徴抽出
JP2007531903A5 (zh)
CN103562909A (zh) 客户端设备识别数据流的内容的方法及系统
CN101361301A (zh) 检测广播媒体中的重复内容
CN108920585A (zh) 音乐推荐的方法及装置、计算机可读存储介质
CN113032616A (zh) 音频推荐的方法、装置、计算机设备和存储介质
JP2010086273A (ja) 楽曲検索装置、楽曲検索方法、および楽曲検索プログラム
US11830043B2 (en) Apparatus, system, and method for audio based browser cookies
KR102297362B1 (ko) 콘텐츠 재생 장치를 이용한 사용자 특성 기반의 광고 제공 장치 및 방법
JP2016153958A (ja) 情報処理方法、情報処理装置、及びプログラム

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20140205

WD01 Invention patent application deemed withdrawn after publication