CN101952823A - 用于媒体发现的方法 - Google Patents

用于媒体发现的方法 Download PDF

Info

Publication number
CN101952823A
CN101952823A CN2008801064785A CN200880106478A CN101952823A CN 101952823 A CN101952823 A CN 101952823A CN 2008801064785 A CN2008801064785 A CN 2008801064785A CN 200880106478 A CN200880106478 A CN 200880106478A CN 101952823 A CN101952823 A CN 101952823A
Authority
CN
China
Prior art keywords
content
unit
plug
additional content
local
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.)
Granted
Application number
CN2008801064785A
Other languages
English (en)
Other versions
CN101952823B (zh
Inventor
N·斯塔夫拉科斯
M·A·梅尔尼克
J·罗雄
D·哈诺斯
S·卡帕托斯
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.)
Citrix Systems Inc
Original Assignee
Bytemobile 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 Bytemobile Inc filed Critical Bytemobile Inc
Publication of CN101952823A publication Critical patent/CN101952823A/zh
Application granted granted Critical
Publication of CN101952823B publication Critical patent/CN101952823B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9577Optimising the visualization of content, e.g. distillation of HTML documents

Abstract

一种方法包括:接收对网页的请求;通过接收与所请求的网页相关联的内容来与内容服务器进行通信;确定所述内容是否包括需要插件支持的特定内容;启动本地插件以处理所述特定内容;接收来自本地插件的对附加内容的请求;为本地插件获取附加内容;监视所述附加内容以确定所述附加内容是否包括媒体内容;以及基于所述监视来为所请求的网页更新内容。

Description

