WO2008026207A2 - Media handling architecture for digital content - Google Patents

Media handling architecture for digital content Download PDF

Info

Publication number
WO2008026207A2
WO2008026207A2 PCT/IL2007/001064 IL2007001064W WO2008026207A2 WO 2008026207 A2 WO2008026207 A2 WO 2008026207A2 IL 2007001064 W IL2007001064 W IL 2007001064W WO 2008026207 A2 WO2008026207 A2 WO 2008026207A2
Authority
WO
WIPO (PCT)
Prior art keywords
media handler
network
media
dedicated
handler
Prior art date
Application number
PCT/IL2007/001064
Other languages
French (fr)
Other versions
WO2008026207A3 (en
Inventor
Ilan Yoscovich
Guy Sella
Original Assignee
Ilan Yoscovich
Guy Sella
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 Ilan Yoscovich, Guy Sella filed Critical Ilan Yoscovich
Publication of WO2008026207A2 publication Critical patent/WO2008026207A2/en
Publication of WO2008026207A3 publication Critical patent/WO2008026207A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 
    • H04L67/1048Departure or maintenance mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/565Conversion or adaptation of application format or content
    • H04L67/5651Reducing the amount or size of exchanged application data
    • 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/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6131Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a mobile phone network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6137Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via a telephone network, e.g. POTS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6175Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6181Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via a mobile phone network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6156Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
    • H04N21/6187Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving transmission via a telephone network, e.g. POTS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles

Definitions

  • the present invention relates to digital content.
  • the era of digital content has changed the way people use, handle and benefit from content.
  • digital photography has changed the way people use, handle and benefit from content captured during daily usage for example from a digital still camera or digital video camcorder.
  • the process of handling film (non-digital) photographs was straightforward. Users were accustomed to capturing much less content, printing all of their pictures and placing them in a photo album.
  • digital photography the ability to view pictures immediately after taking them on a camera and/or on a PC, has increased the captured content ten times approximately.
  • the large volume of user captured content and the ability to view pictures using digital means has changed the way users treat such content.
  • Desktop software solutions use the personal computer PC platform, for example, in order to store and organize content in a folder-like structure. These solutions typically offer basic content import abilities (for example from a digital camera) and in some cases also the ability to transmit or receive content via email services. Advanced users can in some cases use these solutions for local backup on an external CD/DVD writer.
  • Web solutions may enable a PC user who stores his digital content on a PC to be able to back up the content over the web on a centralized storage server, either temporarily or permanently.
  • web solutions may allow a PC user to provide such content to other users via email services or to other users who have access to the server's web site. Examples of web solutions include PhotoBucket,
  • Display solutions enable a user to view content on a screen, for example on a big TV screen.
  • these solutions do not have much functionality besides viewing.
  • similar phenomena have emerged in the digital music world, in which music content has become widespread while many people do not use this content appropriately or do not have the right means for handling the content.
  • a dedicated media handler for handling digital content comprising: a network interface configured to couple to a network in order to transmit or receive digital content via the network; and logic configured to perform an automatic sharing operation, wherein digital content associated with at least one other media handler is received via the network and shared with the dedicated media handler, or digital content associated with the dedicated media handler is transmitted via the network for sharing with at least one other media handler.
  • a dedicated media handler for handling digital content comprising: a network interface configured to couple to a network in order to transmit or receive digital content via the network; and logic configured to perform an automatic backup operation, wherein digital content associated with at least one other media handler is received via the network and backed up on the dedicated media handler, or digital content associated with the dedicated media handler is transmitted via the network for backup on at least one other media handler.
  • a dedicated media handler for handling digital content comprising: an interface configured to couple to a source or to a network in order to receive digital content; organizing logic at least occasionally automatically activated when new digital content is received via the interface, configured to organize the received content based on a substance of the content by performing on the received content at least one action selected from a group comprising: auto-tagging and auto-clustering; and a display interface configured to couple to a display so as to display the organized content.
  • a system for handling digital content comprising: a plurality of media handlers, including at least one dedicated media handler, which are members of a backup or sharing group; and a network coupled to members of the group; wherein digital content is automatically backed up or shared among the members via the network.
  • a media server comprising: a network interface configured to couple to a network to which a plurality of media handlers that are members of a backup or sharing group are also coupled, wherein at least one of the plurality of media handlers is a dedicated media handler; and logic configured to assist in automatic backup or sharing of digital content via the network among the plurality of members.
  • storage for a virtual media handler comprising: a storage configured to receive digital content from a first media handler and to provide the digital content to a second media handler when the virtual media handler is downloaded to or coupled to the second media handler; and at least one storage configured to store at least one item from the first media handler selected from a group comprising: content metadata and configuration, and configured to provide the at least one item to the second media handler when the virtual media handler is downloaded to or coupled to the second media handler, thereby allowing the second media handler to imitate the first media handler in handling the digital content.
  • a method for handling digital content comprising: a dedicated media handler recognizing a trigger to participate in an automatic sharing or backup session; if there is digital content associated with the dedicated media handler which is designated for sharing or backup but which has not been previously shared with or backed up on at least one other media handler or public gallery belonging to a same sharing or backup group as the dedicated media handler then during the session the dedicated media handler automatically transmitting via a network at least some of the digital content for sharing with or backup on at least one other media handler or public gallery belonging to a same sharing or backup group as the dedicated media handler; and if there is digital content associated with at least one other media handler or public gallery belonging to a same sharing or backup group as the dedicated media handler which is designated for sharing or backup but which has not been previously shared with or backed up on the dedicated media handler, then during the session the dedicated media handler automatically receiving via the network at least some of the digital content associated with at least one media handler or public gallery belonging to a same sharing or backup
  • a method for assisting in handling digital content comprising: a media server assisting in automatic sharing or backup of digital content among a plurality of members in a backup or sharing group via a network, wherein the members include a plurality of media handlers of which at least one is a dedicated media handler, and wherein the media server assists by performing at least one action selected from a group comprising: storing digital content transmitted between members in the group, initiating the automatic sharing or backup, managing signaling among members in the group, providing addressing services, relaying digital content among members in the group, transcoding digital content so that the transcoded content fits a target member, adapting content destined for a member based on a characteristic of a display associated with the member, and assisting a media handler in joining the group.
  • FIG. 1 is a block diagram of the architecture of a system for handling digital content, according to an embodiment of the present invention
  • FIG. 2 is a block diagram of a dedicated media handler, according to an embodiment of the present invention
  • FIG. 3 is a block diagram of a media server, according to an embodiment of the present invention
  • FIG. 4A is a block diagram of a virtual media handler, according to an embodiment of the present invention.
  • FIG. 4B is a block diagram of another virtual media handler, according to an embodiment of the present invention.
  • FIG. 5 is a flowchart of a method executed by a dedicated media handler, according to an embodiment of the present invention.
  • FIG. 6 is a flowchart of a method executed by a dedicated media handler, according to an embodiment of the present invention
  • Figure 7 is a block diagram of a network interface of a media handler, according to an embodiment of the present invention.
  • Figure 8 is a flowchart of a method for initiating a network session, according to an embodiment of the present invention.
  • Figure 9 is a flowchart of a method for participating in an initiated network session, according to an embodiment of the present invention.
  • Figure 10 is a block diagram of a network for handling digital content, according to an embodiment of the present invention.
  • DESCRIPTION OF THE PREFERRED EMBODIMENTS Described herein are embodiments of the current invention for methods, systems and system components for handling digital content.
  • digital content include inter-alia: digital photos, digital video, digital audio, digital multimedia, etc.
  • the digital content is personal digital content, i.e. digital content that was generated by a user for non-commercial purposes.
  • the phrase "for example,” “such as” and variants thereof describe non-limiting embodiments of the present invention.
  • a dedicated machine, computer, computing system, processor or similar system may manipulate and/or transform data represented as physical, such as electronic, quantities within the system's registers and/or memories into other data, similarly represented as physical quantities within the system's memories, registers or other such information storage, transmission or display components.
  • Embodiments of the present invention may use terms such as, processor, computer, apparatus, system, sub-system, module, unit, device (in single or plural form) for performing the operations herein. These terms, as appropriate, refer to any combination of software, hardware and/or firmware configured to perform the operations as defined and explained herein.
  • the module(s) may be specially constructed for the desired purposes, or may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer.
  • a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), electrically programmable read-only memories (EPROMs), electrically erasable and programmable read only memories (EEPROMs), magnetic or optical cards, any other type of media suitable for storing electronic instructions that are capable of being conveyed via a computer system bus.
  • Figure 1 illustrates the architecture of a system 100 for handling digital content which is composed of various components, according to an embodiment of the present invention.
  • Each component illustrated in Figure 1 may be made up of any combination of software, hardware and/or firmware which performs the functions as defined and explained herein.
  • system 100 includes one or more media handlers of one or more types which, in one embodiment, are coupled via a network 120.
  • the one or more media handlers in system 100 may include any of the following: one or more media handlers of type 110, each of which is coupled to an (external and/or internal) display 161 and/or each of which is coupled to an (external and/or internal) source 151 , one or more media handlers of type 171 ("media source handler(s)" 171) each of which is coupled to an (external and/or internal) source 153, one or more media handlers of type 172 (“media display handler(s)" 172) each of which is coupled to an (external and/or internal) display 163, and/or one or more media handlers of mobile type 173 (“mobile media handler(s)" 173) each of which is coupled to an (external and/or internal) source 155 and/or each of which is coupled to an (extern
  • system 100 may optionally include one or more of the following: one or more virtual media handlers 174/176, one or more media servers 130 coupled to network 120, one or more sources 154 coupled to network 120, one or more displays 165 coupled to network 120, and/or one or more public galleries 190 coupled to network 120.
  • system 100 may include less components, more components and/or different components than shown in Figure 1.
  • system 100 may additionally or alternatively include other types of user devices.
  • the term user device should be understood to refer to a device which a user (e.g. an individual, family, company, organization, etc.) uses and which does not typically service other users (as opposed to a server or a public gallery for example which services many users). It should be evident that the connotation of a device as a user device does not preclude a sharing, borrowing, buying of the user device by other users.
  • any component in system 100 or of any module comprised in any component in system 100 is used to connote both the case in which there is a single such component/module and the case in which there are a plurality of such components/modules, as appropriate to the context.
  • network 120 can be formed of one or more types of networks interconnected together, for example via public interconnections.
  • networks which in some embodiments may be part of the network 120 are: World Wide Web (WWW) (or any other IP protocol based network), cable modem network, satellite broadcast network, circuit switched telephone network (analog such as public switched telephone network PSTN or digital such as integrated services digital network ISDN [e.g. basic rate interface BRI and primary rate interface PRI] 5 El/Tl, etc.), cellular telephone circuit switched or packet switched network, wireless local area network WLAN hot spot networks, Worldwide Interoperability for Microwave Access WiMAX wireless networks etc. Details on some embodiments of network 120 are provided further below with reference to Figure 10.
  • one or more media handlers and/or other components in system 100 may communicate with one another via network 120, for example in order to transfer digital content and/or metadata, for any appropriate purpose such as importing, exporting, storage, organizing or other processing, backup, sharing, distribution, displaying, etc.
  • the digital content received by the second media handler is not necessarily identical to the digital content which is or was present on the first media handler.
  • digital content may be transcoded , adapted for the display of the second media handler (e.g.
  • digital content which is identical to, or a processed (transcoded, adapted, etc) version of digital content which is or was present on a media handler is said to be "associated" with the media handler.
  • the description below oftentimes refers simply to the transfer/receipt of (digital) content (for example with respect to sharing, backing up, distribution, etc.) and should be understood to include as appropriate to the context either or both embodiments where the content received by the target media handler is identical and embodiments where the received content is not identical to what is/was present on the originating media handler.
  • a media handler is responsible for handling content, which, depending on the embodiment and/or type of media handler, may include any of the following functions inter-alia in any order: importing digital content from a local source, importing digital content from a remote source via a network, storing digital content locally in a local backup, organizing digital content, displaying digital content on a display, importing/exporting digital content to/from a virtual media handler 174/176 (see below), communicating via network 120, backing up the content either locally or via a network, and/or sharing content via a network.
  • the term "importing" is used herein both for embodiments where content is received from a local source/virtual media handler and embodiments where content is received from a remote source/virtual media handler, and therefore also includes, for example embodiments where content is downloaded from a source or virtual media handler.
  • Any media handler may be a dedicated media handler or an open platform media handler
  • a dedicated media handler is a device that does not need installation of specific hardware and software by a user because the device has an integrated monolithic (dedicated) software, hardware and/or firmware.
  • an open platform media handler is based on an open platform in which both hardware and software can be installed by the end user and a complex functionality can be achieved by putting together various hardware and software which are not monolithic.
  • the open platform media handler is implemented on software of an open platform device such as a personal computer PC (desktop or laptop), personal digital assistant PDA, cellular telephone, open software set-top-box, etc and uses the hardware interfaces that the device has (such as display, I/O interfaces, networking etc.).
  • a dedicated media handler may be advantageous over an open platform media handler because it may be easier for a user, especially one with a lower level of technical skills, to use a dedicated media handler than an open platform media handler to handle digital content.
  • one media handler may be enabled to imitate another media handler through the usage of virtual media handler 174 or 176.
  • virtual media handler 174 may be stored on any mobile or stationary storage device (such as a universal serial bus USB “disk on key") and therefore accessible when the storage device is coupled to a media handler.
  • virtual media handler 176 may be stored on the storage of media server 130 and therefore be accessible via network 120 by any media handler.
  • virtual media handler 174 or 176 may be considered to mirror a media handler, i.e. as a kind of a courier of the media handler content and "personality".
  • the virtual media handler 174 or 176 may store the full content, metadata and/or configuration data of an "originating" media handler so that the virtual media handler may enable another media handler which has accessed the virtual media handler to behave the same as the originating media handler and have the same content as the originating media handler.
  • a media source which is optionally in system 100 may include any suitable recording means, any suitable acquiring means (i.e. acquiring what has previously been recorded), and/or any suitable storage means.
  • Acquiring means may include, for example, means for receiving content via a local coupling, means for downloading content, and/or means for uploading content.
  • a media source may be a content recorder such as for example a digital still camera, image scanner or camcorder.
  • a content storage device such as an external mass storage device, mobile hard disk or memory card (e.g. secure digital SD, xD, compact flash, etc) may be a media source.
  • a PC with an internal hard disk and/or acquiring means may be a media source.
  • a PC with dedicated software running on it may function as a media source and may be configured to be coupled to a media handler. In this embodiment, the software that runs on the PC will enable browsing and downloading of digital content and will enable the transfer of selected content from the PC to the media handler.
  • a media source may or may not be a user device.
  • a media handler may download the digital content from the server with the server therefore functioning as the source of the digital content from the viewpoint of the media handler.
  • a local external media source can be coupled to a media handler by a wired connection (such as USB, Fire Wire, Ethernet), by a wireless connection (such as Bluetooth, WLAN, ultra wideband UWB), or by integration, inside the media handler.
  • remote media source 154 is coupled directly to the network 120 thereby allowing transfer of content from media source 154 to one or more media handlers and/or to media server 130.
  • Media source 154 can be for example a network camera, a wireless LAN camera/PDA camera connected to a hot- spot, a cellular camera phone connected to the network 120 through cellular infrastructure (e.g. by sending an multi-media messaging service MMS from the cellular camera phone to the media server 130 through a MMS server), etc.
  • Any media display which is optionally in system 100 (for example 161, 162, 163, 164, 165) can be a relatively simple display (such as a liquid crystal display LCD) or a relatively complex device with display capabilities (such as a cellular phone, PDA, portable media players).
  • a local external media display is coupled to a media handler by a wired connection (such as USB, Fire Wire, Ethernet, RS232 serial connection), by a wireless connection (such as Bluetooth, wireless LAN, UWB), or by integration inside the media handler.
  • a wired connection such as USB, Fire Wire, Ethernet, RS232 serial connection
  • a wireless connection such as Bluetooth, wireless LAN, UWB
  • an internal display for example an embedded LCD display
  • Other examples of a local media display are a local printer coupled to a media handler (via USB either as a printer class device or an imaging/PictBridge device class) or a television TV (for example standard definition, high definition, etc) coupled to a media handler.
  • remote media display 165 may be a printing service (for example, offered by a web photo gallery or online retailer ) or any other appropriate display coupled to the network (such as a networked billboard screen).
  • a public gallery is a media content storage web site that offers storage and sharing functionality to the public via web access.
  • Examples of public gallery 190 include inter-alia: PhotoBucket, Flickr, Kodak Gallery.
  • media server 130 and/or any media handler may communicate with public gallery 190 for the sake of exchanging content with the public gallery depending on the embodiment.
  • media server 130 may or may not be part of system 100.
  • Media server 130 may be implemented by a network of media servers scattered around the world with some synchronizing method.
  • media server 130 may be omitted from system 100 or may play no active role in the transfer of digital content via network 120 and in joining sharing or back up groups (joining groups is described further below).
  • a peer-to-peer de-centralized (i.e. distributed) addressing algorithm may be utilized (for example, such as described in the article "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications”/ Ion Stoica, Robert Morris, David Karger, M.
  • network provided addressing is performed by distributed peer-to-peer networking where each peer is part of the distributed server.
  • a media handler has an absolute address in network 120 (i.e.
  • media server 130 may be omitted from system 100 if network provided addressing is implemented by generic servers in network 120 which are intended for that purpose such as for example domain name system DNS servers.
  • media server 130 assists in the transfer of digital content over network 120 and/or in joining groups.
  • media server 130 may be connected via network 120 to one or more media handlers.
  • media server 130 may provide assistance in various capacities relating to the transfer of digital content.
  • media server 130 manages signaling relating to the transfer of the digital content.
  • the transfer session management may be handled by media server 130 but the content transfer may be performed on a peer-to-peer basis.
  • media server 130 may additionally or alternatively relay the digital content.
  • media server 130 may transcode the digital content to suit the target device and/or adapt (for example, reduce) the content to the display of the target device. Still continuing with the example, in some cases reducing the content may result in less information in the digital content (for example reduced format or resolution). In other examples, in some embodiments, additionally or alternatively media server 130 may perform any of the following functions, inter-alia: store the transferred content, initiate the transfer of the content, assist in joining members to sharing or backup groups, and/or provide addressing services.
  • media server 130 may act as a directory for the media handlers storing user names and addresses of the media handlers, and able to provide the address of the media handler corresponding to a given user name and/or vice versa. More details on possible functionality of media server 130 are provided elsewhere in this disclosure.
  • the originating media handler may, where appropriate, transcode the digital content to suit the target device and/or adapt the content to the display of the target device (for example, reduce the content such as in the case of image resizing).
  • the originating media handler may transcode and/or adapt the content prior to transferring to media server 130 or when the content is transferred peer-to-peer.
  • the content may be adapted to the target display (e.g. reduced format or resolution) by media server 130 or by the originating media handler based on the number of "Radio Corporation of America" RCA interfaces (also known as phono connector or CINCH/ AV connector) connected to the display corresponding to device, for example triple RCA interface for high definition television or single RCA interface for standard definition television.
  • the target media handler will detect by any appropriate implementation which of three available RCA connectors are connected to the television and will inform media server 130 or the originating media handler.
  • the connection of an RCA connector can be sensed by monitoring the DC level of the media handler signal output to the RCA connector.
  • the DC level may drop by a factor of two (due to impedance matching of for example 75ohm in both the media handler and the TV) and can be detected by using known circuitry.
  • the connection of an RCA connector can be sensed by monitoring the peak level of the analog waveform at the output of the media handler. Assuming the video content at the media handler output includes pre-defined white pixels, the peak level is defined.
  • the peak level will drop for example by a factor of two (due to impedance matching of for example 75ohm in both the media handler and the TV) and can be detected by the media handler by the use of known circuitry.
  • the shield connection of the RCA connector of the media handler will be connected to a pull up and pull down.
  • the pull down impedance will be low (e.g. lOohm DC and in parallel a decoupling capacitor) such that the shield grounding performance would not interfere with the video signal integrity.
  • the media handler can then detect the connection of an RCA connector by sensing that the RCA shield is grounded completely by the TV (assuming there is another RCA which is connected to the TV).
  • the target media handler having detected the number of RCA interfaces will inform the originating media handler or media server 130.
  • the mentioned techniques may be used also for the target media handler to detect the connection status of each audio/video RCA connector type and to inform the user of the connection status.
  • the target media handler may, where appropriate, adapt received digital content to the target display and/or transcode the received digital content.
  • a backup session can be initiated by any media handler or by the media server 130 whenever there is new content stored on one of these media handlers or on media server 130, periodically, at particular time(s) of day, upon user request, upon network coupling/recoupling (i.e. when first coupled to network 120 and/or when recoupled to network 120 after an interruption), and/or due to any other appropriate event.
  • content from a given media handler may be backed up on one or more other media handlers (of the same or different types as the given media handler), and/or other entities such as public gallery 190.
  • the backup of content can be implemented as a secure backup such that the end-user will not have to be concerned that his own personal content will be published on the world-wide-web or disclosed to other media handler users which participate in the backup process.
  • media server 130 stores the content and can therefore serve as a backup storage server for one or more media handlers.
  • the role of media server 130, if any, in the transfer for the purposes of backup may vary depending on the embodiment.
  • a sharing session can be initiated by any media handler or by the media server 130 whenever there is content designated for sharing on one of these media handlers or on media server 130, periodically, at particular time(s) of day, upon user request, upon network coupling/recoupling and/or due to any other appropriate event.
  • content from a given media handler may be shared with one or more other media handlers (of the same or different types as the given media handler) and/or other entities such as public gallery 190.
  • the sharing of content is different from the backup of content since typically, although not necessarily, all content on a media handler needs to eventually be backed up but only a portion of content on a media handler needs to be shared, hi one embodiment, additionally or alternatively, the sharing of content with another media handler is different from the backup of content on another media handler because in sharing in this embodiment, the content is disclosed to the user of the media handler with which the content was shared whereas in backup, typically although not necessarily, content backed up on a media handler is not disclosed to the user of that media handler.
  • in order to share content there may in some cases be a predefmition of sharing groups, content scope and access control.
  • a possible feature related to content sharing may be the ability of a media handler with updated shared content and/or media server 130 to notify target media handlers of an updated shared content (can be in real-time).
  • the media server 130 may act as a signaling server for transferring these notifications to the target media handlers or it can be sent directly between media handlers, for example when there is a peer-to-peer network with a decentralized addressing mechanism.
  • distribution is different from sharing in the sense that distribution is a one-time (or limited number of times) transfer of content without the automatically recurring manner of sharing content.
  • the distribution of content can be initiated by the originating media handler or by media server 130.
  • content can be distributed to an email account or via MMS to a cellular phone (when not considering the cellular phone as a media display device as will be described below).
  • the role of media server 130, if any, in the transfer for the purposes of distribution may vary depending on the embodiment.
  • media handlers may communicate via network 120 without necessarily relating to the transfer of digital content.
  • media handlers may communicate via instant messaging.
  • FIG. 2 illustrates the block diagram of a dedicated media handler 210, according to an embodiment of the present invention.
  • dedicated media handler 210 illustrated in Figure 2 may represent one embodiment of media handler of type 110 or 173.
  • the block diagram of Figure 2 applies also for other types of media handlers illustrated in Fig. 1 by removing any irrelevant modules or to other embodiments of media handler 110 or 173 by making any required changes, as will be discussed in more detail below.
  • an open platform media handler may include some or all of the modules illustrated in Figure 2.
  • Each module illustrated in Figure 2 may be made up of any combination of software, hardware and/or firmware which performs the functions of the module as defined and explained herein.
  • optional source 151 and optional display 161 are external (if present), and that optionally additionally or alternatively dedicated media handler 210 includes internal source 221 and/or internal display 231. As shown in the embodiment illustrated in Figure 2, dedicated media handler
  • 210 includes any of the following, inter-alia: a local storage 260, one or more interfaces (for example a user interface 250, a source interface 220, a display interface 230, a network interface 240), one or more buses (for example control bus 261, content bus 262), logic, internal source 221, and/or internal display 231.
  • a local storage 260 for example a local storage 260, one or more interfaces (for example a user interface 250, a source interface 220, a display interface 230, a network interface 240), one or more buses (for example control bus 261, content bus 262), logic, internal source 221, and/or internal display 231.
  • the logic is shown in Figure 2 divided into organizing logic 215, backup logic 211, accounts logic 241, sharing logic 212, distribution logic 213 and gallery logic 214 modules but it should be evident that in other embodiments, the functionality of the logic may be divided differently into modules and/or the logic may include less, more, and/or different functionality.
  • organizing logic 215 handles the automatic and manual features that in some cases allow the content to be organized in local storage 260 such that the content can be displayed, retrieved and shared with an added- value to a user above the original content structure.
  • any content that is imported or transferred to dedicated media handler 210 for example via source interface 220 or network interface 240 has some initial meta-data (such as capture date).
  • organizing logic 215 in some cases adds additional meta data for the imported/transferred content which can be used to organize the content (for example classification).
  • the organizing logic 215 performs an auto-tagging process based on the substance of the content which adds meta-data (such as face detection, dates, text recognition etc.) and/or allows a user to add manual tags of his own (e.g. family, vacation).
  • the organizing logic 215 additionally or alternatively adds metadata by performing auto- clustering of content based on the substance of the content items, such that a user will be able to understand the structure of the content that he has in the local storage 260 (for example new imported/transferred content). For example, in some cases, auto clustering detects scene changes and/or detects similarity or dissimilarity among consecutive content.
  • organizing logic 215 additionally or alternatively allows a user to attach content items to structured albums in local storage 260.
  • organizing logic 215 may suggest possible relevant existing albums to the user that seem to be related to the new content.
  • organizing logic 215 may additionally or alternatively perform different algorithms at different times and/or under different circumstances within the same system 100.
  • both initial meta-data which was imported/transferred with the digital content and meta-data added by organizing logic are transferred/exported when the digital content is transferred/exported.
  • organizing logic 215 is at least occasionally activated when there is new content received via source interface 220 or network interface 240 (for example shared digital content). In one embodiment, organizing logic 215 additionally or alternatively performs organization in the background on all digital content in the existing local storage 260.
  • the latter embodiment may include in some cases a complex organizing algorithm that may in some cases be time consuming and therefore in some cases may not be performed in real-time.
  • backup logic 211 is responsible for the backing up of content from dedicated media handler 210 on one or more possible backup entities, for example, inter-alia, one or more other media handlers (of the same and/or different type) , one or more public galleries 190, media server 130 (for example a mass storage on media server 130) and/or one or more external local backups 270 (such as CD/DVD writers or a PC [acting as a "storage manager"] with a hard disk which serves as a local backup).
  • backup logic 211 is alternatively or additionally responsible for backing up onto dedicated media handler 210, content received for backup via network 120 (for example received from one or more media handlers and/or public galleries via or not via media server 130).
  • each backup entity for dedicated media handler 210 also includes dedicated media handler 210 as one of its own backup entities (i.e. will back up content onto media handler 210), whereas in other embodiments, this is not necessarily the case.
  • backup logic 211 may interact with the backup logic of another entity in order to perform backup on that entity and/or in order to back up content from that entity on dedicated media handler 210, whereas in another embodiment interaction may not be necessary.
  • backup logic 211 may interact with the backup logic of media server 130 in order to backup content of dedicated media handler 210 onto a backup entity and/or in order to have content backed up on media handler 210, whereas in another embodiment interaction may not be necessary.
  • a backup group which includes dedicated media handler 210 and one or more other entities, and rules for backing up among members of the backup group are defined (for example when a backup session is to be initiated, how a backup session is established and conducted, what should be backed up during a backup session, etc). (Further below more details on joining groups are described).
  • a backup group which includes dedicated media handler 210 can also include any of the following members inter-alia: one or more other media handlers of the same or different types, media server 130, one or more public galleries 190, and local backup 270.
  • dedicated media handler 210 may belong to more than one backup group.
  • one backup group including media handler 210 may include entities whose content is backed up onto dedicated media handler 210 whereas another backup group including dedicated media handler 210 includes entities on which content from dedicated media handler 210 is backed up.
  • one backup group including dedicated media handler 210 may have a rule which prescribes more frequent backups than another backup group including dedicated media handler 210.
  • the backup logic of any media handler in the backup group or the backup logic of media server 130 may initiate a backup session.
  • a backup session may be initiated whenever a media handler or media server 130 has new content, in a periodic manner at particular time(s) of day, upon user request, upon network coupling/recoupling, and/or due to any other appropriate event.
  • the initiating media handler or media server 130 communicates with the other members of the backup group to see who has new content.
  • the new content from each member is backed up on the other members of the backup group, via network 120.
  • backup is performed in the background without notifying the user (e.g. no notification via user interface 250).
  • the backup on each of the other members is not necessarily identical.
  • some digital content which is backed up on one other member may not necessarily be backed up on each of the other members.
  • content may be backed up temporarily on a media handler in the backup group but will potentially be deleted from the media handler when the corresponding local storage of the media handler is filled to capacity.
  • sharing logic 212 is responsible for the sharing of content from dedicated media handler 210 with one or more sharing entities, for example, inter-alia, one or more media handlers (of the same and/or different types), one or more public galleries 190, and/or media server 130.
  • sharing logic 212 is alternatively or additionally responsible for receiving shared content via network 120 (for example received from one or more media handlers and/or public galleries via or not via media server 130).
  • each entity which receives shared content from dedicated media handler 210 also shares content with dedicated media handler 210 but in other embodiments this is not necessarily the case.
  • sharing logic 212 may interact with the sharing logic of another entity in order to share content of media handler 210 with that entity and/or in order to share content of that entity with media handler 210, whereas in another embodiment interaction may not be necessary.
  • sharing logic 212 may interact with the sharing logic of media server 130 in order to share content of dedicated media handler 210 with another entity and/or in order to have content of another entity shared with dedicated media handler 210, whereas in another embodiment interaction may not be necessary.
  • both digital content and related metadata are shared.
  • a sharing group which includes dedicated media handler 210 and one or more entities, and rules for sharing among members of the sharing group are defined (for example when a sharing session is to be initiated, how a sharing session is established and conducted, what should be shared during a sharing session, etc). (Further below more details on joining groups are described).
  • a sharing group which includes dedicated media handler 210 can also include any of the following members inter- alia: one or more other media handlers of the same or different types, media server 130, one or more public galleries 190.
  • dedicated media handler 210 may belong to more than one sharing group.
  • one sharing group including dedicated media handler 210 may include entities whose content is shared with dedicated media handler 210 whereas another sharing group including dedicated media handler 210 includes entities with which content of dedicated media handler 210 is shared.
  • one sharing group including dedicated media handler 210 may relate to a different content scope than another sharing group including dedicated media handler 210.
  • content is shared in accordance with a predefined scope. For example in one of these embodiments, content can be shared in an album based manner such that specific albums will have copies on each member of a specific sharing group. In some embodiments, sharing may in some embodiments be performed in a similar manner to the backup that was described above.
  • the sharing logic of any media handler in the sharing group or the sharing logic of media server 130 may initiate a sharing session.
  • a sharing session may be initiated whenever a media handler or media server 130 has new content (for example of a predefined scope), in a periodic manner at particular time(s) of day, upon user request, upon network coupling/recoupling, and/or due to any other appropriate event.
  • the initiating media handler or media server 130 communicates with the other members of the sharing group to see who has new content.
  • the new content from each member may be shared with the other members of the sharing group, via network 120.
  • the first difference is that in this embodiment sharing logic (for example of each media handler in the sharing group) informs the user of the corresponding media handler about the new content in realtime using the user interface of the corresponding media handler, whereas backup in this embodiment is performed in the background.
  • the second difference is that in this embodiment the sharing logic can interact with the distribution logic in order to automatically distribute the new content to a pre-defined distribution list related to the sharing group (in addition to sharing with the sharing group), whereas in this embodiment the backup logic is not concerned with distribution. In other embodiments either or both of these differences may not exist.
  • content may be stored temporarily on a media handler member of the sharing group such that it can be used by that media handler but will potentially be deleted from the media handler when the corresponding local storage of the media handler is filled or almost filled to capacity- meaning that the shared content is not really owned and stored on that specific media handler.
  • the media handler instead of deleting content when the media handler is filled or almost filled to capacity, the media handler configures some content to a reduced format (e.g. thumbnails for images) in order to have basic browsing abilities. Therefore in this embodiment, the media handler will have some content stored fully according to some heuristic logic (e.g. most recently used, new content etc.) and the rest of content stored only in the reduced format.
  • the sharing group can be omitted, in which case the shared content is public and can be retrieved by/shared with (according to some access policy) any media handler or optionally other component in system 100 which is coupled to network 120.
  • the shared content is public and can be retrieved by/shared with (according to some access policy) any media handler or optionally other component in system 100 which is coupled to network 120.
  • there is no automatic sharing content transfer between media handlers since there is no sharing group defined.
  • the content is public and therefore can be retrieved by/shared with any media handler or optionally other component in system 100 which is coupled to network 120, however, a sharing group still may exist which receives new content notifications.
  • a member of a sharing group may choose to leave a sharing group or a specific shared album either by deleting the shared album content or by leaving the shared content in its local storage 260 as a standard album (collection of content) but without future update sharing with the other group members.
  • sharing group members may receive notifications of a member that has left a sharing group or a shared album.
  • distribution logic 213 is responsible for distributing content via network 120, with or without the assistance of the distribution logic of media server 130.
  • the targets of the distribution can be media handlers or other targets such as MMS clients, email accounts and 3 rd party web printing services.
  • a list of email accounts that are used by the user of dedicated media handler 210 can be acquired by a PC which is connected to dedicated media handler 210.
  • dedicated software running on the PC can import email account information from the relevant email messaging software that is used on the PC (e.g. from the address book or contacts of Microsoft Outlook).
  • distribution from dedicated media handler 210 to a target can be initiated by the user interface 250, or by a pre-defined automatic distribution scheme (such as new content distribution).
  • distribution logic 213 allows the attachment of information (for example free text) to the distributed content.
  • shared content can be distributed to at least one user device which is not in the sharing group, with or without the assistance of the distribution logic of media server 130.
  • shared content can be distributed to a printing service coupled to network 120 (for example a web printing service).
  • distribution logic 213 may additionally or alternatively be responsible for handling an incoming distribution and/or an incoming reply relating to a distribution process outgoing from media handler 210 (for example the reply can be, in one of these embodiments, feedback from a printing service).
  • the incoming reply or distribution may or may not have been transferred with the assistance of the distribution logic of media server 130.
  • sharing logic 212 or distribution logic 213 may each additionally or alternatively perform transcoding, adaptation of content to the target display, and/or other processing on digital content transferred from dedicated media handler 210.
  • gallery logic 290 handles the interaction via network 120 between dedicated media handler 210 and one or more content galleries 190 with or without the assistance of the gallery logic of media server 130.
  • the singular form of gallery 190 is used below to connote both the case in which there is a single such gallery and the case in which there are a plurality of galleries, as appropriate to the context.
  • dedicated media handler 210 is able to import, export, share, backup, distribute and/or browse content on existing content gallery 190 without relation to the media handling infrastructure available on gallery 190.
  • gallery logic 290 handles the login, browsing, upload and download of content from/to gallery 190, for example according to the logic that is defined by the user via the user interface 250.
  • gallery logic 290 can perform several commands according to user requests or can perform automatic actions such as periodic import and export of content to/from dedicated media handler 210.
  • gallery logic 290 interacts with backup logic 211, and/or sharing logic 212 in order to manage backup and/or sharing with content gallery 190 via network 120 (with or without the assistance of backup logic, sharing logic, and/or gallery logic of media server 130).
  • gallery 190 can be considered to be part of the sharing/backup group in most senses.
  • the sharing or backup for the gallery 190 is performed remotely, for example by the gallery logic on any media handler in the sharing or backup group and/or by the gallery logic in media server 130.
  • an automatic polling may be employed, for example periodically, whenever any media handler or media server 130 has new content, at particular time(s) of day, upon user request, upon network coupling/recoupling, and/or due to any other appropriate event.
  • this polling can be implemented as part of gallery logic 214 (assuming media handler 210 performs the polling) or as part of the functionality of the gallery logic of media server 130.
  • gallery logic 290 interacts with the distribution logic 213 in order to distribute content via network 120 to gallery 190 that is part of a distribution list that includes media handlers or other target devices (with or without the assistance of the gallery logic and/or distribution logic of media server 130).
  • account logic 241 manages the identity/identities of dedicated media handler 210, identities (user names and/or other IDs) of other known media handlers (and optionally other entities) available on network 120 (for example group buddies or others), and/or any groups (sharing or backup) to which dedicated media handler 210 belongs.
  • dedicated media handler 210 has a user name and/or other type of identification (ID) in order to identify it.
  • account logic 241 supports multiple user names and/or other types of identification, for example in order to support multi-users such that every specific user that uses dedicated media handler 210 has his own content and configuration and therefore this case can be considered as separate media handlers (logically).
  • the account logics in various media handlers may interact to enable a search of existing users according to any appropriate criterion/criteria and/or in order to enable viewing of the presence status of each user.
  • account logic in the media server 130 may or may not assist in the search and displaying of presence status.
  • account logic 241 of dedicated media handler 210 may use network 120 and the presence information retrieved with the assistance of media server 130, in order to facilitate instant messaging capabilities between users of various media handlers.
  • presence information regarding the users of the various media handlers may be exchanged via instant messaging.
  • account logic 241 is responsible for adding or removing media handlers to/from the list of other media handlers known to dedicated media handler 210. In some embodiment, accounts logic 241 is responsible for adding or removing sharing/backup groups to/from a list of backup/sharing groups to which dedicated media handler 210 belongs and/or adding or removing members from each group. In some embodiments, in order for dedicated media handler 210 to be joined in a group, accounts logic 241 has to first be aware or become aware of at least one other media handler which is or should be in the group (i.e.
  • accounts logic 241 need not be aware or become aware of any current or prospective members of the group, prior to requesting entry into the group.
  • the term "pairing" refers to accounts logic in each of two media handlers becoming aware of the other media handler- i.e. adding the other media handler to the list of known media handlers.
  • a real-time pairing process performed by dedicated media handler 210 and an additional media handler allows the exchange of user names or other identification between the two media handlers and adds each media handler to the list of known users maintained by the account logic of the other media handler.
  • the real time pairing process can be performed with or without the assistance of the account logic of media server 130 (for example media server 130 may optionally provide addressing and/or control signaling).
  • the users of dedicated media handler 210 and the additional media handler use the user interfaces on the respective media handlers thereof (for example press a button/key) at approximately the same time, or one of the two users uses the user interface on his media handler, in order to perform pairing peer-to-peer or via media server 130 (i.e. without or with the assistance of media server 130).
  • the exact timing tolerance may be measured, for example by media server 130, the respective media handlers and/or the distributed peer-to-peer network).
  • the two media handlers are coupled in parallel with telephone equipment to a telephone network, and the two users are participating in a (voice) phone call
  • the pairing includes both users using the user interface (for example pressing a specific button/key) of the media handlers during the phone call, thereby activating modems in the network interfaces of the respective media handlers.
  • a non-real time process can be used for pairing between dedicated media handler 210 and an additional media handler so that each is added to the list of known media handlers maintained by the account logic of the other media handler.
  • a first media handler for example whose user has pressed a button/key on the user interface
  • receives a code for example, temporary, with a predetermined expiry
  • the user provides the code to another (second) user, for example verbally during a phone conversation, and the user of the second media handler enters the code, for example via the user interface of his media handler.
  • the code is communicated to the account logic of media server 130 which pairs between the two media handlers.
  • the pairing may include media server 130 sending each of the two media handlers the user name of the other media handler and authorization to "know" the other media handler.
  • the code (for example with the predefined expiry) which is provided to the user of the second media handler may vary depending on the embodiment.
  • the code is generated by the account logic of media server 130 upon request and provided to the first media handler whose user provides this generated code to the second user for pairing purposes.
  • the account logic of media server 130 periodically generates a plurality of different codes (for example with predefined expiry), each customized for a different media handler, and each code is sent to the corresponding media handler upon generation.
  • the user of the first media handler provides the previously received customized code to the second user for pairing purposes.
  • a common code (for example with predefined expiry) is generated periodically by the account logic of media server 130, and provided upon generation to more than one media handler.
  • the user of the first media handler provides to the user of the second media handler for pairing purposes, a code (for example with a predefined expiry) which is based on the previously received common code and a unique identification of the media handler.
  • a global code (for example with a predefined expiry) is generated periodically by the account logic of media server 130, and provided upon generation to all the media handlers known by the account logic of media server 130.
  • the user of the first media handler provides to the user of the second media handler for pairing purposes, a code which is based on the previously received global code and a unique identification of the media handler.
  • a first user may provide his user name to a second user.
  • the user name may be predefined for the media handler of the user or the user may have selected the user name.
  • the second user can then input the provided user name using the user interface of his media handler and send the indicated user name with a request for pairing to the account logic of media server 130.
  • Media server 130 may then forward the request to the media handler of the first user, and if the first user approves, media server may relay the approval to the media handler of the second user.
  • the account logic of media server 130 ensures that each user name is distinguishable so that a user may use the user interface of a media handler (for example user interface 250 of dedicated media handler 210) to input his own user name (for example when selecting his user name) or input the user name of another user so that the inputted user name unambiguously specifies a particular media handler (either media handler 210 or another media handler). It is possible, in some embodiments, that media handlers may have different types of user interfaces, some of which are more limited than others.
  • any sequence of pressed buttons/keys on the user interface should uniquely identify the user name of no more than one media handler (or not identify any media handler).
  • the user interface of a media handler (for example user interface 250) is a partial keyboard with each of at least one of the keys corresponding to a letter group.
  • a user interface of a media handler (for example user interface 250) includes keys for at least the digits 0 -9, with each of at least one of these keys associated with a group of letters in addition to being associated with a digit (i.e.
  • the user interface includes at least one key with the same alphanumeric correspondence as on a telephone user interface).
  • the user interface of a telephone coupled to network 120 in parallel with a media handler functions also as the user interface of that media handler (for example of dedicated media handler 210).
  • a user calls a customer support number using a telephone coupled to network 120 in parallel with the media handler (for example in parallel with dedicated media handler 210) for the purpose of pairing (for example indication of the user name of another media handler to pair to) and/or for additional configuration tasks.
  • the customer support service supports interactive voice response IVR functionality.
  • the user interface of a media handler controls the IVR customer support via the telephone network by playing dual tone multi-frequency DTMF tones as if a telephone keyboard was pressed.
  • the user interface monitors the IVR customer support via the telephone network, synchronizing with the IVR status so that the menu choices of the IVR customer support may be displayed on a display associated with the media handler.
  • the IVR enables a voice response menu.
  • media server 130 synchronizes between the menu tree content of the media handler and the menu tree content of the IVR customer support.
  • account logic 241 may interact with the user of dedicated media handler 210 via user interface 250 to determine if the user wishes media handler 210 to be in a same sharing or backup group as the other media handler.
  • the media handler 210 and the other media handler may form a new sharing or backup group and/or either can join an existing group which includes the other.
  • the user of dedicated media handler 210 may use user interface 250 to add users (who are now known due to pairing) to groups to which the user of dedicated media handler 210 belongs.
  • each of two media handlers participating in the process may receive a list of groups to which the other belongs, either from the account logic of the other media handler or from the account logic of media server 130.
  • a new group including the two media handlers may be suggested (for example by media server 130, or by the peer-to-peer network after having searched in a database that is distributed among peers in the network. See for example the article "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications" referenced above).
  • the users of the two media handlers can then select groups for joining via the user interfaces.
  • sharing and backup groups have groups name that enable easy joining into the group.
  • any user with a media handler has the ability to join a group by indicating the name of the group (unless there is some access protection policy defined for the group, in which case the group administrator should define an access list).
  • the group name can be indicated using the user interface of a media handler, where in some cases the choice of group name may be restricted to eliminate ambiguity due to limited user interfaces as described above for the indication of user name, mutatis mutandis.
  • the group name can be indicated by calling customer support with IVR functionality, as described above for the indication of user name, mutatis mutandis, or by any other suitable method.
  • the account logic of media server 130 will notify the members of the group, or a notification may be sent directly to each member of the group (for example using the decentralized peer-to-peer algorithm as described in "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications", referenced above or any other appropriate method).
  • the account logic of each media handler in the group will add media handler 210 to the list of members of the group.
  • media handler 210 receives from the account logic of media server 130 or directly from the account logic of each member of the group the user name and/or other identification of the members of the group so that account logic 241 of dedicated media handler 210 may add the group and its members.
  • account logic 241 determines the routing to each target entity with the help of network interface 240. In some of these embodiments the algorithm will vary depending on the type of addressing.
  • account logic 241 knows the address of each relevant entity as provided by network interface 240.
  • account logic 241 knows the user name (or other identification) and not necessarily any additional addressing information with addressing services provided in some cases by the account logic and network interface of media server 130.
  • accounts logic 241 may run a decentralized peer-to-peer algorithm, for example as described in "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications" referenced above or any other appropriate algorithm.
  • DNS servers may provide the addressing information corresponding to user name for each target entity.
  • accounts logic 241 also or alternatively records the real-time status of each media handler in order to be able to communicate with the media handler (for example for the purpose of implementing the logic in dedicated media handler 210) and/or to have presence information.
  • logic on media handler 210 may alternatively or additionally include processing logic to process the digital content. For example, digital photos can be edited as is known in the art.
  • user interface 250 interacts with the user in order to operate the logic of dedicated media handler 210 and/or in order to operate other interfaces (source, display, network, etc) of dedicated media handler 210.
  • user interface 250 thus provides manual control (i.e. management) over one or more tasks which are performed by dedicated media handler 210 automatically (i.e. tasks which are initiated without the user first requesting initiation) .
  • user interface 250 allows a user to provide input regarding an operation which was automatically initiated, for example to override execution of an automatic operation and/or otherwise manage the operation.
  • source interface 220 is responsible for local importing and exporting of media content for dedicated media handler 210.
  • media content can be imported for example from external source 151, internal source 221 or from a virtual media handler coupled to source interface 220.
  • source interface 220 handles the logic (manually and/or automatically) for importing/exporting content.
  • Source interface 220 may provide various interface options, depending on the embodiment, including one or more of the following, inter-alia: a memory card reader, USB, Fire Wire, Ethernet, Bluetooth. WLAN, UWB, RS232 serial connection etc.
  • Internal source 221, if present, may include any suitable recording means, any suitable acquiring means (i.e. acquiring what has previously been recorded), and/or any suitable storage means.
  • internal source 221 can be a camera.
  • internal source 221 can be a scanner for scanning printed images. Other examples of sources are provided elsewhere herein.
  • network interface 240 has various interface options including one or more of the following inter-alia: Ethernet, cable modem, satellite modem, dial up modem, cellular, wireless LAN, WiMAX.
  • network interface 240 is responsible for setting up the coupling with network 120, monitoring the status of the network coupling and/or interacting with user interface 250 regarding the network coupling, hi one embodiment, once network interface 240 has coupled dedicated media handler 210 to network 120, network interface 240 interacts with account logic 241 in order to allow mutual discovery of/by other media handlers and optionally other entities available on network 120 and/or in order to provide and receive identification information to and from other media handlers and 001064
  • network interface 240 also enables transfer and receipt of signals and/or content related to features of any of the following inter-alia backup logic 211, sharing logic 212 and distribute logic 213.
  • network interface 240 implements a fax receiver and transmitter.
  • the fax transmitter receives content from local storage 260 and sends the content over the network 120 using fax modem.
  • the fax receiver receives content from network 120 using fax modem and sends this content to local storage 260.
  • user interface 250 may or may not be involved in both fax transmit and receive sessions.
  • network interface 240 has wireless LAN capabilities for communicating with other wireless clients and implements the functionality of a wireless access point and router for all the clients in the wireless network.
  • network interface 240 may couple to a PC that acts as a local external source by using an application that may be installed on the PC which makes the PC appear as a source of content.
  • network interface 240 More details on embodiments of network interface 240 are provided further below.
  • display interface 230 which couples to display 161 and/or to internal display 231 is responsible for displaying media content that is stored on dedicated media handler 210. In one of these embodiments, the display interface handles the logic and presentation features of displaying the content in various ways that will in some cases leverage the organizing logic and user interface.
  • Display interface 230 may provide various interface options, depending on the embodiment, including one or more of the following, inter-alia: Composite, Component, VGA, DVI, HDMI, etc..
  • display interface 230 may function as a mass storage device (e.g. USB mass storage device class or SD memory device) when interfacing to display 161.
  • content from local storage 260 which may be updated from time to time, may be displayed on display 161 in addition to or instead of content in the external memory card/device.
  • display interface 230 may be a usual printer interface (e.g. USB 5 parallel port).
  • the printer will support standard printing protocol (such as LPR, Postscript, PictBridge) such that dedicated media handler 210 is able to send content to print on the printer.
  • the printer's driver may be installed on dedicated media handler 210 for the purpose of sending content to printing.
  • the printer's driver may be installed on media server 130 and the formatted data (according to the printer driver) may be sent via network 120 to dedicated media handler 210 (when network 120 is coupled to dedicated media handler 210) which will then relay the formatted data to the printer via display interface 230.
  • the display interface 230 includes games that use some of the content that is stored by dedicated media handler 210. For example, these games may use the content in local storage 260 and the user interface 250 in order to present an interactive game via display interface 230.
  • the content that is used by the games can be selected by the user, deemed appropriate by organizing logic 215, and/or randomly selected.
  • images of faces may be used as characters in a game.
  • an algorithm for extracting faces from the content may be used by organizing logic 215 to determine which content includes faces and how to extract these faces.
  • organizing logic 215 generates meta-data which specifies which images include faces and how to extract these faces.
  • the meta data is checked to determine which images are appropriate because those images includes faces.
  • extracted faces may be shown via display interface 230 as a photo montage by stitching these faces onto another full picture.
  • organizing logic 215 may generate other types of meta- data which allow categorization of content so that a user can play a game using content which conforms to particular criteria.
  • the generated meta-data may indicate that a picture is an outdoor or indoor picture and therefore outdoor pictures (or indoor pictures) can be selected for the game displayed via display interface 230.
  • a full picture may be torn to pieces either as a puzzle game or as a detection game and displayed to the user via display interface 230.
  • a detection game is implemented, the user needs to detect a person in the image while viewing just a few torn pieces of the original full picture or by viewing a distorted image (such as fish-eye distortion). Any of the examples of displays presented herein, inter-alia, may be used as internal display 231, if present.
  • control bus 261 interfaces between the user interface 250 (the end user intentions and notifications) and the logic modules (any of 215, 211, 212, 214, 241 and/or 213) of dedicated media handler 210.
  • the content bus 262 is a high speed content bus that inter-alia transfers content between local storage 260, network interface 240 (to or from network 120) and/or the logic modules (any of 215, 211, 212, 214, 241 and/or 213) of dedicated media handler 210
  • a logic module may change the format of content and/or perform processing/analysis on content.
  • the appropriate logic for example backup logic 211, sharing logic 212, distribution logic 213, etc
  • content flow management may include content transformation.
  • local storage 260 stores all the content that was imported or transferred to dedicated media handler 210.
  • content may have been imported from a local or remote source or virtual media handler, and/or content may have been transferred to (for example distributed to, shared with and/or backed up on) dedicated media handler 210.
  • the content is stored with meta-data that includes both the initial meta-data of the content and also additional meta-data that was generated by the organizing logic 215 of dedicated media handler 210.
  • local storage 260 manages the capacity and informs the user of dedicated media handler 210 when the storage is about to be filled to capacity.
  • various options may in some cases be available for the user, such as deleting old content, exporting content to external backup (such as local backup 270) etc.
  • a dedicated media handler may have additional functionality, less functionality and/or different functionality than described above for dedicated media handler 210 with reference to Figure 2.
  • the functionality of any of the modules shown in Figure 2 may be missing from a dedicated media handler of a different embodiment.
  • a dedicated media handler of a different embodiment may have additional and/or different functionality than described with reference to Figure 2.
  • the functionality described for dedicated media handler 210 with reference to Figure 2 may be divided into less, more and/or different modules than shown in Figure 2, and/or the functionality of dedicated media handler 210 may be divided differently among the modules of Figure 2.
  • a dedicated media handler may be of type
  • a dedicated media handler of type 171 can be designed for a lower cost than media handler 210 due to the reduced capabilities.
  • a dedicated media handler may be of type
  • media handler 172 with no source capabilities (i.e. 220 and 221 omitted), optionally without some or all of the logic (any of 215,211,212, 214, 241 and/or 213 may be omitted), and optionally without local storage 260.
  • media handler 172 can be designed for a lower cost than media handler 210 due to the reduced capabilities.
  • a dedicated media handler may be of type 173 (i.e. a mobile version) and therefore may in some embodiments have size and power constraints compared to non-mobile media handlers.
  • a dedicated media handler of type 173 Due to the mobility of a dedicated media handler of type 173, in some embodiments it is more likely that such a dedicated media handler will integrate a media display 164 inside and/or a media source 155 (e.g. camera) inside. However in some embodiments, mobile media handler 173 can additionally or alternatively have interfaces for an external local media source and/or an external local media display.
  • a particular dedicated media handler may have a display interface 230, a source interface 220, sharing logic 212, accounts logic 211, distribution logic 213, gallery logic 214, user interface 250, a limited network interface, a local storage with limited capacity, and organizing logic of limited functionality and network interface 240.
  • the dedicated media handler cannot handle backup (no backup logic), hi this embodiment, a local PC cannot couple to the network interface in order to function as a source.
  • organizing logic does not perform complex organizing algorithms but only organizes the content according to the original meta-data (for example based on the creation date).
  • a dedicated media handler which can couple to a telephone link of a circuit switched telephone network (either directly or via an (optional) wireless PHY 750 as described below with reference to Figure 7) to a cellular telephone network, or to a cable network may provide a welcome solution to users who do not have a PC.
  • the dedicated media handler can have a display interface for coupling to a television set, and therefore may suit the majority of households which have a television set.
  • the media handling abilities of the dedicated media handler as described herein can allow the user to exchange digital content with a PC user who is also coupled to network 120 (for example to an IP protocol based network such as the Internet), thus bridging between
  • the dedicated media handler may even forgo some functionality (for example backup, and/or source interface) in order to be more attractive to a user with a low level of technical abilities.
  • the complexity of the functionality of a media handler can vary depending on which modules of Figure 2 are included.
  • a set-top box for example for cable or satellite
  • a display for example a television.
  • the set-top box has to have at a minimum display interfaces 230, network interface 240 and user interface 250, for example with the user interface of the set-top-box and/or of the TV functioning as user interface 250.
  • the set-top box (which in this embodiment may have a network interface 240 of an embedded cable modem) does not have a source interface (i.e. no source input) and no logic, and therefore would resemble a simplified display media handler 172.
  • the set- top-box may not have a source interface (i.e. no source input) but may have the ability to execute applications and services, and therefore it may be possible to implement some or all of logic 215, 211, 212, 214, 241 and/or 213 on the set-top-box.
  • the set-top-box resembles a more complex display media handler 172.
  • the set-top-box may have a source interface (for example Ethernet, USB) and at least some logic and therefore resembles media handler 110.
  • a cellular handset (or PDA) which couples to network 120 via wireless infrastructure or any other means.
  • the cellular handset has display interface 230, network interface 240 and user interface 250.
  • the cellular handset can resemble a simple or more complex mobile media handler 173.
  • a cellular phone may have media handling software functionality embedded inside (such as content organizing, content sharing etc and/or any of the logic discussed above.).
  • media handling software functionality embedded inside (such as content organizing, content sharing etc and/or any of the logic discussed above.).
  • the cellular handset may function as a display media handler 172.
  • a PC or other device which does not necessarily include media handler logic (i.e. does not necessarily have modules 215, 211, 212, 214, 241 and/or 213), but includes web browsing capabilities.
  • media handler logic i.e. does not necessarily have modules 215, 211, 212, 214, 241 and/or 213
  • Such a device can access the (network) user interface of media server 130 and exploit the logic on media server 130, in order to act as a media handler.
  • FIG 3 illustrates the block diagram of a media server 130, according to an embodiment of the present invention.
  • Each module illustrated in Figure 3 may be made up of any combination of software, hardware and/or firmware which performs the functions of the module as defined and explained herein. Recall from Figure 1, that media server 130 and one or more media handlers are coupled to network 120.
  • media server 130 includes any of the following, inter- alia: a mass storage 320, one or more interfaces (for example a network user interface 341, a network interface 340), one or more buses (for example content bus 360), and logic.
  • the logic is shown in Figure 3, divided into organizing logic 310, backup logic 331, accounts logic 342, sharing logic 332, distribution logic 333 and gallery logic 334 modules but it should be evident that in other embodiments, the functionality of the logic may be divided differently into modules and/or the logic may include less, more, and/or different functionality.
  • the media server 130 can be composed of a network of media servers in which the logic and mass storage 320 is distributed among a network of media servers.
  • the distributed architecture may in some cases improve reliability, quality of service, backup capabilities, and/or other capabilities.
  • the logic in media server 130 handles the automatic and/or manual features and/or algorithms that were offloaded by a media handler to the media server.
  • logic in media server 130 may substitute for logic that is missing in a media handler, for example for a media handler with limited or no logic but with web browsing capabilities.
  • network user interface 341 allows the media handler to interface with media server 130.
  • features and/or algorithms may be offloaded to media server 130 for any reason, even though the media handler is capable of performing the features and/or algorithms, for example because of speed, power, space, etc. considerations.
  • organizing logic 310 handles the optional automatic and manual organizing features and algorithms that were offloaded by a media handler to the media server 130.
  • organizing logic 310 may perform, mutatis mutandis, any of the following organizing tasks described above with respect to organizing logic 215 of dedicated media handler 210,: an auto and/or manual tagging process, an auto-clustering process, adding content to structured albums in mass storage 320, varying algorithms, etc.
  • the content in order to perform organizing, the content should be available in mass storage 320, for example when the content is backed up on mass storage 320 and/or for example when content is available in mass storage 320 on a temporary basis because media server 130 is relaying content.
  • organizing logic 310 is at least occasionally activated when new content is stored in mass storage 320, for back up and/or temporarily. In some of these embodiments, organizing logic 310 organizes content for media handlers with limited or no logic but with web browsing capabilities. Continuing with these embodiments, in some cases, games for users of these media handlers may rely on the organization performed by organizing logic 310, similarly to the games described above with reference to Figure 2.
  • backup logic 331, accounts logic 342, sharing logic 332, distribution logic 333 and/or gallery logic 334 may provide any of the functionality described above, respectively, of backup logic 211, accounts logic 241, sharing logic 212, distribution logic 213, and/or gallery logic 214 of media handler 210 to a media handler with web browsing capabilities.
  • sharing logic 332 may store on mass storage 320 the shared content so that a media handler with web browsing capabilities may share the content.
  • the media handler may not have the logic or may prefer using the logic of media server 130.
  • logic in media server 130 may interact with logic in one or more media handlers to assist the media handlers in handling digital content.
  • media server 130 can additionally or alternatively relay content, manage signaling, provide addressing services initiate content transfer, transcode transferred content, adapt transferred content, assist in grouping, and/or otherwise assist media handlers in handling digital content.
  • account logic 342 manages the identities (user names and/or other IDs) of known media handlers (and optionally other entities) available via network 120 and/or manages the information regarding sharing and backup groups. In one embodiment, accounts logic 342 also or alternatively records the real-time status of each media handler in order to be able to communicate with the media handler (for example, for the purpose of implementing the logic in the media server 130) and to have presence information. More details on how account logic 342 of media server 130 can assist in various embodiments were discussed above with reference to Figure 2.
  • backup logic 331 may assist the backup logic of media handlers for backup purposes, for example for transferring content for backup and/or for managing the backup session for a backup group. More details on how backup logic 331 can assist in various embodiments were discussed above with reference to Figure 2.
  • gallery logic 334 handles the communication with a public gallery 190 connected via the network 120.
  • a media handler may communicate directly with a public gallery 190, which is the regular case whenever there is no media server 130.
  • a media handler communicates with public gallery 190 via media server 130.
  • media server 130 can aggregate a few public galleries and manage the scheme of content transfer between the media handler and the public galleries and/or between various public galleries.
  • gallery logic 334 of media server 130 polls each public gallery 190 in an automatic manner in order to check for new content. In some cases, the results of the polling are used for notification and new content transfer within backup and sharing groups.
  • distribution of content from a media handler to any public gallery 190 may be managed by the gallery logic 334, such that the originating media handler does not need to handle the communication with the gallery. More details on how gallery logic 334 can assist in various embodiments were discussed above with reference to Figure 2.
  • sharing logic 332 may assist the sharing logic of media handlers for sharing purposes, for example transferring content for sharing and/or managing the sharing session for a sharing group. More details on how sharing logic 332 can assist in various embodiments were discussed above with reference to Figure 2.
  • distribution logic 333 handles the transfer of content to various targets as requested by media handlers.
  • the target can be another media handler or a device which is not a media handler, using email, MMS etc.
  • distribution logic 333 handles subscription to distribution services (e.g. MMS, 3 rd party printing services), hi one of these embodiments distribution logic 333 enables the originating media handler to attach information (e.g. free text) to the distributed content, hi one of these embodiments, distribution logic 333 can distribute shared content to a printing service coupled to network 120 (for example a web printing service).
  • distribution logic 333 handles feedback regarding the status of the printing and informs the originating media handler about the status.
  • sharing logic 332 or distribution logic 333 may each additionally or alternatively perform transcoding, adaptation of content to the target display, and/or other processing on transferred digital content.
  • distribution logic 333 may trans-code content to be distributed in a manner that will fit the display abilities of the target (either a media handler or not).
  • distribution logic 333 may receive an email content via network interface 340 intended for a media handler (for example, if a media handler user will have a subscription to an email account in the email domain of the media server 130) and will trans-code the full content of the email (text, graphics, attachments) into a regular content type that the media handler can present (can be tuned to the specific display abilities of the target media handler), such as a still image or a video clip.
  • This content can be then distributed by distribution logic 333 to the target media handler as a regular distributed content.
  • a feedback can be sent to the originating media handler.
  • the feedback can be received a long time after the distribution has been completed and therefore the distribution logic 333 needs to keep record of the originating media handler.
  • logic in media server 130 provides functionality relating to the server.
  • backup logic 331 manages the backing up of content on mass storage 320 when mass storage 320 is part of a backup group.
  • content is backed up on the media server 130 (which as mentioned above may be a distributed media server network) in any of several backup medium options (such as hard disks, optical media etc.
  • network interface 340 interacts with account logics of media handlers in order to discover entities accessible via network 120 and/or in to provide and receive identification information to and from accessible entities. In one embodiment, network interface 340 is responsible for setting up communication via network 120 with accessible entities.
  • network user interface 341 allows users to interface with media server 130, for example via any user device with web browsing functionality.
  • network user interface 341 resembles a user interface of a media handler.
  • content flows between modules of media server 130 via a content bus 360.
  • content bus 360 is a high speed bus which in some cases may be distributed among networked media servers.
  • mass storage 320 stores all the content that was transferred to the media server 130 for backup purposes (possibly secured or encrypted) or for temporal transfer in order to facilitate some of the logic (for example, the relaying of content between media handlers or other user devices).
  • the functionality of any of the modules shown in Figure 3 may be missing from media server 130 of a different embodiment.
  • some or all of logic 310, 331, 332, 333, and/or 342 may be missing, for example if transfer of content is performed peer-to-peer as described above with reference to Figure 2.
  • a media server 130 of a different embodiment may have more and/or different functionality.
  • the functionality described for the media server 130 of Figure 3 may be divided into less, more and/or different modules than shown in Figure 3, and/or the functionality of media server 130 may be divided differently into the modules of Figure 3.
  • Figure 4A illustrates the block diagram of a virtual media handler 174 which is stored on a storage device, according to an embodiment of the present invention.
  • Figure 4B is a block diagram of a virtual media handler 176 which is stored on media server 130, according to an embodiment of the present invention.
  • Each module illustrated in Figure 4 A or 4B may be made up of any combination of software, hardware and/or firmware which performs the functions of the module as defined and explained herein.
  • virtual media handler 174 or 176 stores relevant information about a first (i.e. original or creating) media handler that was exported/uploaded to virtual media handler 174 and 176 (such as configuration information including inter-alia user information and preferences) and that may allow a second (i.e. host) media handler to imitate the first media handler.
  • the local storage 440 of the storage device storing virtual media handler 174 comprises: a content storage 410 for storing digital content, a content meta-data storage 420 for storing the meta-data that is associated with this content and/or a configuration storage 430 for storing the configuration of a media handler (such as user information and preferences).
  • mass storage 320 of media server 130 stores virtual media handler 176 in a storage data structure 441 which comprises: a content storage 411 for storing digital content, a content metadata storage 421 for storing the meta-data that is associated with this content and/or a configuration storage 431 for storing the configuration of a media handler (such as user information and preferences).
  • storage data structure 441 may be considered to be a logical entity which describes the way the data is stored on media server 130.
  • the storage interface 450 for example USB or SD memory
  • digital content, meta data and/or the configuration may be transferred between the media handler and the storage device.
  • the transfer is performed automatically upon coupling.
  • the automatic transfer may be overridden (or approved/disapproved) by the user.
  • the user has an opportunity to initiate a transfer. The transfer may be in either direction (i.e. from a media handler to the storage device or vice versa).
  • the media handler looks at the media handler configuration in configuration storage 430 and determines whether the media handler created the stored configuration (i.e. whether the media handler was the creating media handler) or not. For example, in one of these embodiments, at the time of creation of a virtual media handler, the creator media handler may put its own information (and personal ID) in media handler configuration 430. In one of these embodiments, if the media handler determines that another media handler was the creator, then the media handler (acting as a host) imports the content, metadata and/or configuration. In this embodiment, if the media handler instead determines that the media handler was the creator, then the media handler exports content, metadata and/or configuration and/or the media handler may import content, for example if the content was updated by a host.
  • virtual media handler 176 is transferred via network 120, for example uploaded from a first media handler and downloaded to a second media handler.
  • digital content, meta data and/or the configuration are transferred between the media handler and media server 130.
  • the second media handler may have web browsing abilities but limited or no logic and still imitate the first media handler by using logic on media server 130.
  • the difference between a storage device including virtual media handler 174 and a "simple" storage device that stores the same kind of digital content is that the virtual media handler also includes media-handler-generated content metadata and/or media handler configuration and therefore has all the needed information for imitating the original media handler configuration and managed content on another media handler.
  • a "simple" storage device which stores the same kind of digital content (for example in a module similar to content storage 410) will not allow a second media handler to imitate the original media handler. Instead in this embodiment, the "simple" storage device will typically only enable a viewing of the content which does not take into account, for example the content organization, viewing preferences, etc. of the original media handler.
  • the functionality of any of the modules shown in Figure 4A or 4B may be missing from virtual media handler 174/176 of a different embodiment.
  • a virtual media handler 174/176 of a different embodiment may have additional and/or different functionality.
  • the functionality described for virtual media handler 174/176 of Figure 4A/4B may be divided into more, less and/or different modules than shown in Figure 4A/4B or the functionality of virtual media handler 174/176 may be divided differently among the modules of Figure 4A/4B.
  • Figure 5 illustrates a flow chart of a method 500 executed by a dedicated media handler, according to an embodiment of the present invention.
  • method 500 may be executed by dedicated media handler 210 or any appropriate dedicated media handler.
  • method 500 includes one or more tasks. The tasks illustrated for method 500 may be performed in any suitable order and/or simultaneously with other tasks, depending on the embodiment. One or more of the tasks described below as being included in process 500 may be omitted in other embodiments. In other embodiments of process 500, there may be more, less and/or different tasks than illustrated in Figure 5.
  • a dedicated media handler recognizes a network session trigger and a network session is established.
  • the dedicated media handler may recognize a trigger to initiate a network session with a media server or another entity (for example media handler, gallery, etc), for example an automatic trigger such as a timer for periodic or particular time(s) of day initiation, new content imported from a source or from a virtual media handler, upon network coupling/recoupling, and/or any other appropriate event, or for example a manual trigger such as a user request.
  • a media server or another entity for example media handler, gallery, etc
  • an automatic trigger such as a timer for periodic or particular time(s) of day initiation, new content imported from a source or from a virtual media handler, upon network coupling/recoupling, and/or any other appropriate event, or for example a manual trigger such as a user request.
  • the other entity may be in a backup or sharing group with the dedicated media handler but in other embodiments, this is not necessarily the case.
  • the dedicated media handler may recognize that media server 130 or another entity (for example media handler, gallery, etc) wishes to participate in a session with the dedicated media handler via network 120.
  • timing for example periodic or specific time of day
  • the other media handler is in a sharing or backup group with the dedicated media handler, but in other embodiments, this is not necessarily the case.
  • the purpose of the established network session may be for handling one or more of the following tasks, inter-alia: sharing (task 511), distribution (task 512), backup (task 513), public gallery (task 514), users (task 515).
  • sharing task 511 was discussed above, inter-alia, with reference to the discussion on sharing logic 212.
  • distribution task 512 was discussed above, inter-alia with reference to the discussion on distribution logic 213.
  • backup task 513 was discussed above, inter-alia, with reference to the discussion on backup logic 211.
  • the handling of public gallery task 514 was discussed above, inter-alia, with reference to gallery logic 214.
  • any task which is performed during the network session for example sharing (task 511), distribution (task 512), backup (task 513), and/or public gallery (task 514) is performed automatically (i.e. without first receiving a request from the user interface of the dedicated media handler).
  • any task which is performed during the network session for example sharing (task 511), distribution (task 512), backup (task 513), and/or public gallery (task 514) is performed (i.e. initiated) automatically however a user may override a task (or approve/disapprove a task), and/or manage the task by input to the user interface of the dedicated media handler.
  • sharing may be manually initiated during the network session via the user interface.
  • users task 515 may be handled during a network session and/or using the user interface of the dedicated media handler (for example user interface 250 of handler 210).
  • users task 515 relates to the operation of the account logic of the dedicated media handler, and therefore the reader is referred above to the description, inter-alia of account logic 241.
  • users task 515 includes configuration operations for the dedicated media handler.
  • any of tasks 510, 511, 512, 513, 514 and 515 may be omitted.
  • the dedicated media handler excludes certain logic tasks executed by the logic are omitted.
  • new content for the dedicated media handler i.e. content that was not previously handled by the dedicated media handler
  • new content for the dedicated media handler may be displayed, stored locally and/or organized (task 516) beginning with task 635 of method 600.
  • the activities displaying, storing locally and/or organizing
  • received distributed content and shared content may be displayed, organized, and stored locally, whereas received backed up content may only be stored.
  • the dedicated media handler handles a source or a virtual media handler.
  • the dedicated media handler may poll the source interface (for example source interface 220 of media handler 210) for a new local coupling to an (internal or external) local source or to a virtual media handler (for example virtual media handler 174).
  • the network interface of the dedicated media handler may receive communication from a remotely coupled source (e.g. source 154) or from a local PC connected to the network interface which functions as a source.
  • a remotely coupled source e.g. source 154
  • the importing or exporting of virtual media handler 176 stored on media server 130 may be detected.
  • task 520 for a local source includes: detecting the type of local coupling, and/or searching for content which has not been handled before by the dedicated media handler (new content).
  • the detection method depends on the specific type of local coupling (e.g. wireless, wired, internal source, etc).
  • the dedicated media handler detects the type and/or identification of the source and uses the detected information in order to determine one or more actions appropriate for content from that source (e.g. any of automatic importing, automatic storing, automatic backup, automatic displaying, automatic sharing, automatic distribution, and/or automatic organization, etc).
  • the required actions may be decided, for example based on the functionality of the source, and/or the previous history of actions for content from that source.
  • the dedicated media handler then scans the content on the source and identifies content that was not previously provided to the dedicated media handler (i.e. new content). In these embodiments, the dedicated media handler then performs the pre-configured action(s), for example initiating a network session (task 510) and/or performing task 521 (see below). In one of these embodiments, for some new content, task 521 may first be performed and then task 510. hi some embodiments in which the source is integrated within the dedicated media handler, task 520 may be performed similarly, mutatis mutandis (for example source detection and identification may be performed differently or may be unnecessary). In some embodiments with a remote source or with a PC functioning as a source that is coupled to the network interface, task 520 may be performed similarly, mutatis mutandis.
  • the content may be imported (from a source or virtual media handler), displayed, stored locally, and/or organized (task 521), beginning with task 630 of method 600.
  • content on the dedicated media handler may be exported to virtual media handler 174 or 176 (task 521), beginning with task 630 of method 600.
  • task 521 is not justified and therefore omitted, for example because there is no new content or because importing, displaying, storing locally, organizing and exporting are not desired or are not preconfigured actions.
  • task 520 (and 521) may be omitted, for example when the dedicated media handler excludes a source interface, there is no PC functioning as a source coupled to the network interface, and the dedicated media handler does not receive content via network 120 from remote sources or virtual media handlers.
  • the dedicated media handler polls for activities of the user interface (for example user interface 250 of dedicated media handler 210).
  • the user interface can initiate and/or manage various activities for the dedicated media handler.
  • the user interface can initiate and/or manage one or more of the following activities, inter-alia: display requests, organize requests, share requests, distribute requests, backup requests, import requests, export requests (including local printing), requests related to public galleries, identities and/or groups.
  • the user interface can manage an activity which was automatically initiated (i.e. an automatic activity) or a manually initiated activity).
  • the user interface may have more limited initiation and/or management abilities with respect to certain or all activities. For example, in one of these embodiments, for some activities, the user interface may only be able to override automatic operation but may not be able to otherwise affect the automatic operation.
  • the dedicated media handler performs background organizing activities in order to have pre-organization (before user organization) for new content that is received by the dedicated media handler and also for post-organization of the content whenever there is a need for process and time consuming organizing algorithms that will enable complex organizing capabilities, even if this complex organizing information will be available after the user has already performed the initial organizing process.
  • task 540 may be a background scheduler for organizing tasks, such as described below with reference to method 600, which were not completed during the execution of method 600. In other embodiments, task 540 may be omitted.
  • each member of a sharing or backup group and/or media server 130 independently waits for and recognizes a network session trigger (i.e. each independently performs task 510), where the network session trigger may be different for different members of the group.
  • network session triggers for any media handler and/or server 130 include inter-alia automatic triggers to initiate (e.g. elapsed period, time(s) of day, new content, coupling/recoupling, other appropriate event), manual triggers to initiate (e.g. user request) and/or automatic triggers to participate in session initiated by other entity (e.g. elapsed time, time(s) of day, recognition of initiation by other).
  • each dedicated media handler in the sharing group or backup group may independently perform method 500, with either the media handler or media server 130 initiating a network session between that dedicated media handler and media server 130.
  • backup/sharing is performed peer-to-peer
  • any appropriate scheme for spreading the content may be used.
  • each peer may know only a subset of other peers in the sharing/backup group with which the peer communicates and exchanges content. The concatenation of all of the subsets forms the overall sharing/backup groups.
  • Figure 6 illustrates a flow chart of a method 600 executed by a dedicated media handler, according to an embodiment of the present invention.
  • method 500 may be executed by dedicated media handler 210 or any appropriate dedicated media handler.
  • method 600 comprises tasks that a dedicated media handler performs independently of other media handlers.
  • Method 600 comprises one or more tasks which can be performed in any suitable order and/or simultaneously with other tasks, depending on the embodiment.
  • One or more of the tasks described below as being included in process 600 may be omitted in other embodiments, hi other embodiments of process 600, there may be more, less and/or different tasks than illustrated in Figure 6.
  • the dedicated media handler determines how to proceed with the detected new content from a source or virtual media handler, and/or with a detected virtual media handler. In some embodiments, in task 635, the dedicated media handler determines how to proceed with the new content received during a network session. In some of these embodiments, one or more tasks may subsequently be performed based on the determination of task 630 and/or 635, including any of the following, inter-alia: import from source (task 632), display (task 631), handle virtual media handler (task 633), store locally (task 634), organize (any of tasks 640 to 670). For example, in one of these embodiments, if a locally coupled virtual media handler is detected, at least task 633 is initiated.
  • the dedicated media handler may decide which tasks to execute.
  • the decision on which tasks to execute may be based on from where the content originated and/or which network session task relates to the content.
  • the user may provide input via the user interface on which tasks to execute.
  • the content is displayed.
  • the dedicated media handler imports new content from a source.
  • the dedicated media handler imports and/or exports digital content, metadata and/or configuration from and/or to a virtual media handler as described above with reference to Figure 4 A or 4B.
  • the dedicated media handler stores the digital content.
  • the dedicated media handler displays the new content so that the content can be organized by the user.
  • the dedicated media handler performs automatic tagging of content and/or auto clustering.
  • the information automatically generated by the automatic tagging and/or clustering is provided to the user in manual organization task 660 so that the user can approve or disapprove of the information.
  • the dedicated media handler receives input from the user regarding manual tagging and clustering of the content.
  • the dedicated media handler instructs the user to store the organized content in an album structure for easy retrieval.
  • the dedicated media will suggest possible relevant existing albums to the user that seem to be related to the new content.
  • Figure 7 illustrates a network interface of a dedicated media handler, according to an embodiment of the present invention
  • the network interface illustrated in Figure 7 is network interface 240 of dedicated media handler 210 whereas in other embodiments the illustrated network interface may be the network interface of any appropriate dedicated media handler.
  • the dedicated media handler of Figure 7 includes a network interface, a display interface and/or a source interface, sharing logic, a local storage, and optionally other modules.
  • network interface 740 includes the following modules: a content codec 742, a network PHY 741, and a network status management module 743.
  • Each module illustrated in Figure 7 may be made up of any combination of software, hardware and/or firmware which performs the functions of the module as defined and explained herein.
  • network interface 740 may have additional functionality, less functionality and/or different functionality than described herein.
  • the functionality described for network interface 740 may be divided into less, more and/or different modules than shown in Figure 7, and/or the functionality of network interface 740 may be divided differently among the modules of Figure 7.
  • network PHY 741 (physical layer, e.g. modem) handles the characteristics of network 120, for example, processing content sent or received by the dedicated media handler via network 120. m some embodiments, content is also decoded (or coded) by the content codec
  • network status management module 743 monitors and configures the network status. In some of these embodiments, network status management module 743 is responsible for detecting the availability and parameters of the network 120 and in some cases even initiates network coupling according to some pre-defined logic. hi some embodiments, network status management module 743 is responsible for recognizing a network session trigger (see for example stage 510 of method 500). In these embodiments, network status management module 743 may be capable of initiating outgoing network activity and/or recognizing incoming network activity.
  • network status management module 743 initiates a network connection on a periodic basis, at specific times during the day, when there is new content from a source or virtual media handler, upon user request at particular times of day, upon user request, upon network coupling/recoupling, and/or due to any other appropriate event. In some of these embodiments, additionally or alternatively, management module 743 monitors network 120 and therefore detects incoming network activity session.
  • management module 743 after recognizing a network session trigger, if there is content to be received or sent from the dedicated media handler during the network session, management module 743 handles the communication session for the content transfer. In one embodiment, during the network session, management module 743 communicates via the network 120 with other media handlers (with or without the assistance of media server 130) and/or communicates with media server 130. In one embodiment, at the end of the session, management module 743 is responsible for decoupling network interface 740 from network 120.
  • network 120 includes at least an analog and/or digital circuit switched telephone network 722 directly or indirectly interfacing with the dedicated media handler.
  • network PHY (aka physical layer) 741 of network interface 740 is coupled to a telephone line of circuit switched telephone network 722 either directly or via an (optional) wireless PHY 750.
  • wireless PHY 750 the wireless coupling between network PHY 741 and wireless PHY 750 allows the dedicated media handler to be coupled to PSTN 722, even though the PSTN connection is not close to the dedicated media handler.
  • wireless PHY 750 can sense the status of additional phone equipment which is coupled to the same phone line of circuit switched telephone network 722, for example by sensing the DC voltage changes on the phone line.
  • wireless PHY 75O 5 wireless PHY 750 shares a circuit switched telephone network phone line with phone equipment.
  • wireless PHY 550 controls the coupling and decoupling of parallel phone equipment, thereby controlling whether or not the phone equipment will ring.
  • caller ID information can be retrieved between the first and second ring and if necessary the caller ID information can be retransmitted on the line by network PHY 741.
  • additional status information and control may be communicated over the wireless connection in addition to input to and output from network interface 740.
  • wireless PHY 750 may provide an analog wireless link or a digital wireless link with the dedicated media handler.
  • wireless PHY 750 comprises an analog FM (frequency modulation) wireless transceiver which is coupled to an analog telephone line of circuit switched telephone network 722 (i.e. to a PSTN line), hi these embodiments, network PHY 741 comprises, inter-alia, one or more analog FM transceivers and a dial-up modem (e.g. V.90 or V.34) including the needed analog to digital conversions, hi one of these embodiments, the FM wireless link allows the dial-up modem(s) in network PHY 741 to communicate via the analog phone line as if the dial-up modem(s) were coupled directly to the analog phone line.
  • analog FM frequency modulation
  • network PHY 741 can detect the analog status of the telephone line and also control the telephone line, by using a command and control protocol over analog FM between network PHY 741 and the wireless PHY 750.
  • wireless PHY 750 handles the analog FM transmission and the analog interfacing to the analog phone line including control and sense of the line status (e.g. on-hook, off-hook).
  • the same concept of a wireless coupling can be used but with the wireless technology based on digital transmission.
  • the interface to the analog phone line includes a DAC (digital to analog converter) and ADC (analog to digital converter) which translate between the analog nature of the phone line and the digital wireless link.
  • one or more dial-up modem(s) e.g. V.90 or V.34, instead of being part of network
  • PHY 741 is/are part of the interface to the analog phone line, and therefore demodulated digital content is relayed by the wireless PHY 750 to network PHY 741.
  • the dial up modems may in some cases be different, for example fast setup time versus high bit rate.
  • a fast setup time modem is more power efficient than a high bit rate modem.
  • circuit switched telephone network 722 such as for example an ISDN line
  • standard data transfer services may be used instead of a dial up analog modem.
  • network interface 740 may also be used in a real time pairing process between the dedicated media handler which includes network interface 740 and another media handler when the two users of the media handlers are communicating in a voice call as described above via a telephone network which is circuit switched telephone network 722.
  • network interface 740 may additionally or alternatively include one or more cable modems for coupling to a cable television network and/or means for coupling to a cellular telephone network using a cellular modem (either circuit switched data or packet switched data).
  • a cable modem in network interface 740 couples to the cable television server infrastructure in order to enable communication via the Internet.
  • a cellular modem in network interface 740 couples to the cellular infrastructure and possibly its Internet gateway in order to enable a communication via the cellular network infrastructure and/or the Internet.
  • the cellular modem in this embodiment can use circuit switched data services (e.g.
  • network interface 740 may additionally or alternatively include a Blue-tooth interface capable of coupling "to a Bluetooth-enabled cellular handset (for example possessed by the same user as that of the dedicated media handler).
  • network interface 740 using a pre-configured network access configuration and the cellular handset as a modem, reaches the cellular infrastructure and possibly its Internet gateway in order to enable communication via the cellular network infrastructure or the Internet.
  • FIG 8 is a flow chart of a method 800 for a dedicated media handler initiating a network session, according to an embodiment of the present invention.
  • Method 800 may be performed by a dedicated media handler coupled to a telephone network (for example, cellular, or circuit switched such as PSTN, ISDN, E 1/Tl 5 etc).
  • the dedicated media handler which performs method 800 may be dedicated media handler 210 or any appropriate dedicated media handler.
  • some or all of method 800 (for example, tasks 810 to 860 and 890) correspond to task 510 in method 500.
  • Each task in method 800 may be performed in any suitable order and/or simultaneously with other tasks.
  • One or more of the tasks described below as being included in process 800 may be omitted in other embodiments. In other embodiments of process 800, there may be more, less and/or different tasks than illustrated in Figure 8.
  • the dedicated media handler waits for a trigger to initiate the network session, for example a user request and/or any automatic trigger such as a periodic timer, a specific time of the day (e.g. 2am when no one is using the phone), new content received from a source or virtual media handler, upon network coupling/recoupling and/or any appropriate other appropriate event.
  • a trigger for example a user request and/or any automatic trigger such as a periodic timer, a specific time of the day (e.g. 2am when no one is using the phone), new content received from a source or virtual media handler, upon network coupling/recoupling and/or any appropriate other appropriate event.
  • the dedicated media handler checks the availability status of the link (where link can be for example wired "line” and/or wireless) to the telephone network before and during the initiation time. In one of these embodiments, only when the link has been available for at least a predetermined amount of time, it is possible to proceed. In this embodiment, in case of periodic initialization or time-of-day initiation, if the link has not been available for at least a predetermined amount of time, then the network session initiation attempt is considered to be unsuccessful and task 810 is re-started at the next relevant time.
  • the dedicated media handler places the phone link "off-hook" and dials the target number.
  • the telephone number is associated with media server 130.
  • the telephone 001064 is another embodiment, where there is peer-to-peer communication, the telephone 001064
  • 77 number can be the telephone number of another entity (for example media handler, public gallery etc), for example which is known to the dedicated media handler and possibly which is in a group with the dedicated media handler.
  • the addressing may be performed by the account logic of the dedicated media handler using the telephone numbers as the network IDs.
  • the phone number is configured in the dedicated media handler and gets updated in every network session if there is a need.
  • the factory-default number is a nation-wide number and after the first network session, this number gets updated to the local number according to the location information that is updated on media server 130 for the dedicated media handler, for example based on the area code of the dedicated media handler (which media server 130 can determine from caller ID) or based on user input (for example input of the zip code of the dedicated media handler).
  • the target number is associated with media server
  • the target number can be for example one of a bank of numbers which correspond to server 130.
  • alternative numbers will be available including the original factory-default number.
  • the alternative numbers will be configured in various media handlers in a different order, for example in a different order for media handlers with the same time of day initiation.
  • the dedicated media handler checks the call status, hi some of these embodiments, if the call is unsuccessful (e.g. link "busy", link error), then call dial task 830 is re-initiated. However, in some other embodiments, for 1064
  • task 810 may instead be re-executed for the next relevant session initiation.
  • task 810 is re-executed.
  • the call may not be answered if the network (or media server 130) is not available or there is no new content to be transferred.
  • the dedicated media handler sends the media handler ID (identification) over the link in order for the other communicating party (for example media server 130 or the other entity) to have the user profile information.
  • the media handler ID is the telephone number.
  • the dedicated media handler retrieves its own user profile information (which may possibly have been changed by media server 130) via network 120. In these embodiments, therefore, the dedicated media handler gets updated on a periodic basis and media server 130, having the ability to change the user profile of any media handler, can provide a centric management of all media handlers.
  • the user profile is combined of configuration parameters that are determined by the account logic 342 of the media server (see Figure 3) and either originate from the senders of content or by a global configuration of media server 130.
  • the user profile information contains information related to the phone networking behavior (such as period of dialing, target number to dial etc.).
  • the configuration parameters will be used in the current communication session and will be used for future communication sessions and for other characteristics of the dedicated media handler (e.g. viewing parameters).
  • the dedicated media handler can alternatively or additionally send information to media server 130 that contains content requests - either specific content or some other information that is used by media server 130 in order to find relevant content for the dedicated media handler (e.g. preferred type of music).
  • the dedicated media handler may retrieve the user profile from a central database that is distributed among the peers, stores all user profiles, and possibly has keys (see for example "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications", referenced above)
  • the network session being established in some embodiments task 870 represents the handling of the digital content (corresponding for example to any of tasks 511, 512, 513 and/or 514) and/or user tasks (task 515) during the network session.
  • the content transferred is transferred between the dedicated media handler and media server 130 or between the dedicated media handler and the other entity.
  • the content transferred is new content and therefore the communication session starts by determining the list of new content items that need to be transferred.
  • the session is between the dedicated media handler and media server 130, in this embodiment some of the items are new items on media server 130 to be transferred to the dedicated media handler and some of the items are new items on the dedicated media handler to be transferred to media server 130, for example for networking purposes such as sharing, backup and distribution, hi this embodiment, if there is no new content, no content will be transferred during task 870.
  • method 800 may be performed by a low bit rate modem (with fast setup time) until detecting that there is a new content to be transferred while performing task 870.
  • a fast setup time modem uses the network 120 more effectively and can also save power consumption of the modem in case it is powered from a limited capacity power source (such as a battery).
  • the low bit rate modem can be implemented as a separate modem hardware that is more power consumption efficient relative to the high bit rate modem. If one of these embodiments, if there is no new content, then task 880 will follow until the end of process 800.
  • the content transfer will be performed by a high bit rate modem (with higher setup time), for example after hanging up with a low bit rate modem and reiterating to perform task 820, 830, 840, 850 and then 870 with the high bit rate modem
  • the two calls with different bit rates may be considered part of the same network session.
  • content that is uploaded from the media handler may be trans-coded and/or reduced to the required format and quality, as required by the media server (as part of the configuration sent during task 860).
  • media server 130 may restrict the content file size and therefore require the media handler to send a reduced format content.
  • the dedicated media handler decouples from the phone network (hangs up) after the session ends, for example due to the completion of content transfer or due to abnormal link conditions.
  • the dedicated media handler monitors the status of the link to the phone network from the time of "off-hook" state, hi some of these embodiments, the aim of task 890 is to detect whether there is a reason for discontinuing the call. Examples of possible reasons include, inter-alia: remote discontinuation indication from media server 130 or the other entity, detection of low quality phone link status, and/or sensing that a user is trying to use phone equipment which shares the telephone link with the dedicated media handler. Continuing with the example, the detection of phone equipment off-hook (i.e. a user trying to use the phone equipment) may in one embodiment be based on changes in the DC level of the phone link (which usually should be steady during the phone call). If a reason for discontinuing is detected, in one embodiment, the dedicated media handler decouples from the phone network (hangs up) in task 880.
  • Figure 9 is a flow chart of a method 900 for a dedicated media handler to participate in a network session initiated by media server 130 or another entity (e.g. media handler, public gallery, etc), according to an embodiment of the present invention.
  • Method 900 for example, may be performed by a dedicated media handler coupled to a telephone network (for example, cellular, or circuit switched such as PST, ISDN, El/Tl, etc).
  • the dedicated media handler which performs method 900 may be dedicated media handler 210 or any appropriate dedicated media handler.
  • some or all of method 900 (for example, tasks 910 to 970 and 995) correspond to task 510 in method 500.
  • Each task in method 900 may be performed in any suitable order and/or simultaneously with other tasks.
  • the dedicated media handler waits for a network session trigger.
  • the dedicated media handler waits for a relevant time for receiving communication which may be defined according to a periodic timer or a specific time of the day (e.g. 2am when no one is using the phone).
  • task 910 is omitted because any time is appropriate. This task is optional and in some embodiments any time is appropriate.
  • the dedicated media handler waits for a phone ring.
  • the dedicated media handler monitors the call.
  • phone equipment is normally decoupled from the phone link such that the first ring is not heard (unless there are other phone extensions).
  • the dedicated media handler detects if a caller ID information is present (usually, between the first ring and the second ring). In one of these embodiments, if caller ID is present, then task 940 is executed. In one embodiment where caller ID is not present, the dedicated media handler waits for a predetermined number of rings that the phone equipment has not answered and then answers the call in task 950, for example in the same manner that a fax machine works.
  • the dedicated media handler checks the caller ID information against the list of numbers that identify media server 130 and/or checks caller ID information against a list of numbers that identify other relevant entities (for example members of sharing/backup group and/or entities known to the account logic of the dedicated media handler).
  • media server uses 130 local PoPs (Point of Presence) in order to have local phone calls between media server 130 and the dedicated media handler.
  • PoPs Point of Presence
  • the list of media server phone numbers is configured in the dedicated media handler and gets updated whenever there is a phone communication (network) session between the media server and the media handler, hi another of these embodiments, in order to make sure that dedicated media handler will be able to receive calls from media server 130 even if the list of relevant caller ID numbers is not configured, the dedicated media handler has a single number that is hard coded and media server 130 may use this number if it cannot contact the dedicated media handler via local phone numbers related to media server 130.
  • the phone equipment is normally decoupled as explained above, then the phone equipment is recoupled to the phone link and receives the following rings (for example, in one embodiment from the second ring on).
  • the dedicated media handler passes the caller ID to the phone equipment whereas in another embodiment the caller ID is not passed to the phone equipment.
  • Method 900 then reiterates to task 910. hi one embodiment where the caller ID matches a number on the list, method
  • method 900 is terminated after the caller ID of a media server is detected or later in method 900, for example after task 970.
  • the user is notified that new content is waiting for him to retrieve (e.g. via some indication on the user interface of the dedicated media handler itself or by some indication on an internal or external display coupled to the dedicated media handler).
  • the content is retrieved by method 800, automatically or upon request of the user, in a separate call to the initiator (caller) of method 900.
  • the dedicated media handler implements both method 800 for retrieval of content in a call initiated by the dedicated media handler and method 900 (partially) for detecting new content in a call initiated by media server 130 or another entity, and therefore the two calls may be considered part of the same network session.
  • the first call in method 900 may be performed by a low bit rate modem (with fast setup time), for example because a fast setup time modem uses the network 120 more effectively and can also save power consumption of the modem in case it is powered from a limited capacity power source (such as a battery).
  • the low bit rate modem can be implemented as a separate modem hardware that is more power consumption efficient relative to the high bit rate modem.
  • the second call in at least part of method 800 (for example tasks 820, 830, 840, 850 and 870) is performed by a high bit rate modem with higher setup time.
  • the dedicated media handler completes the phone line circuit (off-hook state).
  • the dedicated media handlers checks if a tone is detected from media server 130 or from another relevant entity which indicates a network session, hi this embodiment, in some cases the check may be necessary in order to ensure that indeed the dedicated media handler has answered a relevant call and there is not a false alarm. In another embodiment, this check may be skipped.
  • the dedicated media handler decouples from the phone network (hangs up) in task 990. In one of these embodiments, in some cases in task 965, the dedicated media handler lengthens any time delay that the dedicated media handler may be using in task 910 such that if within the time lengthened time delay after decoupling there is another phone call, the dedicated media handler will not answer in order to lower the probability of consecutive false alarms.
  • the dedicated media handler retrieves its own user profile information (which may possibly have been changed by media server 130) via network 120. In these embodiments, therefore, the dedicated media handler gets updated on a periodic basis and media server 130, having the ability to change the user profile of any media handler, can provide a centric management of all media handlers.
  • the user profile is combined of configuration parameters that are determined by the account logic 342 of the media server (see Figure 3) and either originate from the senders of content or by a global configuration of media server 130.
  • the user profile information contains information related to the phone networking behavior (such as period of dialing, target number to dial etc.).
  • the configuration parameters will be used in the current communication session and will be used for future communication sessions and for other characteristics of the dedicated media handler (e.g. viewing parameters).
  • the dedicated media handler can alternatively or additionally send information to media server 130 that contains content requests — either specific content or some other information that is used by media server 130 in order to find relevant content for the dedicated media handler (e.g. preferred type of music).
  • the dedicated media handler may retrieve the user profile from a central database that is distributed among the peers, stores all user profiles, and possibly has keys (see for example "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications", referenced above)
  • task 980 represents the handling of the digital content (corresponding for example to any of tasks 511, 512, 513 and/or 514) and/or user tasks (task 515) during the network session.
  • the content transferred is new content and therefore the communication session starts by determining the list of new content items that need to be transferred.
  • some of the items are new items on media server 130 to be transferred to the dedicated media handler and some of the items are new items on the dedicated media handler to be transferred to media server 130, for example for networking purposes such as sharing, backup and distribution, hi this embodiment, if there is no new content, no content will be transferred during task 980.
  • method 900 may be performed by a low bit rate modem (with fast setup time) until detecting that there is a new content to be transferred while performing task 980.
  • a fast setup time modem uses the network 120 more effectively and can also save power consumption of the modem in case it is powered from a limited capacity power source (such as a battery).
  • the low bit rate modem can be implemented as a separate modem hardware that is more power consumption efficient relative to the high bit rate modem, hi one of these embodiments, if there is no new content, then task 990 will follow until the end of process 900.
  • the content transfer will be performed by a high bit rate modem (with higher setup time), for example after hanging up with a low bit rate modem and performing method 800 (i.e. initiating a second call) with a high bit rate modem (optionally skipping task 860 and/or the re-determination of the list of new content), or for example after hanging up with a low bit rate modem, reiterating to task 910 or 920 and answering a second call with the high bit rate modem (optionally skipping task 970 and/or the re-determination of the list of new content).
  • the two calls with different bit rates may be considered part of the same network session.
  • media server 130 may restrict the content file size and therefore require the dedicated media handler to send a reduced format.
  • the dedicated media handler decouples from the phone network (hangs up) after the session ends, for example due to completion of content transfer or due to abnormal link conditions.
  • the dedicated media handler monitors the status of the link to the phone network from the time of "off-hook" state, hi some of these embodiments, the aim of task 995 is to detect whether there is a reason for discontinuing the call. Examples of possible reasons include, inter-alia: remote discontinuation indication from media server 130 or the other entity, detection of low quality phone link status, and/or sensing that a user is trying to use phone equipment which shares the telephone link with the dedicated media handler. Continuing with the example, the detection of phone equipment off-hook (i.e. a user trying to use the phone equipment) may in one embodiment be based on changes in the DC level of the phone link (which usually should be steady during the phone call). If a reason for discontinuing is detected, in one embodiment, the dedicated media handler decouples from the phone network (hangs up) in task 990.
  • Figure 10 illustrates the networking architecture of the described network 120 which is composed of various components and interfaces, according to an embodiment of the present invention.
  • the network 120 may include only some of the described components and/or interfaces, additional components/interfaces, and/or different components/interfaces.
  • a dedicated media handler for example dedicated media handler 210 or any other appropriate dedicated media handler, is coupled via a circuit switched phone link to the network 120 and specifically to a circuit switched telephone network 1010 which is part of network 120.
  • the dedicated media handler is coupled to cellular network 1030.
  • circuit switched telephone network 1010 provides analog phone line services (PSTN) as well as digital ISDN (BRI and PRI) and digital trunk services (El/Tl).
  • circuit switched telephone network 1010 interfaces with a cellular network 1030 which provides services to cellular handsets such as circuit switched voice services, circuit switched data service and packet switched data services.
  • circuit switched telephone network 1010 and/or cellular network 1030 couples to an ISP (Internet Service Provider) 1050 which provides dial-up modem terminations for landline or cellular phone users that wish to connect to the WWW network 1020.
  • ISP Internet Service Provider
  • the circuit switched telephone network 1010 is connected by an IP gateway 1040 to WWW network 1020 in order to provide the standard telephone services over IP via WWW network 820 such as VoIP (Voice over IP), FoIP (Fax over IP) and MoIP (Modem over IP).
  • VoIP Voice over IP
  • FoIP FoIP
  • MoIP Modem over IP
  • media server 130 can be coupled to various components included in network 120.
  • media server 130 is coupled to WWW network 1020 which provides the web connectivity for users of PCs and which is coupled to other networks via IP gateway 1040.
  • media server 130 is coupled to circuit switched telephone network 810 and/or to cellular network 830 in order to communicate with the dedicated media handler.
  • the dedicated media handler may initiate a local call to media server 130 via either circuit switched telephone network 1010 or cellular network 1030 by dialing a dial-in number of a local ISP 1050 (assuming the ISP has local dial-in numbers) which eventually couples the dedicated media handler to media server 130 via the WWW network 1020 after demodulating the dial-up modem (e.g. V.34 or V.90 for the case of an analog phone line) by a modem-bank comprised in ISP 1050.
  • the dedicated media handler initiates a call to a toll- free global number instead of a local call which is routed by circuit switched telephone network 1010 or cellular network 1030 services to a local modem-bank of ISP 1050.
  • the dedicated media handler initiates a call to a localized service dial-in global number which routes the call to specific targets and still the phone call cost for the user of the dedicated media handler is considered the same as a local call.
  • the modem-bank may be located in fewer locations and there may not be a need to have a modem-bank in each local area code. . _
  • the dedicated media handler initiates a call to a premium number service in which case the user of the dedicated media handler pays a premium for the service of connecting to media server 130.
  • the premium number is a global number and can route to either one of the few locations in which there is a modem bank or to the modem-bank in the local area code of the dedicated media handler.
  • the dedicated media handler may initiate a call to a premium number service for the sole purpose of charging the user of the dedicated media handler, in which case the main reason for this phone call is the charging itself and any network session with media server 130 can be omitted if not necessary.
  • premium rate charging can charge pre-paid or non pre-paid accounts.
  • the charges may be related to backup, sharing or other services.
  • IP gateway 1040 may be used in order to facilitate communication between the dial-up modem of the dedicated media handler and the media server 130 via the WWW network 820.
  • a modem-bank can be implemented in the software of media server 130, since the modulated data can be carried over IP bi-directionally and therefore the modulated data may be terminated bi-directionally by media server 130.
  • media server 130 can handle the modulated data by hardware and/or by software since the data is IP protocol data.
  • the analog waveforms related to the dial-up modem data from the dedicated media handler e.g. V.34 or V.90
  • PCM waveforms for example in accordance with standard.
  • a QoS Quality of Service
  • dial up modem of the dedicated media handler is additionally or alternatively bridged by a modem-bank in the IP gateway 1040 (such as the V.150 standard).
  • an analog call (i.e. via a PSTN line) originating from the dedicated media handler can target a digital ISDN line and be defined as a data call, in which case circuit switched telephone network 1010 will perform the modem termination by a modem-bank.
  • the ISDN lines containing the extracted data can be connected to ISP 1050 or to the WWW (where the modem-bank serves the function of the IP gateway 1040).
  • an analog call originating from the dedicated media handler i.e. via a PSTN line
  • cellular network 1030 can perform the modem termination by a modem-bank contained in a module called IWF (Inter- Working Function).
  • cellular network 1030 can route the data from cellular network 1030 to the WWW network 1020 either directly or through IP gateway 1040.
  • the data may be terminated by a cellular handset-bank that is comprised in ISP 1050 which routes the data directly to the WWW network 1020.
  • a modem may be implemented by the fax standard by encapsulating the data over a fax image data container, assuming the dedicated media handler has a fax modem as part of its network interface.
  • the content can be sent as fax using fax-to-email service and/or received as fax using email-to-fax service.
  • the dedicated media handler is shown in Figure 10 coupled to circuit switched telephone network 1010 and cellular network 1030, it should be evident to the reader from the description above that in other embodiments, the dedicated media handler may alternatively or additionally couple to other types of networks forming part of network 120.
  • the network interface of the dedicated media handler may alternatively or additionally include means to couple to a cable network, etc.
  • the dedicated media handler may only couple to one of circuit switched telephone network 1010 and cellular network 1030.
  • some embodiments of the invention may include a suitably programmed computer.
  • some embodiments of the invention contemplate a computer program being readable by a computer for executing one or more embodiments of methods of the invention.
  • Some embodiments of the invention contemplate a machine-readable memory tangibly embodying a program of instructions executable by the machine for executing one or more embodiments of methods of the invention.

Abstract

Methods, systems, devices, servers, and storages for handling digital content. In one embodiment, a system for handling digital content comprises: a plurality of media handlers, including at least one dedicated media handler, which are members of a backup or sharing group; and a network coupled to members of the group, wherein digital content is automatically backed up or shared among the members via the network. In this embodiment, backup or sharing in the system may be performed with or without assistance of a media server.

Description

MEDIA HANDLING ARCHITECTURE FOR DIGITAL CONTENT
CROSS REFERENCE TO RELATED APPLICATIONS This application claims the benefit of priority from U.S. Provisional
Applications serial number 60/840,709 filed on August 29, 2006 and serial number 60/906,235 filed on March 12, 2007, the entire disclosures of which are hereby incorporated by reference herein.
FIELD OF THE INVENTION
The present invention relates to digital content.
BACKGROUND OF THE INVENTION
The era of digital content has changed the way people use, handle and benefit from content. For example, digital photography has changed the way people use, handle and benefit from content captured during daily usage for example from a digital still camera or digital video camcorder. In the past, the process of handling film (non-digital) photographs was straightforward. Users were accustomed to capturing much less content, printing all of their pictures and placing them in a photo album. Using digital photography, the ability to view pictures immediately after taking them on a camera and/or on a PC, has increased the captured content ten times approximately. The large volume of user captured content and the ability to view pictures using digital means has changed the way users treat such content. Pictures are no longer automatically sent to printing which prevents users from viewing and sharing experiences; users pay less attention to organizing content due to the large volumes and therefore most generated content is not accessible; users are less aware of the importance of making a backup of such content and therefore lose some or all of this content. A few platforms have emerged during the past few years that try to solve some of the problems of digital photography described above. Such solutions can be defined as desktop based, web based, and display solutions.
Desktop software solutions use the personal computer PC platform, for example, in order to store and organize content in a folder-like structure. These solutions typically offer basic content import abilities (for example from a digital camera) and in some cases also the ability to transmit or receive content via email services. Advanced users can in some cases use these solutions for local backup on an external CD/DVD writer.
Web solutions may enable a PC user who stores his digital content on a PC to be able to back up the content over the web on a centralized storage server, either temporarily or permanently. In addition or instead, web solutions may allow a PC user to provide such content to other users via email services or to other users who have access to the server's web site. Examples of web solutions include PhotoBucket,
Flickr, Snapfish, Kodakgallery, etc. The desktop and web solutions require a sufficient level of computing skills which certain users may not have or may find too cumbersome for handling the digital content.
Display solutions enable a user to view content on a screen, for example on a big TV screen. Typically, these solutions do not have much functionality besides viewing. As another example, similar phenomena have emerged in the digital music world, in which music content has become widespread while many people do not use this content appropriately or do not have the right means for handling the content.
There are many solutions on the market that include storage and playback capabilities for music content. Some of these solutions have networking features which allow users to send and/or receive content from a PC or the web (e.g. networked enabled MP4 players, iPOD). However these solutions do not provide a multifaceted solution for handling content but rather focus on music playing abilities.
SUMMARY OF THE INVENTION
According to the present invention, there is provided a dedicated media handler for handling digital content, comprising: a network interface configured to couple to a network in order to transmit or receive digital content via the network; and logic configured to perform an automatic sharing operation, wherein digital content associated with at least one other media handler is received via the network and shared with the dedicated media handler, or digital content associated with the dedicated media handler is transmitted via the network for sharing with at least one other media handler.
According to the present invention, there is also provided a dedicated media handler for handling digital content, comprising: a network interface configured to couple to a network in order to transmit or receive digital content via the network; and logic configured to perform an automatic backup operation, wherein digital content associated with at least one other media handler is received via the network and backed up on the dedicated media handler, or digital content associated with the dedicated media handler is transmitted via the network for backup on at least one other media handler.
According to the present invention, there is further provided a dedicated media handler for handling digital content, comprising: an interface configured to couple to a source or to a network in order to receive digital content; organizing logic at least occasionally automatically activated when new digital content is received via the interface, configured to organize the received content based on a substance of the content by performing on the received content at least one action selected from a group comprising: auto-tagging and auto-clustering; and a display interface configured to couple to a display so as to display the organized content.
According to the present invention, there is yet further provided a system for handling digital content, comprising: a plurality of media handlers, including at least one dedicated media handler, which are members of a backup or sharing group; and a network coupled to members of the group; wherein digital content is automatically backed up or shared among the members via the network.
According to the present invention, there is provided a media server, comprising: a network interface configured to couple to a network to which a plurality of media handlers that are members of a backup or sharing group are also coupled, wherein at least one of the plurality of media handlers is a dedicated media handler; and logic configured to assist in automatic backup or sharing of digital content via the network among the plurality of members.
According to the present invention, there is also provided storage for a virtual media handler comprising: a storage configured to receive digital content from a first media handler and to provide the digital content to a second media handler when the virtual media handler is downloaded to or coupled to the second media handler; and at least one storage configured to store at least one item from the first media handler selected from a group comprising: content metadata and configuration, and configured to provide the at least one item to the second media handler when the virtual media handler is downloaded to or coupled to the second media handler, thereby allowing the second media handler to imitate the first media handler in handling the digital content.
According to the present invention, there is further provided a method for handling digital content, comprising: a dedicated media handler recognizing a trigger to participate in an automatic sharing or backup session; if there is digital content associated with the dedicated media handler which is designated for sharing or backup but which has not been previously shared with or backed up on at least one other media handler or public gallery belonging to a same sharing or backup group as the dedicated media handler then during the session the dedicated media handler automatically transmitting via a network at least some of the digital content for sharing with or backup on at least one other media handler or public gallery belonging to a same sharing or backup group as the dedicated media handler; and if there is digital content associated with at least one other media handler or public gallery belonging to a same sharing or backup group as the dedicated media handler which is designated for sharing or backup but which has not been previously shared with or backed up on the dedicated media handler, then during the session the dedicated media handler automatically receiving via the network at least some of the digital content associated with at least one media handler or public gallery belonging to a same sharing or backup group as the dedicated media handler for sharing with or backup on the dedicated media handler. According to the present invention, there is yet further provided a method for assisting in handling digital content, comprising: a media server assisting in automatic sharing or backup of digital content among a plurality of members in a backup or sharing group via a network, wherein the members include a plurality of media handlers of which at least one is a dedicated media handler, and wherein the media server assists by performing at least one action selected from a group comprising: storing digital content transmitted between members in the group, initiating the automatic sharing or backup, managing signaling among members in the group, providing addressing services, relaying digital content among members in the group, transcoding digital content so that the transcoded content fits a target member, adapting content destined for a member based on a characteristic of a display associated with the member, and assisting a media handler in joining the group.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention is herein described, by way of example only, with reference to the accompanying drawings, wherein:
FIG. 1 is a block diagram of the architecture of a system for handling digital content, according to an embodiment of the present invention;
FIG. 2 is a block diagram of a dedicated media handler, according to an embodiment of the present invention; FIG. 3 is a block diagram of a media server, according to an embodiment of the present invention;
FIG. 4A is a block diagram of a virtual media handler, according to an embodiment of the present invention;
Figure 4B is a block diagram of another virtual media handler, according to an embodiment of the present invention; FIG. 5 is a flowchart of a method executed by a dedicated media handler, according to an embodiment of the present invention;
FIG. 6 is a flowchart of a method executed by a dedicated media handler, according to an embodiment of the present invention; Figure 7 is a block diagram of a network interface of a media handler, according to an embodiment of the present invention;
Figure 8 is a flowchart of a method for initiating a network session, according to an embodiment of the present invention;
Figure 9 is a flowchart of a method for participating in an initiated network session, according to an embodiment of the present invention; and
Figure 10 is a block diagram of a network for handling digital content, according to an embodiment of the present invention.
DESCRIPTION OF THE PREFERRED EMBODIMENTS Described herein are embodiments of the current invention for methods, systems and system components for handling digital content. Examples of digital content include inter-alia: digital photos, digital video, digital audio, digital multimedia, etc. In some embodiments, the digital content is personal digital content, i.e. digital content that was generated by a user for non-commercial purposes. As used herein, the phrase "for example," "such as" and variants thereof describe non-limiting embodiments of the present invention.
Reference in the specification to "one embodiment", "an embodiment", "some embodiments", "another embodiment", "other embodiments" , "various embodiments", or variations thereof means that a particular feature, structure or characteristic described in connection with the embodiment(s) is included in at least one embodiment of the invention. Thus the appearance of the phrase "one embodiment", "an embodiment", "some embodiments", "another embodiment", "other embodiments" "various embodiments", or variations thereof do not necessarily refer to the same embodiment(s). It should be appreciated that certain features of the invention, which are, for clarity, described in the context of separate embodiments, may also be provided in combination in a single embodiment. Conversely, various features of the invention, which are, for brevity, described in the context of a single embodiment, may also be provided separately or in any suitable sub-combination. Unless specifically stated otherwise, as apparent from the following discussions, it is appreciated that throughout the discussions of certain specification embodiments, utilizing terms such as, "recognizing", "transmitting", "receiving", "sharing", "backing up", "displaying", "organizing", "importing" "imitating", "coupling", "performing", "relaying", "auto-tagging", "auto-clustering", "joining", "pairing", "calling", "revealing", "managing", "removing", "providing", "initiating", "assisting", "providing", transcoding", "reducing", "adapting", "indicating", "generating", "downloading", "using", "checking", "dialing", "monitoring", "answering", determining", "storing", or the like, refer to the action and/or processes of any combination of software, hardware and/or firmware. For example, in one embodiment a dedicated machine, computer, computing system, processor or similar system may manipulate and/or transform data represented as physical, such as electronic, quantities within the system's registers and/or memories into other data, similarly represented as physical quantities within the system's memories, registers or other such information storage, transmission or display components. Embodiments of the present invention may use terms such as, processor, computer, apparatus, system, sub-system, module, unit, device (in single or plural form) for performing the operations herein. These terms, as appropriate, refer to any combination of software, hardware and/or firmware configured to perform the operations as defined and explained herein. Unless specified otherwise, the module(s) (or counterpart terms specified above) may be specially constructed for the desired purposes, or may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of disk including optical disks, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), electrically programmable read-only memories (EPROMs), electrically erasable and programmable read only memories (EEPROMs), magnetic or optical cards, any other type of media suitable for storing electronic instructions that are capable of being conveyed via a computer system bus.
The processe(s)/module(s) (or counterpart terms specified above) and display(s) presented herein are not inherently related to any particular computer or other apparatus, unless specifically stated otherwise. Unless specified otherwise, various general purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the desired method. The desired structure for a variety of these systems will appear from the description below. In addition, embodiments of the present invention are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages may be used to implement the teachings of the inventions as described herein. The principles and operation of a method, system and architecture for handling digital content according to the present invention may be better understood with reference to the drawings and the accompanying description.
Referring now to the drawings, Figure 1 illustrates the architecture of a system 100 for handling digital content which is composed of various components, according to an embodiment of the present invention. Each component illustrated in Figure 1 may be made up of any combination of software, hardware and/or firmware which performs the functions as defined and explained herein.
In the illustrated embodiment, system 100 includes one or more media handlers of one or more types which, in one embodiment, are coupled via a network 120. For example, depending on the embodiment, the one or more media handlers in system 100 may include any of the following: one or more media handlers of type 110, each of which is coupled to an (external and/or internal) display 161 and/or each of which is coupled to an (external and/or internal) source 151 , one or more media handlers of type 171 ("media source handler(s)" 171) each of which is coupled to an (external and/or internal) source 153, one or more media handlers of type 172 ("media display handler(s)" 172) each of which is coupled to an (external and/or internal) display 163, and/or one or more media handlers of mobile type 173 ("mobile media handler(s)" 173) each of which is coupled to an (external and/or internal) source 155 and/or each of which is coupled to an (external and/or internal) display 164. For ease of description, the generic term "media handler or media handlers" without a numeric label is used below to connote media handler(s) of any type 110,171,172,173 which is appropriate to the context.
In addition or instead, in some embodiments, system 100 may optionally include one or more of the following: one or more virtual media handlers 174/176, one or more media servers 130 coupled to network 120, one or more sources 154 coupled to network 120, one or more displays 165 coupled to network 120, and/or one or more public galleries 190 coupled to network 120.
In other embodiments, system 100 may include less components, more components and/or different components than shown in Figure 1. For example, in one embodiment, system 100 may additionally or alternatively include other types of user devices. The term user device should be understood to refer to a device which a user (e.g. an individual, family, company, organization, etc.) uses and which does not typically service other users (as opposed to a server or a public gallery for example which services many users). It should be evident that the connotation of a device as a user device does not preclude a sharing, borrowing, buying of the user device by other users.
For ease of explanation, in the description below, the single form of any component in system 100 or of any module comprised in any component in system 100 is used to connote both the case in which there is a single such component/module and the case in which there are a plurality of such components/modules, as appropriate to the context.
Depending on the embodiment network 120 can be formed of one or more types of networks interconnected together, for example via public interconnections. Examples of networks which in some embodiments may be part of the network 120 are: World Wide Web (WWW) (or any other IP protocol based network), cable modem network, satellite broadcast network, circuit switched telephone network (analog such as public switched telephone network PSTN or digital such as integrated services digital network ISDN [e.g. basic rate interface BRI and primary rate interface PRI]5 El/Tl, etc.), cellular telephone circuit switched or packet switched network, wireless local area network WLAN hot spot networks, Worldwide Interoperability for Microwave Access WiMAX wireless networks etc. Details on some embodiments of network 120 are provided further below with reference to Figure 10.
In one embodiment, one or more media handlers and/or other components in system 100 may communicate with one another via network 120, for example in order to transfer digital content and/or metadata, for any appropriate purpose such as importing, exporting, storage, organizing or other processing, backup, sharing, distribution, displaying, etc. It should be evident that in some embodiments where transfer takes place from a first (originating) media handler to a second (target) media handler via network 120 with or without the assistance of media server 130, the digital content received by the second media handler is not necessarily identical to the digital content which is or was present on the first media handler. For example, digital content may be transcoded , adapted for the display of the second media handler (e.g. reduced) and/or otherwise processed either by the first media handler or elsewhere (for example by media server 130) prior to being received by the second media handler. Herein below, digital content which is identical to, or a processed (transcoded, adapted, etc) version of digital content which is or was present on a media handler is said to be "associated" with the media handler. For conciseness, however, the description below oftentimes refers simply to the transfer/receipt of (digital) content (for example with respect to sharing, backing up, distribution, etc.) and should be understood to include as appropriate to the context either or both embodiments where the content received by the target media handler is identical and embodiments where the received content is not identical to what is/was present on the originating media handler. As will be explained in further detail below, a media handler is responsible for handling content, which, depending on the embodiment and/or type of media handler, may include any of the following functions inter-alia in any order: importing digital content from a local source, importing digital content from a remote source via a network, storing digital content locally in a local backup, organizing digital content, displaying digital content on a display, importing/exporting digital content to/from a virtual media handler 174/176 (see below), communicating via network 120, backing up the content either locally or via a network, and/or sharing content via a network. For ease of description, the term "importing" is used herein both for embodiments where content is received from a local source/virtual media handler and embodiments where content is received from a remote source/virtual media handler, and therefore also includes, for example embodiments where content is downloaded from a source or virtual media handler.
Any media handler (for example of type 110, 171, 172 or 173) may be a dedicated media handler or an open platform media handler, hi some embodiments, a dedicated media handler is a device that does not need installation of specific hardware and software by a user because the device has an integrated monolithic (dedicated) software, hardware and/or firmware. Continuing with these embodiments, in contrast, an open platform media handler is based on an open platform in which both hardware and software can be installed by the end user and a complex functionality can be achieved by putting together various hardware and software which are not monolithic. In one of these embodiments, the open platform media handler is implemented on software of an open platform device such as a personal computer PC (desktop or laptop), personal digital assistant PDA, cellular telephone, open software set-top-box, etc and uses the hardware interfaces that the device has (such as display, I/O interfaces, networking etc.). In some cases therefore, a dedicated media handler may be advantageous over an open platform media handler because it may be easier for a user, especially one with a lower level of technical skills, to use a dedicated media handler than an open platform media handler to handle digital content.
In some embodiments, one media handler may be enabled to imitate another media handler through the usage of virtual media handler 174 or 176. In one of these embodiments, virtual media handler 174 may be stored on any mobile or stationary storage device (such as a universal serial bus USB "disk on key") and therefore accessible when the storage device is coupled to a media handler. In one of these embodiments, virtual media handler 176 may be stored on the storage of media server 130 and therefore be accessible via network 120 by any media handler. In some of these embodiments, virtual media handler 174 or 176 may be considered to mirror a media handler, i.e. as a kind of a courier of the media handler content and "personality". In one of these embodiments, the virtual media handler 174 or 176 may store the full content, metadata and/or configuration data of an "originating" media handler so that the virtual media handler may enable another media handler which has accessed the virtual media handler to behave the same as the originating media handler and have the same content as the originating media handler. In some embodiments, a media source which is optionally in system 100 (for example of type 151,153,154 and/or 155) may include any suitable recording means, any suitable acquiring means (i.e. acquiring what has previously been recorded), and/or any suitable storage means. Acquiring means may include, for example, means for receiving content via a local coupling, means for downloading content, and/or means for uploading content. In one embodiment a media source may be a content recorder such as for example a digital still camera, image scanner or camcorder. As another example, in one embodiment a content storage device such as an external mass storage device, mobile hard disk or memory card (e.g. secure digital SD, xD, compact flash, etc) may be a media source. As another example, in some embodiments a PC with an internal hard disk and/or acquiring means may be a media source. Continuing with the example, in one embodiment, a PC with dedicated software running on it may function as a media source and may be configured to be coupled to a media handler. In this embodiment, the software that runs on the PC will enable browsing and downloading of digital content and will enable the transfer of selected content from the PC to the media handler. Depending on the embodiment, a media source may or may not be a user device. For example, in one embodiment, a media handler may download the digital content from the server with the server therefore functioning as the source of the digital content from the viewpoint of the media handler. In one embodiment, a local external media source can be coupled to a media handler by a wired connection (such as USB, Fire Wire, Ethernet), by a wireless connection (such as Bluetooth, WLAN, ultra wideband UWB), or by integration, inside the media handler.
In one embodiment, remote media source 154 is coupled directly to the network 120 thereby allowing transfer of content from media source 154 to one or more media handlers and/or to media server 130. Media source 154 can be for example a network camera, a wireless LAN camera/PDA camera connected to a hot- spot, a cellular camera phone connected to the network 120 through cellular infrastructure (e.g. by sending an multi-media messaging service MMS from the cellular camera phone to the media server 130 through a MMS server), etc. Any media display which is optionally in system 100 (for example 161, 162, 163, 164, 165) can be a relatively simple display (such as a liquid crystal display LCD) or a relatively complex device with display capabilities (such as a cellular phone, PDA, portable media players). In one embodiment a local external media display is coupled to a media handler by a wired connection (such as USB, Fire Wire, Ethernet, RS232 serial connection), by a wireless connection (such as Bluetooth, wireless LAN, UWB), or by integration inside the media handler. In some cases for a mobile media handler 173, an internal display (for example an embedded LCD display) integrated inside is more likely than an external display. Other examples of a local media display are a local printer coupled to a media handler (via USB either as a printer class device or an imaging/PictBridge device class) or a television TV (for example standard definition, high definition, etc) coupled to a media handler. In one embodiment, remote media display 165 may be a printing service (for example, offered by a web photo gallery or online retailer ) or any other appropriate display coupled to the network (such as a networked billboard screen).
A public gallery is a media content storage web site that offers storage and sharing functionality to the public via web access. Examples of public gallery 190 include inter-alia: PhotoBucket, Flickr, Kodak Gallery. In embodiments including public gallery 190, media server 130 and/or any media handler may communicate with public gallery 190 for the sake of exchanging content with the public gallery depending on the embodiment.
Depending on the embodiment, media server 130 may or may not be part of system 100. hi one of the embodiments where system 100 includes media server 130, Media server 130 may be implemented by a network of media servers scattered around the world with some synchronizing method. In some embodiments, media server 130 may be omitted from system 100 or may play no active role in the transfer of digital content via network 120 and in joining sharing or back up groups (joining groups is described further below). For example, in one embodiment, a peer-to-peer de-centralized (i.e. distributed) addressing algorithm may be utilized (for example, such as described in the article "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications"/ Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan / Proceedings of the 2001 ACM SIGCOMM Conference, which is hereby incorporated by reference) for network provided addressing between media handlers where the session control is provided by the media handlers participating in the session. As another example, in one embodiment, network provided addressing is performed by distributed peer-to-peer networking where each peer is part of the distributed server. As another example, in one embodiment of a network provided addressing service, a media handler has an absolute address in network 120 (i.e. an assigned address which is stable and not hidden, such as for example a phone number in a circuit switched or cellular telephone network) and therefore it is also possible to transfer content and/or join groups in a peer-to-peer manner without the use of media server 130 and without the use of an additional decentralized addressing algorithm. As another example, in one embodiment media server 130 may be omitted from system 100 if network provided addressing is implemented by generic servers in network 120 which are intended for that purpose such as for example domain name system DNS servers.
In some embodiments with media server 130 media server 130 assists in the transfer of digital content over network 120 and/or in joining groups. In embodiments where system 100 includes media server 130, media server 130 may be connected via network 120 to one or more media handlers. In embodiments where system 100 includes media server 130, media server 130 may provide assistance in various capacities relating to the transfer of digital content. For example, in some embodiments, media server 130 manages signaling relating to the transfer of the digital content. Continuing with the example, in one of these embodiments the transfer session management may be handled by media server 130 but the content transfer may be performed on a peer-to-peer basis. As another example in some embodiments, media server 130 may additionally or alternatively relay the digital content. Continuing with the example, in some of these embodiments, media server 130 may transcode the digital content to suit the target device and/or adapt (for example, reduce) the content to the display of the target device. Still continuing with the example, in some cases reducing the content may result in less information in the digital content (for example reduced format or resolution). In other examples, in some embodiments, additionally or alternatively media server 130 may perform any of the following functions, inter-alia: store the transferred content, initiate the transfer of the content, assist in joining members to sharing or backup groups, and/or provide addressing services. For example, if media server 130 provides addressing services, media server 130 may act as a directory for the media handlers storing user names and addresses of the media handlers, and able to provide the address of the media handler corresponding to a given user name and/or vice versa. More details on possible functionality of media server 130 are provided elsewhere in this disclosure.
In some embodiments the originating media handler may, where appropriate, transcode the digital content to suit the target device and/or adapt the content to the display of the target device (for example, reduce the content such as in the case of image resizing). For example the originating media handler may transcode and/or adapt the content prior to transferring to media server 130 or when the content is transferred peer-to-peer.
In some embodiments where the display of the target device is a television, the content may be adapted to the target display (e.g. reduced format or resolution) by media server 130 or by the originating media handler based on the number of "Radio Corporation of America" RCA interfaces (also known as phono connector or CINCH/ AV connector) connected to the display corresponding to device, for example triple RCA interface for high definition television or single RCA interface for standard definition television. For example, in one of these embodiments, the target media handler will detect by any appropriate implementation which of three available RCA connectors are connected to the television and will inform media server 130 or the originating media handler. For example in one implementation where the RCA input impedance is DC coupled, the connection of an RCA connector can be sensed by monitoring the DC level of the media handler signal output to the RCA connector. Continuing with the example, in some cases the DC level may drop by a factor of two (due to impedance matching of for example 75ohm in both the media handler and the TV) and can be detected by using known circuitry. In another implementation, the connection of an RCA connector can be sensed by monitoring the peak level of the analog waveform at the output of the media handler. Assuming the video content at the media handler output includes pre-defined white pixels, the peak level is defined. Once the RCA connector is connected to the TV, the peak level will drop for example by a factor of two (due to impedance matching of for example 75ohm in both the media handler and the TV) and can be detected by the media handler by the use of known circuitry. In another implementation, the shield connection of the RCA connector of the media handler will be connected to a pull up and pull down. The pull down impedance will be low (e.g. lOohm DC and in parallel a decoupling capacitor) such that the shield grounding performance would not interfere with the video signal integrity. The media handler can then detect the connection of an RCA connector by sensing that the RCA shield is grounded completely by the TV (assuming there is another RCA which is connected to the TV). The target media handler having detected the number of RCA interfaces will inform the originating media handler or media server 130. The mentioned techniques may be used also for the target media handler to detect the connection status of each audio/video RCA connector type and to inform the user of the connection status. In some embodiments, the target media handler may, where appropriate, adapt received digital content to the target display and/or transcode the received digital content.
Depending on the embodiment, the transfer of digital content over network 120 may be for the purposes of backup, sharing, and/or distribution. In some embodiments, a backup session can be initiated by any media handler or by the media server 130 whenever there is new content stored on one of these media handlers or on media server 130, periodically, at particular time(s) of day, upon user request, upon network coupling/recoupling (i.e. when first coupled to network 120 and/or when recoupled to network 120 after an interruption), and/or due to any other appropriate event. During the backup session, in some of these embodiments, content from a given media handler may be backed up on one or more other media handlers (of the same or different types as the given media handler), and/or other entities such as public gallery 190. In one of these embodiments, the backup of content can be implemented as a secure backup such that the end-user will not have to be concerned that his own personal content will be published on the world-wide-web or disclosed to other media handler users which participate in the backup process. During the backup session, in one of these embodiments, media server 130 stores the content and can therefore serve as a backup storage server for one or more media handlers. As explained above, the role of media server 130, if any, in the transfer for the purposes of backup may vary depending on the embodiment.
In some embodiments, a sharing session can be initiated by any media handler or by the media server 130 whenever there is content designated for sharing on one of these media handlers or on media server 130, periodically, at particular time(s) of day, upon user request, upon network coupling/recoupling and/or due to any other appropriate event. During the sharing session, in some of these embodiments, content from a given media handler may be shared with one or more other media handlers (of the same or different types as the given media handler) and/or other entities such as public gallery 190. In one embodiment the sharing of content is different from the backup of content since typically, although not necessarily, all content on a media handler needs to eventually be backed up but only a portion of content on a media handler needs to be shared, hi one embodiment, additionally or alternatively, the sharing of content with another media handler is different from the backup of content on another media handler because in sharing in this embodiment, the content is disclosed to the user of the media handler with which the content was shared whereas in backup, typically although not necessarily, content backed up on a media handler is not disclosed to the user of that media handler. In one embodiment, in order to share content, there may in some cases be a predefmition of sharing groups, content scope and access control. As explained above, the role of media server 130, if any, in the transfer for the purposes of sharing may vary, depending on the embodiment. For example, in some embodiments a possible feature related to content sharing may be the ability of a media handler with updated shared content and/or media server 130 to notify target media handlers of an updated shared content (can be in real-time). Depending on the embodiment, the media server 130 may act as a signaling server for transferring these notifications to the target media handlers or it can be sent directly between media handlers, for example when there is a peer-to-peer network with a decentralized addressing mechanism.
In one embodiment, distribution is different from sharing in the sense that distribution is a one-time (or limited number of times) transfer of content without the automatically recurring manner of sharing content. In one embodiment, the distribution of content can be initiated by the originating media handler or by media server 130. In one embodiment, for example, content can be distributed to an email account or via MMS to a cellular phone (when not considering the cellular phone as a media display device as will be described below). As explained above, the role of media server 130, if any, in the transfer for the purposes of distribution may vary depending on the embodiment.
In some embodiments, media handlers may communicate via network 120 without necessarily relating to the transfer of digital content. For example in one of these embodiments, media handlers may communicate via instant messaging.
Figure 2 illustrates the block diagram of a dedicated media handler 210, according to an embodiment of the present invention. For example, dedicated media handler 210 illustrated in Figure 2 may represent one embodiment of media handler of type 110 or 173. The block diagram of Figure 2 applies also for other types of media handlers illustrated in Fig. 1 by removing any irrelevant modules or to other embodiments of media handler 110 or 173 by making any required changes, as will be discussed in more detail below. In one embodiment, an open platform media handler may include some or all of the modules illustrated in Figure 2.
Each module illustrated in Figure 2 may be made up of any combination of software, hardware and/or firmware which performs the functions of the module as defined and explained herein.
It is assumed for ease of explanation of embodiments of Figure 2, that optional source 151 and optional display 161 are external (if present), and that optionally additionally or alternatively dedicated media handler 210 includes internal source 221 and/or internal display 231. As shown in the embodiment illustrated in Figure 2, dedicated media handler
210 includes any of the following, inter-alia: a local storage 260, one or more interfaces (for example a user interface 250, a source interface 220, a display interface 230, a network interface 240), one or more buses (for example control bus 261, content bus 262), logic, internal source 221, and/or internal display 231. For ease of explanation, the logic is shown in Figure 2 divided into organizing logic 215, backup logic 211, accounts logic 241, sharing logic 212, distribution logic 213 and gallery logic 214 modules but it should be evident that in other embodiments, the functionality of the logic may be divided differently into modules and/or the logic may include less, more, and/or different functionality. In some embodiments, organizing logic 215 handles the automatic and manual features that in some cases allow the content to be organized in local storage 260 such that the content can be displayed, retrieved and shared with an added- value to a user above the original content structure. In some of these embodiments any content that is imported or transferred to dedicated media handler 210 for example via source interface 220 or network interface 240 has some initial meta-data (such as capture date). In these embodiments, organizing logic 215 in some cases adds additional meta data for the imported/transferred content which can be used to organize the content (for example classification). In one of these embodiments, the organizing logic 215 performs an auto-tagging process based on the substance of the content which adds meta-data (such as face detection, dates, text recognition etc.) and/or allows a user to add manual tags of his own (e.g. family, vacation). In one of these embodiments, the organizing logic 215 additionally or alternatively adds metadata by performing auto- clustering of content based on the substance of the content items, such that a user will be able to understand the structure of the content that he has in the local storage 260 (for example new imported/transferred content). For example, in some cases, auto clustering detects scene changes and/or detects similarity or dissimilarity among consecutive content.
In some embodiments, organizing logic 215 additionally or alternatively allows a user to attach content items to structured albums in local storage 260. For example, in one of these embodiments, organizing logic 215 may suggest possible relevant existing albums to the user that seem to be related to the new content.
In one embodiment, organizing logic 215 may additionally or alternatively perform different algorithms at different times and/or under different circumstances within the same system 100. In one embodiment, both initial meta-data which was imported/transferred with the digital content and meta-data added by organizing logic, are transferred/exported when the digital content is transferred/exported.
In one embodiment, organizing logic 215 is at least occasionally activated when there is new content received via source interface 220 or network interface 240 (for example shared digital content). In one embodiment, organizing logic 215 additionally or alternatively performs organization in the background on all digital content in the existing local storage 260. The latter embodiment may include in some cases a complex organizing algorithm that may in some cases be time consuming and therefore in some cases may not be performed in real-time. In some embodiments, backup logic 211 is responsible for the backing up of content from dedicated media handler 210 on one or more possible backup entities, for example, inter-alia, one or more other media handlers (of the same and/or different type) , one or more public galleries 190, media server 130 (for example a mass storage on media server 130) and/or one or more external local backups 270 (such as CD/DVD writers or a PC [acting as a "storage manager"] with a hard disk which serves as a local backup). In some embodiments, backup logic 211 is alternatively or additionally responsible for backing up onto dedicated media handler 210, content received for backup via network 120 (for example received from one or more media handlers and/or public galleries via or not via media server 130). In some embodiments, each backup entity for dedicated media handler 210 (i.e. each entity which will back up content from dedicated media handler 210) also includes dedicated media handler 210 as one of its own backup entities (i.e. will back up content onto media handler 210), whereas in other embodiments, this is not necessarily the case. In one embodiment, backup logic 211 may interact with the backup logic of another entity in order to perform backup on that entity and/or in order to back up content from that entity on dedicated media handler 210, whereas in another embodiment interaction may not be necessary. In one embodiment, backup logic 211 may interact with the backup logic of media server 130 in order to backup content of dedicated media handler 210 onto a backup entity and/or in order to have content backed up on media handler 210, whereas in another embodiment interaction may not be necessary.
In some embodiments, a backup group is established which includes dedicated media handler 210 and one or more other entities, and rules for backing up among members of the backup group are defined (for example when a backup session is to be initiated, how a backup session is established and conducted, what should be backed up during a backup session, etc). (Further below more details on joining groups are described). In some of these embodiments, a backup group which includes dedicated media handler 210 can also include any of the following members inter-alia: one or more other media handlers of the same or different types, media server 130, one or more public galleries 190, and local backup 270. In some embodiments, dedicated media handler 210 may belong to more than one backup group. For example, in one embodiment, one backup group including media handler 210 may include entities whose content is backed up onto dedicated media handler 210 whereas another backup group including dedicated media handler 210 includes entities on which content from dedicated media handler 210 is backed up. As another example, in one embodiment, one backup group including dedicated media handler 210 may have a rule which prescribes more frequent backups than another backup group including dedicated media handler 210. As another example, in one embodiment, there may be a rule which prescribes full content transfer in the case of backup to local backup 270.
In some embodiments with a backup group, the backup logic of any media handler in the backup group or the backup logic of media server 130 may initiate a backup session. For example in some of these embodiments, a backup session may be initiated whenever a media handler or media server 130 has new content, in a periodic manner at particular time(s) of day, upon user request, upon network coupling/recoupling, and/or due to any other appropriate event. In one of these embodiments, the initiating media handler or media server 130 communicates with the other members of the backup group to see who has new content. In one of these embodiments, once the list of new content is known to each entity in the backup group, the new content from each member is backed up on the other members of the backup group, via network 120. In one of these embodiments, backup is performed in the background without notifying the user (e.g. no notification via user interface 250).
In some embodiments where backup of content from one member is to be performed on other members of a backup group, the backup on each of the other members is not necessarily identical. For example in one of these embodiments, some digital content which is backed up on one other member may not necessarily be backed up on each of the other members. As another example, in one of these embodiments, content may be backed up temporarily on a media handler in the backup group but will potentially be deleted from the media handler when the corresponding local storage of the media handler is filled to capacity.
In some embodiments, sharing logic 212 is responsible for the sharing of content from dedicated media handler 210 with one or more sharing entities, for example, inter-alia, one or more media handlers (of the same and/or different types), one or more public galleries 190, and/or media server 130. In some embodiments, sharing logic 212 is alternatively or additionally responsible for receiving shared content via network 120 (for example received from one or more media handlers and/or public galleries via or not via media server 130). In some embodiments, each entity which receives shared content from dedicated media handler 210 also shares content with dedicated media handler 210 but in other embodiments this is not necessarily the case. In one embodiment, sharing logic 212 may interact with the sharing logic of another entity in order to share content of media handler 210 with that entity and/or in order to share content of that entity with media handler 210, whereas in another embodiment interaction may not be necessary. In one embodiment, sharing logic 212 may interact with the sharing logic of media server 130 in order to share content of dedicated media handler 210 with another entity and/or in order to have content of another entity shared with dedicated media handler 210, whereas in another embodiment interaction may not be necessary. In one embodiment, both digital content and related metadata are shared. In some embodiments, a sharing group is established which includes dedicated media handler 210 and one or more entities, and rules for sharing among members of the sharing group are defined (for example when a sharing session is to be initiated, how a sharing session is established and conducted, what should be shared during a sharing session, etc). (Further below more details on joining groups are described). In some of these embodiments, a sharing group which includes dedicated media handler 210 can also include any of the following members inter- alia: one or more other media handlers of the same or different types, media server 130, one or more public galleries 190. In some embodiments, dedicated media handler 210 may belong to more than one sharing group. For example, in one embodiment, one sharing group including dedicated media handler 210 may include entities whose content is shared with dedicated media handler 210 whereas another sharing group including dedicated media handler 210 includes entities with which content of dedicated media handler 210 is shared. As another example, in one embodiment, one sharing group including dedicated media handler 210 may relate to a different content scope than another sharing group including dedicated media handler 210. In some embodiments, content is shared in accordance with a predefined scope. For example in one of these embodiments, content can be shared in an album based manner such that specific albums will have copies on each member of a specific sharing group. In some embodiments, sharing may in some embodiments be performed in a similar manner to the backup that was described above. For example, in some of these embodiments, the sharing logic of any media handler in the sharing group or the sharing logic of media server 130 may initiate a sharing session. For example in some of these embodiments, a sharing session may be initiated whenever a media handler or media server 130 has new content (for example of a predefined scope), in a periodic manner at particular time(s) of day, upon user request, upon network coupling/recoupling, and/or due to any other appropriate event. In one of these embodiments, the initiating media handler or media server 130 communicates with the other members of the sharing group to see who has new content. In one of these embodiments, once the list of new content is known to each entity in the sharing group, the new content from each member may be shared with the other members of the sharing group, via network 120. There are, however, in one embodiment two differences between back up and sharing. The first difference is that in this embodiment sharing logic (for example of each media handler in the sharing group) informs the user of the corresponding media handler about the new content in realtime using the user interface of the corresponding media handler, whereas backup in this embodiment is performed in the background. The second difference is that in this embodiment the sharing logic can interact with the distribution logic in order to automatically distribute the new content to a pre-defined distribution list related to the sharing group (in addition to sharing with the sharing group), whereas in this embodiment the backup logic is not concerned with distribution. In other embodiments either or both of these differences may not exist.
In one embodiment, content may be stored temporarily on a media handler member of the sharing group such that it can be used by that media handler but will potentially be deleted from the media handler when the corresponding local storage of the media handler is filled or almost filled to capacity- meaning that the shared content is not really owned and stored on that specific media handler. In another similar embodiment, instead of deleting content when the media handler is filled or almost filled to capacity, the media handler configures some content to a reduced format (e.g. thumbnails for images) in order to have basic browsing abilities. Therefore in this embodiment, the media handler will have some content stored fully according to some heuristic logic (e.g. most recently used, new content etc.) and the rest of content stored only in the reduced format. •
In some embodiments, the sharing group can be omitted, in which case the shared content is public and can be retrieved by/shared with (according to some access policy) any media handler or optionally other component in system 100 which is coupled to network 120. In one of these embodiments there is no automatic sharing content transfer between media handlers, since there is no sharing group defined. In another similar embodiment, the content is public and therefore can be retrieved by/shared with any media handler or optionally other component in system 100 which is coupled to network 120, however, a sharing group still may exist which receives new content notifications.
In one embodiment, a member of a sharing group may choose to leave a sharing group or a specific shared album either by deleting the shared album content or by leaving the shared content in its local storage 260 as a standard album (collection of content) but without future update sharing with the other group members. In one embodiment sharing group members may receive notifications of a member that has left a sharing group or a shared album.
In some embodiments, distribution logic 213 is responsible for distributing content via network 120, with or without the assistance of the distribution logic of media server 130. In one of these embodiments, the targets of the distribution can be media handlers or other targets such as MMS clients, email accounts and 3 rd party web printing services. In one of these embodiments, a list of email accounts that are used by the user of dedicated media handler 210 can be acquired by a PC which is connected to dedicated media handler 210. In this embodiment, for example dedicated software running on the PC can import email account information from the relevant email messaging software that is used on the PC (e.g. from the address book or contacts of Microsoft Outlook). In one of these embodiments, distribution from dedicated media handler 210 to a target can be initiated by the user interface 250, or by a pre-defined automatic distribution scheme (such as new content distribution). In one of these embodiments, distribution logic 213 allows the attachment of information (for example free text) to the distributed content. In one of these embodiments, shared content can be distributed to at least one user device which is not in the sharing group, with or without the assistance of the distribution logic of media server 130. In one of these embodiments, shared content can be distributed to a printing service coupled to network 120 (for example a web printing service).
In some embodiments, distribution logic 213 may additionally or alternatively be responsible for handling an incoming distribution and/or an incoming reply relating to a distribution process outgoing from media handler 210 (for example the reply can be, in one of these embodiments, feedback from a printing service). The incoming reply or distribution may or may not have been transferred with the assistance of the distribution logic of media server 130.
In some embodiments, sharing logic 212 or distribution logic 213 may each additionally or alternatively perform transcoding, adaptation of content to the target display, and/or other processing on digital content transferred from dedicated media handler 210.
In some embodiments, gallery logic 290 handles the interaction via network 120 between dedicated media handler 210 and one or more content galleries 190 with or without the assistance of the gallery logic of media server 130. For ease of description, the singular form of gallery 190 is used below to connote both the case in which there is a single such gallery and the case in which there are a plurality of galleries, as appropriate to the context. In these embodiments, dedicated media handler 210 is able to import, export, share, backup, distribute and/or browse content on existing content gallery 190 without relation to the media handling infrastructure available on gallery 190. In these embodiments, gallery logic 290 handles the login, browsing, upload and download of content from/to gallery 190, for example according to the logic that is defined by the user via the user interface 250. hi one of these embodiments, gallery logic 290 can perform several commands according to user requests or can perform automatic actions such as periodic import and export of content to/from dedicated media handler 210.
In some embodiments, gallery logic 290 interacts with backup logic 211, and/or sharing logic 212 in order to manage backup and/or sharing with content gallery 190 via network 120 (with or without the assistance of backup logic, sharing logic, and/or gallery logic of media server 130). In some embodiments, gallery 190 can be considered to be part of the sharing/backup group in most senses. However, in some of these embodiments which assume that there is no "sharing" or "backup" logic on the gallery 190 which is similar to sharing logic 212 or backup logic 211, the sharing or backup for the gallery 190 is performed remotely, for example by the gallery logic on any media handler in the sharing or backup group and/or by the gallery logic in media server 130. In one of these embodiments, in order to sense new content on gallery 190, an automatic polling may be employed, for example periodically, whenever any media handler or media server 130 has new content, at particular time(s) of day, upon user request, upon network coupling/recoupling, and/or due to any other appropriate event. Depending on the embodiment, this polling can be implemented as part of gallery logic 214 (assuming media handler 210 performs the polling) or as part of the functionality of the gallery logic of media server 130.
In one embodiment, gallery logic 290 interacts with the distribution logic 213 in order to distribute content via network 120 to gallery 190 that is part of a distribution list that includes media handlers or other target devices (with or without the assistance of the gallery logic and/or distribution logic of media server 130).
In some embodiments, account logic 241 manages the identity/identities of dedicated media handler 210, identities (user names and/or other IDs) of other known media handlers (and optionally other entities) available on network 120 (for example group buddies or others), and/or any groups (sharing or backup) to which dedicated media handler 210 belongs. In one of these embodiments, dedicated media handler 210 has a user name and/or other type of identification (ID) in order to identify it. In one of these embodiments, account logic 241 supports multiple user names and/or other types of identification, for example in order to support multi-users such that every specific user that uses dedicated media handler 210 has his own content and configuration and therefore this case can be considered as separate media handlers (logically).
In one embodiment, the account logics in various media handlers may interact to enable a search of existing users according to any appropriate criterion/criteria and/or in order to enable viewing of the presence status of each user. Depending on the embodiment, account logic in the media server 130 may or may not assist in the search and displaying of presence status. For example, in some embodiments, account logic 241 of dedicated media handler 210 may use network 120 and the presence information retrieved with the assistance of media server 130, in order to facilitate instant messaging capabilities between users of various media handlers. Continuing with the example, in one of these embodiments, presence information regarding the users of the various media handlers may be exchanged via instant messaging.
In some embodiments, account logic 241 is responsible for adding or removing media handlers to/from the list of other media handlers known to dedicated media handler 210. In some embodiment, accounts logic 241 is responsible for adding or removing sharing/backup groups to/from a list of backup/sharing groups to which dedicated media handler 210 belongs and/or adding or removing members from each group. In some embodiments, in order for dedicated media handler 210 to be joined in a group, accounts logic 241 has to first be aware or become aware of at least one other media handler which is or should be in the group (i.e. the other media handler has to be have already been on the list of known media handlers or has to be added to the known list), hi other embodiments, in order for dedicated media handler 210 to be joined in a group, accounts logic 241 need not be aware or become aware of any current or prospective members of the group, prior to requesting entry into the group. First will be described some embodiments for accounts logic 241 becoming aware of another media handler. Hereinbelow, the term "pairing" refers to accounts logic in each of two media handlers becoming aware of the other media handler- i.e. adding the other media handler to the list of known media handlers. For example, in some embodiments, a real-time pairing process performed by dedicated media handler 210 and an additional media handler allows the exchange of user names or other identification between the two media handlers and adds each media handler to the list of known users maintained by the account logic of the other media handler. Depending on the embodiment, the real time pairing process can be performed with or without the assistance of the account logic of media server 130 (for example media server 130 may optionally provide addressing and/or control signaling). In some embodiments, the users of dedicated media handler 210 and the additional media handler use the user interfaces on the respective media handlers thereof (for example press a button/key) at approximately the same time, or one of the two users uses the user interface on his media handler, in order to perform pairing peer-to-peer or via media server 130 (i.e. without or with the assistance of media server 130). (In the case of using the user interfaces at approximately the same time, depending on the configuration, the exact timing tolerance may be measured, for example by media server 130, the respective media handlers and/or the distributed peer-to-peer network). In some of these embodiments the two media handlers are coupled in parallel with telephone equipment to a telephone network, and the two users are participating in a (voice) phone call, hi one of these embodiments, the pairing includes both users using the user interface (for example pressing a specific button/key) of the media handlers during the phone call, thereby activating modems in the network interfaces of the respective media handlers. In one of these embodiments only one user presses a button/key, activating a modem on his side, the modem on the other side monitoring the phone call and therefore detecting the activation.
For example, in other embodiments, a non-real time process can be used for pairing between dedicated media handler 210 and an additional media handler so that each is added to the list of known media handlers maintained by the account logic of the other media handler. In some of these embodiments, a first media handler (for example whose user has pressed a button/key on the user interface) receives a code (for example, temporary, with a predetermined expiry) from the account logic of media server 130. In these embodiments, the user provides the code to another (second) user, for example verbally during a phone conversation, and the user of the second media handler enters the code, for example via the user interface of his media handler. In these embodiments, the code is communicated to the account logic of media server 130 which pairs between the two media handlers. For example, in one of these embodiments, the pairing may include media server 130 sending each of the two media handlers the user name of the other media handler and authorization to "know" the other media handler. The code (for example with the predefined expiry) which is provided to the user of the second media handler may vary depending on the embodiment. In one of these embodiments, the code is generated by the account logic of media server 130 upon request and provided to the first media handler whose user provides this generated code to the second user for pairing purposes. In another of these embodiments, the account logic of media server 130 periodically generates a plurality of different codes (for example with predefined expiry), each customized for a different media handler, and each code is sent to the corresponding media handler upon generation. The user of the first media handler provides the previously received customized code to the second user for pairing purposes. In another of these embodiments, a common code (for example with predefined expiry) is generated periodically by the account logic of media server 130, and provided upon generation to more than one media handler. In this embodiment, the user of the first media handler, provides to the user of the second media handler for pairing purposes, a code (for example with a predefined expiry) which is based on the previously received common code and a unique identification of the media handler. In another of these embodiments, a global code (for example with a predefined expiry) is generated periodically by the account logic of media server 130, and provided upon generation to all the media handlers known by the account logic of media server 130. In this embodiment, the user of the first media handler, provides to the user of the second media handler for pairing purposes, a code which is based on the previously received global code and a unique identification of the media handler.
More embodiments are now described of a non-real time process which can be used for pairing between dedicated media handler 210 and an additional media handler so that each is added to the list of known media handlers maintained by the account logic of the other media handler, hi these embodiments, a first user may provide his user name to a second user. The user name may be predefined for the media handler of the user or the user may have selected the user name. The second user can then input the provided user name using the user interface of his media handler and send the indicated user name with a request for pairing to the account logic of media server 130. Media server 130 may then forward the request to the media handler of the first user, and if the first user approves, media server may relay the approval to the media handler of the second user. In some of these embodiments, the account logic of media server 130 ensures that each user name is distinguishable so that a user may use the user interface of a media handler (for example user interface 250 of dedicated media handler 210) to input his own user name (for example when selecting his user name) or input the user name of another user so that the inputted user name unambiguously specifies a particular media handler (either media handler 210 or another media handler). It is possible, in some embodiments, that media handlers may have different types of user interfaces, some of which are more limited than others. For example, in embodiments where there are at least some user interfaces of media handlers that may have more than one character corresponding to a button/key, any sequence of pressed buttons/keys on the user interface should uniquely identify the user name of no more than one media handler (or not identify any media handler). In some of these embodiments, the user interface of a media handler (for example user interface 250) is a partial keyboard with each of at least one of the keys corresponding to a letter group. In one of these embodiments, a user interface of a media handler (for example user interface 250) includes keys for at least the digits 0 -9, with each of at least one of these keys associated with a group of letters in addition to being associated with a digit (i.e. the user interface includes at least one key with the same alphanumeric correspondence as on a telephone user interface). For example, in some cases of this embodiment, the user interface of a telephone coupled to network 120 in parallel with a media handler functions also as the user interface of that media handler (for example of dedicated media handler 210).
More embodiments are now described of a non-real time process used for pairing between dedicated media handler 210 and an additional media handler so that each is added to the list of known media handlers maintained by the account logic of the other media handler. In some embodiments, a user calls a customer support number using a telephone coupled to network 120 in parallel with the media handler (for example in parallel with dedicated media handler 210) for the purpose of pairing (for example indication of the user name of another media handler to pair to) and/or for additional configuration tasks. The customer support service supports interactive voice response IVR functionality. In one embodiment, the user interface of a media handler (for example user interface 250) controls the IVR customer support via the telephone network by playing dual tone multi-frequency DTMF tones as if a telephone keyboard was pressed. In another embodiment, additionally or alternatively, the user interface monitors the IVR customer support via the telephone network, synchronizing with the IVR status so that the menu choices of the IVR customer support may be displayed on a display associated with the media handler. In one embodiment, additional or alternatively, the IVR enables a voice response menu. In one embodiment, additionally or alternatively, media server 130 synchronizes between the menu tree content of the media handler and the menu tree content of the IVR customer support. In some embodiments, once account logic 241 becomes aware of another media handler (i.e. the other media handler is added to the list of known media handlers), account logic 241 may interact with the user of dedicated media handler 210 via user interface 250 to determine if the user wishes media handler 210 to be in a same sharing or backup group as the other media handler. The media handler 210 and the other media handler may form a new sharing or backup group and/or either can join an existing group which includes the other. For example, in one of these embodiments, once pairing has occurred in a real time and/or non-real time pairing process, the user of dedicated media handler 210 may use user interface 250 to add users (who are now known due to pairing) to groups to which the user of dedicated media handler 210 belongs. As another example, in one of these embodiments once pairing has occurred in a real time and/or non-real time pairing process, each of two media handlers participating in the process may receive a list of groups to which the other belongs, either from the account logic of the other media handler or from the account logic of media server 130. In this embodiment, additionally or alternatively, a new group including the two media handlers may be suggested (for example by media server 130, or by the peer-to-peer network after having searched in a database that is distributed among peers in the network. See for example the article "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications" referenced above). In this embodiment, the users of the two media handlers can then select groups for joining via the user interfaces.
In some embodiments, sharing and backup groups have groups name that enable easy joining into the group. In some of these embodiments any user with a media handler has the ability to join a group by indicating the name of the group (unless there is some access protection policy defined for the group, in which case the group administrator should define an access list). For example, in one of these embodiments the group name can be indicated using the user interface of a media handler, where in some cases the choice of group name may be restricted to eliminate ambiguity due to limited user interfaces as described above for the indication of user name, mutatis mutandis. As another example, in one of these embodiments, the group name can be indicated by calling customer support with IVR functionality, as described above for the indication of user name, mutatis mutandis, or by any other suitable method. In some embodiments, once the user of the media handler has indicated the group name, the account logic of media server 130 will notify the members of the group, or a notification may be sent directly to each member of the group (for example using the decentralized peer-to-peer algorithm as described in "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications", referenced above or any other appropriate method). In one of these embodiments, assuming that the media handler which wishes to join the group is dedicated media handler 210, due to the notification, the account logic of each media handler in the group will add media handler 210 to the list of members of the group. In return, in this embodiment media handler 210 receives from the account logic of media server 130 or directly from the account logic of each member of the group the user name and/or other identification of the members of the group so that account logic 241 of dedicated media handler 210 may add the group and its members. In some embodiments, account logic 241 determines the routing to each target entity with the help of network interface 240. In some of these embodiments the algorithm will vary depending on the type of addressing. For example, in one of these embodiments where absolute addressing is used, account logic 241 knows the address of each relevant entity as provided by network interface 240. As another example, in one of these embodiments with server based addressing where media server 130 manages the signaling, account logic 241 knows the user name (or other identification) and not necessarily any additional addressing information with addressing services provided in some cases by the account logic and network interface of media server 130. As another example, in one of these embodiments accounts logic 241 may run a decentralized peer-to-peer algorithm, for example as described in "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications" referenced above or any other appropriate algorithm. As another example, DNS servers may provide the addressing information corresponding to user name for each target entity. In one embodiment in a peer-to-peer network, accounts logic 241 also or alternatively records the real-time status of each media handler in order to be able to communicate with the media handler (for example for the purpose of implementing the logic in dedicated media handler 210) and/or to have presence information. In some embodiments, logic on media handler 210 may alternatively or additionally include processing logic to process the digital content. For example, digital photos can be edited as is known in the art.
Although some aspects of the interfaces of dedicated media handler 210 have already been discussed, additional details are now provided. In some embodiments, user interface 250 interacts with the user in order to operate the logic of dedicated media handler 210 and/or in order to operate other interfaces (source, display, network, etc) of dedicated media handler 210. hi some of these embodiments, user interface 250 thus provides manual control (i.e. management) over one or more tasks which are performed by dedicated media handler 210 automatically (i.e. tasks which are initiated without the user first requesting initiation) . For example, in one of these embodiments, user interface 250 allows a user to provide input regarding an operation which was automatically initiated, for example to override execution of an automatic operation and/or otherwise manage the operation. In other embodiments, tasks performed by dedicated media handler 210 may be manually initiated using user interface 250. Examples of user interface 250 include inter-alia: remote control (for example with predefined functions and navigation buttons to navigate between options in a menu), keyboard (partial or full), buttons, user interface of phone connected in parallel, etc. More details on user interfaces are provided elsewhere herein. In some embodiments, source interface 220 is responsible for local importing and exporting of media content for dedicated media handler 210. In these embodiments, media content can be imported for example from external source 151, internal source 221 or from a virtual media handler coupled to source interface 220. In one of these embodiments, source interface 220 handles the logic (manually and/or automatically) for importing/exporting content. Source interface 220 may provide various interface options, depending on the embodiment, including one or more of the following, inter-alia: a memory card reader, USB, Fire Wire, Ethernet, Bluetooth. WLAN, UWB, RS232 serial connection etc. Internal source 221, if present, may include any suitable recording means, any suitable acquiring means (i.e. acquiring what has previously been recorded), and/or any suitable storage means. For example, in one embodiment, internal source 221 can be a camera. As another example, in one embodiment, internal source 221 can be a scanner for scanning printed images. Other examples of sources are provided elsewhere herein.
In some embodiments, network interface 240 has various interface options including one or more of the following inter-alia: Ethernet, cable modem, satellite modem, dial up modem, cellular, wireless LAN, WiMAX. hi one embodiment, network interface 240 is responsible for setting up the coupling with network 120, monitoring the status of the network coupling and/or interacting with user interface 250 regarding the network coupling, hi one embodiment, once network interface 240 has coupled dedicated media handler 210 to network 120, network interface 240 interacts with account logic 241 in order to allow mutual discovery of/by other media handlers and optionally other entities available on network 120 and/or in order to provide and receive identification information to and from other media handlers and 001064
44 optionally other entities in the network. In one embodiment network interface 240 also enables transfer and receipt of signals and/or content related to features of any of the following inter-alia backup logic 211, sharing logic 212 and distribute logic 213. In some embodiments, network interface 240 implements a fax receiver and transmitter. The fax transmitter receives content from local storage 260 and sends the content over the network 120 using fax modem. The fax receiver receives content from network 120 using fax modem and sends this content to local storage 260. Depending on the embodiment, user interface 250 may or may not be involved in both fax transmit and receive sessions. In one embodiment, network interface 240 has wireless LAN capabilities for communicating with other wireless clients and implements the functionality of a wireless access point and router for all the clients in the wireless network.
In one embodiment network interface 240 may couple to a PC that acts as a local external source by using an application that may be installed on the PC which makes the PC appear as a source of content.
More details on embodiments of network interface 240 are provided further below.
In some embodiments, display interface 230 which couples to display 161 and/or to internal display 231 is responsible for displaying media content that is stored on dedicated media handler 210. In one of these embodiments, the display interface handles the logic and presentation features of displaying the content in various ways that will in some cases leverage the organizing logic and user interface. Display interface 230 may provide various interface options, depending on the embodiment, including one or more of the following, inter-alia: Composite, Component, VGA, DVI, HDMI, etc.. In one embodiment where display 161 has an interface for external memory cards or devices (such as USB interface or SD interface), display interface 230 may function as a mass storage device (e.g. USB mass storage device class or SD memory device) when interfacing to display 161. In this embodiment, content from local storage 260, which may be updated from time to time, may be displayed on display 161 in addition to or instead of content in the external memory card/device.
In some embodiments where display 161 is a printer, display interface 230 may be a usual printer interface (e.g. USB5 parallel port). In one of these embodiments, the printer will support standard printing protocol (such as LPR, Postscript, PictBridge) such that dedicated media handler 210 is able to send content to print on the printer. In another of these embodiments, the printer's driver may be installed on dedicated media handler 210 for the purpose of sending content to printing. In another of these embodiments, the printer's driver may be installed on media server 130 and the formatted data (according to the printer driver) may be sent via network 120 to dedicated media handler 210 (when network 120 is coupled to dedicated media handler 210) which will then relay the formatted data to the printer via display interface 230.
Depending on the embodiment, various presentation features may be offered by display interface 230 in order to help the user view and benefit from the content. In one embodiment, the display interface 230 includes games that use some of the content that is stored by dedicated media handler 210. For example, these games may use the content in local storage 260 and the user interface 250 in order to present an interactive game via display interface 230. In some embodiments, the content that is used by the games can be selected by the user, deemed appropriate by organizing logic 215, and/or randomly selected. In some embodiments, images of faces may be used as characters in a game. In some of these embodiments, an algorithm for extracting faces from the content may be used by organizing logic 215 to determine which content includes faces and how to extract these faces. Such an algorithm can be based on any known algorithm, such as the algorithms mentioned in the survey article "Detecting Faces in Images: A Survey" published in IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE, VOL. 24, NO. 1, JANUARY 2002. In one of these embodiments, organizing logic 215 generates meta-data which specifies which images include faces and how to extract these faces. In one of these embodiments, when a game to be displayed via display interface 230 requires extracted faces, the meta data is checked to determine which images are appropriate because those images includes faces. In one of these embodiments, extracted faces may be shown via display interface 230 as a photo montage by stitching these faces onto another full picture.
In one embodiment, organizing logic 215 may generate other types of meta- data which allow categorization of content so that a user can play a game using content which conforms to particular criteria. For example, the generated meta-data may indicate that a picture is an outdoor or indoor picture and therefore outdoor pictures (or indoor pictures) can be selected for the game displayed via display interface 230. In one embodiment, a full picture may be torn to pieces either as a puzzle game or as a detection game and displayed to the user via display interface 230. In this embodiment, where a detection game is implemented, the user needs to detect a person in the image while viewing just a few torn pieces of the original full picture or by viewing a distorted image (such as fish-eye distortion). Any of the examples of displays presented herein, inter-alia, may be used as internal display 231, if present.
In one embodiment, the control bus 261 interfaces between the user interface 250 (the end user intentions and notifications) and the logic modules (any of 215, 211, 212, 214, 241 and/or 213) of dedicated media handler 210.
In some embodiments, the content bus 262 is a high speed content bus that inter-alia transfers content between local storage 260, network interface 240 (to or from network 120) and/or the logic modules (any of 215, 211, 212, 214, 241 and/or 213) of dedicated media handler 210 For example, in some cases a logic module may change the format of content and/or perform processing/analysis on content. In one of these embodiments, depending on the task, the appropriate logic (for example backup logic 211, sharing logic 212, distribution logic 213, etc) manages the content flow between network interface 240 and local storage 260, and/or manages the content flow between local storage 260 and display interface 230 or source interface 220, with the content flowing via content bus 262. In some cases, content flow management may include content transformation.
In some embodiments, local storage 260 stores all the content that was imported or transferred to dedicated media handler 210. For example, content may have been imported from a local or remote source or virtual media handler, and/or content may have been transferred to (for example distributed to, shared with and/or backed up on) dedicated media handler 210. In one of these embodiments, the content is stored with meta-data that includes both the initial meta-data of the content and also additional meta-data that was generated by the organizing logic 215 of dedicated media handler 210. In one of these embodiments, local storage 260 manages the capacity and informs the user of dedicated media handler 210 when the storage is about to be filled to capacity. In this embodiments, various options may in some cases be available for the user, such as deleting old content, exporting content to external backup (such as local backup 270) etc.
In some embodiments, a dedicated media handler may have additional functionality, less functionality and/or different functionality than described above for dedicated media handler 210 with reference to Figure 2. For example, in one of these embodiments the functionality of any of the modules shown in Figure 2 may be missing from a dedicated media handler of a different embodiment. As another example, a dedicated media handler of a different embodiment may have additional and/or different functionality than described with reference to Figure 2. hi some embodiments the functionality described for dedicated media handler 210 with reference to Figure 2 may be divided into less, more and/or different modules than shown in Figure 2, and/or the functionality of dedicated media handler 210 may be divided differently among the modules of Figure 2. Some examples of media handler variants will now be described.
For example, in some embodiments, a dedicated media handler may be of type
171 with no display capabilities (i.e. 230 and 231 omitted) and optionally without some or all of the logic (i.e. any of 215, 211, 212, 214, 241 and/or 213 may be omitted). In one of these embodiments, a dedicated media handler of type 171 can be designed for a lower cost than media handler 210 due to the reduced capabilities.
For example, in one embodiment, a dedicated media handler may be of type
172 with no source capabilities (i.e. 220 and 221 omitted), optionally without some or all of the logic (any of 215,211,212, 214, 241 and/or 213 may be omitted), and optionally without local storage 260. hi one embodiment, media handler 172 can be designed for a lower cost than media handler 210 due to the reduced capabilities. For example, in one embodiment, a dedicated media handler may be of type 173 (i.e. a mobile version) and therefore may in some embodiments have size and power constraints compared to non-mobile media handlers. Due to the mobility of a dedicated media handler of type 173, in some embodiments it is more likely that such a dedicated media handler will integrate a media display 164 inside and/or a media source 155 (e.g. camera) inside. However in some embodiments, mobile media handler 173 can additionally or alternatively have interfaces for an external local media source and/or an external local media display.
For example, in one embodiment, a particular dedicated media handler may have a display interface 230, a source interface 220, sharing logic 212, accounts logic 211, distribution logic 213, gallery logic 214, user interface 250, a limited network interface, a local storage with limited capacity, and organizing logic of limited functionality and network interface 240. In this embodiment, the dedicated media handler cannot handle backup (no backup logic), hi this embodiment, a local PC cannot couple to the network interface in order to function as a source. In this embodiment, organizing logic does not perform complex organizing algorithms but only organizes the content according to the original meta-data (for example based on the creation date).
As another example, in some embodiments, a dedicated media handler which can couple to a telephone link of a circuit switched telephone network (either directly or via an (optional) wireless PHY 750 as described below with reference to Figure 7) to a cellular telephone network, or to a cable network may provide a welcome solution to users who do not have a PC. hi some of these embodiments, the dedicated media handler can have a display interface for coupling to a television set, and therefore may suit the majority of households which have a television set. The media handling abilities of the dedicated media handler as described herein can allow the user to exchange digital content with a PC user who is also coupled to network 120 (for example to an IP protocol based network such as the Internet), thus bridging between
PC-users and non-PC users. In one of these embodiments, for example, the dedicated media handler may even forgo some functionality (for example backup, and/or source interface) in order to be more attractive to a user with a low level of technical abilities.
In some embodiments, the complexity of the functionality of a media handler can vary depending on which modules of Figure 2 are included. Consider for example, a set-top box (for example for cable or satellite) coupled to a display, for example a television. Assume for the sake of the example that for the set-top-box to function as media handler, the set-top box has to have at a minimum display interfaces 230, network interface 240 and user interface 250, for example with the user interface of the set-top-box and/or of the TV functioning as user interface 250.
In one embodiment of the example, the set-top box (which in this embodiment may have a network interface 240 of an embedded cable modem) does not have a source interface (i.e. no source input) and no logic, and therefore would resemble a simplified display media handler 172. In another embodiment of the example, the set- top-box may not have a source interface (i.e. no source input) but may have the ability to execute applications and services, and therefore it may be possible to implement some or all of logic 215, 211, 212, 214, 241 and/or 213 on the set-top-box. In this embodiment, the set-top-box resembles a more complex display media handler 172. In another embodiment, the set-top-box may have a source interface (for example Ethernet, USB) and at least some logic and therefore resembles media handler 110.
Assume for another example a cellular handset (or PDA) which couples to network 120 via wireless infrastructure or any other means. At a minimum assume that the cellular handset has display interface 230, network interface 240 and user interface 250. In some embodiments of the example, depending on the logic, the cellular handset can resemble a simple or more complex mobile media handler 173.
For example, in one of these embodiments, a cellular phone (or PDA) may have media handling software functionality embedded inside (such as content organizing, content sharing etc and/or any of the logic discussed above.). In another embodiment, additionally or alternatively, if there are no source capabilities, for example no picture taking capabilities, the cellular handset may function as a display media handler 172.
Assume for another example, a PC or other device which does not necessarily include media handler logic (i.e. does not necessarily have modules 215, 211, 212, 214, 241 and/or 213), but includes web browsing capabilities. Such a device can access the (network) user interface of media server 130 and exploit the logic on media server 130, in order to act as a media handler.
Figure 3 illustrates the block diagram of a media server 130, according to an embodiment of the present invention. Each module illustrated in Figure 3 may be made up of any combination of software, hardware and/or firmware which performs the functions of the module as defined and explained herein. Recall from Figure 1, that media server 130 and one or more media handlers are coupled to network 120.
As shown in Figure 3, media server 130 includes any of the following, inter- alia: a mass storage 320, one or more interfaces (for example a network user interface 341, a network interface 340), one or more buses (for example content bus 360), and logic.
For ease of explanation, the logic is shown in Figure 3, divided into organizing logic 310, backup logic 331, accounts logic 342, sharing logic 332, distribution logic 333 and gallery logic 334 modules but it should be evident that in other embodiments, the functionality of the logic may be divided differently into modules and/or the logic may include less, more, and/or different functionality.
As mentioned above, in one embodiment, the media server 130 can be composed of a network of media servers in which the logic and mass storage 320 is distributed among a network of media servers. The distributed architecture may in some cases improve reliability, quality of service, backup capabilities, and/or other capabilities.
In some embodiments, the logic in media server 130 handles the automatic and/or manual features and/or algorithms that were offloaded by a media handler to the media server. In one of these embodiments, logic in media server 130 may substitute for logic that is missing in a media handler, for example for a media handler with limited or no logic but with web browsing capabilities. In this embodiment, network user interface 341 allows the media handler to interface with media server 130. In another of these embodiments, features and/or algorithms may be offloaded to media server 130 for any reason, even though the media handler is capable of performing the features and/or algorithms, for example because of speed, power, space, etc. considerations.
For example, in some embodiments, organizing logic 310 handles the optional automatic and manual organizing features and algorithms that were offloaded by a media handler to the media server 130. In one of these embodiments, organizing logic 310 may perform, mutatis mutandis, any of the following organizing tasks described above with respect to organizing logic 215 of dedicated media handler 210,: an auto and/or manual tagging process, an auto-clustering process, adding content to structured albums in mass storage 320, varying algorithms, etc. In one of these embodiments, in order to perform organizing, the content should be available in mass storage 320, for example when the content is backed up on mass storage 320 and/or for example when content is available in mass storage 320 on a temporary basis because media server 130 is relaying content. In one of these embodiments, organizing logic 310 is at least occasionally activated when new content is stored in mass storage 320, for back up and/or temporarily. In some of these embodiments, organizing logic 310 organizes content for media handlers with limited or no logic but with web browsing capabilities. Continuing with these embodiments, in some cases, games for users of these media handlers may rely on the organization performed by organizing logic 310, similarly to the games described above with reference to Figure 2.
As another example, in some embodiments backup logic 331, accounts logic 342, sharing logic 332, distribution logic 333 and/or gallery logic 334 may provide any of the functionality described above, respectively, of backup logic 211, accounts logic 241, sharing logic 212, distribution logic 213, and/or gallery logic 214 of media handler 210 to a media handler with web browsing capabilities. In one of these embodiments, for example, sharing logic 332 may store on mass storage 320 the shared content so that a media handler with web browsing capabilities may share the content. In these embodiments, the media handler may not have the logic or may prefer using the logic of media server 130. In some embodiments, additionally or alternatively, logic in media server 130 may interact with logic in one or more media handlers to assist the media handlers in handling digital content. For example, in one of these embodiments, media server 130 can additionally or alternatively relay content, manage signaling, provide addressing services initiate content transfer, transcode transferred content, adapt transferred content, assist in grouping, and/or otherwise assist media handlers in handling digital content.
For example, in one embodiment, account logic 342 manages the identities (user names and/or other IDs) of known media handlers (and optionally other entities) available via network 120 and/or manages the information regarding sharing and backup groups. In one embodiment, accounts logic 342 also or alternatively records the real-time status of each media handler in order to be able to communicate with the media handler (for example, for the purpose of implementing the logic in the media server 130) and to have presence information. More details on how account logic 342 of media server 130 can assist in various embodiments were discussed above with reference to Figure 2.
As another example, in one embodiment, backup logic 331 may assist the backup logic of media handlers for backup purposes, for example for transferring content for backup and/or for managing the backup session for a backup group. More details on how backup logic 331 can assist in various embodiments were discussed above with reference to Figure 2.
As another example, in some embodiments, gallery logic 334 handles the communication with a public gallery 190 connected via the network 120. In a different embodiment, a media handler may communicate directly with a public gallery 190, which is the regular case whenever there is no media server 130. However, in embodiments of this example, a media handler communicates with public gallery 190 via media server 130. In some of these embodiments media server 130 can aggregate a few public galleries and manage the scheme of content transfer between the media handler and the public galleries and/or between various public galleries. For example, in one of these embodiments, gallery logic 334 of media server 130 polls each public gallery 190 in an automatic manner in order to check for new content. In some cases, the results of the polling are used for notification and new content transfer within backup and sharing groups. In one of these embodiments, additionally or alternatively, distribution of content from a media handler to any public gallery 190 may be managed by the gallery logic 334, such that the originating media handler does not need to handle the communication with the gallery. More details on how gallery logic 334 can assist in various embodiments were discussed above with reference to Figure 2.
As another example, in one embodiment, sharing logic 332 may assist the sharing logic of media handlers for sharing purposes, for example transferring content for sharing and/or managing the sharing session for a sharing group. More details on how sharing logic 332 can assist in various embodiments were discussed above with reference to Figure 2.
As another example, in some embodiments, distribution logic 333 handles the transfer of content to various targets as requested by media handlers. The target can be another media handler or a device which is not a media handler, using email, MMS etc. In one of these embodiments, distribution logic 333 handles subscription to distribution services (e.g. MMS, 3rd party printing services), hi one of these embodiments distribution logic 333 enables the originating media handler to attach information (e.g. free text) to the distributed content, hi one of these embodiments, distribution logic 333 can distribute shared content to a printing service coupled to network 120 (for example a web printing service). In one embodiment where content was distributed to a printing service, distribution logic 333 handles feedback regarding the status of the printing and informs the originating media handler about the status. In some embodiments, sharing logic 332 or distribution logic 333 may each additionally or alternatively perform transcoding, adaptation of content to the target display, and/or other processing on transferred digital content.
For example, in some embodiments, distribution logic 333 may trans-code content to be distributed in a manner that will fit the display abilities of the target (either a media handler or not). For example, in one of these embodiments, distribution logic 333 may receive an email content via network interface 340 intended for a media handler (for example, if a media handler user will have a subscription to an email account in the email domain of the media server 130) and will trans-code the full content of the email (text, graphics, attachments) into a regular content type that the media handler can present (can be tuned to the specific display abilities of the target media handler), such as a still image or a video clip. This content, for example, can be then distributed by distribution logic 333 to the target media handler as a regular distributed content. Once the distribution is completed (either successful or not), a feedback can be sent to the originating media handler. In some cases, the feedback can be received a long time after the distribution has been completed and therefore the distribution logic 333 needs to keep record of the originating media handler.
More details on how distribution logic 333 can assist in various embodiments were discussed above with reference to Figure 2.
In some embodiments, additionally or alternatively, logic in media server 130 provides functionality relating to the server. For example, in some of these embodiments, backup logic 331 manages the backing up of content on mass storage 320 when mass storage 320 is part of a backup group. In some of these embodiments, content is backed up on the media server 130 (which as mentioned above may be a distributed media server network) in any of several backup medium options (such as hard disks, optical media etc.
In one embodiment, network interface 340 interacts with account logics of media handlers in order to discover entities accessible via network 120 and/or in to provide and receive identification information to and from accessible entities. In one embodiment, network interface 340 is responsible for setting up communication via network 120 with accessible entities.
In some embodiments, network user interface 341 allows users to interface with media server 130, for example via any user device with web browsing functionality. In one of these embodiments network user interface 341 resembles a user interface of a media handler.
In some embodiments, content flows between modules of media server 130 via a content bus 360. In one of these embodiments, content bus 360 is a high speed bus which in some cases may be distributed among networked media servers. hi one embodiment, mass storage 320 stores all the content that was transferred to the media server 130 for backup purposes (possibly secured or encrypted) or for temporal transfer in order to facilitate some of the logic (for example, the relaying of content between media handlers or other user devices).
In some embodiments, there may be different functionality, less functionality and/or more functionality than described above for media server 130 with reference to Figure 3. For example, in some of these embodiments, the functionality of any of the modules shown in Figure 3 may be missing from media server 130 of a different embodiment. Continuing with the example in one of these embodiments some or all of logic 310, 331, 332, 333, and/or 342 may be missing, for example if transfer of content is performed peer-to-peer as described above with reference to Figure 2. As another example, a media server 130 of a different embodiment may have more and/or different functionality. In other embodiments the functionality described for the media server 130 of Figure 3 may be divided into less, more and/or different modules than shown in Figure 3, and/or the functionality of media server 130 may be divided differently into the modules of Figure 3.
Figure 4A illustrates the block diagram of a virtual media handler 174 which is stored on a storage device, according to an embodiment of the present invention. Figure 4B is a block diagram of a virtual media handler 176 which is stored on media server 130, according to an embodiment of the present invention. Each module illustrated in Figure 4 A or 4B may be made up of any combination of software, hardware and/or firmware which performs the functions of the module as defined and explained herein.
In some embodiments, virtual media handler 174 or 176 stores relevant information about a first (i.e. original or creating) media handler that was exported/uploaded to virtual media handler 174 and 176 (such as configuration information including inter-alia user information and preferences) and that may allow a second (i.e. host) media handler to imitate the first media handler.
For example, in one embodiment, the local storage 440 of the storage device storing virtual media handler 174 comprises: a content storage 410 for storing digital content, a content meta-data storage 420 for storing the meta-data that is associated with this content and/or a configuration storage 430 for storing the configuration of a media handler (such as user information and preferences). As another example, in some embodiments, mass storage 320 of media server 130 stores virtual media handler 176 in a storage data structure 441 which comprises: a content storage 411 for storing digital content, a content metadata storage 421 for storing the meta-data that is associated with this content and/or a configuration storage 431 for storing the configuration of a media handler (such as user information and preferences). In one of these embodiments, storage data structure 441 may be considered to be a logical entity which describes the way the data is stored on media server 130. In some embodiments, the storage interface 450 (for example USB or SD memory) of the storage device storing virtual media handler 174 may be coupled to the source interface of a media handler. In these embodiments, once coupled, digital content, meta data and/or the configuration may be transferred between the media handler and the storage device. In some of these embodiments, the transfer is performed automatically upon coupling. In one of these embodiments, the automatic transfer may be overridden (or approved/disapproved) by the user. In another embodiment, additionally or alternatively, the user has an opportunity to initiate a transfer. The transfer may be in either direction (i.e. from a media handler to the storage device or vice versa). In some embodiments, prior to transferring content between storage device
450 and the media handler (for example upon coupling to storage interface 450), the media handler looks at the media handler configuration in configuration storage 430 and determines whether the media handler created the stored configuration (i.e. whether the media handler was the creating media handler) or not.. For example, in one of these embodiments, at the time of creation of a virtual media handler, the creator media handler may put its own information (and personal ID) in media handler configuration 430. In one of these embodiments, if the media handler determines that another media handler was the creator, then the media handler (acting as a host) imports the content, metadata and/or configuration. In this embodiment, if the media handler instead determines that the media handler was the creator, then the media handler exports content, metadata and/or configuration and/or the media handler may import content, for example if the content was updated by a host.
In some embodiments, virtual media handler 176 is transferred via network 120, for example uploaded from a first media handler and downloaded to a second media handler. In one of these embodiments, digital content, meta data and/or the configuration are transferred between the media handler and media server 130. In one of these embodiments, the second media handler may have web browsing abilities but limited or no logic and still imitate the first media handler by using logic on media server 130. hi one embodiment, the difference between a storage device including virtual media handler 174 and a "simple" storage device that stores the same kind of digital content is that the virtual media handler also includes media-handler-generated content metadata and/or media handler configuration and therefore has all the needed information for imitating the original media handler configuration and managed content on another media handler. In contrast, in this embodiment, a "simple" storage device which stores the same kind of digital content (for example in a module similar to content storage 410) will not allow a second media handler to imitate the original media handler. Instead in this embodiment, the "simple" storage device will typically only enable a viewing of the content which does not take into account, for example the content organization, viewing preferences, etc. of the original media handler.
In other embodiments, there may be more functionality, less functionality and/or different functionality than described above for virtual media handler 174/176 with reference to Figures 4A and 4B. For example the functionality of any of the modules shown in Figure 4A or 4B may be missing from virtual media handler 174/176 of a different embodiment. As another example, a virtual media handler 174/176 of a different embodiment may have additional and/or different functionality. In other embodiments the functionality described for virtual media handler 174/176 of Figure 4A/4B may be divided into more, less and/or different modules than shown in Figure 4A/4B or the functionality of virtual media handler 174/176 may be divided differently among the modules of Figure 4A/4B.
Figure 5 illustrates a flow chart of a method 500 executed by a dedicated media handler, according to an embodiment of the present invention. For example, in one embodiment, method 500 may be executed by dedicated media handler 210 or any appropriate dedicated media handler. In the illustrated embodiment, method 500 includes one or more tasks. The tasks illustrated for method 500 may be performed in any suitable order and/or simultaneously with other tasks, depending on the embodiment. One or more of the tasks described below as being included in process 500 may be omitted in other embodiments. In other embodiments of process 500, there may be more, less and/or different tasks than illustrated in Figure 5. In some embodiments, in task 510, a dedicated media handler recognizes a network session trigger and a network session is established. For example, in some of these embodiments, the dedicated media handler may recognize a trigger to initiate a network session with a media server or another entity (for example media handler, gallery, etc), for example an automatic trigger such as a timer for periodic or particular time(s) of day initiation, new content imported from a source or from a virtual media handler, upon network coupling/recoupling, and/or any other appropriate event, or for example a manual trigger such as a user request. In one embodiment, the other entity may be in a backup or sharing group with the dedicated media handler but in other embodiments, this is not necessarily the case. As another example, in some of these embodiments the dedicated media handler may recognize that media server 130 or another entity (for example media handler, gallery, etc) wishes to participate in a session with the dedicated media handler via network 120. In this example, in one of these embodiments, timing (for example periodic or specific time of day) may affect whether the dedicated media handler is prepared or not prepared to participate in a session and therefore a timer may also be relevant. In one embodiment, the other media handler is in a sharing or backup group with the dedicated media handler, but in other embodiments, this is not necessarily the case.
Some embodiments which further illustrate task 510 are presented further below with respect to Figures 8 and 9. Depending on the embodiment, the purpose of the established network session may be for handling one or more of the following tasks, inter-alia: sharing (task 511), distribution (task 512), backup (task 513), public gallery (task 514), users (task 515). The handling of sharing task 511 was discussed above, inter-alia, with reference to the discussion on sharing logic 212. The handling of distribution task 512 was discussed above, inter-alia with reference to the discussion on distribution logic 213. The handling of backup task 513 was discussed above, inter-alia, with reference to the discussion on backup logic 211. The handling of public gallery task 514 was discussed above, inter-alia, with reference to gallery logic 214.
In one embodiment any task which is performed during the network session, for example sharing (task 511), distribution (task 512), backup (task 513), and/or public gallery (task 514) is performed automatically (i.e. without first receiving a request from the user interface of the dedicated media handler). In one embodiment, any task which is performed during the network session, for example sharing (task 511), distribution (task 512), backup (task 513), and/or public gallery (task 514) is performed (i.e. initiated) automatically however a user may override a task (or approve/disapprove a task), and/or manage the task by input to the user interface of the dedicated media handler. In some embodiments, additionally or alternatively, sharing (task 511), distribution (task 512), backup (task 513), and/or public gallery (task 514) may be manually initiated during the network session via the user interface. In some embodiments, users task 515 may be handled during a network session and/or using the user interface of the dedicated media handler (for example user interface 250 of handler 210). In one of these embodiments, users task 515 relates to the operation of the account logic of the dedicated media handler, and therefore the reader is referred above to the description, inter-alia of account logic 241. In another of these embodiments, additionally or alternatively, users task 515 includes configuration operations for the dedicated media handler.
It should be evident mat in some embodiments of the dedicated media handler any of tasks 510, 511, 512, 513, 514 and 515 may be omitted. For example, in some of these embodiments, where the dedicated media handler excludes certain logic, tasks executed by the logic are omitted.
In some embodiments, new content for the dedicated media handler (i.e. content that was not previously handled by the dedicated media handler) that is received during a network session may be displayed, stored locally and/or organized (task 516) beginning with task 635 of method 600. In some of these embodiments, the activities (displaying, storing locally and/or organizing) that are allowed depend on which task (511, 512, 513, 514) is related to the received content. For example, in one of these embodiments, received distributed content and shared content may be displayed, organized, and stored locally, whereas received backed up content may only be stored. In some of these embodiments, additionally or alternatively the activities (displaying, storing locally and/or organizing) that are allowed depend on from where the content originates (for example the type and/or identity of the originating media handler) In other embodiments, storing, organizing and displaying do not take place and therefore task 516 is omitted. Method 600 will be described further below. In some embodiments, in task 520, the dedicated media handler handles a source or a virtual media handler. For example, in one of these embodiments the dedicated media handler may poll the source interface (for example source interface 220 of media handler 210) for a new local coupling to an (internal or external) local source or to a virtual media handler (for example virtual media handler 174). As another example, in one of these embodiments, additionally or alternatively, the network interface of the dedicated media handler (for example network interface 240 of media handler 210) may receive communication from a remotely coupled source (e.g. source 154) or from a local PC connected to the network interface which functions as a source. As another example, in one of these embodiments, additionally or alternatively, the importing or exporting of virtual media handler 176 stored on media server 130 may be detected.
In some embodiments, task 520 for a local source includes: detecting the type of local coupling, and/or searching for content which has not been handled before by the dedicated media handler (new content). In one of these embodiments, the detection method depends on the specific type of local coupling (e.g. wireless, wired, internal source, etc).
In some embodiments of task 520 whenever a local external source is coupled to the source interface of the dedicated media handler, the dedicated media handler detects the type and/or identification of the source and uses the detected information in order to determine one or more actions appropriate for content from that source (e.g. any of automatic importing, automatic storing, automatic backup, automatic displaying, automatic sharing, automatic distribution, and/or automatic organization, etc). In some of these embodiments, the required actions may be decided, for example based on the functionality of the source, and/or the previous history of actions for content from that source.
In some of these embodiments, the dedicated media handler then scans the content on the source and identifies content that was not previously provided to the dedicated media handler (i.e. new content). In these embodiments, the dedicated media handler then performs the pre-configured action(s), for example initiating a network session (task 510) and/or performing task 521 (see below). In one of these embodiments, for some new content, task 521 may first be performed and then task 510. hi some embodiments in which the source is integrated within the dedicated media handler, task 520 may be performed similarly, mutatis mutandis (for example source detection and identification may be performed differently or may be unnecessary). In some embodiments with a remote source or with a PC functioning as a source that is coupled to the network interface, task 520 may be performed similarly, mutatis mutandis.
In some embodiments, if there is new content (from any source or virtual media handler), then the content may be imported (from a source or virtual media handler), displayed, stored locally, and/or organized (task 521), beginning with task 630 of method 600. In some embodiments, additionally or alternatively, content on the dedicated media handler may be exported to virtual media handler 174 or 176 (task 521), beginning with task 630 of method 600. In other embodiments, task 521 is not justified and therefore omitted, for example because there is no new content or because importing, displaying, storing locally, organizing and exporting are not desired or are not preconfigured actions.
In some embodiments, task 520 (and 521) may be omitted, for example when the dedicated media handler excludes a source interface, there is no PC functioning as a source coupled to the network interface, and the dedicated media handler does not receive content via network 120 from remote sources or virtual media handlers.
In some embodiments, in task 530, the dedicated media handler polls for activities of the user interface (for example user interface 250 of dedicated media handler 210). Depending on the embodiment, the user interface can initiate and/or manage various activities for the dedicated media handler. For example, in some embodiments, the user interface can initiate and/or manage one or more of the following activities, inter-alia: display requests, organize requests, share requests, distribute requests, backup requests, import requests, export requests (including local printing), requests related to public galleries, identities and/or groups. As mentioned above, depending on the embodiment where the user interface can manage a particular activity, the user interface can manage an activity which was automatically initiated (i.e. an automatic activity) or a manually initiated activity). In some embodiments, the user interface may have more limited initiation and/or management abilities with respect to certain or all activities. For example, in one of these embodiments, for some activities, the user interface may only be able to override automatic operation but may not be able to otherwise affect the automatic operation.
In some embodiments, in task 540 the dedicated media handler performs background organizing activities in order to have pre-organization (before user organization) for new content that is received by the dedicated media handler and also for post-organization of the content whenever there is a need for process and time consuming organizing algorithms that will enable complex organizing capabilities, even if this complex organizing information will be available after the user has already performed the initial organizing process. For example, in one of these embodiments, task 540 may be a background scheduler for organizing tasks, such as described below with reference to method 600, which were not completed during the execution of method 600. In other embodiments, task 540 may be omitted.
In some embodiments of method 500, less, more and/or different tasks than shown in Figure 5 may be performed.
In some embodiments, each member of a sharing or backup group and/or media server 130 independently waits for and recognizes a network session trigger (i.e. each independently performs task 510), where the network session trigger may be different for different members of the group. Examples of network session triggers for any media handler and/or server 130 include inter-alia automatic triggers to initiate (e.g. elapsed period, time(s) of day, new content, coupling/recoupling, other appropriate event), manual triggers to initiate (e.g. user request) and/or automatic triggers to participate in session initiated by other entity (e.g. elapsed time, time(s) of day, recognition of initiation by other). For example, in one embodiment where media server 130 assists in the session, each dedicated media handler in the sharing group or backup group may independently perform method 500, with either the media handler or media server 130 initiating a network session between that dedicated media handler and media server 130. As another example, in embodiments where backup/sharing is performed peer-to-peer, any appropriate scheme for spreading the content may be used. For example, in one embodiment for peer-to-peer, each peer may know only a subset of other peers in the sharing/backup group with which the peer communicates and exchanges content. The concatenation of all of the subsets forms the overall sharing/backup groups.
Figure 6 illustrates a flow chart of a method 600 executed by a dedicated media handler, according to an embodiment of the present invention. For example, in one embodiment, method 500 may be executed by dedicated media handler 210 or any appropriate dedicated media handler. In one embodiment, method 600 comprises tasks that a dedicated media handler performs independently of other media handlers. Method 600 comprises one or more tasks which can be performed in any suitable order and/or simultaneously with other tasks, depending on the embodiment. One or more of the tasks described below as being included in process 600 may be omitted in other embodiments, hi other embodiments of process 600, there may be more, less and/or different tasks than illustrated in Figure 6.
In some embodiments, in task 630, the dedicated media handler determines how to proceed with the detected new content from a source or virtual media handler, and/or with a detected virtual media handler. In some embodiments, in task 635, the dedicated media handler determines how to proceed with the new content received during a network session. In some of these embodiments, one or more tasks may subsequently be performed based on the determination of task 630 and/or 635, including any of the following, inter-alia: import from source (task 632), display (task 631), handle virtual media handler (task 633), store locally (task 634), organize (any of tasks 640 to 670). For example, in one of these embodiments, if a locally coupled virtual media handler is detected, at least task 633 is initiated. As another example, in one of these embodiments, as explained with reference to Figure 5, based on the detected type and/or identity of the source of the content, the dedicated media handler may decide which tasks to execute. As another example, in one of these embodiments, as explained with reference to Figure 5, for new content received during a network session, the decision on which tasks to execute may be based on from where the content originated and/or which network session task relates to the content. As another example, in one of these embodiments, additionally or alternatively the user may provide input via the user interface on which tasks to execute. In one embodiment, in task 631, the content is displayed. In one embodiment, in task 632, the dedicated media handler imports new content from a source. Depending on the embodiment, all new content may be imported or a user may determine which content to be imported. In one embodiment, in task 633, the dedicated media handler imports and/or exports digital content, metadata and/or configuration from and/or to a virtual media handler as described above with reference to Figure 4 A or 4B.
In one embodiment, in task 634, the dedicated media handler stores the digital content. In one embodiment, in task 640, the dedicated media handler displays the new content so that the content can be organized by the user. Depending on the embodiment, there are a few possible display views. For example, in some cases a summary of the new content may be displayed such that a user will be able to organize it easily. In some embodiments, in task 650, the dedicated media handler performs automatic tagging of content and/or auto clustering. La one of these embodiments, the information automatically generated by the automatic tagging and/or clustering is provided to the user in manual organization task 660 so that the user can approve or disapprove of the information. In one embodiment, in task 660, the dedicated media handler receives input from the user regarding manual tagging and clustering of the content.
In some embodiments, in task 670, the dedicated media handler instructs the user to store the organized content in an album structure for easy retrieval. For example in one of these embodiments, in task 670, the dedicated media will suggest possible relevant existing albums to the user that seem to be related to the new content.
More details on organizing tasks (640 to 670) have been described above, inter-alia, with reference to organizing logic 215. In some embodiments of process 600, less, more and/or different tasks may be performed.
Some embodiments of a network interface of a dedicated media handler are now presented.
Figure 7 illustrates a network interface of a dedicated media handler, according to an embodiment of the present invention, hi one embodiment, the network interface illustrated in Figure 7 is network interface 240 of dedicated media handler 210 whereas in other embodiments the illustrated network interface may be the network interface of any appropriate dedicated media handler. For example in one of these other embodiments, the dedicated media handler of Figure 7 includes a network interface, a display interface and/or a source interface, sharing logic, a local storage, and optionally other modules.
In the illustrated embodiment, network interface 740 includes the following modules: a content codec 742, a network PHY 741, and a network status management module 743. Each module illustrated in Figure 7 may be made up of any combination of software, hardware and/or firmware which performs the functions of the module as defined and explained herein. In some embodiments, network interface 740 may have additional functionality, less functionality and/or different functionality than described herein. In some embodiments the functionality described for network interface 740 may be divided into less, more and/or different modules than shown in Figure 7, and/or the functionality of network interface 740 may be divided differently among the modules of Figure 7.
In some embodiments, network PHY 741 (physical layer, e.g. modem) handles the characteristics of network 120, for example, processing content sent or received by the dedicated media handler via network 120. m some embodiments, content is also decoded (or coded) by the content codec
742 which translates between the digital content in the dedicated media handler and the content that is received from (or sent to) network 120.
In some embodiments, network status management module 743 monitors and configures the network status. In some of these embodiments, network status management module 743 is responsible for detecting the availability and parameters of the network 120 and in some cases even initiates network coupling according to some pre-defined logic. hi some embodiments, network status management module 743 is responsible for recognizing a network session trigger (see for example stage 510 of method 500). In these embodiments, network status management module 743 may be capable of initiating outgoing network activity and/or recognizing incoming network activity. In some of these embodiments, network status management module 743 initiates a network connection on a periodic basis, at specific times during the day, when there is new content from a source or virtual media handler, upon user request at particular times of day, upon user request, upon network coupling/recoupling, and/or due to any other appropriate event. In some of these embodiments, additionally or alternatively, management module 743 monitors network 120 and therefore detects incoming network activity session.
In one embodiment, after recognizing a network session trigger, if there is content to be received or sent from the dedicated media handler during the network session, management module 743 handles the communication session for the content transfer. In one embodiment, during the network session, management module 743 communicates via the network 120 with other media handlers (with or without the assistance of media server 130) and/or communicates with media server 130. In one embodiment, at the end of the session, management module 743 is responsible for decoupling network interface 740 from network 120.
As illustrated in the embodiment of Figure 7, network 120 includes at least an analog and/or digital circuit switched telephone network 722 directly or indirectly interfacing with the dedicated media handler. In some embodiments, network PHY (aka physical layer) 741 of network interface 740 is coupled to a telephone line of circuit switched telephone network 722 either directly or via an (optional) wireless PHY 750. In some of these embodiments with wireless PHY 750, the wireless coupling between network PHY 741 and wireless PHY 750 allows the dedicated media handler to be coupled to PSTN 722, even though the PSTN connection is not close to the dedicated media handler.
In one embodiment with wireless PHY 750, wireless PHY 750 can sense the status of additional phone equipment which is coupled to the same phone line of circuit switched telephone network 722, for example by sensing the DC voltage changes on the phone line. In some embodiments with wireless PHY 75O5 wireless PHY 750 shares a circuit switched telephone network phone line with phone equipment. In some of these embodiments, wireless PHY 550 controls the coupling and decoupling of parallel phone equipment, thereby controlling whether or not the phone equipment will ring. In one of these embodiments, caller ID information can be retrieved between the first and second ring and if necessary the caller ID information can be retransmitted on the line by network PHY 741. hi one embodiment of wireless PHY 750, additional status information and control may be communicated over the wireless connection in addition to input to and output from network interface 740.
Depending on the embodiment with wireless PHY 750, wireless PHY 750 may provide an analog wireless link or a digital wireless link with the dedicated media handler.
In some embodiments with wireless PHY 750, wireless PHY 750 comprises an analog FM (frequency modulation) wireless transceiver which is coupled to an analog telephone line of circuit switched telephone network 722 (i.e. to a PSTN line), hi these embodiments, network PHY 741 comprises, inter-alia, one or more analog FM transceivers and a dial-up modem (e.g. V.90 or V.34) including the needed analog to digital conversions, hi one of these embodiments, the FM wireless link allows the dial-up modem(s) in network PHY 741 to communicate via the analog phone line as if the dial-up modem(s) were coupled directly to the analog phone line. In one of these embodiments, network PHY 741 can detect the analog status of the telephone line and also control the telephone line, by using a command and control protocol over analog FM between network PHY 741 and the wireless PHY 750. In one of these embodiments, wireless PHY 750 handles the analog FM transmission and the analog interfacing to the analog phone line including control and sense of the line status (e.g. on-hook, off-hook).
In some embodiments, the same concept of a wireless coupling can be used but with the wireless technology based on digital transmission. For example, in some of these embodiments, the interface to the analog phone line includes a DAC (digital to analog converter) and ADC (analog to digital converter) which translate between the analog nature of the phone line and the digital wireless link.
As another example, in some embodiments, there is a digital wireless coupling between network PHY 741 and wireless PHY 750. In these embodiments one or more dial-up modem(s) (e.g. V.90 or V.34), instead of being part of network
PHY 741, is/are part of the interface to the analog phone line, and therefore demodulated digital content is relayed by the wireless PHY 750 to network PHY 741.
In some embodiments with more than one dial up modem (for example in network PHY 741 or as part of the interface to the analog phone line), the dial up modems may in some cases be different, for example fast setup time versus high bit rate. In some of these embodiments, a fast setup time modem is more power efficient than a high bit rate modem.
Assuming that there is instead a digital line of circuit switched telephone network 722, such as for example an ISDN line, in some embodiments standard data transfer services may be used instead of a dial up analog modem. In one of these embodiments, there is a digital wireless coupling between network PHY 741 and wireless PHY 750.
In one embodiment, network interface 740 may also be used in a real time pairing process between the dedicated media handler which includes network interface 740 and another media handler when the two users of the media handlers are communicating in a voice call as described above via a telephone network which is circuit switched telephone network 722.
In some embodiments, network interface 740 may additionally or alternatively include one or more cable modems for coupling to a cable television network and/or means for coupling to a cellular telephone network using a cellular modem (either circuit switched data or packet switched data). For example, in one of these embodiments, a cable modem in network interface 740 couples to the cable television server infrastructure in order to enable communication via the Internet. As another example, in one of these embodiments, a cellular modem in network interface 740 couples to the cellular infrastructure and possibly its Internet gateway in order to enable a communication via the cellular network infrastructure and/or the Internet. Continuing with the example, the cellular modem in this embodiment can use circuit switched data services (e.g. CSD or HSCSD in GSM networks) or packet switched data services (e.g. GPRS, UMTS). As another example, in one embodiment network interface 740 may additionally or alternatively include a Blue-tooth interface capable of coupling "to a Bluetooth-enabled cellular handset (for example possessed by the same user as that of the dedicated media handler). In this embodiment, network interface 740, using a pre-configured network access configuration and the cellular handset as a modem, reaches the cellular infrastructure and possibly its Internet gateway in order to enable communication via the cellular network infrastructure or the Internet.
Figure 8 is a flow chart of a method 800 for a dedicated media handler initiating a network session, according to an embodiment of the present invention. Method 800, for example, may be performed by a dedicated media handler coupled to a telephone network (for example, cellular, or circuit switched such as PSTN, ISDN, E 1/Tl5 etc). The dedicated media handler which performs method 800 may be dedicated media handler 210 or any appropriate dedicated media handler. In one embodiment, some or all of method 800 (for example, tasks 810 to 860 and 890) correspond to task 510 in method 500. Each task in method 800 may be performed in any suitable order and/or simultaneously with other tasks. One or more of the tasks described below as being included in process 800 may be omitted in other embodiments. In other embodiments of process 800, there may be more, less and/or different tasks than illustrated in Figure 8.
In one embodiment, in task 810, the dedicated media handler waits for a trigger to initiate the network session, for example a user request and/or any automatic trigger such as a periodic timer, a specific time of the day (e.g. 2am when no one is using the phone), new content received from a source or virtual media handler, upon network coupling/recoupling and/or any appropriate other appropriate event.
In some embodiments, in task 820, the dedicated media handler checks the availability status of the link (where link can be for example wired "line" and/or wireless) to the telephone network before and during the initiation time. In one of these embodiments, only when the link has been available for at least a predetermined amount of time, it is possible to proceed. In this embodiment, in case of periodic initialization or time-of-day initiation, if the link has not been available for at least a predetermined amount of time, then the network session initiation attempt is considered to be unsuccessful and task 810 is re-started at the next relevant time.
If the phone link is available, then in one embodiment, in task 830, the dedicated media handler places the phone link "off-hook" and dials the target number. In one embodiment, the telephone number is associated with media server 130. In another embodiment, where there is peer-to-peer communication, the telephone 001064
77 number can be the telephone number of another entity (for example media handler, public gallery etc), for example which is known to the dedicated media handler and possibly which is in a group with the dedicated media handler. In this embodiment, the addressing may be performed by the account logic of the dedicated media handler using the telephone numbers as the network IDs.
Assuming embodiments where the telephone number is associated with media server 130, in some of these embodiments, the phone number is configured in the dedicated media handler and gets updated in every network session if there is a need. Specifically, in one of these embodiments, the factory-default number is a nation-wide number and after the first network session, this number gets updated to the local number according to the location information that is updated on media server 130 for the dedicated media handler, for example based on the area code of the dedicated media handler (which media server 130 can determine from caller ID) or based on user input (for example input of the zip code of the dedicated media handler). In some embodiment where the target number is associated with media server
130, the target number can be for example one of a bank of numbers which correspond to server 130. In some of these embodiments, if the target phone number is busy or not available, then alternative numbers will be available including the original factory-default number. In one of these embodiments, the alternative numbers will be configured in various media handlers in a different order, for example in a different order for media handlers with the same time of day initiation.
In some embodiments, in task 840, the dedicated media handler checks the call status, hi some of these embodiments, if the call is unsuccessful (e.g. link "busy", link error), then call dial task 830 is re-initiated. However, in some other embodiments, for 1064
78 example after some predefined timeout, task 810 may instead be re-executed for the next relevant session initiation.
In some embodiments, if the call is not answered, then task 810 is re-executed. For example in some of these embodiments where the call is to media server 130, the call may not be answered if the network (or media server 130) is not available or there is no new content to be transferred.
If the call is answered, then in some embodiments, in task 850, the dedicated media handler sends the media handler ID (identification) over the link in order for the other communicating party (for example media server 130 or the other entity) to have the user profile information. In one of these embodiments the media handler ID is the telephone number.
In some embodiments assuming the session is with media server 130, in task 860, the dedicated media handler retrieves its own user profile information (which may possibly have been changed by media server 130) via network 120. In these embodiments, therefore, the dedicated media handler gets updated on a periodic basis and media server 130, having the ability to change the user profile of any media handler, can provide a centric management of all media handlers. In some of these embodiments, the user profile is combined of configuration parameters that are determined by the account logic 342 of the media server (see Figure 3) and either originate from the senders of content or by a global configuration of media server 130. In one of these embodiments, the user profile information contains information related to the phone networking behavior (such as period of dialing, target number to dial etc.). In one of these embodiments the configuration parameters will be used in the current communication session and will be used for future communication sessions and for other characteristics of the dedicated media handler (e.g. viewing parameters). In one of these embodiments, the dedicated media handler can alternatively or additionally send information to media server 130 that contains content requests - either specific content or some other information that is used by media server 130 in order to find relevant content for the dedicated media handler (e.g. preferred type of music).
In some embodiments with peer-to-peer network, the dedicated media handler may retrieve the user profile from a central database that is distributed among the peers, stores all user profiles, and possibly has keys (see for example "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications", referenced above) The network session being established, in some embodiments task 870 represents the handling of the digital content (corresponding for example to any of tasks 511, 512, 513 and/or 514) and/or user tasks (task 515) during the network session.
For example, in some of these embodiments, in task 870 content is transferred between the dedicated media handler and media server 130 or between the dedicated media handler and the other entity. In one of these embodiments, the content transferred is new content and therefore the communication session starts by determining the list of new content items that need to be transferred. Continuing with the example, the session is between the dedicated media handler and media server 130, in this embodiment some of the items are new items on media server 130 to be transferred to the dedicated media handler and some of the items are new items on the dedicated media handler to be transferred to media server 130, for example for networking purposes such as sharing, backup and distribution, hi this embodiment, if there is no new content, no content will be transferred during task 870. In some embodiments, method 800 may be performed by a low bit rate modem (with fast setup time) until detecting that there is a new content to be transferred while performing task 870. In some cases, a fast setup time modem uses the network 120 more effectively and can also save power consumption of the modem in case it is powered from a limited capacity power source (such as a battery). In one of these embodiments, the low bit rate modem can be implemented as a separate modem hardware that is more power consumption efficient relative to the high bit rate modem. If one of these embodiments, if there is no new content, then task 880 will follow until the end of process 800. Otherwise in this embodiment if there is new content, the content transfer will be performed by a high bit rate modem (with higher setup time), for example after hanging up with a low bit rate modem and reiterating to perform task 820, 830, 840, 850 and then 870 with the high bit rate modem In this embodiment, the two calls with different bit rates may be considered part of the same network session. In one embodiment where the network session is with media server 130, content that is uploaded from the media handler may be trans-coded and/or reduced to the required format and quality, as required by the media server (as part of the configuration sent during task 860).For example, media server 130 may restrict the content file size and therefore require the media handler to send a reduced format content.
In one embodiment, in task 880, the dedicated media handler decouples from the phone network (hangs up) after the session ends, for example due to the completion of content transfer or due to abnormal link conditions.
In some embodiments, in task 890, the dedicated media handler monitors the status of the link to the phone network from the time of "off-hook" state, hi some of these embodiments, the aim of task 890 is to detect whether there is a reason for discontinuing the call. Examples of possible reasons include, inter-alia: remote discontinuation indication from media server 130 or the other entity, detection of low quality phone link status, and/or sensing that a user is trying to use phone equipment which shares the telephone link with the dedicated media handler. Continuing with the example, the detection of phone equipment off-hook (i.e. a user trying to use the phone equipment) may in one embodiment be based on changes in the DC level of the phone link (which usually should be steady during the phone call). If a reason for discontinuing is detected, in one embodiment, the dedicated media handler decouples from the phone network (hangs up) in task 880.
Figure 9 is a flow chart of a method 900 for a dedicated media handler to participate in a network session initiated by media server 130 or another entity (e.g. media handler, public gallery, etc), according to an embodiment of the present invention. Method 900 for example, may be performed by a dedicated media handler coupled to a telephone network (for example, cellular, or circuit switched such as PST, ISDN, El/Tl, etc). The dedicated media handler which performs method 900 may be dedicated media handler 210 or any appropriate dedicated media handler. In one embodiment some or all of method 900 (for example, tasks 910 to 970 and 995) correspond to task 510 in method 500. Each task in method 900 may be performed in any suitable order and/or simultaneously with other tasks. One or more of the tasks described below as being included in process 900 may be omitted in other embodiments, hi other embodiments of process 900, there may be different, more or fewer tasks than illustrated in Figure 9. hi some embodiments, in tasks 910 and 920, the dedicated media handler waits for a network session trigger. For example, in one of these embodiments, in task 910 the dedicated media handler waits for a relevant time for receiving communication which may be defined according to a periodic timer or a specific time of the day (e.g. 2am when no one is using the phone). As another example, in one of these embodiments, task 910 is omitted because any time is appropriate. This task is optional and in some embodiments any time is appropriate. In task 920, in some embodiments, the dedicated media handler waits for a phone ring.
If a phone ring is detected, then in some embodiments, the dedicated media handler monitors the call. In one embodiment where the phone link has caller ID service, phone equipment is normally decoupled from the phone link such that the first ring is not heard (unless there are other phone extensions).
In some embodiments, in task 930, the dedicated media handler detects if a caller ID information is present (usually, between the first ring and the second ring). In one of these embodiments, if caller ID is present, then task 940 is executed. In one embodiment where caller ID is not present, the dedicated media handler waits for a predetermined number of rings that the phone equipment has not answered and then answers the call in task 950, for example in the same manner that a fax machine works.
In task 940, in some embodiments, the dedicated media handler checks the caller ID information against the list of numbers that identify media server 130 and/or checks caller ID information against a list of numbers that identify other relevant entities (for example members of sharing/backup group and/or entities known to the account logic of the dedicated media handler). In some of these embodiments, media server uses 130 local PoPs (Point of Presence) in order to have local phone calls between media server 130 and the dedicated media handler. In one of these embodiments, the list of media server phone numbers is configured in the dedicated media handler and gets updated whenever there is a phone communication (network) session between the media server and the media handler, hi another of these embodiments, in order to make sure that dedicated media handler will be able to receive calls from media server 130 even if the list of relevant caller ID numbers is not configured, the dedicated media handler has a single number that is hard coded and media server 130 may use this number if it cannot contact the dedicated media handler via local phone numbers related to media server 130.
If the caller ID does not correspond to any number on the list of numbers (i.e. no relevant caller ID)5 then in some embodiments where the phone equipment is normally decoupled as explained above, then the phone equipment is recoupled to the phone link and receives the following rings (for example, in one embodiment from the second ring on). In one of these embodiments, the dedicated media handler passes the caller ID to the phone equipment whereas in another embodiment the caller ID is not passed to the phone equipment. Method 900 then reiterates to task 910. hi one embodiment where the caller ID matches a number on the list, method
900 proceeds to task 950.
Alternatively, in some embodiments where the caller ID matches a number on the list, method 900 is terminated after the caller ID of a media server is detected or later in method 900, for example after task 970. In some of these embodiments, the user is notified that new content is waiting for him to retrieve (e.g. via some indication on the user interface of the dedicated media handler itself or by some indication on an internal or external display coupled to the dedicated media handler). In some of these embodiments, the content is retrieved by method 800, automatically or upon request of the user, in a separate call to the initiator (caller) of method 900. Therefore, in these embodiments the dedicated media handler implements both method 800 for retrieval of content in a call initiated by the dedicated media handler and method 900 (partially) for detecting new content in a call initiated by media server 130 or another entity, and therefore the two calls may be considered part of the same network session. In one of these embodiments (in which method 900 is performed until at least task 970 before hanging up), the first call in method 900 may be performed by a low bit rate modem (with fast setup time), for example because a fast setup time modem uses the network 120 more effectively and can also save power consumption of the modem in case it is powered from a limited capacity power source (such as a battery). In this embodiment the low bit rate modem can be implemented as a separate modem hardware that is more power consumption efficient relative to the high bit rate modem. In this embodiment, the second call in at least part of method 800 (for example tasks 820, 830, 840, 850 and 870) is performed by a high bit rate modem with higher setup time.
Assuming that method 900 proceeds to task 950, then in one embodiment, in task 950, the dedicated media handler completes the phone line circuit (off-hook state).
In one embodiment, in task 960, the dedicated media handlers checks if a tone is detected from media server 130 or from another relevant entity which indicates a network session, hi this embodiment, in some cases the check may be necessary in order to ensure that indeed the dedicated media handler has answered a relevant call and there is not a false alarm. In another embodiment, this check may be skipped.
In some embodiments, if the tone was not detected, then the dedicated media handler decouples from the phone network (hangs up) in task 990. In one of these embodiments, in some cases in task 965, the dedicated media handler lengthens any time delay that the dedicated media handler may be using in task 910 such that if within the time lengthened time delay after decoupling there is another phone call, the dedicated media handler will not answer in order to lower the probability of consecutive false alarms.
Assuming the tone is detected and the session is with media server 130, in some embodiments in task 970, the dedicated media handler retrieves its own user profile information (which may possibly have been changed by media server 130) via network 120. In these embodiments, therefore, the dedicated media handler gets updated on a periodic basis and media server 130, having the ability to change the user profile of any media handler, can provide a centric management of all media handlers. In some of these embodiments, the user profile is combined of configuration parameters that are determined by the account logic 342 of the media server (see Figure 3) and either originate from the senders of content or by a global configuration of media server 130. In one of these embodiments, the user profile information contains information related to the phone networking behavior (such as period of dialing, target number to dial etc.). In one of these embodiments the configuration parameters will be used in the current communication session and will be used for future communication sessions and for other characteristics of the dedicated media handler (e.g. viewing parameters). In one of these embodiments, the dedicated media handler can alternatively or additionally send information to media server 130 that contains content requests — either specific content or some other information that is used by media server 130 in order to find relevant content for the dedicated media handler (e.g. preferred type of music).
In some embodiments with peer-to-peer network, the dedicated media handler may retrieve the user profile from a central database that is distributed among the peers, stores all user profiles, and possibly has keys (see for example "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications", referenced above)
The network session being established, in some embodiment task 980 represents the handling of the digital content (corresponding for example to any of tasks 511, 512, 513 and/or 514) and/or user tasks (task 515) during the network session.
For example, in some of these embodiments, in task 980 content is transferred between the dedicated media handler and media server 130 or between the dedicated media handler and the other entity. In one of these embodiments, the content transferred is new content and therefore the communication session starts by determining the list of new content items that need to be transferred. Continuing with the example, assuming the session is between the dedicated media handler and media server 130, in this embodiment some of the items are new items on media server 130 to be transferred to the dedicated media handler and some of the items are new items on the dedicated media handler to be transferred to media server 130, for example for networking purposes such as sharing, backup and distribution, hi this embodiment, if there is no new content, no content will be transferred during task 980.
In some embodiments, method 900 may be performed by a low bit rate modem (with fast setup time) until detecting that there is a new content to be transferred while performing task 980. In some cases, a fast setup time modem uses the network 120 more effectively and can also save power consumption of the modem in case it is powered from a limited capacity power source (such as a battery). In one of these embodiments, the low bit rate modem can be implemented as a separate modem hardware that is more power consumption efficient relative to the high bit rate modem, hi one of these embodiments, if there is no new content, then task 990 will follow until the end of process 900. Otherwise in this embodiment if there is new content, the content transfer will be performed by a high bit rate modem (with higher setup time), for example after hanging up with a low bit rate modem and performing method 800 (i.e. initiating a second call) with a high bit rate modem (optionally skipping task 860 and/or the re-determination of the list of new content), or for example after hanging up with a low bit rate modem, reiterating to task 910 or 920 and answering a second call with the high bit rate modem (optionally skipping task 970 and/or the re-determination of the list of new content). In this embodiment, the two calls with different bit rates may be considered part of the same network session. Li one embodiment where the network session is with media server 130, content that is uploaded from the media handler may be trans-coded and/or reduced to the required format and quality, as required by the media server, for example (as part of the configuration sent during task 970). For example, media server 130 may restrict the content file size and therefore require the dedicated media handler to send a reduced format. hi one embodiment, in Task 990, the dedicated media handler decouples from the phone network (hangs up) after the session ends, for example due to completion of content transfer or due to abnormal link conditions. hi some embodiments, in task 995, the dedicated media handler monitors the status of the link to the phone network from the time of "off-hook" state, hi some of these embodiments, the aim of task 995 is to detect whether there is a reason for discontinuing the call. Examples of possible reasons include, inter-alia: remote discontinuation indication from media server 130 or the other entity, detection of low quality phone link status, and/or sensing that a user is trying to use phone equipment which shares the telephone link with the dedicated media handler. Continuing with the example, the detection of phone equipment off-hook (i.e. a user trying to use the phone equipment) may in one embodiment be based on changes in the DC level of the phone link (which usually should be steady during the phone call). If a reason for discontinuing is detected, in one embodiment, the dedicated media handler decouples from the phone network (hangs up) in task 990.
Figure 10 illustrates the networking architecture of the described network 120 which is composed of various components and interfaces, according to an embodiment of the present invention. In some embodiments the network 120 may include only some of the described components and/or interfaces, additional components/interfaces, and/or different components/interfaces.
In the illustrated embodiment, a dedicated media handler, for example dedicated media handler 210 or any other appropriate dedicated media handler, is coupled via a circuit switched phone link to the network 120 and specifically to a circuit switched telephone network 1010 which is part of network 120. In the illustrated embodiment, additionally or alternatively, the dedicated media handler is coupled to cellular network 1030.
In one embodiment circuit switched telephone network 1010 provides analog phone line services (PSTN) as well as digital ISDN (BRI and PRI) and digital trunk services (El/Tl). In one embodiment, circuit switched telephone network 1010 interfaces with a cellular network 1030 which provides services to cellular handsets such as circuit switched voice services, circuit switched data service and packet switched data services. In one embodiment, circuit switched telephone network 1010 and/or cellular network 1030 couples to an ISP (Internet Service Provider) 1050 which provides dial-up modem terminations for landline or cellular phone users that wish to connect to the WWW network 1020. Li one embodiment, the circuit switched telephone network 1010 is connected by an IP gateway 1040 to WWW network 1020 in order to provide the standard telephone services over IP via WWW network 820 such as VoIP (Voice over IP), FoIP (Fax over IP) and MoIP (Modem over IP).
Depending on the embodiment, media server 130 can be coupled to various components included in network 120. In some embodiments, media server 130 is coupled to WWW network 1020 which provides the web connectivity for users of PCs and which is coupled to other networks via IP gateway 1040. hi some embodiments, media server 130 is coupled to circuit switched telephone network 810 and/or to cellular network 830 in order to communicate with the dedicated media handler.
In one embodiment, the dedicated media handler may initiate a local call to media server 130 via either circuit switched telephone network 1010 or cellular network 1030 by dialing a dial-in number of a local ISP 1050 (assuming the ISP has local dial-in numbers) which eventually couples the dedicated media handler to media server 130 via the WWW network 1020 after demodulating the dial-up modem (e.g. V.34 or V.90 for the case of an analog phone line) by a modem-bank comprised in ISP 1050. In another embodiment the dedicated media handler initiates a call to a toll- free global number instead of a local call which is routed by circuit switched telephone network 1010 or cellular network 1030 services to a local modem-bank of ISP 1050. In another embodiment the dedicated media handler initiates a call to a localized service dial-in global number which routes the call to specific targets and still the phone call cost for the user of the dedicated media handler is considered the same as a local call. In the latter embodiment, the modem-bank may be located in fewer locations and there may not be a need to have a modem-bank in each local area code. . _ In some embodiments, the dedicated media handler initiates a call to a premium number service in which case the user of the dedicated media handler pays a premium for the service of connecting to media server 130. In some of these embodiments, the premium number is a global number and can route to either one of the few locations in which there is a modem bank or to the modem-bank in the local area code of the dedicated media handler.
In some embodiments, the dedicated media handler may initiate a call to a premium number service for the sole purpose of charging the user of the dedicated media handler, in which case the main reason for this phone call is the charging itself and any network session with media server 130 can be omitted if not necessary. In some embodiments, premium rate charging can charge pre-paid or non pre-paid accounts. For example, the charges may be related to backup, sharing or other services.
In some embodiments, IP gateway 1040 may be used in order to facilitate communication between the dial-up modem of the dedicated media handler and the media server 130 via the WWW network 820. In some of these embodiments, a modem-bank can be implemented in the software of media server 130, since the modulated data can be carried over IP bi-directionally and therefore the modulated data may be terminated bi-directionally by media server 130. In one of these embodiments, media server 130 can handle the modulated data by hardware and/or by software since the data is IP protocol data. In one of these embodiments the analog waveforms related to the dial-up modem data from the dedicated media handler (e.g. V.34 or V.90) is relayed on both sides as PCM waveforms (for example in accordance with standard. In one of these embodiments, on the IP side a QoS (Quality of Service) control may be needed (e.g. packet loss, packet jitter) in order to ensure a reliable 1064
91 relay. In another of these embodiments the dial up modem of the dedicated media handler is additionally or alternatively bridged by a modem-bank in the IP gateway 1040 (such as the V.150 standard).
In one embodiment an analog call (i.e. via a PSTN line) originating from the dedicated media handler can target a digital ISDN line and be defined as a data call, in which case circuit switched telephone network 1010 will perform the modem termination by a modem-bank. The ISDN lines containing the extracted data can be connected to ISP 1050 or to the WWW (where the modem-bank serves the function of the IP gateway 1040). hi some embodiments an analog call originating from the dedicated media handler (i.e. via a PSTN line) can target a cellular handset number and be defined as a data call. In some of these embodiments, cellular network 1030 can perform the modem termination by a modem-bank contained in a module called IWF (Inter- Working Function). For example, cellular network 1030 can route the data from cellular network 1030 to the WWW network 1020 either directly or through IP gateway 1040. hi another of these embodiment, the data may be terminated by a cellular handset-bank that is comprised in ISP 1050 which routes the data directly to the WWW network 1020.
In some embodiments a modem may be implemented by the fax standard by encapsulating the data over a fax image data container, assuming the dedicated media handler has a fax modem as part of its network interface. In one embodiment, where network 120 includes an IP protocol based network, the content can be sent as fax using fax-to-email service and/or received as fax using email-to-fax service.
Although the dedicated media handler is shown in Figure 10 coupled to circuit switched telephone network 1010 and cellular network 1030, it should be evident to the reader from the description above that in other embodiments, the dedicated media handler may alternatively or additionally couple to other types of networks forming part of network 120. For example, the network interface of the dedicated media handler may alternatively or additionally include means to couple to a cable network, etc. In other embodiments, the dedicated media handler may only couple to one of circuit switched telephone network 1010 and cellular network 1030.
It will also be understood that some embodiments of the invention may include a suitably programmed computer. Likewise, some embodiments of the invention contemplate a computer program being readable by a computer for executing one or more embodiments of methods of the invention. Some embodiments of the invention contemplate a machine-readable memory tangibly embodying a program of instructions executable by the machine for executing one or more embodiments of methods of the invention.
While the invention has been shown and described with respect to particular embodiments, it is not thus limited. Numerous modifications, changes and improvements within the scope of the invention will now occur to the reader.

Claims

CLAIMS:
1. A dedicated media handler for handling digital content, comprising: a network interface configured to couple to a network in order to transmit or receive digital content via said network ; and logic configured to perform an automatic sharing operation, wherein digital content associated with at least one other media handler is received via said network and shared with said dedicated media handler, or digital content associated with said dedicated media handler is transmitted via said network for sharing with at least one other media handler.
2. The dedicated media handler of claim 1, wherein said logic is further configured to automatically organize said digital content.
3. The dedicated media handler of claim I5 further comprising: a display interface configured to couple to a display so as to display said digital content.
4. The dedicated media handler of claim 3, wherein said display is a television.
5. The dedicated media handler of claim 3, wherein said display interface is based on a mass storage device interface such that said dedicated media handler provides content to said display as if said dedicated media handler is a mass storage device.
6. The dedicated media handler of claim 5, wherein said mass storage device interface is based on an SD card or a USB device
7. The dedicated media handler of claim 1, wherein said digital content includes at least one selected from a group comprising: digital image and digital video.
8. The dedicated media handler of claim 1, wherein said digital content is personal digital content.
9. The dedicated media handler of claim 1, wherein said network interface is configured to couple to a public switched telephone network PSTN line which is included in said network.
10. The dedicated media handler of claim 9, wherein said network interface is configured to couple to said PSTN telephone line via a wireless PHY.
11. The dedicated media handler of claim 10, wherein said network interface is configured to couple via a digital wireless coupling to said wireless PHY, and wherein a dial up modem is configured to couple to said PSTN telephone line, so that demodulated digital content is relayed by said wireless PHY to said network interface.
12. The dedicated media handler of claim 9, wherein said network interface includes an analog dial-up modem configured to couple to said PSTN telephone line, and wherein said network further includes an Internet Protocol IP based network, a cellular network, and an Inter- Working Function IWF modem bank coupling between said cellular network and said IP based network, and wherein said analog dial up modem is used to call said cellular network via said PSTN telephone line.
13. The dedicated media handler of claim 1, wherein said network interface is configured to couple to a cellular telephone network which is included in said network.
14. The dedicated media handler of claim 10, wherein said dedicated media handler is configured to wirelessly couple to a cellular handset which functions as a cellular modem for coupling to said cellular network.
15. The dedicated media handler of claim 1, wherein said network interface includes a cable modem which is configured to couple to a cable television network which is included in said network.
16. The dedicated media handler of claim 1, wherein said dedicated media handler is mobile.
17. The dedicated media handler of claim 1, wherein said dedicated media handler is a set-top box.
18. The dedicated media handler of claim 1, further comprising: means for instant messaging including presence information to another media handler.
19. The dedicated media handler of claim 1, wherein said logic is configured to share digital content of a predefined content scope.
20. The dedicated media handler of claim 1, further comprising a user interface configured to receive user input regarding said automatic sharing operation.
21. A dedicated media handler for handling digital content, comprising: a network interface configured to couple to a network in order to transmit or receive digital content via said network ; and logic configured to perform an automatic backup operation, wherein digital content associated with at least one other media handler is received via said network and backed up on said dedicated media handler, or digital content associated with said dedicated media handler is transmitted via said network for backup on at least one other media handler.
22. The dedicated media handler of claim 21, wherein said logic is further configured to automatically organize said digital content.
23. The dedicated media handler of claim 21, further comprising: a display interface configured to couple to a display so as to display said digital content.
24. The dedicated media handler of claim 23, wherein said display interface is based on a mass storage device interface such that said dedicated media handler provides content to said display as if said dedicated media handler is a mass storage device.
25. The dedicated media handler of claim 24, wherein said mass storage device interface is based on an SD card or a USB device
26. The dedicated media handler of claim 23, wherein said display is a television.
27. The dedicated media handler of claim 21, wherein said digital content includes at least one selected from a group comprising: digital image and digital video.
28. The dedicated media handler of claim 21, wherein said digital content is personal digital content.
29. The dedicated media handler of claim 21, wherein said network interface is configured to couple to a public switched telephone network PSTN line which is included in said network.
30. The dedicated media handler of claim 29, wherein said network interface is configured to couple to said PSTN telephone line via a wireless PHY.
31. The dedicated media handler of claim 30, wherein said network interface is configured to couple via a digital wireless coupling to said wireless PHY, and wherein a dial up modem is configured to couple to said PSTN telephone line, so that demodulated digital content is relayed by said wireless PHY to said network interface.
32. The dedicated media handler of claim 29, wherein said network interface includes an analog dial-up modem configured to couple to said PSTN telephone line, and wherein said network further includes an Internet Protocol IP based network, a cellular network, and an Inter- Working Function IWF modem bank coupling between said cellular network and said IP based network, and wherein said analog dial up modem is used to call said cellular network via said PSTN telephone line.
33. The dedicated media handler of claim 21, wherein said network interface is configured to couple to a cellular telephone network which is included in said network.
34. The dedicated media handler of claim 33, wherein said dedicated media handler is configured to wirelessly couple to a cellular handset which functions as a cellular modem for coupling to said cellular network.
35. The dedicated media handler of claim 21, wherein said network interface includes a cable modem which is configured to couple to a cable television network which is included in said network.
36. The dedicated media handler of claim 21 , wherein said dedicated media handler is mobile.
37. The dedicated media handler of claim 21, wherein said dedicated media handler is a set-top box.
38. The dedicated media handler of claim 21, further comprising: means for instant messaging including presence information to another media handler.
39. The dedicated media handler of claim 21, wherein said backup operation causes at least some content on said dedicated media handler that is designated for backup to be backed up on one of said at least one other media handler but not on another of said at least one other media handler such that each portion of digital content on said dedicated media handler which is designated for backup is backed-up on at least one of said at least one other media handler.
40. The dedicated media handler of claim 21, further comprising a user interface configured to receive user input regarding said automatic backup operation.
41. A dedicated media handler for handling digital content, comprising: an interface configured to couple to a source or to a network in order to receive digital content; organizing logic at least occasionally automatically activated when new digital content is received via said interface, configured to organize said received content based on a substance of said content by performing on said received content at least one action selected from a group comprising: auto- tagging and auto-clustering; and a display interface configured to couple to a display so as to display said organized content.
42. The dedicated media handler of claim 41, wherein said display interface is based on a mass storage device interface such that said dedicated media handler provides content to said display as if said dedicated media handler is a mass storage device.
43. The dedicated media handler of claim 42, wherein said mass storage device interface is based on an SD card or a USB device.
44. The dedicated media handler of claim 41, wherein said display interface is further configured to display a game which includes digital content deemed appropriate for said game by said organizing logic.
45. The dedicated media handler of claim 41, wherein said display is a television.
46. The dedicated media handler of claim 41, wherein said dedicated media handler is mobile.
47. The dedicated media handler of claim 41, wherein said dedicated media handler is a set-top box.
48. The dedicated media handler of claim 41, wherein said digital content includes at least one selected from a group comprising: digital image and digital video.
49. The dedicated media handler of claim 41, wherein said digital content is personal digital content.
50. A system for handling digital content, comprising: a plurality of media handlers, including at least one dedicated media handler, which are members of a backup or sharing group; and a network coupled to members of said group; wherein digital content is automatically backed up or shared among said members via said network.
51. The system of claim 50, wherein said network includes a telephone network, and wherein a user interface of a media handler that is a member of said group is configured to control or monitor an interactive voice response IVR customer support via said telephone network when a user of said media handler calls said IVR customer support using phone equipment coupled to said telephone network in parallel with said media handler.
52. The system of claim 50, wherein two users who desire to join said group are associated with two media handlers which are configured to reveal identities to each other by a pairing real time method.
53. The system of claim 52, wherein said network includes a telephone network and wherein two users who desire to join said group are associated with two media handlers coupled to said telephone network in parallel with telephone equipment, said pairing real time method including activating a modem session on at least one of said two media handlers during a phone call between said two users.
54. The system of claim 50, wherein at least one public gallery is a member of said backup or sharing group such that the automatic back up or sharing with said public gallery is managed by a media handler which is a member of said group or by a media server.
55. The system of claim 50, wherein at least one of said members is configured to remove from storage due to a lack of space, digital content which had been backed up among at least two members.
56. The system of claim 50, wherein at least one of said plurality of members is configured to store shared or backed up digital content in a reduced or trans-coded format.
57. The system of claim 50, further comprising at least one user device not in said sharing group configured to receive a distribution of at least part of said shared digital content.
58. The system of claim 50, further comprising a printing service coupled to said network and configured to receive a distribution of at least part of said shared digital content.
59. The system of claim 58, wherein said printing service is further configured to provide feedback relating to a printing process to at least one member of said group associated with said distributed digital content.
60. The system of claim 58, wherein said distribution is performed with assistance of a media server.
61. The system of claim 58, wherein said distribution is performed without assistance of a media server.
62. The system of claim 50, further comprising a public gallery not in said sharing group configured to receive a distribution of at least part of said shared digital content.
63. The system of claim 50, wherein said digital content includes at least one selected from a group comprising: digital image and digital video.
64. The system of claim 50, wherein said digital content is personal digital content.
65. The system of claim 50, wherein said shared digital content is of a predefined scope.
66. The system of claim 50, wherein part of digital content backed up on one member of said backup group is not backed up on another member of said backup group such that each portion of digital content from a member of said backup group which is designated for backup is backed-up on at least one other member of said backup group.
67. The system of claim 50, wherein said backup or sharing is performed without assistance from a media server.
68. The system of claim 67, wherein said network provides addressing services.
69. The system of claim 67, wherein a transmitting member of said group transcodes digital content to fit a receiving member of said group.
70. The system of claim 67, wherein a transmitting member of said group adapts digital content destined for a receiving member of said group based on a characteristic of a display associated with said receiving member.
71. The system of claim 70, wherein said display is a television and said characteristic includes the actual number of "Radio Corporation of America" RCA interfaces connected to the display.
72. The system of claim 50, further comprising: a media server, wherein said backup or sharing is performed with assistance from a media server.
73. The system of claim 72, wherein each of at least one of said plurality of media handlers includes a keyboard user interface for inputting a user name, and wherein at least one key on said keyboard user interface corresponds to a plurality of characters, said media server ensuring that a sequence of keys corresponding to each user name for each media handler is unique.
74. The system of claim 73, wherein said keyboard user interface includes at least one key with a same alphanumeric correspondence as on a telephone user interface.
75. The system of claim 74, wherein said keyboard user interface is a user interface of a telephone coupled to said network in parallel to a media handler member of said group.
76. The system of claim 72, further comprising: a display that is a printer coupled to a media handler which is a member of said group, wherein a printer driver is installed on said media server.
77. The system of claim 50, wherein said network includes a telephone network, and wherein at least one of said plurality of media handlers includes a network interface configured to initiate a phone call to a premium number service in order to pay for received services relating to back-up, sharing or other services provided to a user by said media handler.
78. The system of claim 50, wherein said network includes a telephone network and an Internet Protocol IP based Network, and wherein digital content from a media handler member of said group is encapsulated into a facsimile format and transmitted to a fax-to-email service, or digital content is received by a media handler member of said group from an email to fax service.
79. A media server, comprising: a network interface configured to couple to a network to which a plurality of media handlers that are members of a backup or sharing group are also coupled, wherein at least one of said plurality of media handlers is a dedicated media handler; and logic configured to assist in automatic backup or sharing of digital content via said network among said plurality of members.
80. The media server of claim 79, further comprising: a mass storage which is a member of said backup group.
81. The media server of claim 79, wherein said logic is configured to assist in said automatic backup or sharing by initiating said backup or sharing.
82. The media server of claim 79, wherein said logic is configured to assist in said automatic backup or sharing by providing addressing services.
83. The media server of claim 79, wherein said logic is configured to assist in said automatic backup or sharing by managing signaling between members of said group.
84. The media server of claim 79, wherein said logic is configured to assist in said automatic backup or sharing by relaying digital content between members of said group.
85. The media server of claim 79, wherein said logic is configured to transcode digital content transmitted to a target member of said group so that said transcoded content suits said target member.
86. The media server of claim 79, wherein a member of said group is associated with a display, said logic being configured to adapt transmitted content destined for said member based on a characteristic of said display.
87. The media server of claim 83, wherein said display is a television and said characteristic includes the actual number of "Radio Corporation of America" RCA interfaces connected to the display.
88. The media server of claim 79, wherein said digital content includes at least one selected from a group comprising: digital image and digital video.
89. The media server of claim 79, wherein said digital content is personal digital content.
90. The media server of claim 79, wherein said logic is further configured to assist media handlers in pairing.
91. The media server of claim 90, wherein said logic is configured to provide a code with a predefined expiry to a first media handler which is unique for said first media handler, and to pair between said first media handler and another media handler which has indicated said code to said media server.
92. The media server of claim 91, wherein said logic is configured to generate said code for said first media handler upon request of said first media handler.
93. The media server of claim 91, wherein said logic is configured to periodically generate a code, and wherein said provided code is said last generated code.
94. The media server of claim 90, wherein said logic is configured to periodically provide a first code with predefined expiry which is common to more than one media handler to a first media handler and configured to pair between said first media handler and another media handler which has indicated to said media server a second unique code that said first media handler generated based on said first code and a predefined constant identification of said first media handler.
95. The media server of claim 90, wherein said logic is configured to pair between a first media handler and another media handler which has indicated a user name of said first media handler.
96. The media server of claim 90, wherein said logic is configured to assist two media handlers associated with two users to reveal identities to each other by a pairing real time method.
97. The media server of claim 79, wherein at least one public gallery is a member of said backup or sharing group such that the automatic back up or sharing with said public gallery is managed by a media handler which is a member of said group or by said media server.
98. The media server of claim 79, wherein said logic is further configured to provide digital content with a specific characteristic upon request of a member of said group.
99. Storage for a virtual media handler comprising: a storage configured to receive digital content from a first media handler and to provide said digital content to a second media handler when said virtual media handler is downloaded to or coupled to said second media handler; and at least one storage configured to store at least one item from said first media handler selected from a group comprising: content metadata and configuration, and configured to provide said at least one item to said second media handler when said virtual media handler is downloaded to or coupled to said second media handler, thereby allowing said second media handler to imitate said first media handler in handling said digital content.
100. A method for handling digital content, comprising: a dedicated media handler recognizing a trigger to participate in an automatic sharing or backup session; if there is digital content associated with said dedicated media handler which is designated for sharing or backup but which has not been previously shared with or backed up on at least one other media handler or public gallery belonging to a same sharing or backup group as said dedicated media handler then during said session said dedicated media handler automatically transmitting via a network at least some of said digital content for sharing with or backup on at least one other media handler or public gallery belonging to a same sharing or backup group as said dedicated media handler; and if there is digital content associated with at least one other media handler or public gallery belonging to a same sharing or backup group as said dedicated media handler which is designated for sharing or backup but which has not been previously shared with or backed up on said dedicated media handler, then during said session said dedicated media handler automatically receiving via said network at least some of said digital content associated with at least one media handler or public gallery belonging to a same sharing or backup group as said dedicated media handler for sharing with or backup on said dedicated media handler.
101. The method of claim 100, further comprising: said dedicated media handler joining said sharing or backup group.
102. The method of claim 100, further comprising: said dedicated media handler displaying said digital content on a display.
103. The method of claim 100, further comprising: said dedicated media handler organizing said digital content based on a substance of said digital content by performing on said digital content at least one selected from a group comprising: auto-tagging and auto-clustering.
104. The method of claim 100, wherein at least part of said content associated with said dedicated media handler is from a virtual media handler, further comprising: said dedicated media handler importing from a virtual media handler content and at least one item relating to another media handler selected from a group comprising: metadata and configuration, thereby acquiring an ability to imitate said other media handler.
105. The method of claim 100, wherein said network includes a telephone network, further comprising: said dedicated media handler checking that a predetermined telephone link to said telephone network is available; and said dedicated media handler using said telephone link to dial a target phone number; wherein digital content is received or transmitted via said telephone link.
106. The method of claim 100, wherein said network includes a telephone network, said recognizing including: said dedicated media handler monitoring a telephone call on a predetermined telephone link to said telephone network; and said dedicated media handler checking if the caller identification indicates that a media server or a media handler in said sharing or backup group is calling; wherein said method further comprises: if said caller identification so indicates, then said dedicated media handler answering said call, wherein new digital content is received or transmitted during said call.
107. The method of claim 106, further comprising: if said caller identification does not so indicate, then said media handler recoupling to said phone link, phone equipment which had been decoupled prior to said call, and providing said caller identification to said phone equipment.
108. The method of claim 100, wherein said network includes a telephone network, said recognizing including: said dedicated media handler monitoring a telephone call on a predetermined telephone link to said telephone network; and said dedicated media handler checking if the caller identification indicates that a media server or a media handler in said sharing or backup group is calling; wherein said method further comprises: if said caller identification so indicates, then said dedicated media handler checking that said telephone link is available, and said dedicated media handler using said telephone link to dial a target phone number, thereby initiating a second call, wherein digital content is received or transmitted during said second call.
109. The method of claim 108, further comprising: if said caller identification does not so indicate, then said dedicated media handler recoupling to said phone link, phone equipment which had been decoupled prior to said call, and providing said caller identification to said phone equipment.
110. The method of claim 100, wherein said network includes a telephone network, said recognizing including: said dedicated media handler monitoring a telephone call on a predetermined telephone link to said telephone network; and said dedicated media handler checking if the caller identification indicates that a media server or a media handler in said sharing or backup group is calling; wherein said method further comprises: if said caller identification so indicates, then said dedicated media handler notifying a user of said dedicated media handler that new content is available for retrieval.
111. The method of claim 100, wherein said network includes a telephone network, said recognizing including: after a predetermined number of rings, said dedicated media handler answering a call on a predetermined telephone link to said telephone network; wherein digital content is received or transmitted during said call.
112. The method of claim 100, wherein said network includes a telephone network, further comprising: said dedicated media handler checking that a predetermined telephone link to said telephone network is available; said dedicated media handler using a fast setup time modem and said telephone link to dial a target phone number and initiate a first call; and if said dedicated media handler determines that there is new digital content to be received, then said dedicated media handler hanging up, said dedicated media handler using a high bit rate modem and said telephone link to dial a target phone number and initiate a second call, wherein digital content is received during said second call.
113. The method of claim 112, wherein said fast setup time modem and said high bit rate modem are separate and wherein said fast setup time modem is more power efficient than said high bit rate modem.
114. The method of claim 100, wherein said network includes a circuit switched telephone network.
115. The method of claim 100, wherein said network includes a cellular telephone network.
116. The method of claim 115, further comprising: said dedicated media handler wirelessly coupling to a cellular handset which functions as a cellular modem for coupling to said cellular network.
117. A method for assisting in handling digital content, comprising: a media server assisting in automatic sharing or backup of digital content among a plurality of members in a backup or sharing group via a network, wherein said members include a plurality of media handlers of which at least one is a dedicated media handler, and wherein said media server assists by performing at least one action selected from a group comprising: storing digital content transmitted between' members in said group, initiating said automatic sharing or backup, managing signaling among members in said group, providing addressing services, relaying digital content among members in said group, transcoding digital content so that said transcoded content fits a target member, adapting content destined for a member based on a characteristic of a display associated with said member, and assisting a media handler in joining said group.
118. The method of claim 117, wherein at least one public gallery is a member of said group.
PCT/IL2007/001064 2006-08-29 2007-08-28 Media handling architecture for digital content WO2008026207A2 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US84070906P 2006-08-29 2006-08-29
US60/840,709 2006-08-29
US90623507P 2007-03-12 2007-03-12
US60/906,235 2007-03-12

Publications (2)

Publication Number Publication Date
WO2008026207A2 true WO2008026207A2 (en) 2008-03-06
WO2008026207A3 WO2008026207A3 (en) 2009-04-30

Family

ID=39136367

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IL2007/001064 WO2008026207A2 (en) 2006-08-29 2007-08-28 Media handling architecture for digital content

Country Status (1)

Country Link
WO (1) WO2008026207A2 (en)

Cited By (50)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102355588A (en) * 2011-08-25 2012-02-15 中兴通讯股份有限公司 Method and system for synchronously browsing electronic photo albums
US9112379B2 (en) 2006-12-06 2015-08-18 Solaredge Technologies Ltd. Pairing of components in a direct current distributed power generation system
US9130401B2 (en) 2006-12-06 2015-09-08 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9235228B2 (en) 2012-03-05 2016-01-12 Solaredge Technologies Ltd. Direct current link circuit
US9291696B2 (en) 2007-12-05 2016-03-22 Solaredge Technologies Ltd. Photovoltaic system power tracking method
US9318974B2 (en) 2014-03-26 2016-04-19 Solaredge Technologies Ltd. Multi-level inverter with flying capacitor topology
US9362743B2 (en) 2008-05-05 2016-06-07 Solaredge Technologies Ltd. Direct current power combiner
US9368964B2 (en) 2006-12-06 2016-06-14 Solaredge Technologies Ltd. Distributed power system using direct current power sources
US9401599B2 (en) 2010-12-09 2016-07-26 Solaredge Technologies Ltd. Disconnection of a string carrying direct current power
US9407161B2 (en) 2007-12-05 2016-08-02 Solaredge Technologies Ltd. Parallel connected inverters
US9537445B2 (en) 2008-12-04 2017-01-03 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US9543889B2 (en) 2006-12-06 2017-01-10 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9548619B2 (en) 2013-03-14 2017-01-17 Solaredge Technologies Ltd. Method and apparatus for storing and depleting energy
US9590526B2 (en) 2006-12-06 2017-03-07 Solaredge Technologies Ltd. Safety mechanisms, wake up and shutdown methods in distributed power installations
US9647442B2 (en) 2010-11-09 2017-05-09 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US9644993B2 (en) 2006-12-06 2017-05-09 Solaredge Technologies Ltd. Monitoring of distributed power harvesting systems using DC power sources
US9673711B2 (en) 2007-08-06 2017-06-06 Solaredge Technologies Ltd. Digital average input current control in power converter
US9680304B2 (en) 2006-12-06 2017-06-13 Solaredge Technologies Ltd. Method for distributed power harvesting using DC power sources
US9812984B2 (en) 2012-01-30 2017-11-07 Solaredge Technologies Ltd. Maximizing power in a photovoltaic distributed power system
US9819178B2 (en) 2013-03-15 2017-11-14 Solaredge Technologies Ltd. Bypass mechanism
US9831824B2 (en) 2007-12-05 2017-11-28 SolareEdge Technologies Ltd. Current sensing on a MOSFET
US9853538B2 (en) 2007-12-04 2017-12-26 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9853565B2 (en) 2012-01-30 2017-12-26 Solaredge Technologies Ltd. Maximized power in a photovoltaic distributed power system
US9866098B2 (en) 2011-01-12 2018-01-09 Solaredge Technologies Ltd. Serially connected inverters
US9869701B2 (en) 2009-05-26 2018-01-16 Solaredge Technologies Ltd. Theft detection and prevention in a power generation system
US9876430B2 (en) 2008-03-24 2018-01-23 Solaredge Technologies Ltd. Zero voltage switching
US9923516B2 (en) 2012-01-30 2018-03-20 Solaredge Technologies Ltd. Photovoltaic panel circuitry
US9941813B2 (en) 2013-03-14 2018-04-10 Solaredge Technologies Ltd. High frequency multi-level inverter
US9960667B2 (en) 2006-12-06 2018-05-01 Solaredge Technologies Ltd. System and method for protection during inverter shutdown in distributed power installations
US9966766B2 (en) 2006-12-06 2018-05-08 Solaredge Technologies Ltd. Battery power delivery module
US10115841B2 (en) 2012-06-04 2018-10-30 Solaredge Technologies Ltd. Integrated photovoltaic panel circuitry
US10230310B2 (en) 2016-04-05 2019-03-12 Solaredge Technologies Ltd Safety switch for photovoltaic systems
US10396662B2 (en) 2011-09-12 2019-08-27 Solaredge Technologies Ltd Direct current link circuit
US10673229B2 (en) 2010-11-09 2020-06-02 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US10673222B2 (en) 2010-11-09 2020-06-02 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US10931119B2 (en) 2012-01-11 2021-02-23 Solaredge Technologies Ltd. Photovoltaic module
US11018623B2 (en) 2016-04-05 2021-05-25 Solaredge Technologies Ltd. Safety switch for photovoltaic systems
US11177663B2 (en) 2016-04-05 2021-11-16 Solaredge Technologies Ltd. Chain of power devices
US11264947B2 (en) 2007-12-05 2022-03-01 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US11296650B2 (en) 2006-12-06 2022-04-05 Solaredge Technologies Ltd. System and method for protection during inverter shutdown in distributed power installations
US11309832B2 (en) 2006-12-06 2022-04-19 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11569659B2 (en) 2006-12-06 2023-01-31 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11569660B2 (en) 2006-12-06 2023-01-31 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11687112B2 (en) 2006-12-06 2023-06-27 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11728768B2 (en) 2006-12-06 2023-08-15 Solaredge Technologies Ltd. Pairing of components in a direct current distributed power generation system
US11735910B2 (en) 2006-12-06 2023-08-22 Solaredge Technologies Ltd. Distributed power system using direct current power sources
US11855231B2 (en) 2006-12-06 2023-12-26 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11881814B2 (en) 2005-12-05 2024-01-23 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US11888387B2 (en) 2006-12-06 2024-01-30 Solaredge Technologies Ltd. Safety mechanisms, wake up and shutdown methods in distributed power installations
US11929620B2 (en) 2012-01-30 2024-03-12 Solaredge Technologies Ltd. Maximizing power in a photovoltaic distributed power system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020056089A1 (en) * 1997-06-23 2002-05-09 Houston John S. Cooperative system for measuring electronic media
US20030066076A1 (en) * 2001-09-28 2003-04-03 Minahan Michael R. Method of distribution of digital media having durational limits for digital media usage
US20060053447A1 (en) * 2002-06-27 2006-03-09 Openpeak Inc. Method, system, and computer program product for managing controlled residential or non-residential environments

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020056089A1 (en) * 1997-06-23 2002-05-09 Houston John S. Cooperative system for measuring electronic media
US20030066076A1 (en) * 2001-09-28 2003-04-03 Minahan Michael R. Method of distribution of digital media having durational limits for digital media usage
US20060053447A1 (en) * 2002-06-27 2006-03-09 Openpeak Inc. Method, system, and computer program product for managing controlled residential or non-residential environments

Cited By (118)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11881814B2 (en) 2005-12-05 2024-01-23 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US11594881B2 (en) 2006-12-06 2023-02-28 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11073543B2 (en) 2006-12-06 2021-07-27 Solaredge Technologies Ltd. Monitoring of distributed power harvesting systems using DC power sources
US11183922B2 (en) 2006-12-06 2021-11-23 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11063440B2 (en) 2006-12-06 2021-07-13 Solaredge Technologies Ltd. Method for distributed power harvesting using DC power sources
US11888387B2 (en) 2006-12-06 2024-01-30 Solaredge Technologies Ltd. Safety mechanisms, wake up and shutdown methods in distributed power installations
US11043820B2 (en) 2006-12-06 2021-06-22 Solaredge Technologies Ltd. Battery power delivery module
US9368964B2 (en) 2006-12-06 2016-06-14 Solaredge Technologies Ltd. Distributed power system using direct current power sources
US9112379B2 (en) 2006-12-06 2015-08-18 Solaredge Technologies Ltd. Pairing of components in a direct current distributed power generation system
US11031861B2 (en) 2006-12-06 2021-06-08 Solaredge Technologies Ltd. System and method for protection during inverter shutdown in distributed power installations
US11296650B2 (en) 2006-12-06 2022-04-05 Solaredge Technologies Ltd. System and method for protection during inverter shutdown in distributed power installations
US9543889B2 (en) 2006-12-06 2017-01-10 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11002774B2 (en) 2006-12-06 2021-05-11 Solaredge Technologies Ltd. Monitoring of distributed power harvesting systems using DC power sources
US9590526B2 (en) 2006-12-06 2017-03-07 Solaredge Technologies Ltd. Safety mechanisms, wake up and shutdown methods in distributed power installations
US11855231B2 (en) 2006-12-06 2023-12-26 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11309832B2 (en) 2006-12-06 2022-04-19 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9644993B2 (en) 2006-12-06 2017-05-09 Solaredge Technologies Ltd. Monitoring of distributed power harvesting systems using DC power sources
US11476799B2 (en) 2006-12-06 2022-10-18 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9680304B2 (en) 2006-12-06 2017-06-13 Solaredge Technologies Ltd. Method for distributed power harvesting using DC power sources
US11735910B2 (en) 2006-12-06 2023-08-22 Solaredge Technologies Ltd. Distributed power system using direct current power sources
US11728768B2 (en) 2006-12-06 2023-08-15 Solaredge Technologies Ltd. Pairing of components in a direct current distributed power generation system
US11569659B2 (en) 2006-12-06 2023-01-31 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11569660B2 (en) 2006-12-06 2023-01-31 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US10637393B2 (en) 2006-12-06 2020-04-28 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11687112B2 (en) 2006-12-06 2023-06-27 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9853490B2 (en) 2006-12-06 2017-12-26 Solaredge Technologies Ltd. Distributed power system using direct current power sources
US11682918B2 (en) 2006-12-06 2023-06-20 Solaredge Technologies Ltd. Battery power delivery module
US11575261B2 (en) 2006-12-06 2023-02-07 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US10447150B2 (en) 2006-12-06 2019-10-15 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11658482B2 (en) 2006-12-06 2023-05-23 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US11598652B2 (en) 2006-12-06 2023-03-07 Solaredge Technologies Ltd. Monitoring of distributed power harvesting systems using DC power sources
US11594882B2 (en) 2006-12-06 2023-02-28 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9948233B2 (en) 2006-12-06 2018-04-17 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9960731B2 (en) 2006-12-06 2018-05-01 Solaredge Technologies Ltd. Pairing of components in a direct current distributed power generation system
US9960667B2 (en) 2006-12-06 2018-05-01 Solaredge Technologies Ltd. System and method for protection during inverter shutdown in distributed power installations
US9966766B2 (en) 2006-12-06 2018-05-08 Solaredge Technologies Ltd. Battery power delivery module
US11575260B2 (en) 2006-12-06 2023-02-07 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US10097007B2 (en) 2006-12-06 2018-10-09 Solaredge Technologies Ltd. Method for distributed power harvesting using DC power sources
US9130401B2 (en) 2006-12-06 2015-09-08 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US10673253B2 (en) 2006-12-06 2020-06-02 Solaredge Technologies Ltd. Battery power delivery module
US11579235B2 (en) 2006-12-06 2023-02-14 Solaredge Technologies Ltd. Safety mechanisms, wake up and shutdown methods in distributed power installations
US10230245B2 (en) 2006-12-06 2019-03-12 Solaredge Technologies Ltd Battery power delivery module
US11594880B2 (en) 2006-12-06 2023-02-28 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US10516336B2 (en) 2007-08-06 2019-12-24 Solaredge Technologies Ltd. Digital average input current control in power converter
US10116217B2 (en) 2007-08-06 2018-10-30 Solaredge Technologies Ltd. Digital average input current control in power converter
US11594968B2 (en) 2007-08-06 2023-02-28 Solaredge Technologies Ltd. Digital average input current control in power converter
US9673711B2 (en) 2007-08-06 2017-06-06 Solaredge Technologies Ltd. Digital average input current control in power converter
US9853538B2 (en) 2007-12-04 2017-12-26 Solaredge Technologies Ltd. Distributed power harvesting systems using DC power sources
US9407161B2 (en) 2007-12-05 2016-08-02 Solaredge Technologies Ltd. Parallel connected inverters
US9979280B2 (en) 2007-12-05 2018-05-22 Solaredge Technologies Ltd. Parallel connected inverters
US11894806B2 (en) 2007-12-05 2024-02-06 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US10644589B2 (en) 2007-12-05 2020-05-05 Solaredge Technologies Ltd. Parallel connected inverters
US9831824B2 (en) 2007-12-05 2017-11-28 SolareEdge Technologies Ltd. Current sensing on a MOSFET
US11693080B2 (en) 2007-12-05 2023-07-04 Solaredge Technologies Ltd. Parallel connected inverters
US11183923B2 (en) 2007-12-05 2021-11-23 Solaredge Technologies Ltd. Parallel connected inverters
US11264947B2 (en) 2007-12-05 2022-03-01 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US11183969B2 (en) 2007-12-05 2021-11-23 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US10693415B2 (en) 2007-12-05 2020-06-23 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US9291696B2 (en) 2007-12-05 2016-03-22 Solaredge Technologies Ltd. Photovoltaic system power tracking method
US9876430B2 (en) 2008-03-24 2018-01-23 Solaredge Technologies Ltd. Zero voltage switching
US11424616B2 (en) 2008-05-05 2022-08-23 Solaredge Technologies Ltd. Direct current power combiner
US9362743B2 (en) 2008-05-05 2016-06-07 Solaredge Technologies Ltd. Direct current power combiner
US10468878B2 (en) 2008-05-05 2019-11-05 Solaredge Technologies Ltd. Direct current power combiner
US10461687B2 (en) 2008-12-04 2019-10-29 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US9537445B2 (en) 2008-12-04 2017-01-03 Solaredge Technologies Ltd. Testing of a photovoltaic panel
US10969412B2 (en) 2009-05-26 2021-04-06 Solaredge Technologies Ltd. Theft detection and prevention in a power generation system
US11867729B2 (en) 2009-05-26 2024-01-09 Solaredge Technologies Ltd. Theft detection and prevention in a power generation system
US9869701B2 (en) 2009-05-26 2018-01-16 Solaredge Technologies Ltd. Theft detection and prevention in a power generation system
US11489330B2 (en) 2010-11-09 2022-11-01 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US10931228B2 (en) 2010-11-09 2021-02-23 Solaredge Technologies Ftd. Arc detection and prevention in a power generation system
US11070051B2 (en) 2010-11-09 2021-07-20 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US10673222B2 (en) 2010-11-09 2020-06-02 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US9647442B2 (en) 2010-11-09 2017-05-09 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US10673229B2 (en) 2010-11-09 2020-06-02 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US11349432B2 (en) 2010-11-09 2022-05-31 Solaredge Technologies Ltd. Arc detection and prevention in a power generation system
US9935458B2 (en) 2010-12-09 2018-04-03 Solaredge Technologies Ltd. Disconnection of a string carrying direct current power
US11271394B2 (en) 2010-12-09 2022-03-08 Solaredge Technologies Ltd. Disconnection of a string carrying direct current power
US9401599B2 (en) 2010-12-09 2016-07-26 Solaredge Technologies Ltd. Disconnection of a string carrying direct current power
US10666125B2 (en) 2011-01-12 2020-05-26 Solaredge Technologies Ltd. Serially connected inverters
US9866098B2 (en) 2011-01-12 2018-01-09 Solaredge Technologies Ltd. Serially connected inverters
US11205946B2 (en) 2011-01-12 2021-12-21 Solaredge Technologies Ltd. Serially connected inverters
CN102355588B (en) * 2011-08-25 2017-11-24 中兴通讯股份有限公司 A kind of method and system of synchronous browsing electron album
CN102355588A (en) * 2011-08-25 2012-02-15 中兴通讯股份有限公司 Method and system for synchronously browsing electronic photo albums
US10396662B2 (en) 2011-09-12 2019-08-27 Solaredge Technologies Ltd Direct current link circuit
US10931119B2 (en) 2012-01-11 2021-02-23 Solaredge Technologies Ltd. Photovoltaic module
US10992238B2 (en) 2012-01-30 2021-04-27 Solaredge Technologies Ltd. Maximizing power in a photovoltaic distributed power system
US9812984B2 (en) 2012-01-30 2017-11-07 Solaredge Technologies Ltd. Maximizing power in a photovoltaic distributed power system
US10381977B2 (en) 2012-01-30 2019-08-13 Solaredge Technologies Ltd Photovoltaic panel circuitry
US9923516B2 (en) 2012-01-30 2018-03-20 Solaredge Technologies Ltd. Photovoltaic panel circuitry
US9853565B2 (en) 2012-01-30 2017-12-26 Solaredge Technologies Ltd. Maximized power in a photovoltaic distributed power system
US11620885B2 (en) 2012-01-30 2023-04-04 Solaredge Technologies Ltd. Photovoltaic panel circuitry
US11183968B2 (en) 2012-01-30 2021-11-23 Solaredge Technologies Ltd. Photovoltaic panel circuitry
US11929620B2 (en) 2012-01-30 2024-03-12 Solaredge Technologies Ltd. Maximizing power in a photovoltaic distributed power system
US10608553B2 (en) 2012-01-30 2020-03-31 Solaredge Technologies Ltd. Maximizing power in a photovoltaic distributed power system
US9639106B2 (en) 2012-03-05 2017-05-02 Solaredge Technologies Ltd. Direct current link circuit
US9235228B2 (en) 2012-03-05 2016-01-12 Solaredge Technologies Ltd. Direct current link circuit
US10007288B2 (en) 2012-03-05 2018-06-26 Solaredge Technologies Ltd. Direct current link circuit
US11177768B2 (en) 2012-06-04 2021-11-16 Solaredge Technologies Ltd. Integrated photovoltaic panel circuitry
US10115841B2 (en) 2012-06-04 2018-10-30 Solaredge Technologies Ltd. Integrated photovoltaic panel circuitry
US9548619B2 (en) 2013-03-14 2017-01-17 Solaredge Technologies Ltd. Method and apparatus for storing and depleting energy
US9941813B2 (en) 2013-03-14 2018-04-10 Solaredge Technologies Ltd. High frequency multi-level inverter
US11545912B2 (en) 2013-03-14 2023-01-03 Solaredge Technologies Ltd. High frequency multi-level inverter
US10778025B2 (en) 2013-03-14 2020-09-15 Solaredge Technologies Ltd. Method and apparatus for storing and depleting energy
US11742777B2 (en) 2013-03-14 2023-08-29 Solaredge Technologies Ltd. High frequency multi-level inverter
US11424617B2 (en) 2013-03-15 2022-08-23 Solaredge Technologies Ltd. Bypass mechanism
US9819178B2 (en) 2013-03-15 2017-11-14 Solaredge Technologies Ltd. Bypass mechanism
US10651647B2 (en) 2013-03-15 2020-05-12 Solaredge Technologies Ltd. Bypass mechanism
US10886831B2 (en) 2014-03-26 2021-01-05 Solaredge Technologies Ltd. Multi-level inverter
US10886832B2 (en) 2014-03-26 2021-01-05 Solaredge Technologies Ltd. Multi-level inverter
US11855552B2 (en) 2014-03-26 2023-12-26 Solaredge Technologies Ltd. Multi-level inverter
US11632058B2 (en) 2014-03-26 2023-04-18 Solaredge Technologies Ltd. Multi-level inverter
US11296590B2 (en) 2014-03-26 2022-04-05 Solaredge Technologies Ltd. Multi-level inverter
US9318974B2 (en) 2014-03-26 2016-04-19 Solaredge Technologies Ltd. Multi-level inverter with flying capacitor topology
US10230310B2 (en) 2016-04-05 2019-03-12 Solaredge Technologies Ltd Safety switch for photovoltaic systems
US11870250B2 (en) 2016-04-05 2024-01-09 Solaredge Technologies Ltd. Chain of power devices
US11018623B2 (en) 2016-04-05 2021-05-25 Solaredge Technologies Ltd. Safety switch for photovoltaic systems
US11177663B2 (en) 2016-04-05 2021-11-16 Solaredge Technologies Ltd. Chain of power devices
US11201476B2 (en) 2016-04-05 2021-12-14 Solaredge Technologies Ltd. Photovoltaic power device and wiring

Also Published As

Publication number Publication date
WO2008026207A3 (en) 2009-04-30

Similar Documents

Publication Publication Date Title
WO2008026207A2 (en) Media handling architecture for digital content
US6704401B2 (en) System of and method for configuring an automatic appliance
US9009265B2 (en) System and method for automatic transfer of data from one device to another
US8868778B2 (en) Transmission bandwidth and memory requirements reduction in a portable image capture device
US8204522B2 (en) Distributed storage and aggregation of multimedia information via a broadband access gateway
US8015253B1 (en) System and method for controlling inter-device media exchanges
US8325213B2 (en) Video communication system and method
JP4774185B2 (en) Method and system for interfacing with digital media frames
US7046269B2 (en) Sharing of prerecorded motion video over an internetwork
US20140129654A1 (en) Media exchange network supporting local and remote personalized media overlay
US20070053345A1 (en) Data transmission system
US20060034266A1 (en) System and method for providing content via IP video telephone network
US9614793B1 (en) Systems and methods for distributing content with a portable electronic device
US20110183651A1 (en) System and method for requesting, retrieving and/or associating contact images on a mobile device
US20070183396A1 (en) Set top box supporting bridging between a packet switched network and the public switched telephone network
JPH08235260A (en) Multi-media communication system
CN101325666A (en) Telecontrol system for intelligent mobile terminal television
US20160173686A1 (en) Method, system and electronic device for remotely recording and authenticating associated recorded files
JP2004201325A (en) System and method for sharing images
US20080043938A1 (en) Communication Device
CN101646254A (en) Implementation method of mobile video blog and system thereof
JP5802116B2 (en) Call system with data sharing function
WO2006069059A2 (en) An apparatus and method for a voice portal
JP2007143059A (en) System, apparatus and method for transmitting and receiving video
JP2002281180A (en) Television doorphone

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07805524

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

NENP Non-entry into the national phase

Ref country code: RU

122 Ep: pct application non-entry in european phase

Ref document number: 07805524

Country of ref document: EP

Kind code of ref document: A2