1. Technical Field
The present invention relates generally to the area of delivering multimedia services over the Internet, and more particularly to techniques for maintaining personal settings regardless of where a user is logged on.
2. Description of the Related Art
Computers are ubiquitous these days. However most users still desire to access their own computers across a network. One of the reasons is the familiar settings personalized by a user on his/her own computer, which helps the user locate or act on readily what is needed. For example, every user has his/her own settings in a windows environment (e.g., Microsoft Windows XP), for example, particular colors, fonts, background, icons, and etc, none being identical. These settings are typically evolving as the time goes. When a user goes on a new computer, it is not trivial to duplicate exactly the settings of an old computer personalized by the user over the time. Some software tools (e.g., ImageGhost) are sometimes needed.
In the area of receiving multimedia services via a receiver, the personal settings for the receiver can be more important because each user has his/her own settings as to which types of movies/music to receive or not to receive, which ones are more preferable than others, and etc. In some cases, the personal settings define how a local personalized library in the library being offered is created, formed and maintained. These settings provide a convenient environment to access the services more effectively and more personally. However the settings are generally not portable, which means they lose the effectiveness when the user goes on a different receiver.
There, thus, is a need for techniques that enable the portability of such settings so that a user can always have the personalized settings regardless of which receiver is being used.
This section is for the purpose of summarizing some aspects of the present invention and to briefly introduce some preferred embodiments. Simplifications or omissions in this section as well as in the abstract or the title of this description may be made to avoid obscuring the purpose of this section, the abstract and the title. Such simplifications or omissions are not intended to limit the scope of the present invention.
Broadly speaking, the present invention is related to techniques for keeping personalized settings across network. According to one aspect of the present invention, personalized settings (e.g., parameters or table) are managed in a primary client device associated with a subscriber. A copy of the copy of personalized settings is maintained in a server. When it is detected that the subscriber is logged on in a different client device (e.g., a box), a copy of the personalized settings is uploaded to the different client device that is configured to respond to the personalized settings. As a result, the subscriber sees the familiar settings on the different client device.
According to another aspect of the present invention, some of the personalized settings pertain to a vault associated with the subscriber. Movies in the vault may be purchased or rented and shall be accessed whenever and wherever the subscriber may desire. Although, these movies in the vault may be watched, making a copy on an optical medium (e.g., a DVD disc) would require that the data for a movie is all locally available. Without impacting any possible access to the movies in the value, the different client device is configured in accordance with the personalized settings to fetch missing data segments for the movies in the vault wherever there is an available bandwidth in the downloading path.
Other aspects of the invention will become apparent and appreciated by those skilled in the art from the detailed description herein. Embodiments of the invention may be implemented in numerous ways, including a method, system, device, or a computer readable medium. Several embodiments of the invention are discussed below. According to one embodiment, the invention provides a method for managing personalized settings, the method comprises determining whether a user has logged into a box other than a primary box, where the primary box is configured to manage personalized settings that dictate a graphic user interface from which the user accesses various media services; and when the user is logged into the box other than the primary box, uploading a copy of the personalized settings to the box that is configured to respond to the personalized settings such that the user sees substantially similar settings as if the user has logged into the primary box.
According to another embodiment, the invention provides a system for managing personalized settings, the apparatus comprises: a first box configured to manage personal settings for an account associated with a user, wherein the personalized settings dictate a graphic user interface from which the user accesses various media services; a second box, operating independently from the first box, being logged in by the user; and a server determining whether the user has logged into the first box or the second box when receiving a login request, when the user is logged into the second box, the server uploading a copy of the personalized settings to the second box that is configured to respond to the personalized settings such that the user sees substantially similar settings as if the user has logged into the first box.
Accordingly one of the objects of the present inventions is to provide techniques for maintaining personal settings regardless of where a user is logged on.
Other objects, features, advantages, benefits of the invention will become more apparent from the following detailed description of a preferred embodiment, which proceeds with reference to the accompanying drawings.
The invention will be readily understood by the following detailed description in conjunction with the accompanying drawings, wherein like reference numerals designate like structural elements, and in which:
In the following description, numerous specific details are set forth to provide a thorough understanding of the present invention. The present invention may be practiced without these specific details. The description and representation herein are the means used by those experienced or skilled in the art to effectively convey the substance of their work to others skilled in the art. In other instances, well-known methods, procedures, components, and circuitry have not been described in detail since they are already well understood and to avoid unnecessarily obscuring aspects of the present invention.
Reference herein to “one embodiment” or an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one implementation of the invention. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Further, the order of blocks in process, flowcharts or functional diagrams representing one or more embodiments, if any, do not inherently indicate any particular order nor imply limitations in the invention.
Referring now to the drawings, in which like numerals refer to like parts throughout the several views.
It is assumed that the box 108 is a primary box from which a user orders and receives services from the server 104. The box 108 may be located in a residence of the user. Typically, the user maintains an account with the server 104. From time to time, the user may update the account from the box 108. Whenever there is a change to the account, a copy of the account information maintained in the server 104 is updated accordingly.
According to one embodiment of the present invention, the user is allowed to establish his or her own account preferences that include, but not limited to, look and feel of a graphic user interface, a viewed list, a list of orders, and a personal vault. A graphic user interface provides an environment in which the user interacts with the media services being offered. A viewed list includes a list of movie titles that the user has viewed or browsed in the past. A list of orders may includes movie titles the user desires to order. A vault or a personal library includes a list of movies that may have been purchased or rented by the user. Any of the titles in the vault may be accessed by the user at any time or in any way (e.g., re-watching a movie or making a copy on a DVD disc).
One of the features, benefits and advantages in the present invention is to provide a mechanism that allows the user to access his or her account preference at anytime from anywhere. Whether the user logs into his or her account from the box 108 or any one of the boxes 106-1,106-2,106-3, . . . 106-n, the user sees the same personalized settings as if any one of the boxes 106-1,106-2,106-3, . . . 106-n was the primary box 108.
One of the features in the present inventions is that, regardless where a user logs into the account, the user always sees substantial similar settings in the account as if the user was using the primary box.
The display 200 shows that a user may enter into any of five areas: Watch a Movie, Watch a TV Show, Listen to Music, Change Settings, and Switch User. As the name suggests, Watch a Movie allows a user to order a movie from a plurality of titles in a library, Watch a TV Show and Listen to Music allow a user to choose a particular channel for TV broadcasts and music, live or archived, Change Settings is provided to change various settings for the account from which the user may access the services, and Switch User allows a change from one user account to another. Some of the areas will be detailed below.
Next to the list 202, according to one embodiment, the display 200 includes a smaller display window 204, referred to as an iconic display, showing whatever is being played or promoted. It is assumed that a user enters Watch a Movie.
The notification space 214 is provided to display various promotions. The embodiment as shown in the display 210 shows that there are eight movies being promoted. In another embodiment, the notification space 214 is used to advertise various services and products. These services and products may be highly related to the interests or characteristics of the account owner. When an account is established for the owner, a list of questions may be generated for the owner to answer. The answers from the owner to the questions are assembled and analyzed to determine the interests or characteristics of the owner. For example, some answers indicate that the owner is very much into golfing, the notification space 214 may be configured to display services and products somehow related to golfing. The interests or characteristics of the owner may also be determined from an analysis of the owner's behavior in interacting with the system, together with additional information provided to the system about the behavior of other owners.
As shown in
My Movies, Browse Movies, and Search Movies in the functional panel 212 provide respective mechanisms for a user to locate a movie. My Movies is a personal directory providing a vault to store or bookmark one or more movies favorite to the owner of the account. According to one embodiment, when a user is interested in a movie when browsing the library offered, the movie may be bookmarked in My Movies so that the user can always go back to My Movies to readily place an order for the movie.
As shown in the list 222 in My Movies, each of the movie banners shows a title in substantially similar style, font and background as in the corresponding movie poster. One of the purposes of using at least part of a movie poster or banner instead of texts to indicate a movie is to create a coincident impact on the audience. In certain aspect, a movie banner is equivalent to a visual “logo” for a movie. A user may browse or scroll the list of movie banners in the list 222. Each of the movie banners in the list 222 is embedded with a link that brings up a full review of the movie when one of the displayed movie banners is selected.
After a certain arrangement with the service provider is made, the user may gain a limited right to access one or more movies in My Movies repeatedly without charges or with a nominal change. According to one embodiment, the movies in My Movies are purchased and owned by the account owner. The account owner may access any one of the movies in My Movies from anywhere at any time without charges. When the account owner logs into the account from a box other than the primary one, all the movies in My Movies shall be immediately available, which in reality creates the challenge of how to duplicate the movies in My Movies.
For example, the architecture 300 may be configured to deliver non-prerecorded programs such as live broadcasts by a multicasting protocol. The server 302 receives orders from some of the subscribers (e.g., for boxes 306-1 and 306-n) for a broadcasting event. When the event comes, the server 302 receives a streaming feed from a source (e.g., a televised site). The streaming is then delivered by the server 302 via the network path 310 to 308-1 and 308-n to the ordering boxes 306-1 and 306-n. As the subscriber for the box 306-2 did not order the event, the box 306-2 will not receive the streaming from the server 302. It can be appreciated that the number of recipients for the program does not affect the performance of the server 302 or demands higher bandwidth because the program is being multicast to the ordering boxes.
At the same time, the architecture 300 can provide prerecorded programs such as movies without demanding higher bandwidth when servicing a large number of boxes. In operation, the server 302 is not responsible for delivering the content in response to a request from an ordering box (e.g., 306-1), and instead is configured to provide source information as to where and how to retrieve at least some of the content from other boxes. In other words, some of the other boxes 306-2, 306-3, . . . 306-n are respectively configured to supply part or all of the content to each other.
The segments for each title in a library are distributed among the boxes in service. When the box 306-1 is used to order one of the titles in a library, the request is sent to the server 302 via the network path 308-1 and 310. The server 302 is configured to determine which other boxes are most appropriate to be the suppliers for providing the distributed segments. Either the server 302 causes the suppliers to contact the ordering box 306-1 to receive the needed segments or the ordering box 306-1 initiates communication with the suppliers upon receiving a response form the server 302, where the response includes information about the suppliers. In one embodiment, the information includes designation information (e.g., network addresses) as to who are the suppliers, security information as to how to decrypt the data, and other information to facilitate the playback of the ordered title.
For convenience, it is assumed herein that a file representing a collection of data pertaining to a movie title. When an order for a title is placed, corresponding data from the file must be available for playback. According to one aspect of the present invention, only a beginning portion (referred to as a “header”) and possibly one or more tail segments of a file are locally cached in a box. Such locally cached segments are referred to as residing segments, while segments not residing locally are referred to as distributed objects or segments. When a title is selected, the header of the corresponding file is instantly played back. During the time the header is being played, the distributed objects corresponding to the title are retrieved simultaneously from other boxes. When the header is finished, the received parts of the distributed segments being streamed in from other boxes are combined with the residing segments for the title, if any, to enable a continuous playback. Depending on the popularity and concurrent demand for a particular title, the number of residing objects may be increased or decreased to control the dependency of each box on other boxes for playback. Typically, the more residing objects for a title a box has, the more distributed copies of the title there are in the entire system and thus the less dependency of the ordering box on the other boxes.
In one embodiment, the header is always played first to ensure instant playback. In another embodiment, the header size is reduced to zero, in which case, a time-fill program may be played first to provide a time frame that is sufficient enough to fetch and assembly the beginning data portion of the segments either locally available or from other boxes. Depending on implementation, the time-fill program may include one or more trailers related to the title being ordered, various notifications/updates or commercial programs.
Referring to
According to one embodiment,
In one embodiment, a subscriber maintains a list of movies in a vault. These movies may have been purchased or rented and shall be available immediately. To make it possible to instantaneously access these movies, all segments pertaining to the movies are preferably locally cached for certain operations. The shaded segments as shown in
Upon receiving the request, the server performs at 422 whether the user has logged into a box other than his/her primary box by comparing the received identifier and an identifier of the primary box maintained at the server. If the identifiers are identical, which means that the user is using the primary box, there is no need to personalize the primary box, because the primary box is where the personalized settings are maintained or managed. In operation, wherever there is a change to the personalized settings, a copy of the change or updated settings is sent to the server for synchronization.
At 422, it is assumed that the identifiers are not identical, which means the box the user just logged on is not the primary one. At 424, a copy of the personalized settings is located and uploaded to the box. Upon receiving the personalized settings, the box is configured to personalize itself in accordance with the personalized settings at 426. For example, the box displays or causes to display a graphic user interface (e.g., a particular style, a color or fonts). As a result, the user sees substantially similar account preference he/she is used to at 428.
Referring now to
Referring now to
To facilitate the continuation of a data stream, each of the pointers 682 and 786 is used to remember where the data block of a segment is being fed or about to be fed to the buffer 670. In the event, the segment being fetched from a box is interrupted and a backup box needs to step in, the ordering box knows exactly where to start fetching the segment from where it was interrupted in accordance with the pointer. Likewise, similar pointers (not shown) may be provided to remember where the data block of the locally cached segment is being fed or about to be fed to the buffer 670. In the event, the ordering box needs to be reset or is suddenly powered off and back on, these pointers can facilitate the continuation of the playback of the ordered movie.
The present invention has been described in sufficient details with a certain degree of particularity. It is understood to those skilled in the art that the present disclosure of embodiments has been made by way of examples only and that numerous changes in the arrangement and combination of parts may be resorted without departing from the spirit and scope of the invention as claimed. For example, some elements in a display may include one or more sub-elements. When such an element is selected, the display appearance of the element may be highlighted in a way that enables the user to navigate into the sub-elements to select one of the sub-elements or group one or more of these sub-elements. Accordingly, the scope of the present invention is defined by the appended claims rather than the foregoing description of embodiments.
This is a continuation-in-part of co-pending U.S. application Ser. No. 11/075,573, entitled “Continuous data feeding in a distributed environment” and filed Mar. 9, 2005, and by at least one of the co-inventors herein.
Number | Date | Country | |
---|---|---|---|
Parent | 11075573 | Mar 2005 | US |
Child | 11465434 | US |