用于媒体发现的方法
技术领域
本申请要求于2007年7月10日提交的美国临时申请号60/948,907“Method for Media Discovery”的权益,该临时申请在此被并入以供参考。
背景技术
许多不同的设备包含能够显示网页的因特网web(网络)浏览器,例如台式/膝上型计算机、游戏控制台以及电话。虽然这些设备中的许多设备包含浏览器,但是这些浏览器的能力有很大的不同。例如,PCweb浏览器通常比电话浏览器功能强大得多。虽然PC浏览器支持各式各样的媒体/内容类型(例如HTML、GIF、JPEG、JavaScript、CSS等),但是手机浏览器可能仅支持更简单且更小的内容类型子集(例如xHTML-MP、PNG、GIF、CSS-MP)。而且,因特网上的大多数网页当今是针对PC浏览器设计和开发的,而只有相对少数的网页是针对电话浏览器开发的。
此外,PC浏览器能够借助被称为插件(plug-in)的扩展(extension)而被扩展以支持附加的内容类型。最初由Netscape浏览器开发且现在被大多数PC浏览器(例如Microsoft Intemet Explorer、Opera、Firefox等)所支持,Netscape插件API允许第三方软件开发者通过写入软件模块来扩展浏览器的内容类型支持,当浏览器遇到该插件已经向浏览器登记进行处理的内容类型时该浏览器调用所述软件模块。这种级别的扩展性对于电话浏览器是很少见的,并且仅可能出现在高端手机中。大众市场电话浏览器不具有扩展其功能性的方法,因此具有电话浏览器不能处理的内容类型的网页不会被正确地显示。可能受影响的此类流行插件包括Adobe Flash插件、Windows Media插件、Quicktime插件、Real Media插件等等。
近年来,多媒体内容在因特网舞台上急剧增加,其中许多网页提供视频内容。存在许多不同的用来向web浏览器递送视频的方法。这些不同的方法能够被宽泛地分到两个类别之一中。第一种是在web浏览器之外播放的媒体。在这个类别中,外部应用程序(一般是媒体播放器)将由浏览器起动并且将播放媒体内容。另一种类别被诸如YouTube、MySpace、Google Video、Yahoo Video之类的网站所推广,该类别不需要外部应用程序而是借助插件在网页内递送视频。此外,这些站点允许其它网站(例如博客)借助插件的使用在其网页内嵌入相同视频。该视频被从流行站点(例如YouTube)递送到web浏览器,但在另一第三方网站内显示。这种将视频从视频共享站点链接到任何其它站点的能力只会进一步促进视频在网站中的使用。
如上面所提及的,因为电话web浏览器一般不支持插件API(诸如Netscape插件API),所以它们不能播放来自那些流行站点或者将视频嵌入其站点的站点的视频。由于web浏览器不支持必要的插件,使得用户可获得这些类型的视频的两种现有技术包括(1)人工识别/硬编码方法和(2)电话web浏览器友好站点方法。
在人工识别/硬编码方法中,人工分析网站并且确定从该特定网站中提取视频的方法。中间节点修改对视频网站的访问并且将网页中的插件转换成到视频的链接。这种转换是针对每个网站而被硬编码的。如果电话上的web浏览器指向不具有这种硬编码的网站(即YouTube),则该中间节点将不能识别该视频并且手机将不能播放该视频。而且,如果已经硬编码的站点改变其用来为本身获取(retrieve)视频的方法,则先前硬编码的方法可能不再起作用。
在电话web浏览器友好站点方法中,对每个站点执行相同的调查以识别该站点如何递送视频内容。但现在这种信息被用来创建网站,该网站能够被电话web浏览器访问并且电话web浏览器能够播放来自该网站的视频。当前存在两种类型的电话web浏览器友好站点:(1)网站,例如m.youtube.com移动网站,它们本身进行“电话web浏览器友好”分析并且为电话呈现网页;以及(2)“聚合器(aggregator)”站点,为若干不同的网站进行“电话web浏览器友好”并且为否则将不能进行电话访问的网站显示(prove)电话友好界面。这种方法具有如先前方法中所描述的相同限制。
发明内容
相比而言,本专利申请的系统和方法的实施例能够自动地发现网页上的媒体内容而无需对网站进行先验分析且不用执行任何种类的硬编码以访问媒体。这种用于识别媒体内容的新方法和系统将大大地提高电话web浏览器在没有分析各个网站的人工且耗时步骤的情况下能够访问的视频站点的数量。
附图说明
图1是示例性系统的框图。
图2图示了实施代理辅助的媒体发现的示例性系统的框图。
图3是图示图2的示例性系统中的示例性通信流的功能图。
图4是图示图3的示例性系统中的另外示例性通信流的功能图。
图5是表示用于实施媒体发现的示例性方法的流程图。
图6图示了实施基于插件的媒体发现的示例性系统的框图。
图7是图示图6的示例性系统中的示例性通信流的功能图。
图8是表示用于实施基于插件的媒体发现的示例性方法的流程图。
具体实施方式
现在将详细参照根据本发明实施的示例性实施例,其示例被示于附图中。在可能的情况下,相同的附图标记将在所有附图中用来指代相同或相似的部件。
以下实施例描述了用于媒体发现的方法和系统,其识别媒体内容并且使得该媒体内容可由电话访问,所述媒体内容否则由于电话的限制而是不可访问的内容。一旦发现一个或多个媒体文件,网页内容就能够被直接地或间接地修改。能够通过插入图像和/或链接到网页的标记语言中来直接地修改该内容以使得电话web浏览器用户能够点击该图像或链接来播放该媒体内容。能够通过插入电话web浏览器能够执行的脚本(例如JavaScript)来间接地修改该内容,从而用用户能够点击以播放媒体内容的适当链接来更新电话web浏览器上的网页。
该方法和系统的实施例能够利用支持特定媒体类型的预先存在的第三方插件,而不是对这些媒体类型实施可替换的插件或者检验/解析媒体类型的内容。而是,这些实施例监视本地插件和它们访问的媒体服务器之间的交互。这种监视能够在若干不同的位置处进行;下面描述由这些位置提供的若干这些类型的交互。
图1是示例性系统100的框图。示例性系统100能够是通过诸如无线网络、因特网等之类的网络来传输数据的任何类型的系统。例如,示例性系统能够包括浏览器,该浏览器请求通过因特网来访问来自内容服务器的内容。除了别的以外,示例性系统能够包括用户代理102、客户端设备104、网关106、一个或多个网络108、112、优化服务器110、以及一个或多个内容服务器114-116。
用户代理102是与网络协议一起使用的客户端应用程序。例如,用户代理102可以是web浏览器、搜索引擎爬虫、屏幕读取器或Braille浏览器,并且用户代理102可以被用来访问因特网。用户代理102能够是软件程序,其将请求数据(例如,HTTP/HTTPS/WAP/WAIS/Gopher/RTSP请求等)传输到web服务器并且接收响应于该请求数据的响应数据。例如,用户代理102能够通过特定媒体文件或网页的URL发送对特定媒体文件或网页的请求数据到内容服务器114-116,并且网页的内容服务器能够查询数据库中的对象数据并且能够将该对象数据作为响应数据(例如HTTP/WAP响应数据)的一部分发送回用户代理102。这个过程继续进行直到网页中的每个对象已经下载到用户代理为止。
客户端设备104是能够访问远程服务的计算机程序或硬件设备。客户端设备104能够接收来自用户代理102的请求数据,能够将该请求数据传输到内容服务器,并且能够接收响应于该请求数据的响应数据。例如,客户端设备104能够是Bytemobile优化客户端软件。在一些实施例中,用户代理102和客户端设备104能够容纳在相同设备(例如计算机、PDA、蜂窝电话、膝上型计算机或者任何访问因特网的设备)中。在一些实施例中,客户端设备104能够被除去并且其功能能够被包括在用户代理102中。
网关106是将一种类型的网络中提供的格式化数据转换成为另一类型的网络所需的特定格式的设备。网关106例如可以是服务器、路由器、防火墙服务器、主机或代理服务器。网关106具有将从客户端设备104接收的信号转换成网络108能够理解的信号以及反之亦然的能力。网关106可以能够单独或以任何组合来处理音频、视频以及T.120传输,并且能够进行全双工媒体翻译。
网络108和112能够包括适合于联网通信(诸如因特网通信)的广域网(WAN)、局域网(LAN)或者无线网络的任何组合。
代理110是在网关106和内容服务器114-116之间提供通信的服务器。例如,代理110可以是Bytemobile优化服务节点。代理110能够通过给客户实现显著更快且更可靠的服务来优化性能。
内容服务器114-116是接收来自用户代理102的请求数据、相应地处理请求数据并将响应数据返回到用户代理102的服务器。例如,内容服务器114-116能够是web服务器、企业服务器或者任何其它类型的提供内容(诸如网页内容和/或媒体数据)的服务器。内容服务器114-116能够是负责接受来自用户代理的HTTP请求并且向用户代理提供网页的计算机或计算机程序。
图2图示了实施代理辅助的媒体发现或基于浏览器的媒体发现的示例性系统200的框图。除了别的以外,示例性系统200能够包括用户代理102、代理110、浏览器代理202、本地插件204以及内容服务器114,该内容服务器114例示一个或多个内容服务器。
浏览器代理202是接收来自代理110的拦截请求并且相应地处理这些请求的硬件部件和/或软件模块。浏览器代理202能够直接与内容服务器114通信或者能够通过代理110间接与内容服务器114通信。此外,浏览器代理202能够基于拦截的请求来再现(render)网页。例如,这种再现可以包括对浏览器执行相关联的JavaScript和插件扩展。基于这种再现,浏览器代理202可以创建插件,诸如本地插件204,以便该网页能够被正确地显示。在创建插件后,浏览器代理202能够监视本地插件204就媒体内容向内容服务器114所做的URL请求。在一些实施例中,浏览器代理202能够提供内容改编,诸如在题为“ContentAdaptation”的美国申请号11/636,033中描述的内容改编,该申请在此被并入以供参考。在一些实施例中,如果用户代理102是电话web浏览器,则浏览器代理202具有重新格式化网页以适应在电话的小屏幕内的能力。虽然浏览器代理202被示为与代理110分开的项目,但是本领域普通技术人员会明白浏览器代理202和代理110可以是单个项目。
本地插件204是第三方提供的插件,其一般向浏览器登记以处理特定内容类型。例如,web浏览器往往使用插件来播放媒体文件。本地插件204能够由浏览器代理202基于所请求的内容例如网页是否需要特殊插件支持来创建。在其中所请求的内容包括媒体数据的一些实施例中,本地插件204能够被创建以接收用于执行的媒体数据。
图3是图示图2的示例性系统中的示例性通信流的功能图。在代理辅助的媒体发现实施例中,用户代理102传输(301)对来自内容服务器114的web内容的HTTP请求,其中代理110拦截该请求。在拦截了这个请求时,代理110将该请求转发(302)到浏览器代理202。然后浏览器代理202能够请求(303)从内容服务器114直接地(如图所示)或者间接地(例如通过代理110)下载所请求的web内容。内容服务器114能够提供(304)所有请求的web内容到浏览器代理202,该浏览器代理202试图再现该内容。
在这个网页的再现期间,如果web内容含有任何需要特殊插件支持(例如Adobe Flash插件)的内容,则浏览器代理202创建(305)本地插件204,其中通过将需要该支持的特定内容提供给本地插件204来将该本地插件登记来处理该特定内容。在执行时,如果附加内容被检测到并需要被下载,则本地插件204能够请求(306)浏览器代理202下载该附加内容。在一些实施例中,本地插件204能够将该请求传送到内容服务器114并且直接从内容服务器114接收内容。浏览器代理202能够存储与附加内容相关联的URL。为了下载附加内容,浏览器代理202向代理110提供(307)附加内容的URL。代理110然后将附加内容的URL转发(308)到内容服务器114,该内容服务器114用对应的内容向代理110做出响应(309)。
代理110能够被动地监视或检验该附加内容以确定该附加内容是否包括要由本地插件204下载的媒体文件。如果响应数据不是媒体文件,则代理110能够将响应数据转发(310)到浏览器代理202,该浏览器代理202进而将响应内容转发(311)到本地插件204以供进一步处理。
另一方面,如果响应数据是媒体文件,则代理110将数据转发(310)到浏览器代理202。此时,浏览器代理202能够传输(311)响应数据或短的媒体文件到本地插件204。在一些实施例中,如果短的媒体文件被发送到本地插件,则浏览器代理202丢弃来自所请求URL的响应数据。响应于步骤311处的传输,如果本地插件204做出另一响应,则能够重复始于URL请求步骤306的类似过程。
能够基于是要播放单个媒体文件还是播放一系列媒体文件(播放列表)来确定浏览器代理202丢弃响应数据和发送短的媒体剪辑的选项。例如,短的视频剪辑可以被发送以帮助找到该播放列表。针对AdobeFlash插件的播放列表被嵌入在插件代码的内容中,因此本地插件204将可能请求多个视频文件并创建播放列表。为了快速完成(get through)这个播放列表,即使插件请求了视频,也能够发送短的视频剪辑以欺骗该插件因此该插件能够快速地请求第二、第三等视频剪辑。
响应于找到单个媒体文件,代理110能够发送(312)消息到浏览器代理202以通知浏览器代理202其刚转发的响应数据是媒体文件。浏览器代理202能够使用来自所接收消息的信息并且适当地更新网页(例如,通过插入图像和链接到网页中以允许用户点击该链接和播放该媒体)。此外,浏览器代理202能够将URL与媒体文件相关联。当网页的处理完成时,浏览器代理202能够发送(313)所得到的网页数据到代理110,该代理110能够将该数据转发(314)到用户代理102以显示该页。
另一方面,对于其中要播放一系列媒体文件的情形,如果本地插件204请求一个或多个附加媒体文件,则浏览器代理202能够记住URL以及先前的URL并且生成播放列表。如果本地插件204没有发出另外请求,则浏览器代理202能够停止本地插件204,并且浏览器代理202将所得到的网页发送(313)回代理110,该代理110将该响应转发(314)到用户代理102。
如上所指示的,在一些实施例中,代理110和浏览器代理202能够被累积成单个代理。本领域普通技术人员将会明白,图3的示例性通信流能够被修改以适应具有代理110和浏览器代理202这两者的特征的单个中间代理。
图4是图示图3的示例性系统200中的另外示例性通信流的功能图。图4还图示了示例性系统200如何与网络的其它部件一起工作以向用户代理101提供媒体数据。例如,如上面在步骤312所示,浏览器代理202可以接收来自代理110的通知:特定内容与媒体文件有关。浏览器代理202能够通过插入图像和/或链接(统称为插入的数据)以及所分配的用于识别插入到网页中的数据的令牌来更新网页。在令牌被分配后,浏览器代理202能够传输(410)令牌和媒体文件数据的位置(诸如媒体文件数据的URL)到控制及状态模块402,该控制及状态模块402存储该信息以供稍后获取。
一旦用户代理102在步骤314接收到该网页,用户代理102处的用户就能够选择插入的数据以查看该媒体文件。用户代理102能够将具有该令牌的消息传输(420)到媒体代码转换器404。例如,令牌可以借助插件所插入的并且由用户点击的链接来传输。在一些实施例中,媒体代码转换器404可以是如题为“Adaptive Bitrate Management forStreaming Media Over Packet Networks”的美国申请号_________<代理人案号09266.0024>中提供的自适应比特率管理器,该申请在此并入以供参考。媒体代码转换器404能够通过提供令牌以交换所存储的媒体文件位置数据来与控制及状态模块402通信(430)。在接收到媒体文件位置数据时,媒体代码转换器404与内容服务器114通信(440)以获得媒体文件。在获得媒体文件后,媒体代码转换器404能够相应地处理媒体文件并且将媒体文件传输(450)到用户代理102。
图5是表示用于实施媒体发现的示例性方法的流程图。参照图5,本领域普通技术人员将很容易明白,所示的过程能够被更改以删除步骤或者进一步包括附加步骤。在最初开始步骤500后,代理服务器(例如,代理110和/或浏览器代理202)接收(502)来自移动设备的对内容(例如网页)的请求。在一些实施例中,代理服务器可以实际上拦截移动设备和具有请求的内容的内容服务器之间的通信。在接收到请求后,代理服务器向内容服务器请求(504)所请求的内容。在接收到所请求的内容时,代理服务器再现(506)该内容。
在再现该内容时,代理服务器能够确定(508)所请求的内容是否包括需要特殊插件支持的内容。如果否,则该方法进行到连接符524。另一方面,如果所请求的内容确实包括需要特殊插件支持的内容,则代理服务器能够创建(510)本地插件以处理该内容。
在此后的某个时刻,代理服务器可以接收(512)来自本地插件的对附加内容的请求。然后代理服务器与内容服务器通信(514)以获得附加内容。在接收到附加内容后,代理服务器确定(516)所获得的附加内容包括一个或多个媒体文件。如果否,则代理服务器发送(518)所请求的附加内容到本地插件并且该方法能够进行到连接符524。如果所请求的媒体内容确实包括一个或多个媒体文件,则代理服务器发送(520)附加内容到本地插件并且例如通过包括图片和/或链接以替代媒体文件来更新(522)web内容。图片/链接将使移动设备的用户代理处的用户具有点击图片/链接以访问媒体文件的能力。此外,因为媒体文件最初并不与要传输到用户代理的所请求内容包括在一起,所以用于下载内容的时间能够被显著地减少。
在更新内容后,该方法行经连接符524并且代理服务器传输(526)web内容到移动设备。在传输后,该方法能够结束524。
图6图示了实施基于插件的媒体发现的示例性系统600的框图。除了别的以外,示例性系统600能够包括用户代理102、浏览器代理602、媒体发现插件604、本地插件606以及内容服务器114,该内容服务器114例示一个或多个内容服务器。
浏览器代理602是接收来自用户代理102的请求并且相应地处理这些请求的硬件部件和/或软件模块。浏览器代理602是中间代理,其能够包括仅浏览器代理或者代理和浏览器代理(例如代理110和浏览器代理202)这两者。浏览器代理能够直接与内容服务器114通信。此外,浏览器代理602能够在接收到所请求的内容时再现网页。例如,这种再现可以包括对浏览器执行相关联的JavaScript和插件扩展。基于这种再现,浏览器代理602可以创建插件,诸如媒体发现插件604和/或本地插件606,以使得该网页能够被正确地显示。在一些实施例中,浏览器代理602能够提供内容改编,诸如在题为“Content Adaptation”的美国申请号11/636,033中描述的内容改编,该申请在此被并入以供参考。在一些实施例中,如果用户代理102是电话web浏览器,则浏览器代理602具有重新格式化网页以适应在电话的小屏幕内的能力。
媒体发现插件604能够是标准的(例如使用Netscape插件API实施的)浏览器插件,其向浏览器登记以处理一组特定内容类型(例如,Shockwave Flash内容)。具体而言,其向浏览器代理602登记以处理本地插件606能够处理的内容类型。在启动本地插件606后,媒体发现插件604能够监视本地插件606就媒体内容向内容服务器114所做的URL请求。例如,媒体发现插件604可以将web浏览器API暴露于本地插件606就好像媒体发现插件604是web浏览器。
在一些实施例中,媒体发现插件604不需要启动本地插件606。在这些实施例中,媒体发现插件604接收特定内容、检查内容并且如果需要的话向内容服务器114请求附加内容。如果其接收到附加内容,则媒体发现插件604能够检查该内容以确定是否包括媒体内容。
本地插件606是第三方提供的插件,其一般向浏览器登记以处理特定内容类型。例如,web浏览器往往使用插件来播放媒体文件。本地插件606能够基于所请求的内容例如网页是否需要特殊插件支持而由媒体发现插件604或浏览器代理602创建。在其中所请求的内容包括媒体数据的一些实施例中,本地插件606能够被创建以接收用于执行的媒体数据。因为本地插件606认为媒体发现插件604是web浏览器,所以本地插件606能够与媒体发现插件604交互就好像其是web浏览器。
图7是图示图6的示例性系统600中的示例性通信流的功能图。在基于插件的媒体发现实施例中,用户代理102传输(701)对web内容的请求,诸如HTTP请求或WAP请求。在一些实施例中,浏览器代理602拦截该请求,而在其它实施例中用户代理102直接将该请求发送到浏览器代理602。在接收到该请求时,浏览器代理602请求(702)从内容服务器114下载所有请求的内容。内容服务器114提供(703)所请求的内容到浏览器代理602,该浏览器代理602然后处理该数据。此外,本领域普通技术人员将会明白,图6-7中提供的实施例能够被并入图4中提供的示例性系统中。
在对该内容的处理期间,如果内容含有任何需要特殊插件支持(例如Adobe Flash插件)的内容,则浏览器代理602通过发送特定内容数据到媒体发现插件604来创建(704)媒体发现插件604的实例。在接收到特定内容时,媒体发现插件604检验数据并且通过将该特定内容数据传送到本地插件606来创建(705)本地插件606的实例。在一些实施例中,不需要创建本地插件606并且媒体发现插件604被用来实施媒体发现。本地插件606能够检验该数据并执行与在其由web浏览器执行的情况完全相同或类似的功能。
在执行时,如果附加内容被检测到并需要被下载,则本地插件606请求(706)媒体发现插件604下载引用该附加内容的URL。媒体发现插件604记录该URL请求并且将该请求转发(707)到浏览器代理602。
在接收到该请求后,浏览器代理602能够发出(708)请求到内容服务器114以获取附加内容。内容服务器114接着用所请求的附加内容做出响应(709)。因为HTTP请求由插件做出,所以浏览器代理602能够仅转发(710)附加内容到媒体发现插件604,该媒体发现插件604能够被动地监视或检验附加内容。如果附加内容包括媒体内容,则媒体发现插件604能够记录:请求该数据的URL对应于媒体文件。此时,媒体发现插件604能够传输(711)附加内容或短的媒体文件到本地插件606。在一些实施例中,如果短的媒体文件被发送到本地插件606,则媒体发现插件604能够丢弃来自所请求URL的附加内容。此外,响应于在步骤711接收响应数据,如果本地插件606做出另一响应,则重复始于URL请求步骤706的完全相同过程。
能够基于是要播放单个媒体文件还是播放一系列媒体文件(播放列表)来确定媒体发现插件604丢弃附加内容和发送短的媒体剪辑的选项。例如,短的视频剪辑可以被发送以帮助找到该播放列表。针对Adobe Flash插件的播放列表被嵌入在插件代码的内容中,因此本地插件606将可能请求多个视频文件并创建播放列表。为了快速完成这个播放列表,即使插件请求了视频,也能够发送短的视频剪辑以欺骗本地插件606因此该插件能够快速地请求第二、第三等视频剪辑。
在其中发现单个媒体文件的情形中,媒体发现插件604能够向浏览器代理602发出(712)命令以将图像和/或链接连同所分配的令牌一起插入到终端用户能够点击以查看该视频的内容中。另一方面,对于其中发现一系列媒体文件(例如本地插件请求来自附加内容的一个或多个附加媒体文件)的情形,媒体发现插件604能够记住URL以及先前的URL并且生成播放列表。如果本地插件606没有发出另外的请求,则浏览器代理602能够停止媒体发现插件604,该媒体发现插件604进而停止本地插件606。然后浏览器代理602能够将所得到的内容发送(713)回用户代理102。
图8是表示用于实施基于插件的媒体发现的示例性方法的流程图。参照图8,本领域普通技术人员将很容易明白,所图示的过程能够被更改以删除步骤或者进一步包括附加步骤。在最初开始步骤800后,代理服务器(例如,代理110和/或浏览器代理202)接收(802)来自移动设备的对web内容(例如网页)的请求。在一些实施例中,代理服务器可以实际上拦截移动设备和具有请求的内容的内容服务器之间的通信。在接收到请求后,代理服务器向内容服务器请求(804)所请求的内容。在接收到所请求的内容时,代理服务器检查(806)该内容。在一些实施例中,代理服务器能够通过再现该内容来检查该内容。在检查了该内容时,代理服务器能够确定(808)所请求的内容是否包括需要特殊插件支持的内容。如果否,则该方法进行到连接符828。
另一方面,如果所请求的内容确实包括需要特殊插件支持的内容,则代理服务器能够通过提供所请求的内容到媒体发现插件来创建(810)媒体发现插件。在接收到所请求的内容后,媒体发现插件还针对特殊插件支持来检验(812)特定内容。在定位需要特殊插件支持的该内容时,媒体发现插件创建(814)本地插件以通过提供所请求内容的至少一部分到本地插件来处理特定内容。在一些实施例中,不需要创建本地插件606并且媒体发现插件604被用来实施媒体发现。在此后的某个时刻,媒体发现插件和/或代理服务器可以接收(816)来自本地插件的对媒体内容的请求。然后代理服务器和/或媒体发现插件与内容服务器通信(818)以获得附加内容。在接收到附加内容后,媒体发现插件确定(820)所获得的内容是否包括一个或多个媒体文件。如果否,则媒体发现插件仅提供(822)所请求的媒体内容到本地插件。
如果所获得的内容确实包括一个或多个媒体文件,则媒体发现插件发送(824)附加内容到本地插件以供处理。此外,代理服务器和/或媒体发现插件通过包括图片和/或链接以替代媒体文件来更新(826)内容。图片/链接将使移动设备的用户代理处的用户具有点击图片/链接以访问媒体文件的能力。此外,因为媒体文件最初不与要传输到用户代理的所请求内容包括在一起,所以用于下载内容的时间能够被显著地减少。
在更新内容后,该方法行经连接符828并且代理服务器传输(830)所请求的内容到移动设备。在传输后,该方法能够结束832。
本文所公开的方法可以被实施为计算机程序产品,即有形地包含在信息载体中(例如在机器可读存储设备中或在传播信号中)以供数据处理设备(例如可编程处理器、计算机或多个计算机)执行或控制数据处理设备的操作的计算机程序。计算机程序能够以任何形式的编程语言进行编写,包括汇编或解释语言,并且其能够被部署成任何形式,包括作为独立程序或作为模块、组件、子例程或者其它适合用于计算环境中的单元。计算机程序能够被部署成在一个计算机上或在多个计算机上执行,所述计算机位于一个站点或分布在多个站点上且由通信网络互连。
在前面的说明书中,已经参照特定的示例性实施例描述了本发明。然而,显然的是,在不偏离所附权利要求所阐述的发明的较宽精神和范围的情况下可以做出各种修改和改变。说明书和附图因而应被认为是说明性的而不是限制性的含义。通过考虑说明书和实践本文公开的发明,本发明的其它实施例对于本领域技术人员会是很明显的。

