CN103257997A - 为视频及其他媒体内容启用复制和粘贴功能 - Google Patents

为视频及其他媒体内容启用复制和粘贴功能 Download PDF

Info

Publication number
CN103257997A
CN103257997A CN2013100712444A CN201310071244A CN103257997A CN 103257997 A CN103257997 A CN 103257997A CN 2013100712444 A CN2013100712444 A CN 2013100712444A CN 201310071244 A CN201310071244 A CN 201310071244A CN 103257997 A CN103257997 A CN 103257997A
Authority
CN
China
Prior art keywords
text
video
covering
computer
metadata
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
CN2013100712444A
Other languages
English (en)
Inventor
J·E·卡思
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
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
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN103257997A publication Critical patent/CN103257997A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440236Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by media transcoding, e.g. video is transformed into a slideshow of still pictures, audio is converted into text
    • 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/47End-user applications
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47205End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for manipulating displayed content, e.g. interacting with MPEG-4 objects, editing locally
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/4143Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a Personal Computer [PC]

Abstract

本文描述了为视频和其他媒体内容启用复制和粘贴功能的概念和技术。根据本文描述的概念和技术,可以将与媒体内容相关的文本显示在界面中,经由该界面可以将所述文本选择、导出、复制、和/或粘贴到应用程序中。在一些实施例中,所述媒体内容包括净荷和元数据。所述元数据可以定义将被显示的文本。所述元数据也可以定义所述文本的时序信息、样式信息、定位信息、动作、和/或其他方面。可以生成以及呈现或存储包括所述净荷和所述覆盖的输出。

Description

