用于搜索视频内容的方法、系统和介质与流程

文档序号:11160948阅读:420来源:国知局
用于搜索视频内容的方法、系统和介质与制造工艺

本申请要求2014年4月10日提交的美国申请第14/249,554号的权益,该申请以引用的方式全部并入本文。

技术领域

所公开的主题涉及用于搜索视频内容的方法、系统和介质。更具体地,所公开的主题涉及基于与视频内容相关联的音频内容搜索和呈现响应于搜索查询的视频内容。



背景技术:

常规视频搜索系统(例如,视频搜索引擎、视频托管服务等)允许用户基于与每个视频相关联的文本元数据(例如,标题、标签、描述等)来搜索响应于搜索查询的视频。例如,如果用户输入搜索查询“Laplace(拉普拉斯)”,那么常规视频搜索系统返回指向其元数据中包含有词“拉普拉斯”的视频的链接列表,诸如题为“拉普拉斯”的视频。

然而,这种常规视频搜索系统出于多种原因可能不会向用户提供令人满意的搜索体验。例如,常规搜索系统可能会通过使用不能代表视频的内容的文本元数据来搜索视频而返回不相关的搜索结果。在一些实例中,通过输入“拉普拉斯”作为搜索查询,用户可能想要搜索说到词“拉普拉斯”的视频内容,诸如包括有关拉普拉斯变换的讲课的视频剪辑。在这种示例中,基于视频(诸如,题为“拉普拉斯”的视频)的文本元数据生成的搜索结果可能与用户输入的搜索查询无关。

作为另一示例,当用户重新提交搜索查询时,常规视频搜索系统可能会返回响应于特定搜索查询的相同结果。即,用户可能必须连续不断地修改搜索查询并且将该修改过的搜索查询重新提交至视频搜索系统以查看不同的搜索结果。这对于用户来说可能是耗时和令人沮丧的过程,特别是当用户不知道可以通往用户正在寻找的视频内容的搜索项(search term)时。

因此,需要提供用于搜索视频内容的新机制。



技术实现要素:

提供了用于搜索视频内容的方法、系统和介质。根据所公开的主题的一些实施例,提供了一种用于搜索视频内容的系统,该系统包括:至少一个硬件处理器,该至少一个硬件处理器被配置为:接收包括至少一个搜索项的搜索查询;识别与该搜索查询匹配的多个视频片段,其中,该多个视频片段中的每个视频片段与包括搜索项的转录本(transcript)相关联;从多个视频片段中选择视频片段的第一集合;通过组合该视频片段的第一集合生成第一复合视频;以及使该第一复合视频得以呈现。

根据所公开的主题的一些实施例,提供了一种用于搜索视频内容的方法,该方法包括:接收包括至少一个搜索项的搜索查询;识别与该搜索查询匹配的多个视频片段,其中,该多个视频片段中的每个视频片段与包括搜索项的转录本相关联;从多个视频片段中选择视频片段的第一集合;通过组合该视频片段的第一集合生成第一复合视频;以及使该第一复合视频得以呈现。

根据所公开的主题的一些实施例,提供了一种包含计算机可执行指令的非暂时性计算机可读介质,该计算机可执行指令在由处理器执行时使得进程进行用于搜索视频内容的方法,该方法包括:接收包括至少一个搜索项的搜索查询;识别与该搜索查询匹配的多个视频片段,其中,该多个视频片段中的每个视频片段与包括搜索项的转录本相关联;从多个视频片段中选择视频片段的第一集合;通过组合该视频片段的第一集合生成第一复合视频;以及使该第一复合视频得以呈现。

根据所公开的主题的一些实施例,提供了一种用于搜索视频内容的系统,该系统包括:用于接收包括至少一个搜索项的搜索查询的装置;用于识别与搜索查询匹配的多个视频片段的装置,其中,该多个视频片段中的每个视频片段与包括搜索项的转录本相关联;用于从多个视频片段中选择视频片段的第一集合的装置;用于通过组合视频片段的第一集合生成第一复合视频的装置;以及用于使第一复合视频得以呈现的装置。

在一些实施例中,该系统进一步包括:用于接收用以生成更新的复合视频的请求的装置;用于从多个视频片段中选择视频片段的第二集合的装置;用于通过组合视频片段的第二集合生成第二复合视频的装置;以及用于使第二复合视频呈现在显示器上的装置。

在一些实施例中,该系统进一步包括:用于至少部分地基于搜索项来将搜索查询与多个关键字关联的装置;用于识别包括该多个关键字中的至少一个关键字的转录本的一部分的装置;用于识别与该转录本的部分相关联的第一时间戳的装置;用于识别与转录本相关联的视频的装置;以及用于至少部分地基于第一时间戳来识别视频的片段的装置。

在一些实施例中,该系统进一步包括:用于识别与转录本的部分相关联的第二时间戳的装置;以及用于至少部分地基于第二时间戳来识别视频的片段的装置,其中,第一时间戳与视频的片段的开始时间对应,并且其中,第二时间戳与视频的片段的结束时间对应。

在一些实施例中,视频的片段是与搜索查询匹配的多个视频片段中的一个视频片段。

在一些实施例中,该系统进一步包括:用于确定多个视频片段中的每个视频片段的匹配分值的装置;以及用于至少部分地基于与多个视频片段相关联的多个匹配分值来从该多个视频片段中选择视频片段的第一集合的装置。

在一些实施例中,该系统进一步包括用于基于伪随机函数选择视频片段的第一集合的装置。

附图说明

当结合以下附图考虑时,参照对所公开的主题的以下详细描述,可以更充分地理解所公开的主题的各种目的、特征和优点,其中,类似的附图标记表示类似的元素。