Claims (15)

1.一种方法,包括:
接收对网页的第一请求;
通过接收与所请求的网页相关联的内容来与内容服务器进行通信;
确定所述内容是否包括需要插件支持的特定内容;
启动插件以处理所述特定内容;
基于对所述特定内容的检查来获得附加内容;
监视所述附加内容以确定所述附加内容是否包括媒体内容;以及
基于所述监视来为所请求的网页更新内容。
2.权利要求1的方法,其中启动插件包括启动本地插件以处理所述特定内容。
3.权利要求2的方法,其中获得附加内容包括接收来自本地插件的对附加内容的第二请求以及为本地插件获取附加内容。
4.权利要求1的方法,其中启动插件包括当所述内容包括需要插件支持的特定内容时启动媒体发现插件,其中所述媒体发现插件执行所述监视。
5.权利要求4的方法,还包括当所述内容包括需要插件支持的特定内容时由媒体发现插件启动本地插件。
6.权利要求5的方法,其中获得附加内容包括接收来自本地插件的对附加内容的第二请求以及为本地插件获取附加内容。
7.一种方法,包括:
接收需要插件支持的内容;
启动本地插件以处理特定内容;
接收来自本地插件的对附加内容的请求;
为本地插件获取附加内容;
监视所述附加内容以确定所述附加内容是否包括媒体内容;以及
向代理服务器提供通知,其中所述通知向代理服务器告知所述附加内容包括媒体内容。
8.一种系统,包括:
用户代理,传输对网页的第一请求;
代理服务器,其被配置成接收对网页的第一请求、通过接收与所请求的网页相关联的内容来与内容服务器进行通信、确定所述内容是否包括需要插件支持的特定内容、启动插件以处理所述特定内容、基于对所述特定内容的检查来获得附加内容、监视所述附加内容以确定所述附加内容是否包括媒体内容;以及基于所述监视来为所请求的网页更新内容。
9.权利要求8的系统,其中所述插件是媒体发现插件,其被配置成在所述内容包括需要插件支持的特定内容时被启动。
10.权利要求9的系统,其中所述媒体发现插件启动本地插件并且监视所述附加内容。
11.权利要求10的系统,其中所述媒体发现插件通过接收来自本地插件的对附加内容的第二请求以及为本地插件获取附加内容来获得附加内容。
12.权利要求8的系统,其中所述插件是本地插件,其被配置成在所述内容包括需要插件支持的特定内容时被启动。
13.权利要求12的系统,其中所述代理服务器接收来自本地插件的对附加内容的第二请求以及为本地插件获取附加内容。
14.一种存储指令的计算机可读媒介,所述指令在由计算机执行时使得计算机执行媒体发现的方法,所述方法包括:
接收对网页的第一请求;
通过接收与所请求的网页相关联的内容来与内容服务器进行通信;
确定所述内容是否包括需要插件支持的特定内容;
启动插件以处理所述特定内容;
基于对所述特定内容的检查来获得附加内容;
监视所述附加内容以确定所述附加内容是否包括媒体内容;以及
基于所述监视来为所请求的网页更新内容。
15.一种存储指令的计算机可读媒介,所述指令在由计算机执行时使得计算机执行媒体发现的方法:
接收需要插件支持的内容;
启动本地插件以处理特定内容;
接收来自本地插件的对附加内容的请求;
为本地插件获取附加内容;
监视所述附加内容以确定所述附加内容是否包括媒体内容;以及
向代理服务器提供通知,其中所述通知向代理服务器告知所述附加内容包括媒体内容。
CN2008801064785A 2007-07-10 2008-07-10 用于媒体发现的方法 Active CN101952823B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US94890707P 2007-07-10 2007-07-10
US60/948907 2007-07-10
PCT/US2008/008509 WO2009009123A2 (en) 2007-07-10 2008-07-10 Method for media discovery

