DYNAMIC PERSONALIZED CONTENT RESOLUTION FOR A MEDIA SERVER

Abstract: A streaming media server is provided for dynamically resolving a request for digital content based upon the identity of the requester. The digital content may be specifically tailored to the demographics of the viewer, and need not be physically stored in sequence. Information about a viewer of digital video is stored within a user profile. The collection of all user profiles is maintained by a profile manager. When a viewer requests a digital data stream from the media server, a content resolver, coupled to the media server, determines how to service the request based upon the appropriate user profile.

Description: DYNAMIC PERSONALIZED CONTENT RESOLUTION FOR A MEDIA SERVER FIELD OF THE INVENTION The present invention relates to a method and apparatus for processing audiovisual information, and more specifically, to a method and apparatus for dynamically resolving content requests of a streaming media server. BACKGROUND OF THE INVENTION In recent years, the media industry has expanded its horizons beyond traditional analog technologies. Audio, photographs, and even feature films are now being recorded or converted into digital formats. Media systems are available to present digital content to viewers in increasing numbers. Certain media systems allow clients to request digital content from the media server by name. Just as commercials are interspersed during a movie played on broadcast television, it is desirable to play content unrelated to the original data stream request, such as a commercial, in a pointcast or multicast digital media presentation. For purposes of explanation, the problem of merging unrelated content into a requested digital data stream by a client will be explained in reference to commercials. It should be understood that the unrelated content may be used for any purpose, and is not limited to any particular style, purpose, or format, such as a commercial. In some media systems, presenting commercials to a client in a digital data stream is performed by storing the commercials in the same binary file as the requested content. Commercials are stored physically in the binary file relative to where they appear in the requested data stream. Every client who requests the binary file would be shown the same commercials at the same point in the data stream. Alternately, the commercials shown in a digital video presentation can stored in a different binary file as the requested content. Commercials in this case are statically mapped during presentation to the client. For example, a request by a client for a 30 minute episode of "M*A*S*H" might result in the media server streaming the first 10 minutes of the show, followed by a commercial, followed by the next 10 minutes of the show, follow by a commercial, followed by the final 10 minutes of the show. The entire presentation of "M*A*S*H" and the two commercials are delivered to the requesting client in one contiguous data stream. However, the selection of which commercials to intersperse with the requested data stream is done without thought to the identity of the requester. Thus, while the particular commercials inserted into the data stream for two different requests for "M*A*S*H" may differ, there is no guarantee that the commercials are appropriate for the demographics of the requesting audience. As the commercial popularity of digital media spreads, there will be a growing need to present additional content specifically tailored to the individual or the demographics of the viewer, and which need not be physically stored in sequence as presented to the requester. Accordingly, it would be desirable for a presenter of digital media to generate and present content in response to requests for digital data streams to provide for user-specific customizations and targeted advertising. Further, it would be desirable for a presenter of digital media to allow customization of the viewable content provided by the media server based upon a user's preferences. SUMMARY OF THE INVENTION A method and apparatus are provided for dynamic content resolution based upon the requester of digital media from a streaming media server, i one aspect, embodiments of the invention use a user profile to store information pertaining to requesters of digital audio-visual data. Using the user profile, a content resolver, coupled to the media server, determines the content to include in the digital audio-visual data stream sent by the media server according to a set of configurable rules. As a result of the techniques described herein, dynamic content is available for presentation to the viewer and, consequently, customized content, such as advertising, may be seamlessly inserted into, or content may be selectively removed from, a digital audio-visual data stream based on the profile of a particular requestor. BRIEF DESCRIPTION OF THE DRAWINGS The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which: Figure 1 is a block diagram of an audio-visual information delivery system according an embodiment of the present invention; Figure 2 is a flow diagram illustrating the operation of the content resolver according to one embodiment of the invention; and Figure 3 is a block diagram illustrating the operation of dynamic content resolution according to one embodiment of the invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT A method and apparatus for dynamic creation of logical content in a streaming media server is provided. There have been many advances in both functionality and performance of the media server in recent years. The present invention advances the teachings of the following patents and pending applications, all of which are hereby incorporated by reference: U.S. application Serial No. 08/502,480 filed on July 14, 1995, now U.S. Patent No. 5,659,539, U.S. application Serial No. 09/128,224 filed on August 3, 1998 and concurrently filed U.S. application entitled "Dynamic Quality Adjustment Based Upon Changing Streaming Constraints" invented by David J. Pawson. h the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these specific details, other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention. Figure 1 is a block diagram illustrating an audio-visual information delivery system 100 according to one embodiment of the present invention. Audio-visual information delivery system 100 contains a plurality of clients (1 - n) 160, 170 and 180. The clients (1 - n) 160, 170 and 180 generally represent devices configured to decode audio-visual information contained in a stream of digital audio-visual data. For example, the clients (1 - n) 160, 170 and 180 may be set top converter boxes coupled to an output display, such as a television. As shown in Figure 1, the audio-visual information delivery system 100 also includes a stream server 110 coupled to a control network 120. Control network 120 may be any network that allows communication between two or more devices. For example, control network 120 may be a high bandwidth network, an X.25 circuit, an electronic industry association (EIA) 232 (RS - 232) serial line or, preferably, an IP network. The clients (1- n) 160, 170 and 180, also coupled to the control network 120, communicate with the stream server 110 via the control network 120. For example, clients 160, 170 and 180 may transmit requests to initiate the transmission of audio-visual data streams, transmit control information to affect the playback of ongoing digital audio- visual transmissions, or transmit queries for information. Such queries may include, for example, requests for information about which audio-visual data streams are currently available for service. The audio-visual information delivery system 100 further includes a video pump 130, a mass storage device 140, a content resolver 145, a profile manager 146, and a high bandwidth network 150. The video pump 130 is coupled to the stream server 110 and receives commands from the stream server 110. The video pump 130 is coupled to the mass storage device 140 such that the video pump 130 stores and retrieves data from the mass storage device 140. The mass storage device 140 may be any type of device or devices used to store large amounts of data. For example, the mass storage device 140 may be a magnetic storage device, an optical storage device, or a combination of such devices. The mass storage device 140 is intended to represent a broad category of nonvolatile storage devices used to store digital data, which are well known in the art and will not be described further. The tasks performed during the real-time transmission of digital audio-visual data streams are distributed between the stream server 110 and the video pump 130. Consequently, stream server 110 and video pump 130 may operate in different parts of the network without adversely affecting the efficiency of the system 100. While networks 120 and 150 are illustrated as different networks for the purpose of explanation, networks 120 and 150 maybe implemented on a single network. In addition to communicating with the stream server 110, the clients (1 - n) 160, 170 and 180 receive information from the video pump 130 through the high bandwidth network 150. The high bandwidth network 150 may be any type of circuit-style network link capable of transferring large amounts of data. For example, in a preferred embodiment, the high bandwidth network 150 is an IP network. The audio-visual information delivery system 100 of the present invention permits a server, such as the video pump 130, to transfer large amounts of data from the mass storage device 140 over the high bandwidth network 150 to the clients (1 - n) 160, 170 and 180 with minimal overhead, h addition, the audio-visual information delivery system 100 permits the clients (1 - n) 160, 170 and 180 to transmit requests to the stream server 110 using a standard network protocol via the control network 120. In one embodiment, the underlying protocol for the high bandwidth network 150 and the control network 120 is the same. The stream server 110 may consist of a single computer system, or may consist of a plurality of computing devices configured as servers. Similarly, the video pump 130, content resolver 145, and profile manager 146 may each consist of a single server device, or may include a plurality of such servers. The blocks of Figure 1, such as stream server 110, tag file generator 112, video pump 130, downstream manager 131, content resolver 145, and profile manager 146, represent logical functions and are shown separately for ease of explanation. The functions can be integrated as part of a larger functional module or can be separately callable modules. To receive a digital audio-visual data stream from a particular digital audio-visual file, a client (1 - n) 160, 170 or 180 transmits a request. According to one embodiment, the stream server 110 receives the request, h response to the request, the stream server 110 transmits the request to the content resolver 145. hi another embodiment, the request is received directly by the content resolver 145. The content resolver 145 determines how to service the request by accesses a user profile 148 for the particular requesting user. A user profile 148 is a collection of information about a particular user and is stored in the profile manager 146. h one embodiment, a user profile 148 is established for each user using the system 100. For example, a family of four members with one client 160 to watch a digital presentation would each be assigned a separate user profile 148. Thus, each user in the family would have a separate user profile 148. In this case, each member of the family would identify themselves to the system 100 using a username and password combination, or other well-known means in the art to establish identity. In another embodiment, a user profile 148 is established for each client 160. hi the above example involving the family of four, only one user profile 148 would be established corresponding to the family's one client 160. After the content resolver 145 determines how to service the request, the content resolver 145 transmits information identifying both the content of the digital audio-visual data stream and the particular requesting user to the stream server 110. The stream server 110 transmits commands to the video pump 130 to cause video pump 130 to transmit the customized digital audio-visual data stream to the requesting user. The commands sent to the video pump 130 from the stream server 110 include control information specific to the user request. For example, the control information identifies the desired digital audio-visual file, the beginning offset of the desired data within the digital audio-visual file, and the address of the client. In order to create a valid digital audio-visual stream at the specified offset, the stream server 110 may also send "prefix data" to the video pump 130 and may request the video pump 130 to send the prefix data to the client. Prefix data is data that prepares the client to receive digital audio-visual data from the specified location in the digital audio-visual file. The video pump 130, after receiving the commands and control information from the stream server 110, begins to retrieve digital audio-visual data from the specified location in the specified digital audio-visual file on the mass storage device 140. The video pump 130 transmits any prefix data to the client, and then seamlessly transmits digital audio-visual data retrieved from the mass storage device 140 beginning at the specified location to the client via the high bandwidth network 150. The requesting client receives the digital audio-visual data stream, beginning with any prefix data. The client decodes the digital audio-visual data stream to reproduce the audio- visual sequence represented in the digital audio- visual data stream. The operation of providing personalized digital content to a requester will now be described with reference to Figure 2. In one embodiment, shown in step 202, the particular user sends a signal to the stream server 110 to request a particular digital audiovisual data stream. The stream server 110 transmits data that identifies the requested data stream and may send a user identifier 181 that identifies the requesting user to the content resolver 145. A user identifier 181 is a unique identification tag for a user. Thus, each user will have a different user identifier 181. Alternatively, if the stream server 110 does not send the user identifier 181, then the control network 120 may determine the user identifier 181. In another embodiment, also shown in step 202, the request for a particular digital audio-visual data stream is received directly by the content resolver 145. Information identifying the particular user is available in the request to allow the content resolver 145 to generate the user identifier 181. The content resolver 145 is responsible for determining how to service a request for content by a particular user. For example, the content resolver 145 determines what additional digital audio-visual content, if any, should be sent or removed with the requested digital audio-visual data stream to the particular client (1 - n) 160, 170, or 180. As shown in step 204, the content resolver 145 transmits the user identifier 181 to the profile manager 146. The profile manager 146 stores information pertaining to the users of clients (1 - n) 160, 170, and 180. Such information may include, for example, their identity, purchasing habits, service status, and viewing preferences. The functionality of the profile manager 146 maybe accomplished through the employment of , a data storage system. Such data storage systems, such as a relational database, are well known to those in the art, and will not be discussed further. The sum of information available from the profile manager 146 on a particular user is called the user profile 148. Information stored for a particular user can be retrieved using the user identifier 181, as shown in step 206. For example, if a relational database is used, then the user identifier 181 is used as a primary key to retrieve the user profile 148. Information about users stored in the user profile 146 can be imported from any source. As more information about a user enables a higher degree of customized content, it is advantageous to import information about a user into the profile manager 146 from as many sources as possible. For example, information about a user may be imported from other software applications, databases, or augmented over time based upon interaction history with the stream server 110. As shown in step 208, the content resolver 145 uses the information obtained in the user profile 148, in accordance with a set of stored rules 149, to tailor any additional audio-visual content to the demographics of the requesting user. For example, if a user profile 148 indicates that the requesting user is an adult male and has recently purchased a truck online, then the content resolver 145 may include a commercial for the Club®, an automobile theft deterrent device, in the audio-visual data stream sent to the requesting user. Alternately, if the user profile 148 indicates that the requesting user is a married individual with a 1 -year-old child who has a birthday within the next month, then the content resolver 145 may include a commercial for children's clothes in the audio-visual data stream sent to the requesting user. Alternately, if the user profile 148 indicates that the requesting user has paid for premium service, then the content resolver 145 might not include any commercials at all in the audio-visual data stream sent to the requesting user. Further, if the user profile 148 indicates that the requesting user is tardy on his bill, then the content resolver 145 may include a reminder notice at the beginning of the audio-visual data stream sent to the requesting user, or not send the audio-visual data stream to the requesting user at all. The content resolver 145 can be configured to selectively remove content from the original presentation. For example, if a user profile 148 indicates that the requesting user has young children, then the content resolver 145 may cut particular objectionable scenes from a requested movie with an R rating to effectively give the movie a PG rating. Alternately, content resolver 145 may cut or replace objectionable audio segments that contain profanity with alternative audio tracks or with closed-captioned information. As described above, the content resolver 145 can be configured by a set of stored rules 149 to use the information in the user profile 148 to customize any additional content to include in the audio-visual data stream sent to the requesting client (1 - n) 160, 170, or 180. The above examples use the addition of one commercial for illustration purposes only. The content resolver 145 may be configured to send or remove as many segments of additional content as expressed in the set of stored rules 149. The set of stored rules 149 allows for much flexibility. The set of stored rules 149 defined in the content resolver 145 may consider information external to the information contained in the profile manager 146, such as time of an event, weather, or season. Also, the rules defined in the content resolver 145 maybe given different weights, enabling certain criteria to be given more consideration than others. Default settings can be established using the set of stored rules 149 to resolve content in a certain manner. For example, sample defaults a content resolver 145 might be configured to provide could include showing specific commercials, showing movie trailers or previews at the beginning of each digital movie, or displaying close captioned text in a specific language, such as English. A particular user could indicate in his or her user profile 148 particular preferences regarding the display of digital video. For example, a particular user might prefer to watch a movie in letterbox version, if available. By storing this information in the user profile 148 of the particular user, the content resolver 145 can indicate to the stream server 110 that the letterbox version of the requested digital content be transmitted to the client. Conversely, if that same user does not have a preference in his or her user profile 148 for viewing letterbox movies, a standard version of the requested content is sent. Figure 3 depicts another example of storing client preferences in the user profile 148 to tailor the digital media presentation. Client A 510, client B 520, and client C 530 are shown requesting the movie "The Matrix" from the control network 120. The user of client A speaks English, the user of client B speaks French, and the user of client C prefers watching movies with Spanish subtitles. The users of client A 510, client B 520, and client C 530 have each recorded their preferences in each of their corresponding user profiles 148. When the users of client A 510, client B 520, and client C 530 make the same request from the control network 120 to watch "The Matrix," the content resolver 145 in each case resolves the request differently. The user of client A 510 would be sent a digital data stream from the high bandwidth network 150 with an audio track in English, while the user of client B 520 would be sent a digital data stream from the high bandwidth network 150 with an audio track in French, and the user of client C 530 would be sent a digital data stream from the high bandwidth network 150 with close captioned text in Spanish. This example assumes that the different audio, video, and close captioned information are available in storage 140. Thus, a particular user's request for digital media is resolved in the content resolver 145 according to the user's preferences recorded in the corresponding user profile 148. As mentioned previously, the content resolver 145 may add or remove content when configuring the requested audio-visual data stream. In one embodiment, the added or removed content represents bounded segments of time in the presentation. For example, a commercial of three minutes maybe added or 1.24 minutes of content maybe removed. In another embodiment, the added or removed content may be limited to a particular audio track or segment of video content in the presentation. For example, an additional sound track may be added or a portion of objectionable content removed. As shown in step 210 in Figure 2, after the content resolver 145 has determined what additional content to include in the audio-visual data stream, the content resolver 145 transmits the logical content to the stream server 110. The stream server 110 transmits commands to the video pump 130 to cause the video pump 130 to transmit the customized digital audio-visual data stream to the client (1 - n) 160, 170, or 180. hi the foregoing specification, the invention has been described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.