图1示出了根据所公开的主题的一些实施例的用于搜索视频内容的说明性系统的一般化示意图。

图2示出了可以根据所公开的主题的一些实施例使用的图1中的服务器和计算装置中的一个计算装置的详细示例。

图3示出了根据所公开的主题的一些实施例的用于加载客户端应用的用户界面的说明性示例。

图4示出了根据所公开的主题的一些实施例的用于提示用户输入针对视频内容的搜索查询的用户界面的说明性示例。

图5示出了根据所公开的主题的一些实施例的用于接收针对视频内容的搜索查询的用户界面的说明性示例。

图6示出了根据所公开的主题的一些实施例的用于生成响应于搜索查询的搜索结果的用户界面的说明性示例。

图7示出了根据所公开的主题的一些实施例的用于呈现响应于搜索查询的搜索结果的用户界面的说明性示例。

图8示出了根据所公开的主题的一些实施例的用于更新响应于搜索查询的搜索结果的用户界面的说明性示例。

图9示出了根据所公开的主题的一些实施例的用于共享响应于搜索查询的搜索结果的用户界面的说明性示例。

图10示出了根据所公开的主题的一些实施例的用于与用户的社交联系人共享响应于搜索查询的搜索结果的用户界面的说明性示例。

图11示出了根据所公开的主题的一些实施例的用于与一组用户共享响应于搜索查询的搜索结果的用户界面的说明性示例。

图12示出了根据所公开的主题的实施例的用于搜索视频内容的过程的说明性示例。

图13示出了根据所公开的主题的实施例的用于搜索视频内容的过程的说明性示例。

具体实施方式

在一些实施例中,提供了用于搜索视频内容的机制(该机制可以包括方法、系统和介质)。

这些机制可以用于各种应用。例如,该机制可以用于基于与视频内容相关联的音频内容搜索响应于文本搜索查询的视频内容。在更具体的示例中,响应于接收到搜索查询“矢量图像”,该机制可以访问数据库并且识别提到短语“矢量图像”的视频片段的集合。在另一更具体的示例中,该机制可以接收对一个或者多个视频(例如,包括有关图形的讲课的视频)的用户选择并且识别提到搜索查询或者与搜索查询相关联的关键字(例如,“矢量图像”)的视频的部分。

作为另一示例,这些机制可以用于按照包括与搜索查询匹配的多个视频片段的视频的形式呈现响应于针对视频内容的搜索查询的搜索结果。在更具体的示例中,在识别到与搜索查询匹配的视频片段的集合(例如,提到短语“矢量图像”的视频片段的集合)时,该机制可以将该视频片段的集合组合成单个视频,并且,在一些实施例中,可以自动回放该视频作为响应于搜索查询的搜索结果。

在一些实施例中,这些机制可以接收针对视频内容的搜索查询。例如,该机制可以在诸如移动电话、膝上型计算机、平板计算机、可穿戴式计算机、电视机等计算装置上启动客户端应用。该机制然后可以呈现允许用户使用小键盘、用户输入装置(例如,麦克风、键盘、遥控装置、方向键等)、和/或任何其它合适的输入机制来输入搜索查询的多个用户界面。

在一些实施例中,该机制可以在接收到搜索查询时将该搜索查询与一个或者多个关键字相关联。例如,该机制可以对搜索查询进行分析并且将该搜寻查询解析成多个搜索项。该机制然后可以将每个搜索项识别为与搜索查询相关联的关键字。另外地或者可替代地,该机制可以将搜索项的同义词和/或首字母缩略词、和/或与搜索项中的一个或者多个相关的任何其它合适的项识别为与搜索查询相关联的关键字。

在一些实施例中,该机制可以搜索与搜索查询匹配的视频片段。在一些实施例中,当与视频片段对应的转录本包含与搜索查询相关联的一个或者多个关键字时,可以将视频片段视为与搜索查询的匹配,并且因此将其视为匹配视频片段。在一些实施例中,该机制可以访问存储与视频内容相关联的转录本的数据库,并且可以识别包含与搜索查询相关联的一个或者多个关键字的转录本的部分。在一些实施例中,在对与搜索查询匹配的转录本的部分进行定位时,该机制可以识别与转录本的该部分相关联的一个或者多个时间戳,诸如指示在视频中说到特定词的转录本的部分的时间戳、指示开始或者结束呈现与转录本的部分对应的视频片段的时间戳等。该机制然后可以基于与转录本的部分相关联的时间戳来识别匹配视频片段。例如,该机制可以基于将转录本映射至视频的索引系统来识别和与搜索查询匹配的转录本对应的视频。该机制然后可以将由时间戳限定的视频的片段识别为匹配视频片段。

在一些实施例中,该机制可以在识别到与搜索查询匹配的视频片段的集合时选择匹配视频片段的子集。例如,该机制可以基于相关性、流行度、新近度、在搜索查询内的搜索项的排序、和/或任何其它合适的一个或者多个准则来选择匹配视频片段的子集。作为另一示例,该机制可以允许用户通过使用客户端应用呈现一个或者多个合适的用户界面来选择匹配视频片段的子集。

在一些实施例中,该机制可以通过组合匹配视频片段的子集来生成复合视频。例如,该机制可以通过将第一匹配视频片段的最后一帧与第二匹配视频片段的第一帧串接、在第一匹配视频片段的最后一帧与第二匹配视频片段的第一帧之间添加空白帧、和/或以任何其它合适的方式来组合第一匹配视频片段和第二匹配视频片段。

