CN102483782B - 进行动态媒体内容预览的方法和系统 - Google Patents

进行动态媒体内容预览的方法和系统 Download PDF

Info

Publication number
CN102483782B
CN102483782B CN201080038225.6A CN201080038225A CN102483782B CN 102483782 B CN102483782 B CN 102483782B CN 201080038225 A CN201080038225 A CN 201080038225A CN 102483782 B CN102483782 B CN 102483782B
Authority
CN
China
Prior art keywords
preview
media content
dynamic media
stream
frame
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.)
Active
Application number
CN201080038225.6A
Other languages
English (en)
Other versions
CN102483782A (zh
Inventor
J·佳隆
P·德赫比蒙特
J-P·修达德
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.)
Apple Inc
Original Assignee
Apple Computer Inc
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 Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN102483782A publication Critical patent/CN102483782A/zh
Application granted granted Critical
Publication of CN102483782B publication Critical patent/CN102483782B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • 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/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/818OS software
    • 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/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • H04N21/8193Monomedia components thereof involving executable data, e.g. software dedicated tools, e.g. video decoder software or IPMP tool

Abstract

本公开涉及动态媒体内容预览。沙箱化进程响应于对于动态媒体内容的预览的请求而被启动。由在所述沙箱化进程内执行的插件以预览特定格式产生帧流。所述帧流被提供作为所述动态媒体内容的预览,其中所述预览在显示屏上是可见的。

Description