Publications (2)

Publication Number Publication Date
CN101952823A true CN101952823A (zh) 2011-01-19
CN101952823B CN101952823B (zh) 2013-05-22

Family

ID=40202847

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008801064785A Active CN101952823B (zh) 2007-07-10 2008-07-10 用于媒体发现的方法

Country Status (4)

Country Link
US (1) US7987243B2 (zh)
EP (1) EP2176796A2 (zh)
CN (1) CN101952823B (zh)
WO (1) WO2009009123A2 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013075582A1 (zh) * 2011-11-25 2013-05-30 腾讯科技(深圳)有限公司 一种处理信息的方法、浏览装置以及存储介质
CN104038510A (zh) * 2013-03-04 2014-09-10 腾讯科技(深圳)有限公司 iOS系统透明代理的实现方法及系统
CN104364762A (zh) * 2012-04-10 2015-02-18 斯波帝范公司 通过网页控制本地应用程序的系统和方法
CN104541262A (zh) * 2012-06-29 2015-04-22 茨特里克斯系统公司 用于富因特网应用的透明网络内适配的系统和方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090089420A1 (en) * 2007-10-01 2009-04-02 Michael Caruso Flash tracking system and method
JP2011009904A (ja) * 2009-06-24 2011-01-13 Hitachi Ltd 無線映像配信システム、コンテンツビットレート制御方法及びコンテンツビットレート制御プログラムを記憶したコンピュータ読み取り可能な記録媒体
US9357269B2 (en) * 2009-11-17 2016-05-31 Broadcom Corporation Method and system for providing secure handling of information for complete internet anywhere
US8448214B2 (en) * 2009-11-17 2013-05-21 Broadcom Corporation Method and system for providing complete internet anywhere with partial server processing
US8799357B2 (en) * 2010-11-08 2014-08-05 Sony Corporation Methods and systems for use in providing a remote user interface
WO2015041711A1 (en) 2013-09-20 2015-03-26 Yottaa, Inc. Systems and methods for managing loading priority or sequencing of fragments of a web object
CN111857985A (zh) * 2020-06-08 2020-10-30 远光软件股份有限公司 浏览器插件的调用方法、装置、存储介质及终端

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040073102A (ko) * 2003-02-13 2004-08-19 노용만 컨텐츠 적응변환에 있어 사용자 선호기반 형식 변환을위한 시스템적 접근방법
US20050165789A1 (en) * 2003-12-22 2005-07-28 Minton Steven N. Client-centric information extraction system for an information network
JP5618480B2 (ja) * 2005-08-19 2014-11-05 グーグル インコーポレイテッド プラグインモジュールからの情報コンテンツをユーザーインターフェース内で表示するためのソフトウエアアーキテクチャ

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013075582A1 (zh) * 2011-11-25 2013-05-30 腾讯科技(深圳)有限公司 一种处理信息的方法、浏览装置以及存储介质
CN104364762A (zh) * 2012-04-10 2015-02-18 斯波帝范公司 通过网页控制本地应用程序的系统和方法
CN104364762B (zh) * 2012-04-10 2018-01-30 斯波帝范公司 通过网页控制本地应用程序的系统和方法
US9935944B2 (en) 2012-04-10 2018-04-03 Spotify Ab Systems and methods for controlling a local application through a web page
US10999271B2 (en) 2012-04-10 2021-05-04 Spotify Ab Systems and methods for controlling a local application through a web page
US11775355B2 (en) 2012-04-10 2023-10-03 Spotify Ab Systems and methods for controlling a local application through a web page
CN104541262A (zh) * 2012-06-29 2015-04-22 茨特里克斯系统公司 用于富因特网应用的透明网络内适配的系统和方法
CN104541262B (zh) * 2012-06-29 2018-04-10 茨特里克斯系统公司 用于富因特网应用的透明网络内适配的系统和方法
CN104038510A (zh) * 2013-03-04 2014-09-10 腾讯科技(深圳)有限公司 iOS系统透明代理的实现方法及系统
WO2014135045A1 (en) * 2013-03-04 2014-09-12 Tencent Technology (Shenzhen) Company Limited Method and system for implementing transparent agent of ios system
CN104038510B (zh) * 2013-03-04 2018-11-09 腾讯科技(深圳)有限公司 iOS系统透明代理的实现方法及系统