在一些实施例中,该机制可以将复合视频呈现给用户作为响应于搜索查询的搜索结果。例如,该机制可以在生成复合视频时使该复合视频自动播放。作为另一示例,该机制可以呈现代表复合视频的图像或者片断、和/或关于复合视频的任何其它合适的信息。该机制然后可以响应于接收到用以回放复合视频的请求(例如,使用用户输入装置对“播放”按钮的用户选择)而使复合视频得以呈现。

在一些实施例中,该机制可以向用户提供响应于搜索查询的更新的搜索结果,而不从用户接收相同的搜索查询。例如,响应于接收到对更新的搜索结果的用户请求,该机制可以选择更新的匹配视频片段的集合,并且通过组合该更新的匹配视频片段的集合来生成更新的复合视频。

本文结合图1至图13对用于搜索视频内容的这些和其它特征进行了描述。

转向图1,根据所公开的主题的一些实施例示出了用于搜索视频内容的系统的一般化示意图的说明性示例100。如图所示,系统100可以包括一个或者多个计算装置102、通信网络104、视频数据库106、一个或者多个服务器108、转录本数据库110、通信链路112、114、116、118、120、122和124、和/或任何其它合适的部件。

计算装置102可以是或者包括能够接收、处理、和/或传输搜索查询、接收和呈现响应于搜索查询的搜索结果(例如,复合视频)、与服务器108进行通信、和/或进行任何其它合适的功能的任何合适的装置。例如,计算装置102可以实施为移动电话、平板计算机、可穿戴式计算机、电视装置、机顶盒、数字媒体接收器、游戏机、个人计算机、膝上型计算机、个人数字助理(PDA)、家庭娱乐系统、任何其它合适的计算装置、或者其任何合适的组合。

通信网络104可以是任何合适的计算机网络或者这种网络的组合,包括:因特网、内联网、广域网(WAN)、局域网(LAN)、无线网络、Wi-Fi网络、WiMax网络、数字订户线(DSL)网络、帧中继网络、异步传输模式(ATM)网络、虚拟专用网络(VPN)等。

视频数据库106可以包括可以存储视频、与每个视频相关联的元数据(例如,视频的描述、视频的标题、与视频相关联的标签、视频的作者、和/或与视频相关联的任何其它合适的元数据)、和/或任何其它合适的视频数据的任何合适的装置。

服务器108可以包括可以接收搜索查询、处理搜索查询、基于搜索查询识别视频内容、基于搜索查询生成复合视频、和/或进行任何其它合适的功能的一个或者多个合适的装置。

转录本数据库110可以是和/或包括可以存储与视频内容(例如,存储在视频数据库106和/或任何其它合适的存储装置中的视频)相关联的转录本、与视频内容相关联的元数据、和/或任何其它合适的信息的任何合适的装置。

在一些实施例中,可以以任何合适的方式获得转录本。例如,可以基于与视频相关联的字幕内容(例如,与电视节目、电影等相关联的隐藏式字幕内容)获得与给定视频相关联的转录本。作为另一示例,可以通过转录与视频相关联的音频内容来获得与视频相关联的转录本。在更具体的示例中,可以通过从视频中提取音频内容、处理音频内容(例如,通过对音频内容进行分段、转码、过滤等)、使用合适的语音识别技术将处理后的音频内容转换成文本、和基于该文本生成转录本来生成转录本。

在一些实施例中,可以按照合适的方式将转录本与视频和/或与视频相关联的音频内容对准。例如,可以将在转录本中的每个词与指示在视频中说到该词的时间的时间戳相关联。作为另一示例,可以将转录本的部分与视频中与转录本的该部分对应的视频片段的一个或者多个时间戳相关联,诸如,指示开始或者结束呈现视频片段的时间戳、和/或与视频片段相关联的任何其它合适的时间戳。在一些实施例中,视频片段可以包括与一个或者多个语言表达(短语、句子等)、音频场景、视频场景、和/或视频的任何其它合适的部分对应的一个或者多个视频帧。

在一些实施例中,可以通过文本来索引存储在视频数据库106中的视频并且将其映射至它们的相关联的转录本。例如,反向索引和/或任何其它合适的数据结构可以用于存储从词(或者,短语、句子等)到与包含该词的转录本相关联的视频、与该词相关联的一个或者多个时间戳、可以识别该视频的一个或者多个视频标识符、和/或任何其它合适的数据的映射。

在更具体的示例中,内部视频数据库可以包括一个或者多个视频和每个视频的元数据,诸如,标题、视频所有者输入的描述、和可使用视频的许多格式和位置。在该示例中,可以针对变化(例如,添加或者删除)周期性地扫描内部视频数据库。与内部视频数据库相关联的工作流管理器可以协调波形转码器和转录客户端的动作,其中,波形转码器从一个或者多个视频提取音频信号并且对视频进行下采样。工作流管理器可以维持可以由转录客户端处理的转码视频的队列。转录客户端可以将音频信号提交至自动语音识别服务器,该自动语音识别服务器对音频进行分段,丢弃音乐和噪声,并且使用多通路解码策略进行转录。这可以提供时间对准的转录本和与转录本中的每个词相关联的置信度分值。可以将该信息存储在表达数据库中并且用作信息检索索引的基础。该索引允许在用户界面中的视频内进行搜索以及浏览。

在一些实施例中,可以分别通过通信链路112和114来将服务器108连接至视频数据库106和转录本数据库110。在一些实施例中,可以通过通信链路116来连接视频数据库106和转录本数据库110。可以分别通过通信链路118、120、122和124来将视频数据库106、服务器108、转录本数据库110、和计算装置102连接至通信网络104。通信链路112、114、116、118、120、122和124可以是和/或包括适用于在视频数据库106、服务器108、转录本数据库110和计算装置102之间传送数据的任何通信链路,诸如,网络链路、拨号链路、无线链路、硬连线链路、任何其它合适的通信链路、或者这种链路的任何合适的组合。计算装置102可以支持使用本文描述的技术,该技术可以允许使用该机制的特征。