进行动态媒体内容预览的方法和系统
技术领域
本发明的实施例涉及流式媒体(streaming media),尤其是涉及提供流式媒体和数字媒体内容的安全预览。
背景技术
随着计算机用户变得越来越见多识广,对于人们使用的计算机程序的高效性的需求也在不断提高。例如,很多计算机系统具有某一类型的文件管理系统,该系统管理用户可能需要存取的数百甚或数千个文件。在许多常规的文件管理系统中,难以使用与该文件的文件类型相关联的必需应用程序在无需实际打开该文件的情况下确定特定文件的内容。时常,在打开文件之前用户可以获得的关于该文件的有用信息仅仅是文件名。很多用户希望能够在将资源实际用于打开完全应用程序以及随后打开该文件之前预览该文件的内容。某些文件管理系统,诸如由Cupertino,CA的Apple Inc.提供的Mac OS X中的Finder,提供了用于在打开文件之前预览文件的功能。其它操作系统和文件管理系统也可以提供某些静态预览功能。
例如,使用Apple的Finder,用户可以预览文档,诸如PDF、文本文件、字处理文档和电子数据表等。Finder也允许用户预览具有Mac OS识别出的原有文件类型的某些视频内容。
Mac OS中的Quick Look后台程序(daemon)包括多种插件,每个插件接受来自客户端进程的特定数据类型并将其转换成具有一组标准格式——诸如PDF和HTML——中的一种格式的预览。随后,由客户端进程使用Quick Look框架来显示标准格式的预览。这种结构的优点在于它避免由第三方插件崩溃而导致的客户端应用程序崩溃。但是,这种模型对于诸如流式媒体的动态媒体并不能很好地工作,原因在于将与非原有 文件类型相关联的动态媒体转换成适当的标准格式花费太多的处理时间而使其不可用或不可靠。
发明内容
当客户端进程接收到对于动态媒体内容的预览的请求时,该请求被传递给沙箱化进程。沙箱化进程与客户端进程隔离,这意味着如果沙箱化进程崩溃,客户端进程保持功能性和可操作性。在沙箱化进程中,确定动态媒体内容的类型。内容类型可以基于例如统一类型标识符(UTI)来确定。一旦内容类型被确定,沙箱化进程就取回流化插件(streaming plug-in)以将动态媒体内容转换成客户端进程可以用来显示动态媒体的预览的媒体类型。
插件被用来根据与该插件相关联的协议转换动态媒体内容。在一些实施例中,插件产生音频分量和视频分量二者(至少为具有音频和视频二者的动态媒体内容产生这二者)。随着动态内容的每一帧被产生,其被传递给客户端进程以显示为流式预览。在一些实施例中,插件给客户端进程提供允许用户控制动态媒体内容的预览的有限方面(例如,“停止”、“播放”和“暂停”等)的一种或多种控制。
附图说明
以下说明包括对于附图的讨论,所述附图图解说明了本发明实施例的实施方式的例子。附图只是出于举例说明而非限制的目的提供的。本文中对于一个或多个“实施例”的提及要被理解为描述包括在本发明的至少一种实施方式中的特定特征、结构或特性。因此,诸如出现在本文中的“在一个实施例中”或“在替换实施例中”之类的短语描述了本发明的各种实施例和实施方式,而无须全部指的是同一实施例。但是,它们也无须互相排斥。
图1是图示按照各种实施例的系统的框图。
图2是图示按照各种实施例的系统的框图。
图3是按照各种实施例的系统中的操作的流程图。
图4是图示按照各种实施例的系统的框图。
具体实施方式
本文中提供的各种方法、设备和系统使得能够预览动态媒体内容。当用户选择文件(例如,从文件管理系统中选择)并请求该文件的预览时,本文所描述的实施例有助于将该动态媒体转换为适合于预览该动态媒体内容的格式。
图1是按照各种实施例的框图。如图所示,文件管理系统(例如,Finder、Windows Explorer等)或其它程序(例如,客户端应用程序、网络浏览器等)包括客户端进程102。客户端进程102是与特定程序的用户级交互发生之处。当用户请求文件110的预览时,应用编程接口(API)112发送请求116给预览后台程序104。如果预览后台程序104尚未运行,则其被启动。在各种实施例中,预览后台程序104是沙箱化进程。沙箱化进程是与其它运行的进程或程序分离开的进程。沙箱化进程,或简称为沙箱,通常为访客程序提供受到紧密控制的资源集合以便运行在诸如盘和存储器上的暂存空间(scratch space)中。在各种实施例中,在沙箱中通常不允许或严格限制网络访问、检查主机系统的能力或从输入设备中读取。
通过发送请求116给预览后台程序104,导致预览后台程序104发生任何错误/问题(例如,崩溃、挂起、不可接受的等待时间等)的对文件104的任何操纵或转换将不影响客户端进程102。换言之,如果预览后台程序104崩溃,客户端进程102将继续不受影响地运行。对于用户,这意味着在产生文件的预览中发生的任何错误将不会阻止用户使用底层程序,诸如文件管理系统。如果客户端进程102与诸如文件管理系统(例如,Apple Finder、Windows Explorer等)之类的基本用户程序相关联,则这可能是特别重要的。在一些实施例中,如果沙箱化进程崩溃,则客户端进程可能显示所请求的预览当前不可用的指示。
在各种实施例中,文件类型模块118初始接收来自客户端进程112的请求116。文件类型模块118确定与文件110相关联的文件类型。如前 所述,文件类型可以是使用统一类型标识符或UTI确定的,UTI是由Apple Inc.定义的、唯一地标识一类项目的类型的字符串。因此,UTI被用来标识文件和文件夹、剪切板数据、软件包(bundle)、混叠(alias)、符号链接(symlink)和流式数据的类型。如果文件类型模块118识别出文件110的文件类型为原有文件类型,则文件类型模块118取回与该原有文件类型相关联的已知插件120。对于包含静态媒体的文件,诸如字处理文档、PDF、HTML文件等,所取回的插件可以处理文件请求,并将其转换成文件预览122,其被发送回客户端进程102以显示为预览。在某些实施例中,插件120直接能够转换动态媒体内容(音频/视频文件、交互式3D动画文件等),这将在下面详述。被发送给客户端进程102的文件预览122由API 112处理,API 112包括各种显示软件包114。每个显示软件包包括显示一种或多种特定文件类型的预览所需的资源。因此,如果文件预览122是PDF的预览,则来自该组显示软件包114的PDF显示软件包获得PDF预览并使其准备好在显示器130上显示。
本文描述的其它实施例能够提供动态媒体内容(例如,流式媒体、视频、3-D动画等)的预览。例如,如果文件110包括动态媒体内容,则请求116可能被发送给预览后台程序104,并且文件类型模块118基于例如与文件110相关联的UTI来确定文件类型。其它标识符可能用在不同的实施例中。如果动态媒体具有原有文件类型并被文件类型模块118识别出,则对应的插件120被取回以转换文件110和提供预览。但是,如果文件110包括非原有文件类型的动态媒体内容,则文件类型模块118取回指定插件120以处理文件110的非原有转换。
在某些实施例中,指定插件120负责取回额外插件(流插件124)以处理动态媒体内容。指定插件也可以取回需要被转换的文件的复本。在一些实施例中,该文件是作为请求116的一部分被接收的同一文件。但是,在其它实施例中,该文件可以是要在转换成流式预览中使用的同一文件的不同复本。
此外,为流插件124打开或启动另一沙箱化进程106以将文件110转换成流式预览126。以此方式,流式预览后台程序106与预览后台程序 104和客户端进程102隔离开。因此,如果在文件到流式预览的转换期间流插件124崩溃,则进程106、预览后台程序104和客户端进程102仍不受影响。以此方式,用户不会丢失客户端应用程序(例如,文件管理系统)中的任何功能,而且用户仍可以在没有任何中断的情况下预览其它文件,尤其是不需要流式预览的那些文件。
在各种实施例中,流预览126是从原始文件110转换成的一系列帧。与流预览126相关联的帧可以包括有限的用户功能。换言之,如果完全的应用程序(例如,媒体播放器)被打开以显示文件110中的动态媒体内容,则用户将具有应用程序的用以控制和/或操纵该文件的用户接口选项的全部范围。例如,如果用户想要查看视频文件并打开视频文件查看应用程序(例如,由Apple Inc.提供的Quicktime、由Microsoft Corporation提供的Windows Media Player等),用户将有能力停止、暂停、播放、调整音量,调整窗口的大小,和/或从打开的应用程序的上下文的内部对文件执行各种其它操作(例如,保存、删除、复制等)。相对地,流式预览126给用户提供有限的控制,这是由于其被特别设计为预览。例如,流式预览126可以仅仅提供对于停止和播放预览中的内容的控制。
流式预览126由API 112——更具体而言,由指定的显示软件包114之一——接收和处理。在流式预览的情况下,一个或多个显示软件包114包括显示流式预览所需的资源。因此,来自该组显示软件包114的流式预览显示软件包获得流式预览126并使其准备好显示在显示器130上。
除了产生流式预览126之外,流插件124也可以产生和提供一组一种或多种流控制128给客户端进程102。流控制128包括一个或多个命令,其允许用户控制流式预览126的各个方面。因此,如前所述,流控制128可能包括用于停止、暂停、和/或播放流式预览中的内容的命令。在某些实施例中可以包括更多命令或更少命令。在一些实施例中,流控制128可以不给用户提供在与文件相关联的原有应用程序中可得到的功能的全部范围。
图2是图示与产生动态媒体内容的流式预览相关联的各种实施例的框图。与图1类似,图2示出了客户端进程202和流式预览后台程序206。流插件220被用来将文件208转换为流式预览。流插件220运行在沙箱化流式预览后台程序206内。流插件220逐帧地产生流式预览,而在某些实施例中,单独地产生视频分量和音频分量。因此,文件208被转换成音频分量212和视频分量210。音频分量212被添加到流预览(或简称为“流”)214,并且视频分量210在每一帧被产生的同时被逐帧地添加到该流中。这样,例如,只要帧1被转换和产生为预览特定格式,其就被添加到该流中,并被发送给客户端进程202,而无需等待帧2被转换和产生。类似地,一旦帧2被转换和产生,其就可以被立即添加到流214中。这个处理对于被转换和产生的每一帧继续进行。
如前所述,在各种实施例中流插件220给客户端进程提供流控制。如图2所示,流控制216运行在客户端进程202中并且允许用户控制流214的某些方面。如本文所述,流控制216提供对于流214的有限控制,并且不提供在文件208在原有应用程序中被打开的情况下可以得到的控制的全部范围。
图3是图示提供动态媒体内容的预览的各种实施例的流程图。对于动态媒体的预览的请求被接收310。作为响应,至少一个沙箱化进程被启动320。单个沙箱化进程可能已经在运行了,在此情况下,第二沙箱化进程可以被启动以将流式媒体预览与正在产生的其它预览分离开。动态媒体的内容类型被确定330。内容类型可以基于统一类型标识符(UTI)或其它形式的文件类型标识而被确定。
基于内容类型,流插件被取回340以将动态媒体转换成预览特定格式。本文中使用的“流”插件指的是被特别指定来将动态媒体内容(例如,视频、音频、交互式3D动画等)转换成流式媒体的任何插件。如果动态媒体的内容类型是原有文件类型,或换言之,识别出的文件类型,那么有可能快速方便地将该文件转换成预览。但是,如果确定文件类型是非原有文件类型,那么流插件需要能够将原始文件从一种格式转换为与动态预览兼容的预览特定格式。
所取回的插件被提供350给沙箱化进程,并且预览被产生360。在文件是包含音频数据和视频数据二者的视频文件的情况下,插件可以为预览产生分离的音频分量和视频分量。如果原始文件仅包含音频,那么可能仅产生音频分量。如果原始文件仅包含视频而没有音频,那么可能仅产生视频分量。流式媒体插件也可以支持包含交互式3D动画(诸如COLLADA文件)的各种文件。一旦预览分量已被产生,则流预览被提供370以显示给用户,并且对于动态预览的控制也被提供380。这种控制允许用户控制与动态预览相关联的有限功能(例如,“停止”、“暂停”、“播放”)。对于3-D动画文件,动态预览可以包括类似控制,诸如停止、暂停或播放动画文件的能力。但是,在某些实施例中,与在原有应用程序被打开以播放动态媒体内容时可得到的控制相比,所提供的用户控制是有限的。
应当注意:在替换实施例中图3中所描述的步骤可以被重新排列并以与所示顺序不同的顺序被执行。而且,应当注意:比图3所示的步骤更多的处理步骤或更少的处理步骤可以被用来实现由本文所述的各种实施例设想的相同动态媒体预览功能。
图4图示了具有计算机系统400的示例性形式的机器的图形表示,在所述机器中可以执行使得该机器执行本文所述的方法中的任意一个或多个的一组指令。在替换实施例中,机器可以连接(例如,联网)到局域网(LAN)、内联网、外联网或互联网中的其它机器。机器可以以客户端-服务器网络环境下的服务器或客户机的能力工作,或工作为对等(或分布式)网络环境下的对等机器。机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝电话、或能够执行指定要由该机器采取的动作的一组指令(顺序地或以其它方式)的任何机器。此外,虽然只示出了一个机器,但是术语“机器”应当被看作为包括能够独立地或相结合地执行一组(或多组)指令以执行本文所述的方法中的任意一个或多个的机器的任意集合。
根据各种实施例,图4还表示可以用来实现图1-3所示的所述细节的系统的一种形式。尤其是,应当注意:显示器410可以用来显示动态 媒体内容,就像图1的显示器130那样。可以将本文所述的有助于动态媒体内容预览的实施例包括为指令422(在图4的系统中),所述指令422被存储例如在驱动单元418或主存储器404中,并且可以由处理器402执行。
示例性计算机系统400包括处理器402、主存储器404(例如,只读存储器(ROM)、闪存、动态随机存取存储器(DRAM)、诸如同步DRAM(SDRAM)或高频动态随机DRAM(Rambus DRAM,即RDRAM)等)、静态存储器406(例如,闪存、静态随机存取存储器(SRAM)等)和辅存储器418(例如,数据存储设备),其经由总线408彼此进行通信。
处理器402代表一个或多个通用处理设备,诸如微处理器、中央处理单元等。更具体地,处理器402可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、超长指令字(VLIW)微处理器、实现其它指令集的处理器、或实现指令集的组合的处理器。处理器402也可以是一个或多个专用处理设备,诸如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等。处理器402被配置成运行用于执行本文中所述的操作和步骤的处理逻辑422。
计算机系统400还可以包括网络接口设备416。计算机系统400还可以包括显示单元410(例如,液晶显示器(LCD)、发光二极管(LED)显示器、阴极射线管(CRT))和输入设备412(例如,键盘和/或鼠标等)。
辅存储器418可以包括机器可读存储介质(或更具体地,计算机可读存储介质)424,其上存储有体现本文所述的方法或功能中的任意一个或多个的一组或多组指令集(例如,软件422)。在由计算机系统400执行期间,软件422还可以完全或至少部分地驻留在主存储器404内和/或在处理设备402内,主存储器404和处理设备402也构成机器可读存储介质。软件422还可以通过网络420经由网络接口设备416被发送或接收。在各种实施例中,用户请求的网络内容可以使用网络接口设备416 通过网络420被取回(例如,从广域网)。
虽然在示例性实施例中机器可读存储介质424被示出为单个介质,但是术语“机器可读存储介质”或“计算机可读存储介质”应被看作为包括存储一个或多个指令集的单个介质或多个介质(例如,集中式或分布式数据库、和/或相关的高速缓存和服务器)。术语“机器可读存储介质”或“计算机可读存储介质”应被看作为包括任意介质,其能够存储或编码一组供机器/计算机执行的指令,并使得机器/计算机执行本发明的方法中的任意一个或多个。术语“机器可读存储介质”或“计算机可读存储介质”应被相应地看作为包括但不限于固态存储器和光学和磁性介质。
本文所述的各种部件可以是用于执行本文所述的功能的装置。本文所述的每一部件包括软件、硬件或其组合。本文所述的操作和功能可以被实现为软件模块、硬件模块、专用硬件(例如,应用特定硬件、专用集成电路(ASIC)、数字信号处理器(DSP)等)、嵌入式控制器、硬连线电路等。
除了本文所述的内容以外,可以对所公开的本发明的实施例和实施方式进行各种修改而不会背离本发明的范围。因此,本文中的图解说明和示例应当被看作是说明性的,而不是限制性的。