为视频及其他媒体内容启用复制和粘贴功能
技术领域
本发明涉及为视频及其他媒体内容启用复制和粘贴功能。
背景技术
一些媒体文件,例如培训视频、有声书等,包括或者提及可能对用户有用的信息。例如,用于修理设备的培训视频可以包括用户应该采取来修理该设备的各个步骤。为了修理该设备,用户会观看该视频,并且在每一步骤处暂停该视频。视频可以涉及修理期间将被采取的各个步骤或操作。然而,在视频期间,这些实际的步骤可能会显示或者不显示。
此外,即使文本是在音频或视频文件中被读出或显示出的,也没有便利的方式以可用的形式获得该文本。具体地,用户会将文本转录成文本文件等,但是会需要暂停或停止媒体文件以给出完成这些操作的时间。获得包括于媒体内容中的文本的这些及其他方法可能是分散注意力的,和/或难以完成。此外,媒体内容中显示或听到的文本可能是或可能不是完整的,或者媒体内容中未显示或者未包括的其他文本可能是相关的。
就是关于这些和其他的考虑,呈现在此所做出的本公开。
发明内容
本文描述了为视频及其他媒体内容启用复制和粘贴的概念和技术。根据本文公开的概念和技术,可以在覆盖(overlay)或其他界面中显示与媒体内容相关联的文本,并且用户可以选择、导出、复制和/或粘贴该文本。在一些实施例中,媒体内容包括具有净荷和元数据的视频。元数据可以定义将被显示的文本,以及时序、位置、样式和/或与文本相关联的其他变量。可以将覆盖引擎配置为接收媒体内容,分析元数据(如果存在的话),并且生成覆盖。
在一些实施例中,覆盖引擎分析元数据并且确定文本和/或时序信息。覆盖引擎生成包括媒体内容的净荷以及由覆盖引擎生成的覆盖的输出。由于可以由多种类型计算设备提供覆盖引擎的功能,因此,可以由覆盖引擎来主存(host)输出,或者在覆盖引擎处显示输出。
依照一个方面,将覆盖引擎配置为执行回放应用以回放视频。视频由覆盖引擎从本地或远程存储设备处获得。覆盖引擎确定视频是否包括与将同该视频一起显示的文本有关的元数据。如果不存在元数据,则覆盖引擎可以确定视频中是否显示文本,并且使用各种字符识别过程来检测文本。如果存在元数据,则覆盖引擎可以分析元数据,以确定将被显示的文本的内容、时序和/或其他方面。
依照另一个方面,将覆盖引擎配置为生成覆盖。该覆盖可被生成为在回放期间与视频一起显示或覆盖在视频上的层。依照各种实现方式,该覆盖可以按文本框的形式来呈现,并且视频内容可以被缩放或者保持其原始尺寸。将覆盖引擎配置为生成包括净荷或其他视频内容以及覆盖的输出。可以在覆盖引擎处显示该输出,或者为其他设备存储或主存该输出。
应该意识到,上述主题可被实施为计算机控制的设备、计算机进程、计算系统、或者诸如计算机可读存储介质等制品。通过阅读随后的具体实施方式以及审阅相关附图,这些及各种其他特征将是显而易见的。
提供本发明内容以简化的方式介绍一些概念,这些概念将在以下的具体实施方式中做进一步地描述。本发明内容不旨在确定所要求保护的主题的关键特征或必要特征,也不旨在被用来限定所要求保护的主题的范围。此外,所要求保护的主题不限于那些本公开任意部分所记载的解决任意或所有缺点的实现方式。
附图说明
图1是示出用于本文公开的各种实施例的示例性操作环境的系统图;
图2是依照示例性实施例的示出一种用于为视频启用复制和粘贴功能的方法的各方面的流程图。
图3A-3E是依照各种实施例的示出用于为视频启用复制和粘贴功能的示例性用户界面的各方面的用户界面图。
图4是示出用于能够实现本文呈现的实施例的各方面的计算系统的示例性计算机硬件和软件架构的计算机架构图。
图5是示出能够实现本文呈现的实施例的各方面的分布式计算环境的示图。
图6是示出能够实现本文呈现的实施例的各方面的计算设备架构的计算机架构图。
具体实施方式
以下详细的说明将针对用于为视频及其他媒体内容启用复制和粘贴功能的概念和技术。依照本文描述的概念和技术,可以在覆盖,诸如文本框、文本窗口、和/或其他界面中,显示与视频或其他媒体内容相关联的文本。从所呈现的界面中,用户可以选择、导出、复制和/或粘贴文本。另外,显示的文本可以包括各种动作,诸如打印选项、超链接、和/或可在该界面内采用的其他动作。
在一些实施例中,媒体内容包括视频文件、音频文件、或具有净荷的其他内容。媒体内容还可以包括定义将被显示的文本及时序、位置、样式、动作和/或与文本相关联的其他变量的元数据。诸如覆盖引擎等计算设备可以被配置为接收媒体内容,分析元数据(如果存在的话),以及生成覆盖。依照一些实现方式,覆盖引擎分析元数据,并且确定文本和/或时序信息。覆盖引擎生成包括媒体内容净荷的输出,以及覆盖引擎生成的覆盖。由于覆盖引擎的功能可以由各种类型的计算设备来提供,所以可以由覆盖引擎主存输出,或者在覆盖引擎处显示该输出。
虽然在结合计算机系统上的操作系统和应用程序的执行来执行的程序模块的一般上下文中介绍了本文描述的主题,但是本领域的技术人员将认识到其他实现可以与其他类型的程序模块结合执行。通常,程序模块包括例程、程序、组件、数据结构、和执行特定任务或者实现特定抽象数据类型的其他类型的结构。此外,本领域技术人员将理解到可以用其他计算机系统配置来实现本文描述的主题,包括手持设备、多处理器系统、基于微处理器或者可编程的消费电子产品、小型计算机、大型计算机,等等。
在接下来的详细描述中,参考了构成本文一部分并且在其中以说明的方式示出了具体的实施例或示例的附图。现在参考附图,在附图中贯穿于所述若干附图相同的数字表示相同的元素,将介绍用于为视频启用复制和粘贴功能的计算系统、计算机可读存储介质、以及计算机实现的方法的各方面。
现在参考图1,将描述用于本文所介绍的各实施例的一个操作环境100的方面。图1所示的操作环境100包括覆盖引擎102。在一些实施例中,覆盖引擎102在通信网络(“网络”)104上操作或者与通信网络(“网络”)104通信,但这不是必须的情形。根据各实施例,由个人计算机(“PC”)提供覆盖引擎102的功能,例如台式、平板、或者膝上型计算机系统。在其他实施例中,由其他类型的计算系统提供覆盖引擎102的功能,包括但不限于:一个或多个服务器计算机、手持计算机、上网本计算机、嵌入式计算机系统、个人数字助理、移动电话、智能手机、或者其他计算设备。因此,虽然本文描述了由例如PC等用户计算设备提供覆盖引擎102的功能,但是应当理解的是这种实施例是说明性的,并且不应当以任何方式解释成限制。
根据各实施例,将覆盖引擎102配置为执行操作系统106和一个或多个应用程序,例如回放应用108、覆盖生成器110、和/或其他应用程序。操作系统106是控制覆盖引擎102的操作的计算机程序。应用程序是被配置为在操作系统上执行以提供各种功能的可执行程序。具体而言,回放应用108是被配置为在观看视频112期间,提供访问、查看、和/或控制各回放选项的界面的可执行程序。虽然相对于视频112描述了本文公开的概念和技术,但应当理解的是本文公开的各实施例也可以被用于为其他媒体内容,诸如动画、幻灯片放映、图像、音乐、及其组合等等启用复制和粘贴功能。
根据各实现,回放应用108的功能由来自位于华盛顿雷德蒙德的微软公司的媒体回放应用的WINDOWS MEDIA PLAYER家族的成员、来自位于加利福尼亚库比蒂诺的苹果公司的媒体回放应用的QUICKTIME家族的成员、来自位于华盛顿西雅图的RealNetworks公司的媒体回放应用的REALPLAYER家族的成员,等等所提供。也可以由web浏览器、独立应用,或者用于播放和/或观看各种格式的媒体文件的其他程序来提供回放应用108的功能,所述各种格式的媒体文件包括但不限于:格式化为来自位于加利福尼亚圣何塞的Adobe系统公司的SHOCKWAVE或者FLASH文件格式的文件、格式化为HTML5<video>元素的文件、其它格式等等。由于可以由各种各样的媒体回放应用来提供回放应用108的功能,应当理解的是上述列表不是穷举,而是仅仅阐明了可以提供回放应用108的功能的应用程序的一些所构想的示例。如此,上述示例是说明性的,并且不应当以任何方式解释成限制。
根据各实施例,将覆盖引擎102配置为接收或存储视频112。在一些实施例中,将视频112存储在覆盖引擎102处的存储器或者其它数据存储设备中。在一些实施例中,例如图1所示的实施例,可以从作为网络104的一部分来操作的和/或与网络104通信的视频源114获得视频112。视频源114可以是网络硬盘驱动器、在网络104上操作或者与其通信的服务器计算机、虚拟存储资源、和/或其它存储组件。可以在覆盖引擎102处接收和/或存储视频112,并且可以由回放应用108导入或者访问视频112以用于回放、编辑、和/或其它目的。
根据各实施例,视频112包括净荷116和元数据118。净荷116可以与视频112的视频内容相对应。因此,例如,净荷116可以包括多个图像。在一些实施例中,净荷116也可以包括例如音轨等音频数据。由于视频112可以与其他类型的媒体相对应,应当理解的是其它类型的数据可以作为净荷116而被包含在视频112中。
元数据118可以包括描述视频112的各种数据,以及描述将与本文描述的视频112一起显示的文本的各种数据。如此,元数据118可以包括可与媒体文件相关联的传统类型的元数据,例如,标题、编解码信息等等。元数据118也可以包括涉及所述文本的各种类型的信息。具体而言,如图1所示,元数据118可以包括但不限于:文本内容信息、样式信息、时序信息、定位信息、动作信息、和/或其它信息。
文本内容信息可以包括描述将与视频112一起显示的文本的数据。该文本内容信息可以包括任何字母、数字和/或其它字符。例如,视频创作者可以创建视频112,它旨在解释将在视频112中解释的脚本或代码段。该视频创作者可以使文本内容信息包含在包括样本代码、脚本等等的元数据118中。如此,正如将在本文中进一步详细解释的,取代于尝试将该文本转录到文本文件等等中,观看者可以复制和粘贴该样本代码或脚本。类似地,该文本内容信息可以包括汇编指令、修复指令、处方、技术说明、传记信息、源信息、和/或视频创作者希望在视频112观看期间对观看者可用的任何其他信息。应当理解的是可以在特定的视频112中显示多于一个的文本实例,和/或可以多于一次地显示单个文本实例。如此,该文本内容信息可以包括描述一个或多个文本实例的数据。
样式信息可以包括涉及该文本的各种样式信息。例如,该样式信息可以包括涉及文本字体、大小、颜色等等的数据。该样式信息也可以包括描述文本格式的数据,并且因此可以包括,例如换行符、制表符等等,以及涉及该文本的其他格式信息。因为该样式信息可以包括任何类型的样式信息,应当理解的是这些实施例是说明性的,并且不应当以任何方式解释成限制。
时序信息可以包括描述在视频112回放期间要在何时显示该文本的数据。因此,视频创作者可以指定视频回放期间显示该文本的特定时刻、该文本显示的持续时间、隐藏该文本的时刻、和/或其它时序信息。如上所述,视频112可以包括在视频112回放期间显示的一个以上文本实例,以及可以被显示多次的单个文本实例。如此,该时序信息可以为每个文本实例指定一个或多个时刻和/或持续时间,在该一个或多个时刻上和/或持续时间内将显示该文本的实例。
定位信息可以包括描述要在相对于该视频的何处显示该文本的数据。在一些实施例中,正如以下将更加详细地进行描述的,可以将覆盖引擎102配置为生成用于显示该文本与视频112的净荷116的输出120。在一些实施例中,可以将该文本显示为覆盖图像或层(“覆盖”)122,其可被显示在视频内容的一部分的顶部或者在显示屏幕上的其他位置。正如本文所用的,将关于覆盖122的术语“覆盖”用于指用来允许用户选择、复制、和/或粘贴该文本的方式来显示文本的窗口、区域或者显示屏幕的其它区域。
因此,在一些实施例中,将覆盖122显示在文本显示窗口或者屏幕显示的其它区域中,其中该屏幕显示的其它区域可以与显示视频内容的屏幕显示的区域分开。在又一实施例中,可以缩放视频内容,并且覆盖122可以被显示在与该视频内容相关的一部分显示屏幕中。以下将在图3B-3C中示出和描述这个实施例的一个示例。如此,定位信息可以包括指示要在何处以及如何显示该文本的数据。由于可以由该定位信息定义任何位置,应当理解的是上述示例是说明性的,并且不应当以任何方式解释成限制。
动作信息可以包括定义同该文本一起被包含的各种动作或者功能的数据。在一些实施例中,例如,该动作信息包括当被用户选择时使得与该用户相关联的计算设备去访问或者导航到其它位置、文件、或者其它资源的超链接或者其他形式的参考信息。该动作信息也可以包括用于生成优惠券、访问其他信息、在日历或通讯簿中创建事件或者联系人、下载文件、发起电话呼叫、发起聊天会话等等的嵌入式功能,例如脚本、应用等等。因此,例如该动作信息可以包括将所显示的文本输出到打印机或其它写设备的嵌入的“打印”命令。由于各种其它动作是被考虑并且是可能的,应当理解的是这些实施例是说明性的,并且不应当以任何方式解释成限制。
其它信息可以包括但不限于:标题、编解码信息、以及可以被包含在元数据118中的其他数据。如此,元数据118可以包括传统的视频元数据和/或标题,以及定义和描述将与视频112的视频内容或净荷116一起显示的文本的各种类型的信息。覆盖引擎102可以接收视频112、分析视频112以确定是否包含了元数据118。因为可以将元数据118包含在视频112中,并且元数据118可以包含或不包含文本信息,所以覆盖引擎102可以分析元数据118以确定是否包含了文本信息。如果元数据118中包含了文本信息,则覆盖引擎102的覆盖生成器110可以分析元数据118并且格式化该文本以用于与视频内容一起显示。
具体而言,如本文所述,可以将覆盖生成器110配置为分析元数据118以格式化该文本和输出120。可以从对元数据118的上述描述中理解的是,在一些实施例中,覆盖生成器110可以基于元数据118,确定文本内容、该文本的样式、该文本的时序、该文本的位置、与该文本相关的动作、和/或涉及该视频和/或该文本的其他信息。根据各实现,将覆盖生成器110配置为生成用于与例如视频112的净荷116等视频内容一起显示的一个或多个覆盖122。
可以将覆盖122包含在输出120中。如上所述,文本可以包括文本的一个以上实例,并且因此输出120可以包括一个以上覆盖122,在视频112的显示期间,可以在不同的时刻由观看者对一个以上覆盖122进行相对于净荷116的显示和/或隐藏。因此,例如,第一覆盖122可以包括将与视频内容一起在第一时刻和第一持续时间内显示的第一文本实例,以及第二覆盖122可以包括将与视频内容一起在第二时刻和第二持续时间内显示的第二文本实例。应当理解的是覆盖122可以包括文本的多个实例和/或时序、定位、样式、动作和/或其它信息,并且因而,单个覆盖122可以被包含在输出120中。
根据各实施例,覆盖引擎102获得视频112。可以将视频112存储在覆盖引擎102处,和/或从远程视频源114接收视频112。该视频可以包括净荷116和描述将在视频112的回放期间与视频内容一起显示的文本的元数据118。覆盖引擎102可以分析视频112以确定是否将显示文本,并且如果是,则生成用于在回放期间显示的覆盖122。可以在回放期间由例如回放应用108等媒体回放程序将覆盖122与视频112的净荷116一同进行显示。
覆盖引擎102生成输出120。在一些实施例中,由用户设备提供覆盖引擎102的功能,并因此输出120可以在覆盖引擎102处显示。在其它实施例中,由服务器计算机或者配置为生成用于提供给其他实体的输出120的其它设备来提供覆盖引擎102的功能。如此,可以将输出120存储到服务器、数据库、或者由用户访问或者用于其他目的的数据存储设备。
在输出120的回放期间,可以与视频112的净荷116一起显示覆盖122。可将覆盖122提供为文本窗口、文本区域、或允许选择在覆盖122中提供的文本的其他格式化区域。如此,观看者可以选择覆盖122中的文本。因此,观看者可以将该文本进行复制和/或将其粘贴到其他应用程序中,例如,文字处理程序、电子邮件应用、或其他软件。如上所述,该文本也可以包括嵌入的功能,诸如打印选项等等,从而使用户能够复制、粘贴、打印、保存覆盖122中的文本和/或以其他方式与覆盖122中的文本交互。以下将参考图24更加详细地说明和描述覆盖122的生成和显示,以及对包含在覆盖122中的文本的选择、复制和粘贴。
图1示出了一个覆盖引擎102、一个网络104、以及一个视频源114。然而应当理解的是操作环境100的一些实现包括多个覆盖引擎102、多个网络104、以及没有或多个视频源114。因此,所说明的实施例应当被理解为是示范性的,并且不应当以任何方式解释成限制。
现在转到图2,将根据本发明的说明性实施例,详细描述用于为视频启用复制和粘贴功能的方法200的各方面。应当理解的是本文所公开的方法200的操作不必需以任何特定的顺序来呈现,并且以替代顺序来执行一些或者全部操作是可能且被考虑的。为了易于描述和说明,按所示次序来呈现各操作。可以添加、省略和/或同时执行操作,而不脱离所附权利要求书的范围。
还应当理解,所示方法200可以在任何时候结束并且不必完整地执行。方法200的某些或全部操作,和/或基本上等价的操作,可以通过执行如本文所定义的计算机存储介质上所包括的计算机可读指令来执行。如在说明书和权利要求书中使用的术语“计算机可读指令”及其变型,在本文是用来广泛地包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等等。计算机可读指令可以在各种系统配置上实现,包括单处理器或多处理器系统、小型计算机、大型计算机、个人计算机、手持式计算设备、基于微处理器的可编程消费电子产品、其组合等等。
因此,应该理解,本文所述的逻辑操作被实现为:(1)一系列计算机实现的动作或运行于计算系统上的程序模块;和/或(2)计算系统内的互连的机器逻辑电路或电路模块。取决于计算系统的性能及其他要求,该实现是设计问题。因此,此处描述的逻辑操作被不同地称为状态、操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可以用软件、固件、专用数字逻辑、及其任何组合来实现。
为了说明和描述本公开的概念的目的,将方法200描述为由覆盖引擎102经由如回放应用108和/或覆盖生成器110等一个或多个应用程序的执行所执行的。应当理解的是这些实施例是说明性的,并且不应当以任何方式将其视为限制。具体而言,作为覆盖引擎102的补充或替换的其他设备可以通过执行作为回放应用108和/或覆盖生成器110的补充或替换的各应用程序来提供本文所描述的功能。
方法200在操作202开始,其中由覆盖引擎102获取例如视频112等媒体内容。如上所释,本文描述的概念和技术的各实现可以提供用于各类型的媒体文件的覆盖122,该各类型的媒体文件包括但不限于:视频文件、动画文件、幻灯片放映文件、图像文件、音频文件、其他媒体文件等等。参考一实施例描述方法200,为了清楚起见,在该实施例中视频112对应于视频文件。按照本文公开的各实施例,应当理解的是这个实施例是说明性的,并且不应当以任何方式解释成限制。
根据各实现,从与覆盖引擎102相关的存储设备或者组件获得视频112。在其他的实施例中,将视频112存储在远程存储位置,例如本文所描述的视频源114中,并且由覆盖引擎102经由与视频源114的通信来获取视频112。如此,应当理解的是可以经由直接连接,经由一个或多个网络,和/或经由其他节点、设备、和/或设备组件,从任何设备获取视频112。同样,正如上面参考图1所详细解释的,视频112可以包括与视频112的视频内容相对应的净荷116。在一些实施例中,视频112也可以包括上述的用于定义将与净荷116一起显示的文本的元数据118。
方法200从操作202进行到操作204,其中覆盖引擎102确定视频112是否包括例如元数据118等元数据。虽然各媒体文件可以包括元数据,元数据118包括用于将与视频112一起显示的文本的文本信息。因此,在操作204中,覆盖引擎102可以确定视频112是否包括用于定义将与视频112一起显示的文本的元数据118,。如上所释,覆盖引擎102可以通过分析视频112的内容和/或检测元数据118被包含的标志或指示符来标识元数据118。由于考虑了确定视频112包括元数据118的其他方法,应当理解的是操作204可以包括检测元数据118的存在的各种方法。
在操作204中,如果覆盖引擎102确定元数据118存在于在操作202获得的视频112中,方法200进行到操作206。在操作206,覆盖引擎102分析元数据118。覆盖引擎102可以搜索元数据118以标识涉及格式化该文本的各类型和/或种类的信息。该信息可以包括但不限于:在图1中描述的关于元数据118的各类信息。如此,覆盖引擎102可以搜索用于定义文本内容、样式信息、时序信息、定位信息、动作信息、和/或其他信息的变量、标签、设置等等。在一些实施例中,元数据118至少包括文本内容信息。在另一实施例中,假设其用于描述方法200,元数据118至少包括文本内容信息和本文所描述的时序信息。由于可以包括和/或省略其他信息,应当理解这个实施例是说明性的。
返回到操作204,如果覆盖引擎102确定元数据118不存在于在操作202获得的视频112中,方法200进行到操作208,其中覆盖引擎102确定视频112中是否显示了文本。如此,将覆盖引擎102的一些实施例配置为包括在不使用元数据118的情况下标识视频112中的文本的功能。在一些实施例中,例如,可以将覆盖引擎102配置为使用字符识别和/或其他过程来分析视频112以确定是否显示了文本。在其他实施例中,将覆盖引擎102配置为响应于检测到从视频112提取文本的命令,响应于检测视频112的回放的暂停,或响应于其他命令,来提供操作208的功能。因此,根据各实现,可以自动地和/或按需地提供操作208的功能。以下将参考图3B描述显示覆盖122和/或引起操作208的功能的示例UI控件。由于可以将覆盖引擎102配置为以其他方式检测视频112中的文本,应当理解的是上述实施例是说明性的,并且不应当以任何方式解释成限制。
在操作208中,如果覆盖引擎102确定视频112中没有显示文本和/或如果覆盖引擎102在没有检测到用于从视频112中提取文本的输入的情况下结束了视频112的回放,则方法200可以结束。在操作208中,如果覆盖引擎102确定视频112中显示了文本和/或如果接收到了用于提取文本的输入,则方法200可以进行到操作210,其中覆盖引擎102可以检测视频112中的文本。根据各实施例,使用例如光学字符识别(“OCR”)或者其他文本检测功能等字符识别来检测该文本。因此,覆盖引擎102可以经由对元数据118的分析来检测视频112中的文本(如果元数据118被包含在视频112中的话),或者通过使用字符识别或者其他文本提取过程来从视频112中提取文本。
方法200从操作210进行到操作212。方法200也可以从操作210进行到212。在操作212,覆盖引擎102确定将被显示的文本的内容。如果视频112包括元数据118,则覆盖引擎102可以基于在操作206中的对元数据118的分析来确定文本内容,其中覆盖引擎102可以标识文本信息并在操作212中确定将被显示的文本的内容。如果视频112不包括元数据118,则覆盖引擎102可以在操作210中检测文本,并且在操作212中确定在操作210中检测到的文本的内容。如上所述,在操作212中,覆盖引擎102可以确定包含在元数据118中的一个或多个文本实例。
方法200从操作212进行到操作214,其中覆盖引擎102确定在操作212中确定的文本内容的时序。如果视频112包括元数据118,则覆盖引擎102可以通过在操作206中对元数据118的分析期间标识时序信息,来确定文本的时序。如果视频112不包括元数据118,则覆盖引擎102可以基于文本在视频112中被显示的时刻和/或接收到提取文本的命令的时刻来确定时序。可以由用户或者程序设置或选项来定义其他时序参数,例如文本显示的持续时间、其后要将文本隐藏的持续时间,等等。
如上所述,在一些实施例中,元数据118包括时序信息和多个文本实例。如此,操作214可以包括覆盖引擎102根据在操作214中确定的一个或多个时序信息实例,格式化在操作212中确定的一个或多个文本实例。如此,操作212-214的一些实施例包括格式化将在视频112回放期间的多个时刻被显示的多个文本实例。
方法200从操作214进行到216,其中覆盖引擎102生成文本显示,例如文本窗口或者其他文本显示,例如本文所描述的覆盖122。在一些实施例中,依照用户、软件、或者视频创作者的设置或选项来格式化覆盖122。因此,在各实施例中,将覆盖122呈现为文本框或者窗口、覆盖层、或者屏幕显示的用于呈现和/或支持与该文本的交互的另一区域。
根据各实施例,可以缩放视频的视频内容,并且将覆盖122显示在用于显示该视频的屏幕显示区域。因此,例如,如果视频112可以包括格式化为720?80像素的视频内容以及将与该视频一起呈现的文本信息。可以将覆盖122格式化为用于720?80像素显示的在该视频内容的上面的层,和/或可以缩放该视频内容,例如变为120?0像素的尺寸,并且可以将该文本格式化以填充最初专用于该视频内容的720?80像素之中的剩余或部分空间。以下参考图3C说明和描述覆盖122的示例,其中缩放视频内容并与覆盖122一起呈现。按照上述实施例,其中不缩放视频,可以理解的是这个实施例是说明性的,并且不应当以任何方式解释成限制。
方法200从操作216进行到操作218,其中覆盖引擎102呈现例如输出120等输出。如上参考图1所释的,输出120可以包括对应于净荷116的视频内容。输出120也可以包括文本,其可以被格式化为覆盖122并且与视频内容一起呈现。以下将参考图3A-3D更加详细地说明和描述呈现输出120的示例。
方法200从操作218进行到操作220。如果在操作208中,覆盖引擎102确定视频112中没有显示文本,或者如果视频112的回放在没有接收到从视频中提取文本的命令的情况下结束,则方法200也可以从操作208进行到操作220。方法200可以在操作220结束。
现在转向图3A,将描述UI示图,其示出了一些实施例中为视频启用复制和粘贴的UI的各方面。具体而言,图3A示出了由覆盖引擎102生成的用于呈现视频112或者其它媒体的屏幕显示300A。如此,图3A中示出的屏幕显示300A可由回放应用108或者web浏览器或其他应用程序内的媒体回放应用插件来生成。也可以由覆盖生成器110生成屏幕显示300A,并因此可以与上面参考图1-2描述的输出120相对应。应当理解的是图3A示出的UI示图是对一个所构想的实施例的说明,并且因此不应当以任何方式解释成限制。
在所示实施例中,将屏幕显示300A配置为呈现用于视频112回放的界面。在所示实施例中,在web浏览器中观看视频112。正如所示,web浏览器正在显示视频窗口302。视频窗口302包括UI控件304,当被选择时,UI控件304引起对视频112的显示。应当理解的是附加和/或替换的回放控件可以被显示在视频窗口302中或者靠近视频窗口302,并且UI控件304是说明性的。在图3A所示的实施例中,覆盖引擎102已经呈现了输出120。由于在所示实施例中,视频112的回放还未开始,净荷116或者其它视频内容在没有覆盖122的情况下被显示,或者将覆盖122从观看中隐藏直到回放开始。在所示实施例中,将覆盖122从观看中隐藏但是将其作为图3A所示的输出120的一部分而包含。应当理解的是这个实施例是说明性的,并且不应当以任何方式解释成限制。
现在参考图3B,将详细描述UI示图,其示出了一些实施例中为视频启用复制和粘贴的UI的附加方面。在图3B中,覆盖引擎102已经接收了播放视频112的命令,并且响应于该命令,已经开始回放视频112。例如,覆盖引擎102可以响应于接收到对图3A所示的UI控件304的选择,来生成屏幕显示300B。在图3B所示的实施例中,将输出120再次表示为在没有覆盖122的情况下和/或在仍然从观看中隐藏覆盖122的情况下进行显示。在一些实施例中,如果在视频中还未检测到文本和/或如果视频的回放尚未到达该视频中的显示该文本的时间点,可以由覆盖引擎102显示所示出的屏幕显示300B或者类似的屏幕显示。例如,时序信息可以指定一分三十五秒的显示时间,并且视频112的回放被示为处于一分三十四秒时。如此,图3B示出了没有覆盖122的视频112。应当理解的是这个实施例是说明性的,并且不应当以任何方式解释成限制。
如图3B所示,本文公开的概念和技术的一些实施例包括呈现用于开启或关闭与覆盖引擎102相关联的功能的UI控件310。如上面参考图1-2所详细解释的,UI控件310也可以被用于使得覆盖引擎102从视频112中提取文本。可选择UI控件310来从视频中提取文本和/或在文本框或者其它形式的覆盖122中呈现或隐藏与视频112相关的文本。为了说明和描述本文公开的概念和技术,图3B示出了对UI控件310的选择,例如,构想了由用户操纵鼠标指针312、通过其他输入机制。响应于该输入,覆盖引擎102可以呈现覆盖122和/或开启与覆盖引擎102相关联的功能,正如将在下面参考图3C-3E更加详细地进行说明和描述的。
现在参考图3C,将详细描述UI示图,其示出了在一些实施例中为视频112启用复制和粘贴的UI的附加方面。图3C示出了由覆盖引擎102生成的用于提供本文所描述的覆盖122的屏幕显示300C。图3C示出了在其中缩放与视频112相关的视频内容,以在视频112的视频内容或净荷116的原始尺寸之内创建用于覆盖122显示的空间的实施例。如上所释,以及正如图3D所示出的,可以在其它显示空间中创建覆盖122。同样,如上所释,可以将覆盖122叠加或者层叠在所显示的视频内容上,如果需要的话。如此,所示出的实施例是说明性的,并且不应当以任何方式解释成限制。
在各实施例中,将屏幕显示300C配置为提供用于观看净荷116和用于与覆盖122进行交互的界面。在所示出的屏幕显示300C中,与视频112相关联的视频内容被示为以视频内容的缩放版本显示于缩放视频窗口320中。缩放视频窗口320可以包括用于控制视频112的回放和/或用于控制覆盖引擎102的功能的各回放控件322。在一些实施例中,将回放控件322显示在屏幕显示300C的别处。如此,所示出的实施例应当被理解为是说明性的,并且不应当以任何方式解释成限制。
在所示出的实施例中,将覆盖122显示为包含在屏幕显示300C中的文本窗口324。文本窗口324包括用于显示与视频112相关联的文本326的显示空间。如上所释,可由元数据118或其它信息来定义文本326的内容、文本326的样式和/或格式、文本326的定位和/或覆盖122的类型和位置、和/或覆盖122的显示时序。如上所释,文本窗口324或者其他形式的覆盖122可以支持用户的交互以允许观看者选择和/或复制文本326。另外的,尽管未在图3C中示出,文本326可以包括可由观看者选择以执行不同动作的动作和/或链接,例如导航到资源、打印文本326、保存文本326、导出文本326,和/或其它操作。
现在转到图3D,将详细描述UI示图,其示出了在一些实施例中为视频112启用复制和粘贴的UI的附加方面。图3D示出了由覆盖引擎102生成的用于提供本文所描述的覆盖122的另一个实施例的屏幕显示300D。具体而言,图3D示出了在其中将与视频112相关的视频内容未被缩放,并且覆盖122作为文本窗口324被显示在屏幕显示300D的别处。应当理解的是文本窗口324在屏幕显示300D的相对位置是说明性的,并且不应当以任何方式解释成限制。具体而言,文本窗口324可以显示在屏幕显示300D的任何位置上。
如上所释,以及如图3D所示出的,可以选择显示在文本窗口324之内的文本326。虽然图3C所示的文本窗口324并未示出文本326被选中,但应当理解的是可以从各种形式的覆盖122中选择文本326,该各种形式的覆盖122包括但不限于:文本窗口324和/或文本窗口324。观看者也可以将文本326导出、保存、打印、和/或以其他方式进行交互,如上所释。
参考图3E,将详细描述UI示图,其示出了在一些实施例中为视频112启用复制和粘贴的UI的附加方面。具体而言,图3E示出了将从文本窗口324复制的文本326粘贴到应用窗口340。因此,所粘贴的本文342可以包括指示为在屏幕显示300D中被选择的文本。在所示实施例中,文本326已经作为粘贴文本342而被粘贴到应用窗口340中的文字处理文档中了。正如上面所详细解释的,可以对文本326采取其它操作并且这个实施例因此应当被理解为是说明性的。如此,可以理解的是覆盖引擎102可以呈现覆盖122或者其他机制,由此与视频112相关的文本和/或在视频112中显示的文本可以被复制和粘贴,以及服从于其他操作。
图4示出了用于能够执行本文描述的用于为视频启用复制和粘贴功能的软件组件的设备的计算机架构400。因此,图4所示的计算机架构400示出了用于服务器计算机、移动电话、PDA、智能手机、台式计算机、上网本计算机、平板计算机、和/或膝上型计算机的架构。可以利用计算机架构400来执行本文所示的软件组件的任何方面。
图4所示的计算机体系结构400包括中央处理单元402(“CPU”)、包括随机存取存储器404(“RAM”)和只读存储器(“ROM”)406在内的系统存储器408、以及将存储器404耦合至CPU402的系统总线410。基本输入/输出系统被存储在ROM408中,该系统包含帮助诸如在启动期间在计算机架构400中的元件之间传送信息的基本例程。计算机架构400还包括用于存储操作系统106、回放应用108、覆盖生成器110、以及输出120的大容量存储设备412。尽管未在图4中示出,但大容量存储设备412还可被配置成在需要时存储视频112和视频112和/或输出120的各组成。
大容量存储设备412通过连接至总线410的大容量存储控制器(未示出)连接到CPU402。大容量存储设备412及其相关联的计算机可读介质为计算机架构400提供非易失性存储。虽然对此处包含的计算机可读介质的描述引用了诸如硬盘或CD-ROM驱动器之类的大容量存储设备,但是本领域的技术人员应该明白,计算机可读介质可以是可由计算机体系结构400访问的任何可用计算机存储介质或通信介质。
通信介质包括诸如载波或其它传输机制等已调制数据信号中的计算机可读指令、数据结构、程序模块或其它数据,且包含任何传递介质。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被更改或设定的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。上述的任意组合也应包括在计算机可读介质的范围之内。
作为示例而非限制,计算机存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。例如,计算机介质包括但不限于,RAM、ROM、EPROM、EEPROM、闪存或其他固态存储器技术、CD-ROM、数字多功能盘(“DVD”)、HD-DVD、蓝光(BLU-RAY)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备、或能用于存储所需信息且可以由计算机架构400访问的任何其他介质。为了权利要求书的目的,短语“计算机存储介质”及其变型不包括波、信号和/或其他瞬态和/或无形通信介质本身。
根据各实施例,计算机架构400可以使用通过诸如网络104之类的网络到远程计算机的逻辑连接来在联网环境中操作。计算机架构400可以通过连接至总线410的网络接口单元414来连接到网络104。应当明白,网络接口单元414还可以被用来连接到其它类型的网络和远程计算机系统,例如,视频源114。计算机架构400还可以包括用于接收和处理来自多个其他设备的输入的输入/输出控制器416,这些设备包括键盘、鼠标或者电子指示笔(未在图4中示出)。类似地,输入/输出控制器416可以向显示屏、打印机或其他类型的输出设备(也未在图4中示出)提供输出。
应当理解,本文所描述的软件组件在被加载到CPU402中并被执行时可以将CPU402和总体计算机架构400从通用计算系统变换成为被定制为促进本文提出的功能的专用计算系统。CPU402可从任何数目的晶体管或其它分立电路元件中构造,这些元件可以独立地或集体地呈现任何数目的状态。更具体而言,CPU402可以响应于包含在本文所公开的软件模块中的可执行指令而作为有限状态机来操作。这些计算机可执行指令可以通过指定CPU402如何在各状态之间转移来变换CPU402,由此变换了构成CPU402的晶体管或其它分立硬件元件。
对本文所提出的软件模块的编码也可变换本文所提出的计算机可读介质的物理结构。在本说明书的不同实现中,物理结构的具体转换可取决于各种因素。这样的因素的示例可以包括,但不仅限于:用于实现计算机可读介质的技术、计算机可读介质被表征为主存储器还是辅存储器等等。例如,如果计算机可读介质被实现为基于半导体的存储器,则本文所公开的软件可以通过变换半导体存储器的物理状态而在计算机可读介质上编码。例如,软件可以变换构成半导体存储器的晶体管、电容器或其它分立电路元件的状态。软件还可变换这些组件的物理状态以在其上存储数据。
作为另一示例,本文所公开的计算机可读介质可以使用磁或光技术来实现。在这些实现中,本文所提出的软件可以在磁或光介质中编码了软件时变换所述磁或光介质的物理状态。这些转换可包括更改给定磁性介质内的特定位置的磁性特征。这些变换还可以包括改变给定光学介质内的特定位置的物理特征或特性,以改变这些位置的光学特性。在没有偏离本说明书的范围和精神的情况下,物理介质的其他转换也是可以的,前面提供的示例只是为了便于此讨论。
鉴于以上内容,应当理解,在计算机架构400中发生许多类型的物理变换以便存储并执行本文所提出的软件组件。还应当理解,计算机架构400可以包括其它类型的计算设备,包括:手持式计算机、嵌入式计算机系统、个人数字助理、以及本领域技术人员已知的其它类型的计算设备。还可以构想的是,计算机架构400可以不包括图4所示的全部组件,可以包括未在图4中明确示出的其它组件,或者可利用完全不同于图4所示的架构。
图5示出了能够执行本文描述的用于为视频启用复制和粘贴功能的软件组件的说明性分布式计算环境500。因而,图5所示的分布式计算环境500可被用来提供本文相对于覆盖引擎102和/或其他设备描述的功能。分布式计算环境500可用于执行本文所呈现的软件组件的任何方面。
根据各种实现,分布式计算环境500包括在网络504上操作、与该网络通信、或者作为该网络的一部分的计算环境502。网络504还可包括各种接入网络。根据各种实现,网络504的功能可以由图1和4所示的网络104提供。一个或多个客户机设备506A-506N(在下文中统称和/或通称为“客户机506”)可经由网络504和/或其他连接(在图5中未示出)与计算环境502通信。在所示的实施例中,客户机506包括:诸如膝上型计算机、台式计算机、或其他计算设备之类的计算设备506A;板式或平板计算设备(“平板计算设备”)506B;诸如移动电话、智能电话、或其他移动计算设备之类的移动计算设备506C;服务器计算机506D;和/或其他设备506N。应当理解,任意数量的客户机506可与计算环境502通信。在本文中参考图4和6示出并描述客户机506的两个示例计算体系结构。应当理解,所示客户机506以及本文中示出和描述的计算体系结构是说明性的,并且不应被解释为以任何方式进行限制。
在所示的实施例中,计算环境502包括应用服务器508、数据存储510、以及一个或多个网络接口512。根据各种实现,应用服务器508的功能可由作为网络504一部分执行或者与该网络通信的一个或多个服务器计算机提供。应用服务器508可主存各种服务、虚拟机、门户、和/或其他资源。在所示的实施例中,应用服务器508主存一个或多个虚拟机514以供主存应用或其他功能。根据各实现,虚拟机514主存用于提供本文描述的为视频启用复制和粘贴的功能的一个或多个应用和/或软件模块。应当理解,本实施例是说明性的,并且不应被解释为以任何方式进行限制。应用服务器508还主存或提供对一个或多个web门户、链接页面、网站、和/或其他信息(“web门户”)516的访问。
根据各种实现,应用服务器508还包括一个或多个邮箱服务518、以及一个或多个消息收发服务520。邮箱服务518可包括电子邮件(“email”)服务。邮箱服务518还可包括各种个人信息管理(“PIM”)服务,包括但不限于日历服务、联系人管理服务、协作服务、和/或其他服务。消息收发服务520可包括但不限于即时消息收发服务、聊天服务、论坛服务、和/或其他通信服务。
应用服务器508还可包括一个或多个社交网络服务522。社交网络服务522可包括各种社交网络服务,包括但不限于用于共享或张贴状态更新、即时消息、链接、照片、视频、和/或其他信息的服务,用于评论或显示对文章、产品、博客、或其他资源的兴趣的服务,和/或其他服务。在一些实施例中,社交网络服务522可包括脸谱(FACEBOOK)社交网络服务、LINKEDIN专业人士网络服务、MYSPACE社交网络服务、FOURSQUARE地理网络服务、YAMMER办公同事网络服务等,或者可由这些服务提供。在其他实施例中,社交网络服务522可由其他服务、站点、和/或可明确或可不明确地称为社交网络供应商的供应商提供。例如,一些网站允许用户在各种活动和/或情境(诸如阅读已发表的文章、评论商品或服务、发表、协作、游戏等)期间经由电子邮件、聊天服务、和/或其他手段彼此交互。这些服务的示例包括但不限于来自美国华盛顿州雷蒙德市微软公司的WINDOWS LIVE服务和XBOX LIVE服务。其他服务也是可能的且是可构想的。
社交网络服务522还可包括评论、博客、和/或微博服务。这种服务的示例包括但不限于YELP评论服务、KUDZU查看服务、OFFICETALK企业微博服务、TWITTER消息服务、GOOGLE BUZZ服务、和/或其他服务。应当理解,以上服务列表并非穷尽性的,并且为了简洁起见在本文中未提及多种附加和/或替换社交网络服务522。由此,以上实施例是说明性的,并且不应被解释为以任何方式进行限制。
如图5所示,应用服务器508还可主存其他服务、应用、门户、和/或其他资源(“其他资源”)524。其他资源524可包括但不限于覆盖引擎102提供的服务。由此,应当理解,计算环境502可提供本文中所公开的用于通过各种邮箱、消息收发、社交网络、和/或其他服务或资源来为视频启用复制和粘贴功能的概念和技术的集成。例如,本文描述的概念和技术可被用来允许用户使用社交网络共享视频112并与社交网络成员启用复制和粘贴功能。这只是一个示例,并且不应当被解释为以任何方式构成限制。
如以上所提及的,计算环境502可包括数据存储510。根据各种实现,数据存储510的功能由在网络504上操作的或者与该网络通信的一个或多个数据库提供。数据存储510的功能也可由被配置成主存用于计算环境502的数据的一个或多个服务器计算机提供。数据存储510可以包括、主存或提供一个或多个实际或虚拟数据存储526A-526N(下文统称和/或一般地称为“数据存储526”)。数据存储526被配置成主存由应用服务器508使用或创建的数据和/或其他数据。虽然在图5中未示出,但如果需要,数据存储526还可主存或储存回放应用108、覆盖生成器110、视频112、和/或诸如输出120等其他数据。
计算环境502可与网绍接口512通信或由该网络接口访问。网络接口512可包括各种类型的网络硬件和软件,以支持包括但不限于客户机506和应用服务器508的两个或更多个计算设备之间的通信。应当理解,网络接口单元512还可用于连接到其他类型的网络和计算机系统。
应当理解,本文中所描述的分布式计算环境500可向本文中所描述的软件元件的任何方面提供可被配置成执行本文中所公开的软件组件的任何方面的任意数量的虚拟计算资源和/或其他分布式计算功能。根据本文中所公开的概念和技术的各种实现,分布式计算环境500向客户机506提供本文中所描述的软件功能作为服务。应当理解,客户机506可包括实际或虚拟机,包括但不限于服务器计算机、web服务器、个人计算机、移动计算设备、智能电话、和/或其他设备。这样,本文公开的概念和技术的多个实施例使被配置成访问分布式计算环境500的任何设备以使用本文中所述的用于为视频启用复制和粘贴功能的功能。
现在转向图6,示出了根据一个实施例的能够执行本文描述的用于为视频启用复制和粘贴功能的各软件组件的计算设备的说明性计算设备体系结构600。计算设备体系结构600可适用于部分地由于形状因子、无线连接、和/或电池供电操作而便于移动计算的计算设备。在一些实施例中,计算设备包括但不限于移动电话、平板设备、板状设备、便携式视频游戏设备等。此外,计算设备体系结构600可用于图6所示的客户机606中的任一个。此外,计算设备体系结构600的多个方面可适用于传统的台式计算机、便携式计算机(例如,膝上型计算机、笔记本计算机、超便携计算机、以及上网本计算机)、服务器计算机、以及诸如参考图4所描述的其他计算机系统。例如,本文中在以下所公开的单点触摸和多点触摸方面可应用于利用触摸屏或一些其他启用触摸的设备(诸如启用触摸的跟踪板或者启用触摸的鼠标)的台式计算机。
图6所示的计算设备体系结构600包括处理器602、存储器组件604、网络连接组件606、传感器组件608、输入/输出组件610、以及功率组件612。在所示的实施例中,处理器602与存储器组件604、网络连接组件606、传感器组件608、输入/输出(I/O)组件610、以及电源组件612通信。虽然在图6所示的单独的组件之间未示出连接,但是这些组件可交互以实现设备功能。在一些实施例中,这些组件被安排成经由一条或多条总线(未示出)通信。
处理器602包括中央处理单元(“CPU”),该CPU被配置成处理数据、执行一个或多个应用程序的计算机可执行指令、并且与计算设备体系结构1400的其他组件通信以执行本文中所描述的各种功能。处理器602可用于执行本文中所描述的软件组件的多个方面,特别是至少部分地利用启用触摸的输入的那些方面。
在一些实施例中,处理器602包括被配置成加速由CPU执行的操作的图形处理单元(“GPU”),包括但不限于通过执行通用科学和工程计算应用以及图形密集的计算应用(诸如高分辨率视频(例如620P、1080P以及更高)、视频游戏、三维(3D)建模应用)等等而执行的操作。在一些实施例中,处理器602被配置成与分立的GPU(未示出)通信。在任一情况下,CPU和GPU可根据共同处理CPU/GPU计算模型来配置,其中应用的顺序部分在CPU上执行而计算密集部分由GPU加速。
在一些实施例中,处理器602连同在下文中所描述的其他组件中的一个或多个为片上系统(“SoC”)或者包括在该SoC中。例如,Soc可包括处理器602、GPU、网络连接组件606中的一个或多个、以及传感器组件608中的一个或多个。在一些实施例中,可部分地利用层叠封装(“PoP”)集成电路封装技术来制造处理器602。此外,处理器602可以是单核或多核处理器。
处理器602可根据可从英国剑桥市ARM HOLDINGS许可购得的ARM体系结构来创建。替换地,处理器602可根据诸如可从美国加利福尼亚州芒廷维尤市英特尔公司购得的x86体系结构以及其他体系结构来创建。在一些实施例中,处理器602是可从美国加利福尼亚州圣地亚哥市高通公司购得的SNAPDRAGON SoC、可从美国加利福尼亚州圣巴巴拉市的NVIDIA购得的TEGRASoC、可从韩国首尔市三星公司购得的HUMMINGBIRD SoC、可从美国德克萨斯州达拉斯市德州仪器公司购得的开放式多媒体应用平台(“OMAP”)SoC、以上SoC中的任一个的定制版、或者专有SoC。
存储器组件604包括随机存取存储器(“RAM”)614、只读存储器(“ROM”)616、集成存储器(“集成存储”)618、以及可移动存储存储器(“可移动存储”)620。在一些实施例中,RAM614或其一部分、ROM616或其一部分、和/或RAM614和ROM616的某一组合可集成在处理器602中。在一些实施例中,ROM616被配置成存储固件、操作系统或其一部分(例如,操作系统内核)、和/或从集成存储618或可移动存储620加载操作系统内核的引导装入器(bootloader)。
集成存储618可包括固态存储器、硬盘、或者固态存储器和硬盘的组合。集成存储618可焊接或以其他方式连接到逻辑板,该逻辑板还可连接有处理器602以及本文中所描述的其他组件。由此,集成存储618集成在计算设备中。集成存储618被配置成存储操作系统或其多个部分、应用程序、数据、以及本文中所描述的其他软件组件。
可移动存储620可包括固态存储器、硬盘、或者固态存储器和硬盘的组合。在一些实施例中,提供可移动存储620来代替集成存储618。在其他实施例中,提供可移动存储620作为附加的任选存储。在一些实施例中,可移动存储620在逻辑上与集成存储618组合,以使全部可用的存储变得可用且示出给用户作为集成存储618和可移动存储620的总组合容量。
可移动存储620被配置成插入通过其插入和紧固可移动存储620以便于连接的可移动存储存储器槽(未示出)或其他机构,通过该连接可移动存储620可与诸如处理器602之类的计算设备其他组件通信。可移动存储620可以具体化为各种存储器卡格式,包括但不限于PC卡、CompactFlash卡、存储器棒、安全数字(“SD”)、小型SD(miniSD)、微型SD(microSD)、通用集成电路卡(“UICC”)(例如,订户身份模块(“SIM”)或通用SIM(“USIM”))、专用格式等。
可以理解,存储器组件604的一个或多个可存储操作系统。根据各个实施例,操作系统包括但不限于来自SYMBIAN有限公司的SYMBIAN OS、来自美国华盛顿州雷蒙德市微软公司的WINDOWS MOBILE OS、来自微软公司的WINDOWS PHONE OS、来自微软公司的WINDOWS、来自美国加利福尼亚州帕洛阿尔托市惠普(Hewlett-Packard)公司的PALM WEBOS、来自加拿大安大略省沃特卢市的运动研究有限公司(ResearchINMotion Limited)的BLACKBERRY OS、来自美国加利福尼亚州库珀蒂诺市苹果公司的IOS、以及来自美国加利福尼亚州芒廷维尤市谷歌公司的ANDROID OS。可构想其他操作系统。
网络连接组件606包括无线广域网组件(“WWAN组件”)622、无线局域网组件(“WLAN组件”)624、以及无线个域网组件(“WPAN组件”)626。网络连接组件606便于与网络628的往返通信,该网络可以是WWAN、WLAN、或WPAN。虽然示出单个网络628,但是网络连接组件606可便于与多个网络的同时通信。例如,网络连接组件606可便于经由WWAN、WLAN、或WPAN中的一个或多个与多个网络的同时通信。在一些实施例中,网络628由网络104、504中的一个或多个提供。在一些实施例中,网络628包括网络104、504。在又一些实施例中,网络628提供对网络104、504的接入。
网络628可以是WWAN,诸如利用一种或多种移动电信技术经由WWAN组件622向利用计算设备体系结构600的计算设备提供语音和/或数据服务的移动电信网络。移动电信技术可包括但不限于全球移动通信系统(“GSM”)、码分多址(“CDMA”)系统、CDMA2000、通用移动电信系统(“UMTS”)、长期演进(“LTE”)、以及微波接入全球互通(“WiMax”)。此外,网络628可利用各种信道接入方法(它们可被或可不被上述标准使用),这些信道接入方法包括但不限于时分多址(“TDMA”)、频分多址(“FDMA”)、CDMA、宽带CDMA(“W-CDMA”)、正交频分多路复用(“OFDM”)、空分多址(“SDMA”)等。可使用通用分组无线电业务(“GPRS”)、全球演进的增强型数据速率(“EDGE”)、包括高速下行链路分组接入(“HSDPA”)、增强型上行链路(“EUL”)或者称为高速上行链路分组接入(“HSUPA”)的高速分组接入(“HSPA”)协议系列、演进HSPA(“HSPA+”)、LTE、以及各种其他当前和未来的无线数据接入标准来提供数据通信。网络628可被配置成通过以上技术的任意组合提供语音和/或数据通信。网络628可被配置成调适成根据未来的生成技术提供语音和/或数据通信。
在一些实施例中,WWAN组件622被配置成提供到网络628的双模、多模连接。例如,WWAN组件622可被配置成提供到网络628的连接,其中网络628经由GSM和UMTS技术、或者经由技术的一些其他组合提供服务。替换地,多个WWAN组件622可用于执行这种功能和/或提供附加功能以支持其他非兼容技术(即,无法被单个WWAN组件支持)。WWAN组件622可便于与多个网络(例如,UMTS网络和LTE网络)的类似连接。
网络628可以是根据一个或多个电气和电子工程师学会(“IEEE”)802.11标准(诸如IEEE802.11a、802.11b、802.11g、802.11n、和/或未来的802.11标准(在此被称为WI-FI))而操作的WLAN。还可构想802.11标准草案。在一些实施例中,利用一个或多个无线WI-FI接入点来实现WLAN。在一些实施例中,用作WI-FI热点的一个或多个无线WI-FI接入点是与WWAN连接的另一计算设备。WLAN组件624被配置成经由WI-FI接入点连接到网络628。可经由加密技术来确保这些连接,这些加密技术包括但不限于WI-FI保护接入(“WPA”)、WPA2、有线等效加密(“WEP”)等。
网络628可以是根据红外数据协会(“IrDA”)、蓝牙、无线通用串行总线(“USB”)、Z-波、ZIGBEE、或者一些其他近程无线技术操作的WPAN。在一些实施例中,WPAN组件626被配置成便于经由WPAN与诸如外围设备、计算机、或者其他计算设备之类的其他设备的通信。
传感器组件608包括磁力计630、环境光传感器632、邻近传感器634、加速度计636、陀螺仪638、以及全球定位系统传感器(“GPS传感器”)640。可构想其他传感器(诸如但不限于温度传感器或震动检测传感器)也可结合到计算设备体系结构600中。
磁力计630被配置成测量磁场的强度和方向。在一些实施例中,磁力计630提供对存储在存储器组件604之一内的罗盘应用程序的测量以向用户提供包括基本方向、北、南、东和西的基准帧中的准确方向。可将类似的测量值提供给包括罗盘组件的导航应用程序。可构想磁力计630所获取的测量值的其他用途。
环境光传感器632被配置成测量环境光。在一些实施例中,环境光传感器632提供对存储在一个存储器组件604内的应用程序的测量,从而自动地调整显示器的亮度(在下文中描述)以补偿低光和高光环境。可构想环境光传感器632所获取的测量值的其他用途。
邻近传感器634被配置成检测邻近计算设备而不直接接触的对象或物体的存在。在一些实施例中,邻近传感器634检测用户身体(例如,用户的脸部)的存在性,并且将该信息提供给存储在存储器组件604之一内的应用程序,该存储器组件利用邻近信息来启用或禁用计算设备的一些功能。例如,电话应用程序可响应于接收到邻近信息自动地禁用触摸屏(在下文中描述),以使用户的脸部在呼叫期间不会无意地结束呼叫或者启用/禁用电话应用程序内的其他功能。可构想如邻近传感器634检测到的接近度的其他用途。
加速度计636被配置成测量准确的加速度。在一些实施例中,来自加速度计636的输出被应用程序作为输入机制以控制应用程序的一些功能。例如,应用程序可以是视频游戏,其中响应于经由加速度计636接收到的输入移动或以其他方式操纵字符、其一部分、或者对象。在一些实施例中,将来自加速度计636的输出被提供给应用程序以供在横向和纵向模式之间切换时使用,从而计算坐标加速度或检测下降。可构想加速度计636的其他用途。
陀螺仪638被配置成测量和维持定向。在一些实施例中,来自陀螺仪638的输出被应用程序作为输入机制以控制应用程序的一些功能。例如,陀螺仪638可用于准确地识别在视频游戏应用或一些其他应用的3D环境内的移动。在一些实施例中,应用程序利用来自陀螺仪638和加速度计636的输出来增强对应用程序的一些功能的控制。可构想陀螺仪638的其他用途。
GPS传感器640被配置成接收来自GPS卫星的信号,以供在计算位置时使用。GPS传感器640计算的位置可被需要位置信息或者受益于该位置信息的任何应用程序使用。例如,GPS传感器640计算的位置可与导航应用程序一起使用,以提供从该位置到目的地的方向、或者从目的地到该位置的方向。此外,GPS传感器640可用于将位置信息提供给基于外部位置的服务,诸如E911服务。GPS传感器640可在获取位置方位时利用网络连接组件606中的一个或多个来辅助GPS传感器640获取经由WI-FI、WIMAX、和/或蜂窝三角测量技术而生成的位置信息。GPS传感器640还可用于辅助GPS(“A-GPS”)系统中。
I/O组件610包括显示器642、触摸屏644、数据I/O接口组件(“数据I/O”)646、音频I/O接口组件(“音频I/O”)648、视频I/O接口组件(“视频I/O”)650、以及相机652。在一些实施例中,显示器642和触摸屏644组合。在一些实施例中,数据I/O组件646、音频I/O组件648、以及视频I/O组件650中的两个或更多个组合。I/O组件610可包括被配置成支持在下文中所描述的各种接口的分立处理器,或者可包括构建到处理器602中的处理功能。
显示器642是被配置成呈现视觉形式的信息的输出设备。具体而言,显示器642可呈现图形用户界面(“GUI”)元素、文本、图像、视频、通知、虚拟按钮、虚拟键盘、消息收发数据、因特网内容、设备状态、时间、日期、日历数据、偏好、地图信息、位置信息、以及能够以视觉形式呈现的任何其他信息。在一些实施例中,显示器642是利用任何有源或无源矩阵技术以及任何背光技术(如果使用的话)的液晶显示器件(“LCD”)。在一些实施例中,显示器642是有机发光二极管(“OLED”)显示器。可构想其他显示器类型。
触摸屏644是被配置成检测触摸的存在和位置的输入设备。触摸屏644可以是电阻触摸屏、电容触摸屏、表面声波触摸屏、红外触摸屏、光学成像触摸屏、色散信号触摸屏、声音脉冲识别触摸屏,或者可利用任何其他触摸屏技术。在一些实施例中,触摸屏644结合到显示器642的顶部作为透明层,以使用户能够使用一个或多个触摸与显示器642上所呈现的对象或其他信息交互。在其他实施例中,触摸屏644是结合到不包括显示器642的计算设备的表面上的触摸垫。例如,计算设备可具有结合到显示器642的顶部的触摸屏以及与显示器642相对的表面上的触摸垫。
在一些实施例中,触摸屏644是单点触摸触摸屏。在其他实施例中,触摸屏644是多点触摸触摸屏。在一些实施例中,触摸屏644被配置成检测分立触摸、单点触摸姿势、和/或多点触摸姿势。为了方便起见,这些在此处被统称为姿势。现在将描述若干姿势。应当理解,这些姿势是说明性的,并且不旨在限制所附权利要求书的范围。此外,所描述的姿势、附加姿势、和/或替换姿势可在软件中实现以与触摸屏644一起使用。由此,开发者可创建特定应用程序专用的姿势。
在一些实施例中,触摸屏644支持轻拍姿势,其中用户在显示器644上所呈现的项目上轻拍触摸屏642一次。轻拍姿势可出于各种原因来使用,包括但不限于打开或启动用户所轻拍的任何事物,如以上参考图3B描述的UI控件312。应当理解,本实施例是说明性的,并且不应被解释为以任何方式进行限制。在一些实施例中,触摸屏644支持双轻击姿势,其中用户在显示器644上所呈现的项目上轻击触摸屏642两次。出于各种原因,可使用双轻击姿势,这些原因包括但不限于分多级放大或缩小。在一些实施例中,触摸屏644支持轻击并保持姿势,其中用户轻击触摸屏644并维持接触达至少预定义时间。出于各种原因,可使用轻击并保持姿势,这些原因包括但不限于打开上下文特定的菜单。
在一些实施例中,触摸屏644支持平移姿势,其中用户将手指放置在触摸屏644上并维持与触摸屏644的接触,同时在触摸屏644上移动手指。出于各种原因,可使用平移姿势,这些原因包括但不限于以受控速率移动通过屏幕、图像、或菜单。还可构想多手指平移姿势。在一些实施例中,触摸屏644支持轻拂姿势,其中用户在用户想要屏幕移动的方向上划动(swipe)手指。出于各种原因,可使用轻拂姿势,这些原因包括但不限于水平或垂直滚动通过菜单和页面。在一些实施例中,触摸屏644支持收窄和张开姿势,其中用户在触摸屏644上用两个手指(例如,拇指和食指)进行收窄运动或者将两个手指张开。出于各种原因,可使用收窄和张开姿势,这些原因包括但不限于逐步地放大或缩小网站、地图、或图片。例如,如果需要,用户可以使用收窄或张开姿势来调整涂3A-3E中显示的视频的大小。因为收窄和张开姿势可被用于其他目的,所以这一实施例应被理解为是说明性的并且不应被解释以任何方式构成限制。
虽然已参考将一个或多个手指用于执行姿势来描述了以上姿势,但是诸如脚趾之类的其他附属体以及诸如指示笔之类的物体可用于与触摸屏644交互。如此,以上姿势应当被理解为说明性的,并且不应被解释为以任何方式进行限制。
数据I/O接口组件646被配置成便于数据输入到计算设备以及从计算设备输出数据。在一些实施例中,例如出于同步操作的目的,数据I/O接口组件646包括被配置成提供计算设备和计算机系统之间的有线连接的连接器。连接器可以是专有连接器或标准化连接器,诸如USB、微型USB、小型USB等。在一些实施例中,连接器是用于将计算设备与诸如对接站、音频设备(例如,数字音乐播放器)、或视频设备之类的另一设备对接的对接连接器。
音频I/O接口组件648被配置成向计算设备提供音频输入和/或输出能力。在一些实施例中,音频I/O接口组件646包括被配置成收集音频信号的话筒。在一些实施例中,音频I/O接口组件646包括被配置成向耳机或其他外部扬声器提供连接的耳机插孔。在一些实施例中,音频接口组件648包括用于输出音频信号的扬声器。在一些实施例中,音频I/O接口组件646包括光学音频电缆输出。
视频I/O接口组件650被配置成向计算设备提供视频输入和/或输出能力。在一些实施例中,视频I/O接口组件650包括被配置成接收视频作为来自另一设备(例如,诸如DVD或蓝光播放器之类的视频媒体播放器)的输入或者将视频作为输出发送到另一设备(例如,监视器、电视、或者一些其他外部显示器)的视频连接器。在一些实施例中,视频I/O接口组件650包括高清晰度多媒体接口(“HDMI”)、小型HDMI、微型HDMI、显示器端口、或者到输入/输出视频内容的专有连接器。在一些实施例中,视频I/O接口组件650或其一部分与音频I/O接口组件648或其一部分组合。
相机652可被配置成捕捉静止图像和/或视频。相机652可利用电荷耦合设备(“CCD”)或互补金属氧化物半导体(“CMOS”)图像传感器来捕捉图像。在一些实施例中,相机652包括在低光环境中辅助拍摄图片的闪光灯。相机652的设置可被实现为硬件或软件按钮。
虽然未示出,但是还可在计算设备体系结构600中包括一个或多个硬件按钮。硬件按钮可用于控制计算设备的一些操作方面。硬件按钮可以是专用按钮或多用途按钮。硬件按钮可以是基于机械或传感器的。
所示的功率组件612包括可连接到电池量表(gauge)654的一个或多个电池656。电池654可以是再充电的或者一次性的。再充电的电池类型包括但不限于锂聚合物、锂电池、镍镉、以及镍金属氢化物。每一电池654可由一个或多个电池单元制成。
电池量表656可被配置成测量电池参数,诸如电流、电压、以及温度。在一些实施例中,电池量具656被配置成测量电池的放电速率、温度、使用年限、以及其他因素的影响以在特定百分比误差内预测剩余寿命。在一些实施例中,电池量具656向应用程序提供测量值,该应用程序被配置成利用这些测量值将有用的电源管理数据呈现给用户。电源管理数据可包括所使用电池的百分比、剩余电池的百分比、电池状况、剩余时间、剩余电容量(例如,瓦时)、电流消耗、以及电压中的一个或多个。
功率组件612还可包括功率连接器,该功率连接器可与上述I/O组件610中的一个或多个组合。功率组件612可经由功率I/O组件644与外部功率系统或充电装备对接。
基于上述内容,应当明白,本文公开了用于为视频和其他媒体内容启用复制和粘贴功能的技术。虽然用计算机结构特征、方法和变换动作、特定计算机器、以及计算机可读介质专用的语言描述了本文中所描述的主题,但是应当理解,所附权利要求书中所定义的本发明不必限于本文中所描述的具体特征、动作、或介质。相反,这些具体特征、动作、以及介质是作为实现权利要求的示例形式而公开的。
以上所述的主题仅作为说明提供,并且不应被解释为限制。可对本文中所描述的主题作出各种修改和改变,而不必遵循示出和描述的示例实施例和应用且不背离所附权利要求书中所阐述的本发明的真正精神和范围。