Also Published As

Publication number Publication date
US20090019151A1 (en) 2009-01-15
CN101952823B (zh) 2013-05-22
WO2009009123A2 (en) 2009-01-15
WO2009009123A3 (en) 2009-03-19
EP2176796A2 (en) 2010-04-21
US7987243B2 (en) 2011-07-26

Similar Documents

Publication Publication Date Title
CN101952823B (zh) 用于媒体发现的方法
US9479343B2 (en) Engine for processing content rules associated with locations in a page
AU2008200613B2 (en) Tracking web server
US7814083B2 (en) Method and system for supporting information access and record media therefor
CN103150513B (zh) 拦截应用程序中的植入信息的方法及装置
US20160173651A1 (en) Conditional Logic for Delivering Computer-Executable Program Instructions and Content
CA2734774A1 (en) A user-transparent system for uniquely identifying network-distributed devices without explicitly provided device or user identifying information
KR102504075B1 (ko) 사용자 디바이스 이벤트의 매칭 및 속성
CN101454764A (zh) 独立ActionScript分析工具和技术
CN101390080A (zh) 基于查询部分来供应高速缓存的查询结果
CN101405723A (zh) 初始动态呈现控件数据估计
KR100856117B1 (ko) 정보 제공 시스템 및 방법
US9356845B1 (en) System and method for audience segment profiling and targeting
CN108667915B (zh) 信息推送系统、方法和装置
CN113590985B (zh) 页面跳转配置方法、装置、电子设备和计算机可读介质
CN1972285A (zh) 用于生成统一资源定位符的拦截器组件和方法
KR101029990B1 (ko) 접속 정보 제공 시스템 및 방법
KR20030041856A (ko) 정보 전송 및 수집 방법과 정보 전송 시스템 및컴퓨터-사용가능 운송 매체
WO2009066957A2 (en) System for providing web service linked with portal site to web site, and method thereof
CN104202310A (zh) 一种在移动设备和计算设备之间建立连接的方法和装置
KR20170027327A (ko) 통신 부하를 발생시키지 않는 데이터 교환 방법
KR101517611B1 (ko) 통신 부하를 발생시키지 않는 동영상 제공 방법
KR20120016335A (ko) 오프라인 실행을 위한 웹 페이지 사전 캐싱 시스템 및 방법
KR100921013B1 (ko) 콘텐츠 전달 서비스 방법 및 이를 위한 장치
CN116701185A (zh) 实时任务的代码调试方法及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: CITRIX SYSTEMS INC

Free format text: FORMER OWNER: BYTEMOBILE INC.

Effective date: 20131225

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

Effective date of registration: 20131225

Address after: American Florida

Patentee after: Citrix Systems Inc

Address before: American California

Patentee before: Bytemobile Inc.

ASS Succession or assignment of patent right

Owner name: BYTEMOBILE INC.

Free format text: FORMER OWNER: CITRIX SYSTEMS INC

Effective date: 20150811

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

Effective date of registration: 20150811

Address after: American Florida

Patentee after: Bytemobile Inc.

Address before: American Florida

Patentee before: Citrix Systems Inc

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

Effective date of registration: 20160229

Address after: American Florida

Patentee after: Citrix Systems Inc

Address before: American Florida

Patentee before: Bytemobile Inc.