Claims (24)

1.一种进行动态媒体内容预览的方法,包括:
由计算机使用在第一沙箱中执行的沙箱化预览进程响应于对于具有非原有内容类型的动态媒体内容的预览的请求,启动在第二沙箱中执行的沙箱化流式预览进程,其中所述沙箱化预览进程包括用于非原有内容的指定插件;
由计算机从所述动态媒体内容以预览特定格式产生帧流,所述帧流是由流插件产生的,所述流插件是在所述第二沙箱中的所述沙箱化流式预览进程内执行的,并且是由所述指定插件取回的;以及
由计算机提供所述帧流作为所述动态媒体内容的预览,所述预览在显示屏上是可见的。
2.按照权利要求1所述的方法,其中所述启动沙箱化流式预览进程还包括:
确定所述动态媒体内容的内容类型;以及
取回所述流插件以至少部分地基于所述动态媒体内容的所述内容类型而将所述动态媒体内容转换成所述预览特定格式。
3.按照权利要求2所述的方法,还包括:
提供所述流插件和所述动态媒体内容给所述沙箱化流式预览进程。
4.按照权利要求1所述的方法,其中所述产生还包括:
为所述帧流中的每个帧单独地产生音频分量和视频分量。
5.按照权利要求1所述的方法,其中所述提供所述帧流还包括:
在每一帧被产生的同时逐帧地提供所述帧流以供显示;以及
在所述动态媒体内容的预览的显示期间,提供一种或多种控制以帮助用户控制所述动态媒体内容。
6.按照权利要求1所述的方法,其中所述流插件与应用程序相关联,并且其中在不发起所述应用程序的情况下所述预览是可见的。
7.一种进行动态媒体内容预览的方法,包括:
第一沙箱化进程通过计算机从客户端进程接收对于动态媒体内容的预览的请求,所述第一沙箱化进程包括用于非原有内容的指定插件;
如果所述动态媒体内容是非原有内容类型,所述第一沙箱化进程通过计算机响应于接收到所述请求而在第二沙箱中启动第二沙箱化进程;
由计算机从所述动态媒体内容以预览特定格式产生帧流,所述帧流是由流插件产生的,其中所述流插件在所述第二沙箱中的所述第二沙箱化进程内执行,并且是由所述指定插件取回的;以及
由计算机提供所述帧流给所述客户端进程以显示在显示屏上。
8.按照权利要求7所述的方法,其中所述启动第二沙箱化进程还包括:
确定所述动态媒体内容的内容类型;
确定所述内容类型是非原有内容类型;以及
取回流插件以至少部分地基于所述动态媒体内容的所述非原有内容类型而将所述动态媒体内容转换成所述预览特定格式。
9.按照权利要求8所述的方法,还包括:
提供所述流插件和所述动态媒体内容给所述第二沙箱化进程。
10.按照权利要求7所述的方法,其中所述产生还包括:
为所述帧流中的每个帧单独地产生音频分量和视频分量。
11.按照权利要求7所述的方法,其中所述提供所述帧流还包括:
在每一帧被产生的同时逐帧地提供所述帧流给所述客户端进程以供显示;以及
在所述动态媒体内容的预览的显示期间,提供一种或多种控制给所述客户端进程以帮助用户控制所述动态媒体内容。
12.按照权利要求7所述的方法,其中所述流插件与应用程序相关联,并且其中在不发起所述应用程序的情况下所述预览是可见的。
13.一种进行动态媒体内容预览的系统,包括:
用于由计算机使用在第一沙箱中执行的沙箱化预览进程响应于对于具有非原有内容类型的动态媒体内容的预览的请求,启动在第二沙箱中执行的沙箱化流式预览进程的装置,其中所述沙箱化预览进程包括用于非原有内容的指定插件;
用于由计算机从所述动态媒体内容以预览特定格式产生帧流的装置,所述帧流是由流插件产生的,所述流插件是在所述第二沙箱中的所述沙箱化流式预览进程内执行的,并且是由所述指定插件取回的;以及
用于由计算机提供所述帧流作为所述动态媒体内容的预览的装置,所述预览在显示屏上是可见的。
14.按照权利要求13所述的系统,其中所述用于启动沙箱化流式预览进程的装置还包括:
用于确定所述动态媒体内容的内容类型的装置;以及
用于取回所述流插件以至少部分地基于所述动态媒体内容的所述内容类型而将所述动态媒体内容转换成所述预览特定格式的装置。
15.按照权利要求14所述的系统,还包括:
用于提供所述流插件和所述动态媒体内容给所述沙箱化流式预览进程的装置。
16.按照权利要求13所述的系统,其中所述用于产生的装置还包括:
用于为所述帧流中的每个帧单独地产生音频分量和视频分量的装置。
17.按照权利要求13所述的系统,其中所述用于提供所述帧流的装置还包括:
用于在每一帧被产生的同时逐帧地提供所述帧流以供显示的装置;以及
用于在所述动态媒体内容的预览的显示期间,提供一种或多种控制以帮助用户控制所述动态媒体内容的装置。
18.按照权利要求13所述的系统,其中所述流插件与应用程序相关联,并且其中在不发起所述应用程序的情况下所述预览是可见的。
19.一种进行动态媒体内容预览的系统,包括:
用于在第一沙箱化进程通过计算机从客户端进程接收对于动态媒体内容的预览的请求的装置,所述第一沙箱化进程包括用于非原有内容的指定插件;
用于如果所述动态媒体内容是非原有内容类型,在所述第一沙箱化进程通过计算机响应于接收到所述请求而在第二沙箱中启动第二沙箱化进程的装置;
用于由计算机从所述动态媒体内容以预览特定格式产生帧流的装置,所述帧流是由流插件产生的,其中所述流插件是在所述第二沙箱中的所述第二沙箱化进程内执行,并且是由所述指定插件取回的;以及
用于由计算机提供所述帧流给所述客户端进程以显示在显示屏上的装置。
20.按照权利要求19所述的系统,其中所述用于启动第二沙箱化进程的装置还包括:
用于确定所述动态媒体内容的内容类型的装置;
用于确定所述内容类型是非原有内容类型的装置;以及
用于取回流插件以至少部分地基于所述动态媒体内容的所述非原有内容类型而将所述动态媒体内容转换成所述预览特定格式的装置。
21.按照权利要求20所述的系统,还包括:
用于提供所述流插件和所述动态媒体内容给所述第二沙箱化进程的装置。
22.按照权利要求19所述的系统,其中所述用于产生的装置还包括:
用于为所述帧流中的每个帧单独地产生音频分量和视频分量的装置。
23.按照权利要求19所述的系统,其中所述用于提供所述帧流的装置还包括:
用于在每一帧被产生的同时逐帧地提供所述帧流给所述客户端进程以供显示的装置;以及
用于在所述动态媒体内容的预览的显示期间,提供一种或多种控制给所述客户端进程以帮助用户控制所述动态媒体内容的装置。
24.按照权利要求19所述的系统,其中所述流插件与应用程序相关联,并且其中在不发起所述应用程序的情况下所述预览是可见的。
CN201080038225.6A 2009-07-24 2010-07-20 进行动态媒体内容预览的方法和系统 Active CN102483782B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/509,401 2009-07-24
US12/509,401 US8626802B2 (en) 2009-07-24 2009-07-24 Dynamic media content previews
PCT/US2010/042606 WO2011011414A1 (en) 2009-07-24 2010-07-20 Dynamic media content previews