在一些实施例中,可以将视频数据库106、服务器108、转录本数据库110、和通信网络104中的每一个实施为独立装置或者与系统100的其它部件集成。例如,在一些实施例中,可以将存储视频数据库110和转录本数据库110实施为一个系统。作为另一示例,在一些实施例中,可以将服务器108和视频数据库106和转录本数据库110中的一个或者多个实施为一个系统。

图2图示了根据所公开的主题的一些实施例的可以用于实施在图1中描绘的一个或者多个服务器108和其中一个计算装置102的硬件的示例200。参照图2,计算装置102可以包括可以互连的硬件处理器202、显示器204、输入装置206、和存储器208。在一些实施例中,存储器208可以包括用于存储用于控制硬件处理器202的计算机程序的存储装置(诸如,非传递的计算机可读介质)。

硬件处理器202可以使用计算机程序来在显示器204上呈现允许用户与客户端应用进行交互并且通过通信链路122发送和接收数据的内容和/或界面。还应该注意,可以从任何合适的源接收通过通信链路122或者任何其它通信链路接收到的数据。在一些实施例中,硬件处理器202可以使用例如发射机、接收器、发射机/接收器、收发机、或者任何其它合适的通信装置来通过通信链路122或者任何其它通信链路发送和接收数据。输入装置206可以是计算机键盘、鼠标、轨迹球、小键盘、遥控装置、手势识别系统、任何其它合适的输入装置、或者其任何合适的组合。另外地或者可替代地,输入装置206可以包括可以接收输入(例如,使用手指、触控笔等)的触摸屏显示器204。

服务器108可以包括可以互连的硬件处理器220、显示器222、输入装置224、和存储器226。在一些实施例中,存储器226可以包括用于存储通过通信链路118或者通过其它链路接收到的数据的存储装置,并且处理器220可以接收由例如计算装置102的一个或者多个用户传输的命令和值。存储装置可以进一步包括用于控制硬件处理器220的服务器程序。

可以将本文描述的用于搜索视频内容的机制在计算装置102和/或服务器108中实施为软件、固件、硬件、或者其任何合适的组合。

在一些实施例中,可以将服务器108实施为一个服务器或者可以将其分布为任何合适数量的服务器。例如,可以在各种位置中实施多个服务器108以增加应用的可靠性、功能、和/或服务器可以与计算装置102进行通信的速度。

在一些实施例中,客户端应用可以包括应用程序接口(未示出)、和/或可以驻留在计算装置102的存储器208和/或服务器108的存储器226中。另外地或者可替代地,可以将图形用户界面(“GUI”)分布至计算装置102,该计算装置102可以允许用户与驻留在例如服务器108处的客户端应用进行交互。

在一些实施例中,应用可以包括客户端侧软件、服务器侧软件、硬件、固件、或者其任何合适的组合。例如,应用可以包含使一个或者多个处理器执行内容生成应用的计算机程序。作为另一示例,应用可以包含用可由正在执行该应用的计算装置150和/或服务器220识别的编程语言编写的计算机程序(例如,用诸如Java、C、Objective-C、C++、C#、Javascript、Visual Basic、HTML、XML、ColdFusion的编程语言、任何其它合适的方法、或者其任何合适的组合编写的程序)。

在一些实施例中,应用可以包含一个或者多个网页或者网页部分(例如,经由任何合适的编码,诸如超文本标记语言(“HTML”)、动态超文本标记语言(“DHTML”)、可扩展标记语言(“XML”)、Java服务器页面(“JSP”)、活动服务器页面(“ASP”)、Cold Fusion、或者任何其它合适的方法)。

在一些实施例中,任何合适的计算机可读介质可以用于存储用于进行本文描述的过程的指令。例如,在一些实施例中,计算机可读介质可以是暂时性或者非暂时性的。例如,非暂时性计算机可读介质可以包括介质,诸如,磁性介质(诸如硬盘、软盘等)、光学介质(诸如压缩盘、数字视频盘,蓝光盘等)、半导体介质(诸如闪速存储器、电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)等)、在传输期间不是短暂的或者不具有永久性的任何合适的介质、和/或任何合适的有形介质。作为另一示例,暂时性计算机可读介质可以包括在网络上的、在导线、导体、光纤、电路、在传输期间是短暂的并且不具有永久性的任何合适的介质、和/或任何合适的无形介质中的信号。

在一些实施例中,提供了可以基于音频内容促进视频搜索的客户端应用。在一些实施例中,客户端应用可以是移动应用、Web浏览器、社交网络应用、视频回放应用、和/或可以接收搜索查询、处理搜索查询、接收响应于搜索查询的视频内容、以一个或者多个复合视频的形式呈现视频内容、和/或进行任何其它合适的功能的任何其它合适的应用。在一些实施例中,可以将客户端应用加载在计算装置上,诸如在上面结合图1和图2描述的计算装置102。

在一些实施例中,一旦将客户端应用加载在计算装置上,客户端应用可以呈现如在图3至图11中示出的多个用户界面以允许用户输入搜索查询、查看响应于该搜索查询的搜索结果、和/或与其他用户共享该搜索结果。

转向图3,在计算装置(例如,图1的计算装置102)上执行的客户端应用可以使用户界面300得以呈现以提示用户录入针对视频内容的搜索查询。如图所示,界面300可以包括输入字段310,在该输入字段310中,用户可以使用合适的用户输入装置(诸如图2的输入装置206)来输入搜索查询。

