背景
当今,将更多特征组装到启用照相机的移动电话的数码照相机中且增加这些照相机的分辨率和质量的趋势日益增长。结果是人们用这些照相机拍摄更多的照片。用这些照相机拍摄的照片通常只是暂时存储在移动电话上,因为它们经常从该照相机移至或者诸如个人计算机等用户设备或者服务器上的远程存储位置。方便的是,这些图像还可被组织或分类成集合,如共同待审的美国专利申请第11/302,566号所描述的,该申请通过引用结合于此。例如,图像可被分类到诸如,例如“2006欧洲假期”集合、“我孩子的照片”集合等一个或多个命名集合以便于容易检索。
通过引用结合于此的共同待审的美国专利申请10/817,599号公开了方便地将图像从移动电话移至其最终存储位置的技术。
除了图像之外,其他形式的数字内容也可在诸如移动电话、袖珍PC、个人数字助理(PDA)等设备上生成。这些内容可包括语音数据、文本文档、幻灯片等。这些其他形式的数字内容也可使用美国专利申请第11/302,566和第US 10/817,599号中所公开的技术来分类并移至其最终存储位置。
除了对数字内容的个人使用之外,数字内容还越来越多地与例如朋友、家人、同事等共享。
详细描述
在以下描述中,为解释起见,阐明了众多具体细节以提供对本发明的全面理解。然而,对于本领域的技术人员将显而易见的是可以在没有这些具体细节的情况下实践本发明。在其他实例中,结构和设备以框图的形式示出以免使本发明变得含糊难懂。
本说明书中对“一个实施例”或“一实施例”的引用意味着结合该实施例描述的特定特征、结构或特性被包括在本发明的至少一个实施例中。出现在本说明书中各个地方的短语“在一个实施例中”不一定全都指同一实施例,也不是与其他实施例互斥的独立或替换实施例。此外,描述了可由某些实施例而不是由其他实施例来展示的各种特征。类似地,描述了可能是对于某些实施例而不是其他实施例的要求的各种要求。
在一个实施例中,提供了一种用于数据获取设备(DAD)与各设备(下文中被称为“目的地设备”)共享内容的方法。DAD的示例包括移动电话、袖珍个人计算机(PC)、个人数字助理(PDA)等。目的地设备可以是服务器、台式PC、诸如DAD等移动设备等。如果DAD的用户希望与目的地设备共享内容,则可使用与该目的地设备的空中(OTA)数据连接来将该内容发送至该目的地设备。OTA数据连接是使用电路交换网络形成的专用信道。与OTA数据连接的使用相关联的收费是高昂的,尤其当DAD位于非本地或漫游网络中时。
有利的是,根据本发明的共享方法,DAD使用分组交换网络来将内容的经有损压缩的版本发送至目的地设备。例如,经有损压缩的内容可作为多媒体消息通信服务(MMS)消息发送至预定义目的地。在一个实施例中,预定义目的地包括用于内容管理服务(CMS)的服务器。用于控制CMS对内容的处理的元数据也被发送至该服务器。基于该元数据,CMS将经有损压缩的内容路由至所选受邀者以及该内容的最终存储位置。稍后,如将描述的,DAD执行同步操作,其中原始内容(即,经无损压缩的内容)例如使用OTA数据连接(倘若该DAD在其本地网络中)或诸如蓝牙连接或Wi-Fi连接等非OTA数据连接来发送至最终存储位置。
现在转向附图中的图1,示出根据本发明的一个实施例的通信系统10。通信系统10包括始发网络12和目的地网络14。在始发网络12中,DAD(图1只示出了一个DAD 16)形式的始发设备通过无线通信信道20与始发网络12的基站18进行通信。始发网络12的至少一部分包括无线通信系统,它可以是帮助与DAD 16进行无线信号交换的任何蜂窝、无线电、光学或其他无线系统。合适的无线通信系统的示例包括根据码分多址(CDMA)或全球移动通信系统(GSM)标准来操作的蜂窝电话系统。基站18连接到根据各种已知技术来路由无线通信(例如,电话呼叫)的OTA通信网络22。OTA通信网络22包括路由和/或交换设备、通信链路和适于在目的地网络14中建立基站18与内容管理(CMS)服务器24之间的OTA通信链路的其他基础结构的组合。OTA通信网络22是电路交换网络,并包括移动交换中心(MSC)、交换机、传输设备、以及帮助在基站18和CMS服务器24之间建立专用通信链路的其他硬件和软件。图1中表示OTA通信网络22的云与始发网络12和目的地网络14重叠以示出始发网络12和目的地网络14中的组件可被认为是OTA通信网络22的一部分。此外,用于通过OTA通信网络22来建立通信的某些设备和基础结构可被以下描述的分组数据消息通信系统利用。
通信系统10还包括分组交换网络24。分组交换网络是其中被称作分组的相对小的数据单元基于每个分组中所包含的目的地地址通过网络来路由的一种网络。在一个实施例中,分组交换网络24包括多媒体消息通信服务(MMS)系统28,它帮助在由MMS系统28服务的DAD 16与目的地设备之间交换文本、视频、音频和图形文件。目的地设备可由相同的无线网络、不同的无线网络、有线网络或计算机网络来服务。MMS系统的组件可以在附图中的图2中看到。MMS系统28包括用于存储和管理与DAD 16和其他设备交换的分组数据消息的分组数据消息通信服务中心。在附图中的图2所示的实施例中,分组数据消息服务中心包括用于存储和管理多媒体消息的多媒体消息通信服务中心(MMSC)30。MMSC 30包括MMS服务器32和MMS中继器34。在某些实施例中,诸如服务器、网络和存储等其他设备可连接到MMSC 30。图1所描述的各个块的功能和操作可在多个设备、电路或基础结构中实现。此外,多个功能块可集成在单个设备中并且被描述为在任何单个设备中执行的功能可在若干设备上实现。例如,基站18与MMSC 28之间的通信链路20可包括图1未示出的其他不同的始发网络12元件,诸如基站控制器(BSC)和分组数据接入网关交换节点(PDSN)等。
如上所述,MMS系统28将MMS消息从DAD 16路由至一个或多个目的地设备。在图1中,目的地设备一般由参考标号40来指示并包括用户存储设备(USD)和分别被指定为MS1和MS2的两个移动站。如在此处所使用的,用户存储设备包括任何类型的设备,其包括用作内容的最终存储位置的存储器。作为示例,用户存储设备可以是台式PC。移动站MS2和MS2表示能够支持使用MMS协议与MMSC 30的通信的任何移动设备。因此,在一个实施例中,移动站可以是移动电话。
在图1所示的示例性系统中,目的地设备40通过目的地网络14连接到始发网络12。然而,在某些情况下,目的地网络14和始发网络12可以是同一个网络。通信网络12、14可包括任何数量的无线、有线、计算机、因特网或内联网网络。
附图中的图3示出根据本发明的一个实施例的DAD 16的高级框图。如将会看到的,DAD 16包括微处理器50,其经由通信路径54耦合到存储器52。DAD 16还包括输入机制66和输出机制58。根据不同的实施例,输入机制56可包括键区和/或触摸屏。输出机制58可包括显示屏。也耦合到处理器50的是通信模块60,其包括使DAD 16能够与目的地设备40或服务器26进行通信的电路。存储器52可表示诸如随机存取存储器(RAM)设备、只读存储器(ROM)设备、高速缓冲存储器等各种存储器技术。构成存储器模块352的存储器设备在某些实施例中可物理地驻留在DAD 16的其他组件中,例如在处理器50中。
如本领域的技术人员可以理解的,存储器52包括启用DAD 16的操作的软件组件。因此,例如,存储器52包括操作系统52A,其向在DAD 34上运行的各种应用程序/软件提供到DAD 16的组件的接口。根据本发明的一个实施例,软件包括用于查看网页的用户代理(UA)52B和如将要描述的使DAD 16能够上传和共享数字内容的内容管理模块52C。
现在转向附图中的图4,示出了根据一个实施例的用于由内容管理模块52C执行的内容共享技术的流程图。如将会看到的,在框70处遇到内容传输条件。在一个实施例中,内容传输条件可以是新内容的获取或生成。例如,如果DAD 16是装备照相机的移动电话,则内容传输条件可以是用该照相机生成或捕捉新图像。作为另一个示例,内容传输条件可以在用户浏览现有内容的存储并选择‘内容共享’按钮以指示将要共享所选存储的内容时发生。在遇到该内容传输条件时,控制传到框72。在框72处,确定内容的大小是否超出特定大小阈值。在一个实施例中,大小阈值是运营商相关的并且被设置为特定运营商对于MMS消息所允许的最大大小。在一个实施例中,大小阈值可介于100至350kb之间。在框74处,对于超出该大小阈值的内容,内容管理模块52C使用常规的有损压缩技术来执行有损压缩操作。有损压缩操作的目标是缩小内容的大小。例如,内容可以是2百万像素图像。在有损压缩之后该图像可缩小至640×480百万像素图像。在框76处,将经有损压缩的内容发送至预定义目的地。在一个实施例中,该预定义目的地是CMS服务器24。该经有损压缩的内容通过分组交换网络26而不是通过OTA网络22发送至CMS服务器24。因此,避免了使用OTA网络22的更高昂的传输费用。在一个实施例中,该经有损压缩的内容作为MMS消息通过MMSC 28发送至服务器22。在框78处,DAD 16将元数据发送至CMS服务器24。该元数据作为MMS消息通过分组交换网络26来发送。术语“元数据”指控制CMS服务器24将如何处理内容的任何参数或信息。例如,元数据可包括关于内容的组织信息。该组织信息指定将由CMS服务器22与内容相关联的类别,如在US 11/302,568中更全面描述的。元数据还可包括定义内容的最终存储位置的USD的设备标识符。在一个实施例中,元数据还可包括将与其共享内容的所选受邀者的电话号码和/或姓名。稍后,在框80处,DAD 16执行同步操作以将内容与最终存储位置同步,如将在稍后描述的。
附图中的图5示出根据本发明的一个实施例的由CMS服务器24执行的操作的流程图。如将看到的,在框82处,CMS服务器从DAD 16接收有损内容,从MMSC 28接收诸如MMS消息等分组交换消息。在框84处,CMS服务器24从DAD 16接收元数据。可以理解,将有损内容和元数据一起打包在同一条MMS消息中是可能的。因此,在框84处所接收到的元数据可以是包括有损内容的同一条消息的一部分。响应于接收有损内容和元数据,CMS服务器24将该有损内容存储在存储器中。另外,CMS服务器24基于元数据将一个或多个类别与内容相关联。在框88处,CMS服务器生成到所存储的有损内容的加密链接。在框90处,基于元数据来将加密链接发送至所选受邀者。例如,所选受邀者可在元数据中由目的地设备MS1和MS2的设备标识符来标识,在这种情况下,在框90处CMS服务器24将加密链接发送至设备MS1和MS2。该加密链接可由设备MS1和MS2用来从CMS服务器24中检索有损内容。该加密链接可作为MMS消息发送至所选受邀者。可以使用各种协议、信号传输模式和格式来将MMS消息发送至目的地设备40。例如,MMSC 28可生成MMS通知消息并通过短消息服务(SMS)使用无线应用协议(WAP)“push(推)”过程来将其发送至目的地设备40。MMS通知消息包含指向包括有损内容的动态生成的MMS消息的URL指针。在接收MMS通知消息之后,目的地设备40启动提供TCP/IP网络连接的数据连接。目的地设备可执行HTTP(或WSP)“get(得到)”过程以从MMSC 28中检索该MMS消息。在一个实施例中,MMS消息可使用若干消息通信协议中的一种来发送。合适的协议的示例包括M-IMAP、OMA-MM 1和基于SIP的MM1。此外,诸如IMAP和POP等电子邮件协议可以在某些情况下使用。
在框92处,CMS服务器24将有损内容路由至元数据中所指示的最终存储位置。例如,元数据可将图1的USD的设备标识符指示为最终存储位置。在这种情况下,CMS服务器24将使用上述技术来将有损内容路由至图1的USD。在框94处,CMS服务器执行与DAD 16的同步操作,如现在将参考附图中的图6描述的。
图6示出根据本发明的一个实施例的用于由DAD 16执行的同步操作的流程图。如将看到的,在框95处,DAD 16检测同步条件。在一个实施例中,该同步条件可以是用户定义的。同步条件指定如所描述的通过MMS消息发送至CMS服务器24的有损压缩图像将在什么条件下通过将相应的完整或经无损压缩的内容发送至最终存储位置来进行同步。例如,在一个实施例中,同步条件可指定仅当DAD 16在其家庭网络中(即,DAD 16不在漫游网络中)的时候才使用OTA网络22经由OTA链路来执行同步。此处的基本原理是OTA链路是在DAD的家庭网络中建立的并因此OTA数据收费应比DAD在漫游时少。同步条件的另一个示例是无线局域网(WLAN)的检测。在某些情况下同步条件可以是例如通过蓝牙信道的用户存储位置本身的检测。在框98处,DAD 16出于将经无损压缩的数据传送至目的地设备的目的来建立与目的地设备的连接。根据不同的实施例,该连接可以是在DAD的本地网络中的OTA连接、WLAN连接(例如Wi-Fi连接)或蓝牙连接。目的地设备可以是CMS服务器14或定义最终存储位置的USD。在框98处,DAD 16使用与目的地设备的连接来将该经无损压缩的内容发送至目的地设备。如果目的地是CMS服务器24,则该CMS服务器接收该无损内容(在图5的框94处)。该CMS服务器保存该无损内容并例如通过WAP推方法来通知定义最终存储位置的USD。该USD然后可从CMS服务器24中拉取该无损内容。在一个实施例中,用无损内容来替换经有损压缩的内容。因此,必须存在确定无损内容旨在替换的有损内容的机制。在一个实施例中,DAD 16生成有损内容的标识符并将其作为元数据的一部分发送至CMS服务器24。当有损内容被存储在CMS服务器或USD上时,该有损内容的标识符例如通过一表格来与该有损内容相关联。当如上所述发送该有损内容时,DAD 16也发送该有损内容的标识符。该标识符然后可被CMS服务器用来标识将用无损内容来替换的有损内容。
附图中的图7示出根据本发明的一个实施例的可用于实现CMS服务器24的硬件100的示例。硬件100通常包括耦合到存储器104的至少一个处理器102。处理器102可表示一个或多个处理器(例如,微处理器),并且存储器104可表示包括硬件100的主存储的随机存取存储器(RAM)设备,以及任何补充级存储器,例如,高速缓冲存储器、非易失性或备份存储器(例如,可编程存储器或闪存)、只读存储器等。此外,存储器104可被认为包括物理地位于硬件100中的其他地方的存储器存储,例如,处理器102中的任何高速缓冲存储器,以及用作虚拟存储器的任何存储容量,例如,如存储在大容量存储设备110上的。硬件100通常还接收多个输入和输出以便外部地传达信息。为了与用户或操作员接口,硬件100可包括一个或多个用户输入设备106(例如,键盘、鼠标等)和显示器108(例如,液晶显示(LCD)面板)。对于另外的存储,硬件100还可包括一个或多个大容量存储设备110(例如,软盘或其他可移动磁盘驱动器)、硬盘驱动器、直接存取存储设备(DASD)、光盘驱动器(例如,紧致盘(CD)驱动器、数字多功能盘(DVD)驱动器等)和/或磁带驱动器,以及其他驱动器。此外,硬件100可包括与一个或多个网络112(例如,局域网(LAN)、广域网(WAN)、无线网络和/或因特网,以及其他网络)的接口以准许与耦合到网络的其他计算机的信息通信。可以理解,硬件100通常包括处理器102与组件104、106、108和112中的每一个之间的合适的模拟和/或数字接口,如在本领域中所公知的。
硬件100在操作系统104的控制下操作,并且执行定义上述内容管理服务(CMS)的各种计算机软件应用程序、组件、程序、对象、模块等。此外,各种应用程序、组件、程序、对象等还可在通过网络112(例如,在分布式计算环境中)耦合到硬件100的另一个计算机中的一个或多个处理器上执行,由此实现计算机程序的功能所需的处理可通过网络分配给多个计算机。一般而言,被执行以实现本发明的各实施例的例程可被实现为操作系统或特定应用程序的一部分、组件、程序、对象、模块或被称作“计算机程序”的指令序列。计算机程序通常包括在计算机中的各种存储器和存储设备中的在各种时刻的一个或多个指令集,并且当被计算机中的一个或多个处理器读取并执行时,使计算机进行执行涉及本发明的各方面的元素所必需的各种操作。此外,虽然本发明已经在全面运行的计算机和计算机系统的上下文中描述,但是本领域的技术人员可以理解,本发明的各实施例能够作为各种形式的程序产品来分发,并且无论用于实际上实现分发的特定类型的计算机可读介质是什么,本发明都同等地应用。计算机可读介质的示例包括但不限于可记录类型介质,诸如易失性和非易失性存储器设备、软盘和其他可移动磁盘、硬盘驱动器、光盘(例如,紧致盘只读存储器(CD ROM)、数字多功能盘(DVD)等)以及其他可记录类型介质,以及诸如数字和模拟通信链路等传输类型介质。
虽然各特定示例性实施例已经在各附图中描述并示出,但可以理解,这些实施例仅仅是说明性的并且不限制广泛的发明,并且本发明不限于所示和描述的特定构造和排列,因为本领域的普通技术人员在研究了本发明之后可以想到各种其他修改。在诸如本领域等其中发展是迅速的且不容易预见进一步的改进的技术领域中,所公开的实施例可以如通过启用技术进步而促进的在排列和细节上被容易地修改而不背离本发明的原理或所附权利要求书的范围。