Claims: WHAT IS CLAIMED IS: 1. A method for constructing a digital data stream from a media server for a user, comprising: receiving a request for specified content by said user; consulting a user profile associated with said user; determining the composition of said digital data stream based upon said user profile and said specified content; and constructing said customized digital data stream. 2. The method of claim 1, further comprising the step of delivering said customized digital data stream to said user. 3. The method of claim 2, wherein said step of delivering said customized digital data stream to said user is performed over a network in real time. 4. The method of claim 2, wherein said step of delivering said customized digital data stream to said user comprises: storing said customized digital data stream in a fixed storage medium; and allowing said user to access said fixed storage medium. 5. The method of claim 1 , wherein said step of determining the composition of said digital data stream comprises: removing one or more segments of digital video from said specified content based upon said user profile. 6. The method of claim 5, wherein said segment of digital video corresponds to a portion of said specified content occurring between two intervals in time. 7. The method of claim 5, wherein said segment of digital video corresponds to a subset of audio or visual information found in said specified content. 8. The method of claim 1 , wherein said step of determining the composition of said digital data stream comprises: inserting one or more segments of digital video external from said specified content based upon said user profile. 9. The method of claim 8, wherein said segment of digital video external from said specified content contains both audio and visual information. 10. The method of claim 8, wherein said one or more segments of digital video are presented to said user concurrently with said specified content. 11. The method of claim 1 , wherein said step of determining the composition of said digital data stream comprises: inserting a first set of audio or visual information external from said specified content based upon said user profile, wherein said first set of audio or visual information may, but need not, include both audio and visual information; and deleting a second set of audio or visual information resident within said specified content based upon said user profile, wherein said second set of audio or visual information may, but need not, include both audio and visual information. 12. The method of claim 11 , wherein said first set of audio or visual information includes frames of digital video. 13. The method of claim 11 , wherein said second set of audio or visual information corresponds to a subset of audio and visual information resident in said specified content that said user indicates in said user profile should not be used in constructing said customized digital data stream. 14. A method for sending a customized data stream to a client from a digital media server, comprising the steps of: at a stream server, receiving a request for a digital data stream from said client, transmitting data that identifies said digital data stream and a user identifier from said stream server to a content resolver, at said content resolver, determining which content to include in said customized digital data stream to send to said client based upon said user identifier, said data that identifies said digital data stream, and a set of stored rules; transmitting data that indicates wliich content to include in said customized digital data stream from said content resolver to said stream server; and transmitting said customized digital data stream to said client. 15. The method of claim 14, wherein said set of stored rules are configured to consider at least one member selected from the group consisting of: identity of the user, purchasing habits of the user, service status, or viewing preferences indicated in a user profile. 16. The method of claim 14, wherein said step of determining which content to include in said customized digital data stream includes: inserting or removing said content based upon said user identifier, wherein said content is at least one member selected from the group consisting of advertisements, personalized statements regarding said client's bill, and information regarding special promotions. 17. The method of claim 14, wherein said content of said customized digital data stream contains audio or video information physically stored in more than one file. 18. The method of claim 14, wherein said content of said customized digital data stream includes video information corresponding to closed captioned text in a language indicated in said user profile. 19. The method of claim 14, where said content of said digital data stream includes audio translations in a language indicated in said user profile. 20. The method of claim 14, where said content of said digital data stream includes video information corresponding to a letterbox version of said requested digital data stream. 21. A computer-readable medium carrying one or more sequences of instructions for constructing digital content from a media server for a user, wherein execution of the one or more sequences of instructions by one or more processors causes the one or more processors to perform the steps of: receiving a request for specified content by said user; consulting a user profile associated with said user; determining the composition of digital data stream based upon said user profile and said specified content; and constructing said customized digital data stream. 22. The computer-readable medium of claim 21, further comprising the step of delivering said customized digital data stream to said user. 23. The computer-readable medium of claim 22, wherein said step of delivering said customized digital data stream to said user is performed over a network in real time. 24. The computer-readable medium of claim 22, wherein said step of delivering said customized digital data stream to said user comprises: storing said customized digital data stream in a fixed storage medium; and allowing said user to access said fixed storage medium. 25. The computer-readable medium of claim 21, wherein said step of determining the composition of said digital data stream comprises: removing one or more segments of digital video from said specified content based upon said user profile. 26. The computer-readable medium of claim 25, wherein said one or more segments of digital video corresponds to a portion of said specified content occurring between two intervals in time. 27. The computer-readable medium of claim 25, wherein said one or more segments of digital video corresponds to a subset of audio or visual information found in said specified content. 28. The computer-readable medium of claim 21 , wherein said step of determining the composition of said digital data stream comprises: inserting one or more segments of digital video external from said specified content based upon said user profile. 29. The computer-readable medium of claim 28, wherein said one or more segments of digital video external from said specified content contains both audio and visual information. 30. The computer-readable medium of claim 28, wherein said one or more segments of digital video are presented to said user concurrently with said specified content. 31. The computer-readable medium of claim 21 , wherein said step of determining the composition of said digital data stream comprises: inserting a first set of audio or visual information external from said specified content based upon said user profile, wherein said first set of audio or visual information may, but need not, include both audio and visual information; and deleting a second set of audio or visual information resident within said specified content based upon said user profile, wherein said second set of audio or visual information may, but need not, include both audio and visual information. 32. The computer-readable medium of claim 31 , wherein said first set of audio or visual information includes frames of digital video. 33. The computer-readable medium of claim 31 , wherein said second set of audio or visual information corresponds to a subset of audio and visual information resident in said specified content that said user indicates in said user profile should not be used in constructing said customized digital data stream. 34. A computer-readable medium for sending a customized data stream to a client from a digital media server, comprising the steps of: at a stream server, receiving a request for a digital data stream from said client, transmitting data that identifies said digital data stream and a user identifier from said stream server to a content resolver, at said content resolver, determining which content to include in said customized digital data stream to send to said client based upon said user identifier, said data that identifies said digital-data stream, and a set of stored rules; transmitting data that indicates which content to include in said customized digital data stream from said content resolver to said stream server; and transmitting said customized digital data stream to said client. 35. The computer-readable medium of claim 34, wherein said set of stored rules are configured to consider at least one member selected from the group consisting of: identity of the user, purchasing habits of the user, service status, or viewing preferences indicated in a user profile. 36. l The computer-readable medium of claim 34, wherein said step of determining which content to include in said customized digital data stream includes: inserting or removing said content based upon said user identifier, wherein said content is at least one member selected from the group consisting of advertisements, personalized statements regarding said client's bill, and information regarding special promotions. 37. The computer-readable medium of claim 34, wherein said content of said customized digital data stream contains audio or video information physically stored in more than one file. 38. The computer-readable medium of claim 34, wherein said content of said customized digital data stream includes video information corresponding to closed captioned text in a language indicated in said user profile. 39. The computer-readable medium of claim 34, where said content of said digital data stream includes audio translations in a language indicated in said user profile. 40. The computer-readable medium of claim 34, where said content of said digital data stream includes video information corresponding to a letterbox version of said requested digital data stream. 41. A system configured to present customized content from a media server to clients, the apparatus comprising: a video storage area, wherein said video storage area has stored thereon at least a portion of digital video; a video server, coupled to said video storage area, wherein said video server is configured to send video streams to said clients; a profile manager, wherein said profile manager stores profiles about particular users; and a content resolver, coupled to said video server and profile manager, wherein said content resolver is configured to customize said video stream for said particular users based upon said profiles about said particular users. 42. The apparatus of claim 41, wherein said content resolver is configured to selectively remove or insert content from said video stream. 43. The apparatus of claim 42, wherein said content resolver is configured to selectively remove or insert content according to intervals in time. 44. The apparatus of claim 42, wherein said content resolver is configured to selectively remove or insert content corresponding to audio or visual data presented in said video stream. 45. The apparatus of claim 41, wherein said content resolver is configured to customize said video stream for said particular users based upon said profiles about said particular users by including video information corresponding to closed captioned text in a language indicated in said user profile. 46. The apparatus of claim 41, wherein said content resolver is configured to customize said video stream for said particular users based upon said profiles about said particular users by including audio translations in a language indicated in said user profile. 47. The apparatus of claim 41, wherein said content resolver is configured to customize said video stream for said particular users based upon said profiles about said particular users by including video information corresponding to a letterbox version of said requested digital data stream.

Inventors: PAWSON DAVID, PAWSON, DAVID
Applicants: ORACLE CORP, ORACLE CORPORATION
Application year: 2001
Main classification: H04N7
IPC codes: G06F17, G06Q30, H04N7