在一些实施例中,响应于接收到指示用户期望输入搜索查询的用户输入(例如,用户触摸或者点击图3的输入字段310、用户将指针悬停在字段310上等),客户端应用可以使图4的用户界面400得以呈现。如图所示,界面400可以包括输入字段410、键盘420、和/或任何其它合适的元素。在一些实施例中,客户端应用可以允许用户通过使用触控笔、用户的手指、手势、遥控器等选择键盘420的一个或者多个键来输入搜索查询。例如,如在图5中示出的,可以响应于用户通过使用键盘420在输入字段410中录入搜索查询来接收搜索查询“hello,how are you doing?(嗨,您好吗?)”。在一些实施例中,客户端应用可以通过诸如麦克风的音频输入装置来接收由用户发出的语音命令。在一些实施例中,客户端应用可以对搜索查询进行分析(例如,通过使用合适的语音识别技术将语音命令转换为文本)并且将搜索查询解析成一个或者多个搜索项(例如,词、短语等)。可以使用任何合适的技术来输入搜索查询,诸如通过将文本的一部分从文档复制到输入字段410中、通过将文本的一部分导入输入字段410中等。

在一些实施例中,响应于接收到针对视频内容的搜索查询(例如,通过在输入字段510中输入搜索查询并且选择图5的确认按钮530),客户端应用可以将搜索查询和/或与搜索查询有关的任何合适的信息传输至服务器,诸如图1的服务器108,该服务器108可以基于搜索查询来搜索视频内容。

在一些实施例中,当等待要从服务器传输的搜索结果时,客户端应用可以通知用户正响应于用户输入的搜索查询进行针对视频内容的搜索。例如,客户端应用可以使如在图6中示出的用户界面600得以呈现。如图所示,界面600可以包括指示正在处理搜索查询并且正响应于用户输入的搜索查询生成搜索结果的指示器610。

在一些实施例中,可以按照通过将与搜索查询匹配的多个视频片段进行组合而产生的复合视频的形式,来呈现响应于搜索查询的搜索结果。例如,响应于搜索查询“hello,how are you doing”的复合视频可以包括说到“hello,how are you doing”、“hello”和/或“how are you”的多个视频片段。在一些实施例中,可以通过服务器生成复合视频并且将其传输至客户端应用。可替代地或者另外地,在一些实施例中,可以通过客户端应用生成复合视频。例如,客户端应用可以检索视频或者视频片段并且在本地将它们拼接在一起以形成复合视频。

在一些实施例中,客户端应用可以使复合视频呈现在显示器(例如,如在上面结合图2描述的显示器204)上。例如,客户端应用可以自动开始回放在显示器上的视频作为响应于搜索查询的搜索结果。在更具体的示例中,如在图7中示出的,在一些实施例中,可以将复合视频呈现在用户界面700的回放区域710中。

作为另一示例,客户端应用可以响应于接收到用以回放复合视频的用户请求来使复合视频得以呈现。在更具体的示例中,客户端应用可以响应于接收到对界面700的“播放”按钮712的用户选择和/或指示回放复合视频的请求的任何其它合适的用户输入而在回放区域710中呈现复合视频。

在一些实施例中,客户端应用可以向用户提供更新的搜索结果而不从用户接收相同的搜索查询。例如,响应于接收到指示用以更新响应于搜索查询的搜索结果的请求的用户输入(例如,对图7的“刷新”按钮720的用户选择),客户端应用可以使得针对用户已经输入的搜索查询(例如,“hello,how are you doing”)生成更新的搜索结果。更具体地,例如,客户端应用可以向服务器传输对更新的搜索结果的请求。

在一些实施例中,当等待要从服务器传输的更新的搜索结果(例如,更新的复合视频)时,客户端应用可以通知用户正基于用户输入的搜索查询生成更新的搜索结果。例如,客户端应用可以使如在图8中示出的用户界面800得以呈现。如图所示,界面800可以包括关于用户输入的搜索查询的信息和指示正基于搜索查询生成更新的搜索结果的指示器810。

在一些实施例中,可以按照通过将与搜索查询匹配的多个视频片段进行组合而产生的更新的复合视频的形式,来呈现响应于搜索查询的更新的搜索结果。在一些实施例中,用于产生更新的复合视频的视频片段可以包含或者可以不包含用于产生已经呈现给用户的复合视频的一个或者多个视频片段。在一些实施例中,可以通过服务器(例如,图1的服务器108)来生成更新的复合视频并且将其传输至客户端应用。可替代地或者另外地,客户端应用可以检索视频或者视频片段并且在本地将它们组合在一起以形成更新的复合视频。

在一些实施例中,客户端应用可以自动开始回放在显示器上的更新的复合视频(例如,在如图7中示出的用户界面700的回放区域710中)。可替代地,客户端应用可以响应于接收到用以回放更新的复合视频的用户请求(例如,对界面700的“播放”按钮712的用户选择)使更新的复合视频得以呈现。

在一些实施例中,客户端应用可以提示用户浏览响应于搜索查询的多个复合视频并且选择要回放的复合视频。例如,客户端应用可以呈现与复合视频有关的信息(例如,使用一个或者多个合适的用户界面)。在一些实施例中,可以使用任何合适的内容项来呈现与复合视频有关的信息,所述内容项诸如图像、动画、文本片段、指向复合视频的链接(例如,URL)等。在一些实施例中,客户端应用可以允许用户滚动与复合视频对应的内容项(例如,文本片段、URL、缩略图像、动画等),并且然后可以响应于接收到对与复合视频对应的内容项的用户选择回放特定复合视频。