Claims (10)

1.一种用于显示与视频相关联的文本的计算机实现的方法,所述计算机实现的方法包括执行计算机实现的操作以:
获得包括净荷(116)的视频(112);
确定所述视频(112)是否包括元数据(118);以及
响应于确定所述视频(112)包括元数据(118),
分析所述元数据(118)以确定与所述视频相关联的文本(326)以及定义将在其中显示文本(326)的时间的时序参数;
在覆盖引擎处生成覆盖(122),所述覆盖(122)包括所述文本(326)并且指示将在其中显示所述文本(326)的时间;以及
生成包括所述净荷(116)和所述覆盖(122)的输出(120)。
2.如权利要求1的方法,其特征在于,还包括在所述覆盖引擎处呈现所述输出。
3.如权利要求1的方法,其特征在于,还包括将所述输出存储在数据存储设备处。
4.如权利要求1的方法,其特征在于,还包括将所述覆盖作为文本框进行呈现,以呈现所述文本并且启用对所述文本的选择。
5.如权利要求4的方法,其特征在于,所述文本框被配置为启用所述文本的复制。
6.如权利要求1的方法,其特征在于,还包括:
响应于确定所述视频不包括元数据,确定所述视频是否包括所显示的文本;以及
响应于确定所述视频包括所显示的文本,
检测在所述视频中的所显示的文本,并且基于在其上显示所显示文本的在视频中的时间来确定所述时序参数;
在所述覆盖引擎处生成所述覆盖,所述覆盖包括所显示的文本并指示将在其中显示所显示文本的时间;以及
生成包括所述净荷和所述覆盖的输出。
7.如权利要求6的方法,其特征在于,检测所显示的文本包括将光学字符识别操作应用到所述视频以检测所述文本。
8.如权利要求1的方法,其特征在于,还包括:呈现用于显示所述文本的选项,并且响应于检测到对所述选项的选择,在所述覆盖引擎处呈现所述输出。
9.一种其上存储有计算机可读指令的计算机存储介质,当所述计算机可读指令由计算执行时,使得所述计算机:
获得视频(112),所述视频(112)包括净荷(116)和描述与所述视频(112)相关联的文本(326)的元数据(118),所述元数据(118)包括定义文本内容信息的至少一个实例和时序信息的至少一个实例的数据;
分析文本内容信息的所述至少一个实例以确定与所述视频相关联的文本(326);
分析所述时序信息的所述至少一个实例以确定定义将在其中显示所述文本(326)的时间的时序参数;
在所述计算机处生成覆盖(122),所述覆盖(122)包括所述文本(326)并且指示将在其中显示所述文本(326)的时间;以及
生成包括所述净荷(116)和所述覆盖(122)的输出(120)。
10.如权利要求9的计算机存储介质,其特征在于,还包括计算机可执行指令,当所述计算机可执行指令由所述计算机执行时,使得所述计算机:
在所述视频的回放期间,呈现回放控件,所述回放控件包括用于显示所述文本的用户界面控件;以及
响应于对所述用户界面控件的选择,在所述覆盖计算机处呈现所述输出,其中所述覆盖被呈现为文本框,以用于呈现所述文本并且启用对所述文本的选择。
CN2013100712444A 2012-01-09 2013-01-09 为视频及其他媒体内容启用复制和粘贴功能 Pending CN103257997A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/345,752 2012-01-09
US13/345,752 US20130177295A1 (en) 2012-01-09 2012-01-09 Enabling copy and paste functionality for videos and other media content