Publications (2)

Publication Number Publication Date
CN102483782A CN102483782A (zh) 2012-05-30
CN102483782B true CN102483782B (zh) 2015-04-01

Family

ID=42734859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080038225.6A Active CN102483782B (zh) 2009-07-24 2010-07-20 进行动态媒体内容预览的方法和系统

Country Status (7)

Country Link
US (2) US8626802B2 (zh)
EP (1) EP2457191A1 (zh)
JP (1) JP5575897B2 (zh)
KR (1) KR101392559B1 (zh)
CN (1) CN102483782B (zh)
HK (1) HK1171529A1 (zh)
WO (1) WO2011011414A1 (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110167345A1 (en) * 2010-01-06 2011-07-07 Jeremy Jones Method and apparatus for selective media download and playback
US9612715B2 (en) * 2010-06-28 2017-04-04 International Business Machines Corporation Real-time preview of uniform resource identifier addressable dynamic content
US9524531B2 (en) 2011-05-09 2016-12-20 Microsoft Technology Licensing, Llc Extensibility features for electronic communications
US20130167028A1 (en) * 2011-06-01 2013-06-27 Adobe Systems Incorporated Restricting media content rendering
US11210610B2 (en) * 2011-10-26 2021-12-28 Box, Inc. Enhanced multimedia content preview rendering in a cloud content management system
CN102436508B (zh) 2011-12-28 2013-08-14 奇智软件(北京)有限公司 基于沙箱技术浏览网页的方法及装置
US11232481B2 (en) 2012-01-30 2022-01-25 Box, Inc. Extended applications of multimedia content previews in the cloud-based content management system
US9186299B1 (en) * 2012-03-23 2015-11-17 Clark Levi Topical pharmaceutical compounds and methods
US9256733B2 (en) 2012-04-27 2016-02-09 Microsoft Technology Licensing, Llc Retrieving content from website through sandbox
KR102113683B1 (ko) 2013-03-06 2020-06-03 삼성전자주식회사 문지르기 제스처를 검출하여 미리보기를 제공하는 모바일 장치 및 그 제어 방법
US9514477B2 (en) * 2013-07-10 2016-12-06 AVG Netherlands B.V. Systems and methods for providing user-specific content on an electronic device
US10127536B2 (en) * 2013-11-11 2018-11-13 Microsoft Technology Licensing, Llc Unified content representation
US9563488B2 (en) 2014-05-29 2017-02-07 Apple Inc. Sharing extension points to allow an application to share content via a sharing extension
US20160192018A1 (en) * 2014-12-29 2016-06-30 Microsoft Technology Licensing, Llc Previewing content available at local media sources
US10025758B2 (en) * 2015-04-27 2018-07-17 Microsoft Technology Licensing, Llc Support for non-native file types in web application environment
US10419790B2 (en) 2018-01-19 2019-09-17 Infinite Designs, LLC System and method for video curation
US20210319166A1 (en) * 2020-04-10 2021-10-14 Microsoft Technology Licensing, Llc Editable multicell multicategory document presentation
US11907748B2 (en) * 2021-04-23 2024-02-20 VMware LLC Secure graphics processing unit (GPU) virtualization using sandboxing

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974549A (en) * 1997-03-27 1999-10-26 Soliton Ltd. Security monitor
CN101425016A (zh) * 2007-11-01 2009-05-06 珠海金山软件股份有限公司 运行安装软件的方法和系统

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6289371B1 (en) * 1998-09-30 2001-09-11 Hewlett-Packard Company Network scan server support method using a web browser
US6763377B1 (en) * 2000-03-03 2004-07-13 International Business Machines Corporation Asset management and scheduling graphical user interface for media streamer
US8166384B1 (en) * 2000-06-14 2012-04-24 Adobe Systems Incorporated Environment-based bookmark media
US20030052909A1 (en) * 2001-06-25 2003-03-20 Arcsoft, Inc. Real-time rendering of edited video stream
US20030023641A1 (en) * 2001-07-27 2003-01-30 Gorman William Phillip Web page authoring tool
US7269833B2 (en) * 2001-12-12 2007-09-11 Sun Microsystems, Inc. Scriptable plug-in application programming interface
JP2004312268A (ja) * 2003-04-04 2004-11-04 Mitsubishi Electric Corp マルチメディアコンテンツファイルのデータ構造、マルチメディアコンテンツ生成装置、及びマルチメディアコンテンツ閲覧装置
EP1618537A1 (en) * 2003-04-25 2006-01-25 Apple Computer, Inc. Method and system for network-based purchase and distribution of media
GB2415065B (en) 2004-06-09 2009-01-21 Symbian Software Ltd A computing device having a multiple process architecture for running plug-in code modules
US7512699B2 (en) * 2004-11-12 2009-03-31 International Business Machines Corporation Managing position independent code using a software framework
JP5000110B2 (ja) * 2005-08-24 2012-08-15 日本電気株式会社 折り畳み式携帯装置およびその筐体の製造方法
US7941813B1 (en) * 2006-02-17 2011-05-10 Parallels Holdings, Ltd. System and method for using virtual machine for driver installation sandbox
US8576922B2 (en) * 2007-06-10 2013-11-05 Apple Inc. Capturing media in synchronized fashion
US8516133B2 (en) 2008-02-07 2013-08-20 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for mobile device credentialing
US8381288B2 (en) * 2008-09-30 2013-02-19 Intel Corporation Restricted component access to application memory
US8301792B2 (en) * 2008-10-28 2012-10-30 Panzura, Inc Network-attached media plug-in
US9355554B2 (en) * 2008-11-21 2016-05-31 Lenovo (Singapore) Pte. Ltd. System and method for identifying media and providing additional media content
US8909806B2 (en) * 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
US9100810B2 (en) 2010-10-28 2015-08-04 Apple Inc. Management systems for multiple access control entities
US10271213B2 (en) 2011-05-06 2019-04-23 Apple Inc. Methods and apparatus for providing management capabilities for access control clients

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974549A (en) * 1997-03-27 1999-10-26 Soliton Ltd. Security monitor
CN101425016A (zh) * 2007-11-01 2009-05-06 珠海金山软件股份有限公司 运行安装软件的方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
APPLE INC.QUICK LOOK PROGRAMMING GUIDE.《QUICK LOOK PROGRAMMING GUIDE》.2009, *

Also Published As

Publication number Publication date
KR101392559B1 (ko) 2014-05-08
HK1171529A1 (zh) 2013-03-28
JP5575897B2 (ja) 2014-08-20
EP2457191A1 (en) 2012-05-30
WO2011011414A1 (en) 2011-01-27
US20140222874A1 (en) 2014-08-07
US20110022643A1 (en) 2011-01-27
JP2013500514A (ja) 2013-01-07
CN102483782A (zh) 2012-05-30
KR20120049291A (ko) 2012-05-16
US9317683B2 (en) 2016-04-19
US8626802B2 (en) 2014-01-07

Similar Documents

Publication Publication Date Title
CN102483782B (zh) 进行动态媒体内容预览的方法和系统
JP5551363B2 (ja) ドキュメントにおける統合チャート
US8176081B2 (en) Forms integration of an external data model not implemented through a document object model (DOM) accessible application programming interface (API)
US10572581B2 (en) System and method for web content presentation management
US20150089382A1 (en) Application context migration framework and protocol
TW201035852A (en) Dynamic generation of user interfaces and automated mapping of input data for service-oriented architecture-based system management applications
US10733361B2 (en) Content reproducing apparatus
KR101774267B1 (ko) 전자 문서의 공동 편집을 위한 협업 지원 장치 및 그 동작 방법
CN102693270A (zh) 用于内容管理和组件测试的可发布元数据
KR102040359B1 (ko) 상태 정보를 위한 동기화 지점
JPH1115723A (ja) マルチメディアデータ供給方法及びマルチメディアデータサーバ
WO2015121715A1 (en) Method of and system for generating metadata
WO2021004411A1 (zh) 一种媒体处理方法
JP7113000B2 (ja) 映像を生成するための方法および装置
CN114731343A (zh) 云服务的方法和装置
JP2016110339A (ja) 情報処理装置、その処理方法及びプログラム
US9679010B2 (en) Methods, systems, and apparatus for search of electronic information attachments
US9377988B2 (en) Displaying a consolidated resource in an overlapping area on a shared projection
JP5373533B2 (ja) 商品登録プログラム
JP2007257000A (ja) 文書共有システム、文書共有サーバ、文書共有方法、および文書共有用プログラム
US20140095984A1 (en) Information processing device, method and program recording medium
KR20170015157A (ko) 웹 컨텐츠의 렌더링과 관련된 전자 장치, 서버 및 제어 방법
JP2015106205A (ja) 電子帳票システム、帳票検索装置、制御方法、およびプログラム
JP2009069870A (ja) 情報処理装置、クライアントサーバシステム、ui制御方法、ui制御プログラム及び記録媒体

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1171529

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1171529

Country of ref document: HK