在一些实施例中,客户端应用可以允许用户使用合适的用户界面来与其他用户共享搜索结果(例如,复合视频)和/或与搜索结果有关的任何其它合适的信息,所述用户界面诸如分别在图9、图10、和图11中示出的用户界面900、1000和1100。

例如,应用可以允许用户使用一个或者多个合适的用户界面来经由社交网络服务、视频托管服务、和/或任何其它合适的平台发布搜索结果。在更具体的示例中,响应于接收到用以与其他用户共享搜索结果(例如,复合视频和/或与该复合视频有关的任何合适的信息)的请求(例如,对共享按钮730或者820的用户选择),客户端应用可以使如在图9示出的用户界面900得以呈现。如图所示,界面900可以包括图像910、文本字段920、一个或者多个共享选项930、联系人录入字段940、和/或任何其它合适的部件。在一些实施例中,图像910可以是缩略图、片断、和/或复合视频的任何其它合适的表示。在一些实施例中,客户端应用可以允许用户使用输入字段920来输入文本、语音消息、和/或可以结合复合视频共享的任何其它合适的内容。在一些实施例中,用户可以通过选择与平台对应的共享选项930以及确认按钮950来经由由客户端应用、社交网络服务、视频托管服务、电子邮件服务、和/或任何其它合适的平台提供的服务共享复合视频。

作为另一示例,客户端应用可以允许用户识别一个或者多个其他用户并且与该识别到的用户共享搜索结果。在更具体的示例中,客户端应用可以允许用户通过输入与其他用户有关的联系人信息(例如,使用图9的联系人录入字段940或者图1000的联系人录入字段1010)、从图11的用户列表1100选择一个或者多个用户、和/或使用任何其它合适的机制来识别经由合适的平台(例如,社交网络服务、电子邮件服务、视频托管服务等)连接至用户的一个或者多个其他用户。在一些实施例中,客户端应用可以响应于接收到用户确认(例如,对如分别在图9、图10、和图11中示出的确认按钮950、1020、和/或1120中的一个或者多个的用户选择)将搜索结果(例如,复合视频)、用户录入的消息、和/或任何其它合适的信息发送至识别到的用户。

转向图12,根据所公开的主题的一些实施例示出了用于搜索视频内容的过程的说明性示例1200。在一些实施例中,可以由系统100的一个或者多个合适的部件的硬件处理器来实施过程1200,所述部件诸如服务器108、计算装置102等。

如图所示,过程1200可以通过在1202中接收搜索查询开始。搜索查询可以包括任何合适数量的词、短语、句子、数字、和/或任何其它合适的搜索项。在一些实施例中,可以用一种或者多种不同的语言来组成搜索查询。

在一些实施例中,可以按照任何合适的方式来接收搜索查询。例如,可以通过从运行上面结合图3至图11描述的客户端应用的计算装置传输的一个或者多个请求消息(例如,超文本传输协议(HTTP)请求)来接收搜索查询。在一些实施例中,搜索查询可以与任何合适的用户输入对应。例如,搜索查询可以与用户使用诸如键盘、鼠标、遥控装置、手势识别系统等合适的用户输入装置输入的一个或者多个搜索项对应。在更具体的示例中,如在上面结合图3至图5描述的,可以使用由客户端应用呈现的多个用户界面来接收搜索查询。作为另一示例,可以经由用户通过音频输入装置(例如,麦克风)发出的语音命令来接收搜索查询。在更具体的示例中,可以接收“hello,how are you doing”的语音命令并且使用合适的语音识别技术将其转换成文本。

在一些实施例中,可以使用合适的自然语言处理技术和/或任何其它合适的技术来处理接收到的搜索查询。例如,可以使用合适的自然语言处理算法来将搜索查询解析成多个搜索项。另外地,在一些实施例中,可以基于搜索项来将搜索查询与情绪(例如,“开心”、“悲伤”、“中性”等)相关联。

接下来,在1204中,过程1200可以搜索与搜索查询匹配的视频片段。例如,过程1200可以访问存储与视频内容相关联的转录本的数据库并且识别与搜索查询匹配的转录本。过程1200然后可以基于识别到的转录本识别与搜索查询匹配的视频片段。在更具体的示例中,如下文结合图13描述的,可以通过搜索包含与搜索查询相关联的一个或者多个关键字的转录本的一部分、识别与该转录本的该部分相关联的一个或者多个时间戳、并且基于该时间戳识别与该转录本的该部分对应的视频的片段来识别与搜索查询匹配的视频片段。

在一些实施例中,过程1200可以接收对一个或者多个视频的用户选择,诸如发布在视频共享服务的频道上的一个或者多个视频、存储在存储装置中的视频等。过程1200然后可以在选择的视频内搜索与搜索查询匹配的视频片段。例如,响应于接收到对包括图形的讲课的视频的用户选择和搜索查询“矢量图像”,过程1200可以将提到“矢量图像”的视频的片段识别为匹配该搜索查询。

在一些实施例中,过程1200可以基于与搜索查询相关联的情绪来识别与搜索查询匹配的视频片段。例如,过程1200可以将与搜索查询相关联的情绪和与视频相关联的元数据相比较(例如,指示视频的类型的标签、与视频相关联的情绪等),并且确定视频是否和与搜索查询相关联的情绪匹配。

在1206中,过程1200可以选择与搜索查询匹配的多个视频片段。可以按照任何合适的方式进行该选择。例如,可以响应于用户选择来选择视频片段。在更具体的示例中,客户端应用可以通过使用一个或者多个合适的用户界面向用户呈现与搜索查询匹配的视频片段的列表和/或关于视频片段的任何合适的信息(例如,描述、标题、图像、视频剪辑等)来向用户提供选择一个或者多个匹配视频片段的机会。作为另一示例,可以从响应于搜索查询的多个视频片段随机或者伪随机地选择视频片段。