Publications (1)

Publication Number Publication Date
CN103257997A true CN103257997A (zh) 2013-08-21

Family

ID=48744000

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013100712444A Pending CN103257997A (zh) 2012-01-09 2013-01-09 为视频及其他媒体内容启用复制和粘贴功能

Country Status (2)

Country Link
US (1) US20130177295A1 (zh)
CN (1) CN103257997A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147724A (zh) * 2019-04-11 2019-08-20 北京百度网讯科技有限公司 用于检测视频中的文本区域的方法、装置、设备以及介质
CN113552984A (zh) * 2021-08-09 2021-10-26 北京字跳网络技术有限公司 文本提取方法、装置、设备及介质

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9720894B1 (en) 2012-09-14 2017-08-01 Google Inc. Methods and systems for annotating an image and publishing the annotated image
FR3009916A1 (fr) * 2013-08-26 2015-02-27 Orange Procede et dispositif d'enrichissement d'une communication
US10755744B2 (en) * 2014-06-06 2020-08-25 Fuji Xerox Co., Ltd. Systems and methods for direct video retouching for text, strokes and images
US10002589B2 (en) 2015-03-04 2018-06-19 Qualcomm Incorporated Retaining user selected screen area on user equipment
US10657406B2 (en) * 2017-02-02 2020-05-19 The Directv Group, Inc. Optical character recognition text export from video program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101021903A (zh) * 2006-10-10 2007-08-22 鲍东山 视频字幕内容分析系统
CN101383937A (zh) * 2007-09-06 2009-03-11 华为技术有限公司 播放视频广告和文字信息的方法、系统、服务器和终端
CN101558416A (zh) * 2006-11-20 2009-10-14 微软公司 移动通信设备的文本检测
US8065710B2 (en) * 2006-03-02 2011-11-22 At& T Intellectual Property I, L.P. Apparatuses and methods for interactive communication concerning multimedia content

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7242809B2 (en) * 2003-06-25 2007-07-10 Microsoft Corporation Digital video segmentation and dynamic segment labeling
WO2010033642A2 (en) * 2008-09-16 2010-03-25 Realnetworks, Inc. Systems and methods for video/multimedia rendering, composition, and user-interactivity
US8515185B2 (en) * 2009-11-25 2013-08-20 Google Inc. On-screen guideline-based selective text recognition
US8302010B2 (en) * 2010-03-29 2012-10-30 Avid Technology, Inc. Transcript editor
US20120078712A1 (en) * 2010-09-27 2012-03-29 Fontana James A Systems and methods for processing and delivery of multimedia content
US20120236201A1 (en) * 2011-01-27 2012-09-20 In The Telling, Inc. Digital asset management, authoring, and presentation techniques
US9424350B2 (en) * 2011-10-12 2016-08-23 Vixs Systems, Inc. Video processing device for embedding authored metadata and methods for use therewith

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8065710B2 (en) * 2006-03-02 2011-11-22 At& T Intellectual Property I, L.P. Apparatuses and methods for interactive communication concerning multimedia content
CN101021903A (zh) * 2006-10-10 2007-08-22 鲍东山 视频字幕内容分析系统
CN101558416A (zh) * 2006-11-20 2009-10-14 微软公司 移动通信设备的文本检测
CN101383937A (zh) * 2007-09-06 2009-03-11 华为技术有限公司 播放视频广告和文字信息的方法、系统、服务器和终端

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110147724A (zh) * 2019-04-11 2019-08-20 北京百度网讯科技有限公司 用于检测视频中的文本区域的方法、装置、设备以及介质
CN110147724B (zh) * 2019-04-11 2022-07-01 北京百度网讯科技有限公司 用于检测视频中的文本区域的方法、装置、设备以及介质
CN113552984A (zh) * 2021-08-09 2021-10-26 北京字跳网络技术有限公司 文本提取方法、装置、设备及介质

Also Published As

Publication number Publication date
US20130177295A1 (en) 2013-07-11

Similar Documents

Publication Publication Date Title
US10031893B2 (en) Transforming data to create layouts
US11703990B2 (en) Animated visual cues indicating the availability of associated content
CN105593803B (zh) 自动滚动区域
CN104737185B (zh) 用于具有伴随的备注的交互式幻灯片演示的阅读模式的方法、系统、装置和计算机可读存储介质
CN102968312B (zh) 用于应用扩展程序的用户界面占位符
US20140046923A1 (en) Generating queries based upon data points in a spreadsheet application
CN108369595B (zh) 可收集数据结构的可扩展性
CN103257997A (zh) 为视频及其他媒体内容启用复制和粘贴功能
CN104094252A (zh) 在文档中的软件应用分发
WO2015112623A1 (en) Authoring, sharing and consumption of online courses
CN102982440A (zh) 聚集和呈现任务
CN102945562A (zh) 演示应用程序中的动画创建和管理
CN104350493A (zh) 将数据变换成可消费的内容
US10839148B2 (en) Coordination of storyline content composed in multiple productivity applications
US11314408B2 (en) Computationally efficient human-computer interface for collaborative modification of content
US10719498B2 (en) Enhanced management capabilities for collectable data structures
US11526322B2 (en) Enhanced techniques for merging content from separate computing devices
CN104067215A (zh) 呈现数据驱动表单
CN105393222A (zh) 网络应用与本地应用之间的渲染委托
CN111868767A (zh) 基于用户洞察来驱动上下文感知的用户协作
US20190087391A1 (en) Human-machine interface for collaborative summarization of group conversations
CN106062709A (zh) 将主题信息从主机应用传播到主机扩展
CN107810523A (zh) 数据可视化的智能配置
US20140136943A1 (en) Rendering web content within documents

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150728

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150728

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130821