作为再一示例,过程1200可以计算在1204中识别的匹配视频片段中的每一个的匹配分值,并且然后可以基于该匹配分值来选择匹配视频片段的集合。在更具体的示例中,可以通过根据匹配分值对匹配视频片段进行排名并且选择与前N个最高匹配分值相关联的多个匹配视频片段来选择视频片段的子集。在另一更具体的示例中,可以通过将与匹配视频片段相关联的匹配分值与合适的阈值值相比较来选择匹配视频片段的子集。更具体地,例如,在一些实施例中,可以将视频片段的子集中的每一个视频片段与大于阈值值的匹配分值相关联。

在一些实施例中,可以基于任何合适的准则来计算匹配分值。例如,可以基于指示视频片段与搜索查询匹配的程度的相关性分值来计算与视频分段相关联的匹配分值。在更具体的示例中,可以将包括与搜索查询相关联的较多数量的搜索项和/或关键字的视频片段视为比包括较少数量的搜索项和/或关键字的视频片段更相关,并且因此可以向其分配较高相关性分值。在另一更具体的示例中,可以将包括与搜索查询相关联的搜索项的视频片段视为比包括源自搜索项的同义词和/或其它关键字的视频片段更相关。在再一更具体的示例中,在一些实施例中,可以向包括具有紧密接近度的关键字和/或搜索项的集合的视频片段分配较高排名分值。

作为另一示例,可以基于指示视频片段的流行度的流行度分值来计算与视频片段相关联的匹配分值。在一些实施例中,可以通过点进率、与视频片段相关联的web链接的数量、与视频片段相关联的评论的数量、和/或任何其它合适的信息来测定视频片段的流行度。

作为再一示例,可以基于与视频片段相关联的新近度分值来计算与视频片段相关联的匹配分值。在更具体的示例中,可以向最近发布和/或创建的视频片段分配较高匹配分值。

作为又一示例,与视频片段相关联的匹配分值可以是与视频片段相关联的相关性分值、流行度分值、新近度分值等的加权和、加权平均值、和/或任何其它合适的组合。

接下来,在1208中,过程1200可以基于在1206中选择的匹配视频片段的集合生成复合视频。例如,可以通过将视频片段的集合组合成视频剪辑来生成复合视频。在更具体的示例中,可以通过将第一匹配视频片段的最后一帧和第二匹配视频片段的第一帧串接、在第一匹配视频片段的最后一帧与第二匹配视频片段的第一帧之间添加空白帧、和/或以任何其它合适的方式来组合第一匹配视频片段与第二匹配视频片段。

在一些实施例中,可以基于在搜索查询内的搜索项的顺序来将响应于搜索查询的多个匹配视频片段组合成视频剪辑。例如,过程1200可以按照与匹配视频片段中的每一个对应的搜索项的顺序来对多个匹配视频片段进行排名。在更具体的示例中,针对搜索查询“hello,how are you”,可以向与搜索项“hello”对应的匹配视频片段分配比与搜索项“how are you”对应的匹配视频片段更高的排名。在一些实施例中,可以通过组合包含表达“hello”的第一视频片段和包含表达“how are you”的第二视频片段来生成响应于搜索查询“hello,how are you”的复合视频。

在1210中,过程1200可以使复合视频得以呈现给用户。例如,过程1200可以经由一个或者多个响应消息来将复合视频传输至运行客户端应用的计算装置。在一些实施例中,可以通过合适的通信协议来将响应消息传输至计算装置,所述通信协议诸如超文本传输协议(HTTP)、文件传输协议(FTP)、和/或任何其它通信协议。在一些实施例中,响应消息可以包括复合视频、可以用于呈现复合视频的数据(例如,与复合视频相关联的一个或者多个统一资源定位符(URL)、与基于其生成复合视频的匹配视频片段相关联的URL的集合、与视频片段相关联的呈现时间戳、超文本标记语言(HTML)文件、图像、脚本、样式表、音频文件、和/或可以用于呈现复合视频的任何其它合适的数据)、和/或任何其它合适的数据。

在一些实施例中,客户端应用可以响应于接收到响应消息在显示器(例如,耦合至图1的计算装置102的显示器)上自动呈现复合视频。例如,客户端应用可以使用与复合视频相关联的一个或者多个URL来获取复合视频或者复合视频的部分,并且使用合适的用户界面来使复合视频得以呈现(例如,在如图7示出的界面700的回放窗口710中)。

可替代地,客户端应用可以向用户呈现关于复合视频和/或包含在复合视频中的匹配视频片段的信息,诸如表示复合视频的缩略图、表示复合视频的片断、指向复合视频的链接或者统一资源定位符(URL)等。客户端应用然后可以响应于接收到用以呈现复合视频的用户请求(例如,使用合适的输入装置对“播放”按钮的用户选择、“播放”的语音命令等)将复合视频呈现给用户。

在1212中,过程1200可以确定用以生成响应于搜索查询的更新的搜索结果的请求是否已经到达。在一些实施例中,用以生成更新的搜索结果的请求可以与对如在上面结合图7描述的界面700的“刷新”按钮730的用户选择对应。

在一些实施例中,过程1200可以响应于接收到用以生成更新的搜索结果的请求而返回至1206。在一些实施例中,过程1200可以从在1204中识别的匹配视频片段选择更新的匹配视频片段的集合,并且然后可以基于该更新的匹配视频片段的集合生成更新的复合视频。在一些实施例中,更新的匹配视频片段的集合可以包含或者可以不包含被选择来用于生成复合视频的匹配视频片段的集合中的一个或者多个匹配视频片段。

在一些实施例中,过程1200可以响应于确定用以生成更新的复合视频的请求尚未到达而返回至1202。

转向图13,根据所公开的主题的一些实施例示出了用于搜索与搜索查询匹配的视频片段的过程的说明性示例1300。在一些实施例中,可以由系统100的一个或者多个合适的部件的硬件处理器来实施过程1200,诸如服务器108。

如图所示,过程1300可以通过在1302中接收搜索查询开始。例如,可以接收搜索查询并且将其解析成如在上面结合图12描述的一个或者多个搜索项。

在1304中,过程1300可以将搜索查询与一个或者多个关键字相关联。例如,可以将搜索查询中的每个搜索项识别为与该搜索查询相关联的关键字。在更具体的示例中,搜索查询“hello,how are you doing”可以与关键字“hello”、“how are you”、“how are you doing”等相关联。在另一更具体的示例中,搜索查询“a more perfect union(更完美的联合)”可以与关键字“perfect(完美)”、“union(联合)”、“perfect union(完美的联合)”等相关联。作为另一示例,过程1300可以包括同义词、和/或一个或者多个搜索项的首字母缩略词和/或与搜索项有关的任何其它合适的项。

在1306中,过程1300可以搜索与搜索查询匹配的转录本的一部分。例如,过程1300可以访问存储与视频集相关联的转录本集合数据库(例如,图1的转录本数据库110),并且识别与搜索查询匹配的转录本的一部分。作为另一示例,过程1300可以接收对一个或者多个视频(例如,在视频共享服务的频道上发布的视频的集合)的用户选择,并且识别和与搜索查询匹配的视频相关联的转录本的部分。

在一些实施例中,当转录本的部分包含与搜索查询相关联的一个或者多个关键字时,可以将转录本的该部分视为与搜索查询的匹配。例如,匹配搜索查询“hello,how are you doing”的转录本的部分可以包括一次或者多次出现的“hello”、“how are you”、“how are you doing”、“hello,how are you”、“hello,how are you doing”、“how”、“are”、“you”、和/或与搜索查询“hello,how are you doing”相关联的关键字的任何其它合适的组合。作为另一示例,匹配搜索查询“a more perfect union”的转录本的部分可以包括一次或者多次出现的“a more perfect union”、“perfect union”、“perfect our union”、和/或与搜索查询“a more perfect union”相关联的关键字的任何其它合适的组合。

接下来,在1308中,过程1300可以识别与转录本的部分相关联的一个或者多个时间戳。在一些实施例中,时间戳可以包括指示在视频中说到转录本的部分中的词的时间的时间戳、指示开始呈现与转录本的部分对应的视频片段的时间戳、指示结束呈现视频片段的时间戳、和/或与转录本的部分相关联的任何其它合适的时间戳。

在1310中,过程1300可以识别与转录本的部分相关联的视频。例如,过程1300可以访问通过转录本来索引视频集的索引系统(例如,如结合图1描述的音频索引系统)。过程1300然后可以通过将转录本映射至视频来识别与转录本相关联的视频。

在1312中,过程1300可以基于与转录本的部分相关联的时间戳来识别与搜索查询匹配的视频的片段。例如,过程1300可以识别分别与表示转录本的部分的开始时间的时间戳和表示转录本的部分的结束时间的时间戳对应的视频的第一帧和第二帧。过程1300然后可以将包括第一帧和第二帧的视频的片段识别为与转录本的部分对应的视频片段。在更具体的示例中,可以通过第一帧和第二帧来限定视频的片段的边界。在另一更具体的示例中,视频的片段可以包括与包括第一帧和第二帧的视频场景对应的视频帧的集合。

应该注意,可以按照不限于图中示出和描述的顺序或序列的任何顺序或者序列来执行或者进行图12至图13的流程图的上述步骤。同样,可以在适当或者并行情况下大体上同时执行或者进行图12至图13的流程图的上述步骤中的一些以减少延迟和处理时间。此外,应该注意,图12至图13的图仅作为示例提供。可以按照不同于表示的顺序来进行、同时进行、或者完全省略在这些图中示出的步骤中的至少一些。

在一些实施例中,任何合适的计算机可读介质可以用于存储用于进行本文描述的过程的指令。例如,在一些实施例中,计算机可读介质可以是暂时性或者非暂时性的。例如,非暂时性计算机可读介质可以包括诸如磁性介质(诸如硬盘、软盘等)、光学介质(诸如压缩盘、数字视频盘,蓝光盘等)、半导体介质(诸如闪速存储器、电可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)等)等介质、在传输期间不短暂或者不具有永久性的任何合适的介质、和/或任何合适的有形介质。作为另一示例,暂时性计算机可读介质可以包括在网络上的、在导线、导体、光纤、电路、在传输期间是短暂的并且不具有永久性的任何合适的介质、和/或任何合适的无形介质中的信号。

对本文描述的示例(以及措辞为“诸如”、“例如”、“包括”等子句)的提供不应该被解释为将所要求的主题限制为具体示例;相反,示例仅旨在说明许多可能方面中的一些。

因此,提供了用于搜索视频内容的方法、系统和介质。

虽然已经在前面的说明性实施例中对所公开的主题进行了描述和说明,但是应该理解,仅通过示例的方式提出本公开,并且可以在不脱离仅由所附的权利要求书限制的所公开的主题的精神和范围的情况下对所公开的主题的实施例的细节作出许多变化。可以按照各种方式来组合和重新设置所公开的实施例的特征。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1