Adaptive video on-demand system and method using tempo-differential file transfer
Claim Score by NHIP
Abstract
A video-on-demand (VOD) system is disclosed and method for providing a real-time VOD experience using Tempo-Differential file transfer with various buffering techniques and an adaptive file distribution system. The system is configured to populate users' Set-Top-Boxes (STBs) with a set of videos which correspond to the individual user's preferences, and populates a Central Office Storage (COS) server with a larger set of videos based on an analysis of all of the users' preferences. The system thus provides a real time VOD service by either correctly predicting the videos that a user will request and preloading them onto that user's STB, or by delivering the requested video from the COS to the STB using a Tempo-Differential file transfer which delays the playing of the requested video while video trailers or other information is displayed on the video screen. When using a DSL connection to the COS, only a portion of the requested video needs to be buffered on the STB before the requested video begins playing. Accordingly, by predicting which videos a user will request and by using the Temp-Differential file transfer, a real time VOD experience is achieved.

Term
Term ended
Projected expiry passed 28 June 2021, 5.2 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
20 claims: 4 independent, 16 dependent
- 1A method of transferring audio-video data, comprising:receiving a plurality of audio-video data files on at least one remote memory device from at least one data repository;automatically selecting a plurality of groups of files from the plurality of audio-video data files and transferring each group to corresponding ones of a plurality of local memory devices coupled to the at least one remote memory device, wherein the plurality of audio-video data files is automatically selected and transferred from the at least one data repository in accordance with a result of an analysis of profiles of each of the plurality local memory devices, and wherein each group of files to be transferred to corresponding ones of the plurality of local memory devices is selected according to the profile of the corresponding local memory device to which it will be transferred.
- 10Broadest claimClaim Score 58, broad(NHIP)A video-on-demand file transfer system, comprising:at least one set top box (STB), configured to maintain a list of available data and store a first prescribed portion of the available data;at least one central office storage and processing device (COS), communicatively coupled to the at least one STB, and configured to store a second prescribed portion of the available data and maintain a database of activity of the at least one STB;and a main storage facility, communicatively coupled with the at least one COS, configured to store all of the available data, wherein the first and second prescribed portions of the available data are selected based on at least one of user and community interest profiles.
- 14A method of achieving real time video on demand using Tempo-Differential file transferring, comprising:receiving a request from a user to view a video;determining if the requested video is stored on the user's set top box (STB) memory;initiating a download of the requested video to the user's STB memory if the requested video is not stored in the user's STB;prompting the user to input or confirm user information using the STB as an input device and a video screen as an output device, wherein the time used to input or confirm user information comprises a first period of time;displaying initial information on the video screen for a second period of time;at least partially buffering the requested video in the user's STB memory during the first and second prescribed periods of time;and displaying the selected video on the video screen while completing the download of the requested video.
- 20A method of achieving real time video on demand (VOD), comprising:populating a Central Office Storage Device with a first set of video recordings in accordance with an analysis of a plurality of user's viewing preferences;populating a user's Set-Top-Box with a second set of video recordings in accordance with a profile of that user's preferences, the second set being a sub-set of the first set;receiving a request from the user to view a video;determining if the requested video is currently stored on the user's STB;initiating a download of the requested video from the COS to the user's STB if the requested video is not currently stored in the user's STB;prompting the user to input or confirm user information using the STB as an input device and a video screen as an output device, wherein the time used to input or confirm user information comprises a first period of time;displaying initial information on the video screen for a second period of time;at least partially buffering the requested video in the user's STB memory during the first and second prescribed periods of time;displaying the selected video on the video screen while completing the download of the requested video;and updating the user's preferences in accordance with the request to view a video.
Independent claims4
139 paragraphs in 4 sections, as filed
[0001] Priority of Provisional Application Serial No. 60/259,872, filed on Jan. 8, 2001 is claimed under 35 U.S.C. 119(e), the entire disclosure of which is incorporated herein by reference.
BACKGROUND OF THE INVENTION
[0002] 1. Field of the Invention
[0003] The present invention relates to a video-on-demand system, and more particularly to a video-on-demand system capable of providing a real-time video-on-demand experience using Tempo-Differential file transfer using buffering techniques, and an Adaptive File Distribution System.
[0004] 2. Background of the Related Art
[0005] A related art video-on-demand system typically includes a user terminal and a remote video server. The remote video server is typically located within a cable company facility or a Central Office. The user terminal is configured to control a video selection process. It includes a communication unit, a memory, and a video signal decoder. A user selects a desired video by inputting commands for looking up and selecting the video. The communication unit then exchanges data with the remote video server through a communications network, such as a cable system or the Internet, and receives coded data of the selected video. The coded data delivered from the server is either buffered or stored in the terminal memory to be decoded by the video signal decoder for immediate viewing.
[0006] In the related art video-on-demand system, when a user requests a video, the remote video server receives the request and must then access the desired video from remote memory. Then the remote server retrieves the requested video data and begins delivery to the user. The video data received by the user is stored in the terminal memory and video signals are reproduced by the video signal decoder from the coded data.
[0007] In this sense, the related art video-on-demand server is essentially a remote video recorder on which a selected video is played back. The related art video-on-demand environment requires the use of large capacity data storage devices that send or “stream” requested videos to users on an “as selected” basis. That is, video data is transferred to the user only when a particular video is selected. Accordingly, the server must store a large number of videos to accommodate the preferences of a wide variety of users, and must always maintain enough bandwidth to deliver the videos to the users in real time.
[0008] The related art video-on-demand systems deliver video streams directly from the head-end video processors. Accordingly, the related art systems are bandwidth and video processor intensive at the video head-end. The video-on-demand systems require massive computing power for the interactive delivery of video information to the users. Additionally, a high bandwidth for channel downstream, and at least a low bandwidth upstream channel, are required to allow a user to interact with the remote video server to control video delivery options, such as video selection or other programming options. Accordingly, the related art video-on-demand system is inefficient, expensive, and a non-scalable true realtime video-on-demand experience.
[0009] The above references are incorporated by reference herein where appropriate for appropriate teachings of additional or alternative details, features and/or technical background.
SUMMARY OF THE INVENTION
[0010] An object of the invention is to solve at least the above problems and/or disadvantages and to provide at least the advantages described hereinafter.
[0011] It is an object of the present invention to provide a video-on-demand system and method that substantially obviates problems caused by disadvantages in the related art.
[0012] It is another object of the present invention to provide a video-on-demand system and method that substantially obviates problems due to limitations in the related art.
[0013] It is another object of the present invention to provide a real-time video-on-demand system and method over a broadband network infrastructure, or an Internet infrastructure with guaranteed bandwidth.
[0014] It is another object of the present invention to provide a real-time video-on-demand system and method to Digital Subscriber Line (DSL) customers.
[0015] It is another object of the present invention to provide a cost effective and scalable video-on-demand system and method using an integrated delivery solution.
[0016] It is another object of the present invention to provide a video-on-demand system and method that uses an integrated hierarchical network design and adaptive file transfer features.
[0017] It is another object of the present invention to provide a video-on-demand system and method that uses Tempo Differential file transfer design to achieve real-time video-on-demand.
[0018] It is another object of the present invention to provide a hierarchical real-time video-on-demand system and method using a Set-top box (STB), Central Office Storage (COS), and a Video Warehouse (VW), which are communicatively coupled.
[0019] In order to achieve at least these objects in whole or in parts, there is provided a method of transferring MPEG files on demand, maintaining a first set of MPEG data on at least one COS device, pushing a plurality of second sets of data from the at least one COS device to a corresponding plurality of STBs in accordance with a plurality of user profiles, and pushing a plurality of third sets of data from at least one COS device to corresponding ones of the plurality of STBs in accordance with the plurality of user profiles, wherein the first set of data comprises data that is likely to be requested by the plurality of STBs, and wherein the second and third sets of data comprise data that is likely to be requested by a corresponding one of the plurality of STBs.
[0020] In order to further achieve at least these objects in whole or in parts, there is provided a data on demand file transfer system, comprising, at least one set top box (STB), configured to maintain a list of available data and store a first prescribed portion of the available data, at least one Central Office Storage and processing device (COS), communicatively coupled to at least one STB, and configured to store a second prescribed portion of the available data and maintain a database of activity of at least one STB, and a main storage facility, communicatively coupled with at least one COS, configured to store all of the available data, wherein the first and second prescribed portions of the available data are selected based on at least one of user and community interest profiles.
[0021] Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objects and advantages of the invention may be realized and attained as particularly pointed out in the appended claims.
BRIEF DESCRIPTION OF THE DRAWINGS
[0022] The invention will be described in detail with reference to the following drawings in which like reference numerals refer to like elements wherein:
[0023]FIG. 1 is a drawing illustrating a video-on-demand (VOD) Network Architecture, according to a preferred embodiment of the present invention.
[0024]FIG. 2 is a drawing illustrating an adaptive VOD File Control System, according to a preferred embodiment of the present invention.
[0025]FIG. 3 is a drawing illustrating a process of interacting with the VOD system, according to a preferred embodiment of the present invention.
[0026]FIG. 4 is a drawing illustrating a process of selecting the titles on the P500 list, according to a preferred embodiment of the present invention.
[0027]FIG. 5 is a drawing illustrating a process of selecting the titles on the T10 list, according to a preferred embodiment of the present invention.
[0028]FIG. 6 is a drawing ______
[0029]FIG. 7 is a drawing ______
DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS
[0030] The Adaptive Video-On-Demand (VOD) File Control System according to the preferred embodiment serves two primary objectives. First, the system provides subscribers with a real-time VOD experience, preferably using an adaptive or self-learning file transfer method and a Tempo-Differential file transfer and delivery method. That is, instead of delivering video streams directly from a head-end video processor, the system, either in whole or in parts, preloads a selection of videos on a subscriber's set top box (STB) based on a usage profile, and additionally provides a method to download and play other videos whenever the subscriber wants. Thus, the subscriber's STB preferably completes the video file transfer initiated prior to actual play, but is also capable of processing the video file transfer while the subscriber is viewing the video being transferred.
[0031] Second, the preferred embodiment allows a service operator to establish an economically scalable VOD service to subscribers, without requiring substantial bandwidth purchases and massive capital expenditures typically required for head-end video processors. The subscriber, for purposes of example, is assumed to be a xDSL subscriber, but any communication service could be used.
[0032] Unlike other VOD system designs, the Adaptive File Control System disclosed herein preferably operates in a three-level interactive topology to push data (such as videos) in a cascade fashion directly to the subscriber's STB. Pushing is the act of automatically initiating a video file transfer without the video having actually been ordered. The adaptive method ensures that the videos most likely to be selected by any user will be pushed to the user's STB, preferably pre-loaded onto the user's STB. Thus the number of “missed” (unavailable locally) videos will be reduced, and the videos likely to be selected will be already on the STB or on the device closest to the subscriber, (for example, the COS) thereby reducing the cost of video delivery.
[0033] The Adaptive VOD File Control System according to a preferred embodiment of the present invention is illustrated in FIG. 1, and uses a hierarchical network design. Referring to FIG. 1, the system preferably includes a video warehouse (VW) <b>102</b>, a Central Office Storage (COS) <b>126</b>, and a user/subscriber set-top-box (STB) <b>140</b>.
[0034] The VW <b>102</b> preferably stores any number of video data files. These data files could be stored on any medium suitable for storing data, such as a hard drive, electronic buffer, or optical storage media. The VW <b>102</b> preferably includes a high speed connection to the internet <b>110</b>, as well as a satellite communication uplink link <b>106</b> and satellite communications downlink <b>120</b>. It is possible also that the VW <b>102</b> be a “mirror” site. That is, the video data could be stored at remote locations, with the VW <b>102</b> serving as a conduit to channel data to the various COSs <b>126</b>. Additionally, there could be several Vws <b>102</b>, each having a different selection of data, and each in communication with the various COSs <b>126</b>. Finally, it is possible for the VW <b>102</b> to be in direct connection with user's STBs <b>140</b>. Any communications link could be used for such a connection.
[0035] The COS <b>126</b> is preferably located in a Central Office <b>116</b>, which is communicatively coupled via satellite <b>108</b> over satellite paths <b>106</b>, <b>120</b>. The VW <b>102</b> thus sends video data stored therein to the COS <b>126</b> over the satellite links <b>106</b>, <b>120</b>. Alternatively, the VW <b>102</b> could send the video data files to the COS <b>126</b> through the Internet <b>110</b>. Accordingly, if the satellite <b>108</b> should lose communication with either or both of the VW <b>102</b> and the satellite antenna <b>118</b> at the Central Office <b>116</b>, video files could still be transferred over the Internet <b>110</b>. It should be understood that the COS <b>126</b> could be any type of storage device or medium, for example, a large capacity high speed hard drive.
[0036] The COS <b>126</b> is preferably housed in the Central Office <b>116</b>. As such, the COS <b>126</b> could be part of an integrated services system. The Central Office <b>116</b> preferably includes a router <b>124</b> coupled to the Internet <b>110</b> and an Internet Service Provider (ISP) <b>112</b>. The Central Office also includes a digital subscriber line (DSL) TV platform <b>122</b> that receives broadcast or satellite TV signals for transmission over DSL lines. The DSL TV platform <b>122</b> and the COS <b>126</b> are coupled to a digital subscriber line accessed multiplexer (DSLAM) <b>130</b> to send video data to a user's STB <b>140</b>. Although the system being described contemplates using a subscriber line, such as xDSL, it should be understood that any connection between the COS <b>126</b> (or the Central Office <b>116</b>) and the STB <b>140</b> could be used. It is preferable, however, that the connection be a high speed and high bandwidth connection. For purposes of example, a xDSL connection will continue to be described.
[0037] The STB <b>140</b> is preferably configured to be coupled to a user's television. The STB <b>140</b> includes a memory capable of storing video data files, and would preferably have a storage capacity of 40 to 50 gigabytes. Additionally, the STB <b>140</b> could be a fully integrated device, allowing a user to couple a personal computer <b>150</b>, a telephone <b>170</b>, as well as a television <b>160</b> to the STB <b>140</b>.
[0038] It should be understood that the STB <b>140</b> could be any device, including memory within a television unit, a DVD player, or Digital Video Recorder (DVR), or any PDA device that is capable of data storage and establish an appropriate communications link. Additionally, the COS <b>126</b> can likewise be any device capable of storing information. It is preferably located at a Central Office, but could be located at any remote location. Additionally, the VW <b>102</b> can be any storage medium, and can be coupled to the COS <b>126</b> in any manner, and need not be by satellite relay. For example, the COS <b>126</b> and the VW <b>102</b> could comprise a single memory and processing device. The COS <b>126</b> would thus store all of the video data available to the system, and perform usage profile analysis. In this respect, the VW <b>102</b> would not be necessary as each COS <b>126</b> would take the place of the VW. It would also be possible to eliminate the COS <b>126</b> and/or the Central Office <b>116</b> using a high-speed satellite connection to the STB <b>140</b>. Additionally, if the STB <b>140</b> were part of a mobile communications device or a PDA, then a subscriber could access data and have that data pushed to the mobile STB <b>140</b> directly from the satellite. Such a configuration could also be used for fixed location STBs, such as a home television, without needing the Central Office <b>116</b> or COS <b>126</b>.
[0039] As illustrated in FIG. 1, the system allows for multi-service integration. Thus, along with video on-demand, the system can provide Internet access, voice services, data services, and free and paid television services over xDSL. Other services are also possible, and this listing is given by way of example only. While this disclosure focuses on xDSL (ADSL and VDSL) access, the disclosed system can be configured for use with a cable modem (e.g., HFC system) or wireless broadband (e.g., Ka-band satellite) access technologies. For example, the STB <b>140</b> could be integrated into a cellular phone or wireless PDA.
[0040] The interaction among the three functional elements is illustrated in FIG. 2. Additional details of each element and an operation of the preferred embodiment are described next.
[0041] Referring to FIG. 2, the video warehouse <b>102</b> preferably includes an adaptive video file analyzer (AVA) <b>202</b>, a master community of interest database (COI-DB) <b>206</b>, a master set top box database (STB-DB) <b>208</b>, and video warehouse memory (VWn) <b>204</b>.
[0042] The master STB-DB preferably captures and analyzes rental statistics for each subscriber STB (obtained from each STB-DB <b>218</b>) and encircles the system to determine a usage profile for each subscriber.
[0043] Each COS <b>126</b> preferably includes a video file manager <b>210</b>, a community of interest database (COI-DB) <b>214</b>, as well as a storage medium <b>212</b> for storing video data. The COS <b>126</b> typically stores more video data than the individual STBs <b>140</b>, but less video data than VWm <b>204</b>.
[0044] Each STB <b>140</b> preferably includes a Video File Agent <b>216</b>, a STB-DB <b>218</b>, a video look up table (VLT) <b>220</b>, as well as various storage media. The storage media preferably
[0045] In a preferred embodiment, the VW <b>102</b> is communicatively coupled to the COS <b>126</b>, and the COS <b>126</b> is communicatively coupled to each subscriber's STB <b>140</b>. These couplings are shown as Paths 1-8 on FIG. 2. In some instances, however, it may be desirable to have a direct connection between a user's STB <b>140</b> and the VW <b>102</b>. The VW <b>102</b> preferably performs a reliable multicast file push using the satellite <b>108</b> to deliver various data to the COS <b>126</b> servers. (Path 1). The VW <b>102</b> preferably uses a multicast file transfer protocol (MFTP), although any protocol could be used.
[0046] The VW <b>102</b> preferably delivers a popular video mix of 500 videos and games to the COS <b>126</b>. Such a mix would be derived from user preferences, compiled from STB and COS statistics, and is referred to as the P500 list. Details of this list will be described hereinbelow. Next, a second, shorter list is generated at least partially from the P500 list for each user. This list preferably includes ten titles, and is referred to as the T10 list. It should be noted, however, that any number of titles could be included in the first or second list. The limitations of 500 and 10 is used for example purposes only. Additionally, any criteria could be used to determine which videos and games would be included. Moreover, different COSs (not shown) could receive different mixes of popular titles based on the associated users. The video mix preferably comprises new movie releases, short video series, and video games.
[0047] After receiving the popular P500 mix and storing the same in the P500 memory <b>212</b>, a Video File Manager (VFM) <b>210</b> within each COS <b>126</b> performs a reliable IP multicast to populate each STB <b>140</b> with the T10 videos. (Path 2). This pushing process is preferably done automatically, so that a subscriber would not need to take any action to have the STB <b>140</b> loaded with the videos. The videos would preferably be stored in the T10 memory <b>222</b>. The COS <b>126</b> System Operator or the subscriber, through the STB, could override this feature to either prevent the preloading or force the preloading.
[0048] The IP multicast is based on an Internet protocol and MFTP, and provides a method of transmitting video data to each of a plurality of STBs <b>140</b>. Although other protocols could be used depending on the medium of communication, because this example relates to xDSL, the multicast protocol is described. In the preferred embodiment, the IP multicast happens simultaneously to each STB <b>140</b> in communication with the COS <b>126</b>. Simultaneous pushing, however, is not mandatory.
[0049] In addition, the VLT <b>220</b>, which is a directory database file with the inventory of all video titles at each of the VW <b>102</b>, COS <b>126</b>, and STB <b>140</b>, is concurrently pushed to each COS <b>126</b>, and then multicast to each subscriber's STB <b>140</b> for use by the VFA <b>216</b>. The VLT <b>220</b> preferably resides on the STB <b>140</b> and is periodically updated by the VFM <b>210</b>. A subscriber, through the STB <b>140</b>, or the COS <b>126</b> System Operator, however, could either prevent the update or force an update at an unscheduled time.
[0050] Each of the described elements in the preferred embodiment will now be described in more detail with reference to FIG. 2.
[0051] The VW <b>102</b> performs a reliable multicast push, preferably using a satellite link, to deliver prescribed data to the COS <b>126</b>. (Path 1). Although this could be any data, in the preferred embodiment, the VW <b>102</b> pushes video data including a mix of most popular videos (Px), such as the 500 most popular videos (P500). The P500 video mix preferably comprises top new movie releases, short video series, and video games for the prior month, as well as all-time favorite titles. Although it is described here as the 500 most popular videos, any number of titles could be included on this list. P500 is used herein for purposes of example. Any method of determining which videos are included in the popular list can be used. For example, the determination of popular titles could be drawn from rental statistics compiled at video stores or from STB user's requests. Alternatively, titles that were popular at the box office could be assumed to be popular when they are newly released. The preferred embodiment relies on usage statistics to determine the titles with which to populate the COS <b>126</b>. Details of that process are described hereinbelow.
[0052] Additionally, in the preferred embodiment, the list of popular titles will vary from one COS <b>126</b> to another. Thus, the VW <b>102</b> will not have a single list of popular titles that it pushes; rather it will dynamically modify the list according to the COSs <b>126</b> and/or STBs <b>140</b> that are receiving the list.
[0053] The Adaptive Video File Analyzer <b>202</b> (AVA) at the VW <b>102</b> is configured to select these videos to be pushed. Over time, the actual number of video titles pushed to the COS <b>126</b> may vary from the default value of 500 videos, based on rental profiles of subscribers and the size of the COS <b>126</b>.
[0054] Each STB <b>140</b> preferably includes a Video File Agent (VFA) <b>217</b>. The VFA <b>216</b> is preferably a JAVA application, or any thin software client that resides on the STB <b>140</b> and manages the interactivity of the STB <b>140</b> with the COS <b>126</b> and the VW <b>102</b>. Each STB <b>140</b> also preferably includes a VLT <b>220</b>, listing the available titles on the STB <b>140</b>, the COS <b>126</b>, and the VW <b>102</b>.
[0055] When a subscriber requests a specific video, the following actions occur. First, the VFA <b>216</b> checks the VLT <b>220</b> to determine if a requested video is currently available on the local STB <b>140</b> or the COS <b>126</b>. (Path 3a). If the requested video title is not available on the STB <b>140</b>, but is available at the COS <b>126</b>, then a file transfer is initiated to download the requested video to the STB <b>140</b>. (Path 3b). Tempo-Differential file transfer techniques for performing this download are described hereinbelow. These Tempo-Differential techniques provide the appearance of a real-time VOD system, even though the file must be transferred from a remote location (i.e., the COS <b>126</b>). Similarly, if the video title requested is not available on the local STB <b>140</b> T10 list) or the COS <b>126</b> (P500 list), a request for the “missed” title is made to the VW <b>102</b>. (Path 3c). This request to the VW <b>102</b> is preferably made via a terrestrial Internet link <b>110</b>, using a secure connection to the VW <b>102</b>. All information on missed video titles is preferably captured by the VFM <b>210</b> for subsequent analysis by the Adaptive Video File Analyzer (AVA) <b>202</b>.
[0056] Next, the missed video file is transferred to the COS <b>126</b>. (Path 3d). The transmission is preferably done via a high-speed satellite connection. The COS <b>126</b>, in turn, delivers the requested file to the subscriber's STB <b>140</b> as described above.
[0057] In order to maximize the availability of titles on the COS <b>126</b>, a local community of interest database (COI-DB) <b>214</b> is maintained. The COI-DB <b>214</b> is preferably integrated with the VFM <b>210</b>, and is used to track the rental activity of all subscribers associated with each COS <b>126</b>. Through a file transfer managed by the VFM <b>210</b>, each COI-DB <b>214</b> for every COS <b>126</b> is periodically sent to a Master COI-DB <b>206</b> at the VW <b>102</b>. (Path 4). This transmission is preferably done over a secure terrestrial Internet link <b>110</b>.
[0058] At the VW <b>102</b>, the AVA <b>202</b> analyzes the aggregated Master COI-DB <b>206</b> for all COSs <b>126</b>. Using an intelligent algorithm, as described below, the AVA <b>202</b> continuously adapts and compiles an appropriate subgroup of popular videos to be pushed to and stored at each COS <b>126</b> based upon the Master COI-DB <b>206</b> profile analysis. This adaptive analysis function reduces the number of missed videos at the COS <b>126</b> level, thereby minimizing satellite transmission usage to the COS <b>126</b>. Such a mix would be derived from user preferences, compiled from STB and COS statistics (e.g., the STB-DB <b>218</b> and the COS-DB <b>214</b>). Details of this will be described hereinbelow. In part from this list, a second, shorter list is generated for each user. This list preferably includes ten titles, and is referred to as the T10 list. It should be noted, however, that any number of titles could be included in this second list. Additionally, any criteria could be used to determine which videos and games would be included in this list.
[0059] Through periodic IP multicast transmissions, the VFM <b>210</b> updates the VLT <b>220</b> in the STB <b>140</b> (Path 5) when the contents of the VWn storage <b>204</b>, COS storage <b>212</b>, or STB storage <b>222</b> change. In the preferred embodiment, the VLT <b>220</b> serves two functions. First, it provides subscribers with a complete inventory (i.e., a directory) of all videos available through the network. That is, it lists titles available from the T10 memory <b>222</b>, the P500 memory <b>212</b>, and the VWn <b>204</b>. Second, it determines the shortest path for video file flows, thereby minimizing the transport of video content. Specifically, the VLT <b>220</b> directs a subscriber's request to the video storage device closest to the subscriber (i.e., either the T10 memory <b>222</b> on the STB <b>140</b>, COS <b>126</b>, or the VWn <b>204</b> on the VW <b>102</b>). In this way, system efficiency is maximized.
[0060] Through a multicast transmission, the VW <b>102</b> can send various other data to any or all COSs <b>126</b>. (Path 6). For example, video trailers promoting certain other videos can be sent from the VW <b>102</b> to each COS <b>126</b>. Similarly, the COS <b>126</b> can send various other data to any or all subscribers' STB <b>140</b>. (Path 7). For example, the VFM <b>210</b> can transfer an appropriate subset of video trailers to associated STBs <b>140</b>, based upon viewing information obtained from each subscriber's STB-DB <b>218</b>.
[0061] It should be understood that the transmissions described are by way of example only, and that any time of data can be sent. Accordingly, in a situation where a PC is connected to the STB, computer programs could be transferred to the PC in a similar fashion.
[0062] Additionally, in the preferred embodiment, a file transfer managed by the VFM <b>210</b> is used to periodically send the STB-DB <b>218</b> from each STB <b>140</b> to the COS <b>126</b>, which in turn file transfers the STB-DB <b>218</b> to the VW <b>102</b> (Path 8), where the STB-DB <b>218</b> is collected into the Master STB-DB <b>208</b>.
[0063] The preferred embodiment of the present invention preferably includes three functional components. These components are an Adaptive Video File Analyzer (AVA) <b>202</b>, a Video File Manager (VFM) <b>210</b>, and a Video File Agent (VFA) <b>216</b>. Details of each of these components are described below.
[0064] The Adaptive Video File Analyzer (AVA) <b>202</b> preferably resides at the VW <b>102</b>, and is an intelligent software algorithm. In the preferred embodiment, the algorithm runs on a Unix-based server, but it could be adapted for any platform and/or operating system. The core function of the AVA <b>202</b> is to predict community and subscriber selections so that the optimal distribution of videos occurs across the network, including at the STBs <b>140</b>. By doing so, the AVA <b>202</b> enables STB-centric video processing for a scalable VOD service growth and minimizes the network bandwidth and network equipment required in providing a VOD service. The AVA <b>202</b> preferably analyzes video rental statistics collected from each COS <b>126</b>. In the preferred embodiment, the AVA <b>202</b> analysis of the COS <b>126</b> statistics is based on a community of subscribers, while the analysis of the STB <b>140</b> is based on individual interests.
[0065] The VW <b>102</b> preferably maintains an inventory list of all titles stored in the Vwn <b>204</b> memory. All video titles included on the inventory list for the VWn <b>204</b> are preferably assigned a Weighted Ranking Factor (WRF). In the preferred embodiment, every video title is analyzed and ranked based on the total number of views. Additionally, a weight is given for “all-time-favorite” and “new release” status. The steps to maintaining and updating the VWn <b>204</b> list are described next. It should be understood that any ranking system could be implemented, and that this system is given by way of example.
[0066] First, the videos are sorted from highest to lowest using a Video Number based on an aggregated Master COI-DB <b>206</b> and Master STB-DB <b>208</b> which are preferably maintained at the VW <b>102</b>. This is done according to the “Total Monthly Rentals for All COS” parameter. Video titles with the fewest number of viewings during each monthly evaluation period and below a WRF cutoff value are preferably removed from the VWn <b>204</b> memory and archived. In addition, the titles for such videos are deleted from the VWn <b>204</b> inventory list. The WRF cutoff value is the WRF for the video that has a rank of x, where x is equivalent to the total videos on the VW <b>102</b> server minus the total number of All-Time-Favorite and New Release videos. That is, the VWn <b>204</b> memory has storage capacity for x videos and games. A certain storage capacity is reserved for “all-time favorites” and new release videos. The remaining portion of the memory is available for storage of the popular or frequently used titles. It should be understood that as the storage capacity increases, so does the number of titles that can be stored.
[0067] Certain video titles are given an “All-Time-Favorite” tag and are assigned a minimum WRF that is equal to the WRF cutoff value. This minimum WRF ensures that a video with an “All-Time-Favorite” tag remains in the VWn <b>204</b> storage, even if the actual number of monthly views drops below the WRF cutoff value.
[0068] Additionally, new release video titles are given a “New Release” tag and are assigned a minimum WRF that is equal to the WRF cutoff value. Again, this minimum WRF ensures that a video with a New Release tag remains in the VWn <b>204</b>, even if the actual number of monthly views drops below the WRF cutoff value. The New Release tag could be applied to a video for any number of months after its release. After this time period, the New Release tag would be dropped and the video could be evaluated solely on frequency of use.
[0069] Other categories could be added that would ensure that certain titles remain in the VWn <b>204</b> storage. These categories could be identified and corresponding videos could be tagged. For example, “seasonal favorites” could be established for videos that are popular at particular times of the year. Any number of categories could be designated, and the tagging could be done manually or automatically.
[0070] The list of popular titles (the P500 list) can be established for each COS <b>126</b>, or for a group of COSs. In the preferred embodiment, 500 titles are stored on the COS (p500). Accordingly, the list of titles will be referred to as the P500 list. The AVA <b>202</b> preferably analyzes the Master COI-DB <b>206</b> records that were collected from each COS <b>126</b> and calculates the optimum mix of popular video titles. The final P500 mix for each COS <b>126</b> is preferably established through a multi-level analysis using video rental counts from various COI-DBs <b>214</b>, as well as video type percentages and preferred video category percentages. The P500 list <b>212</b> for each COS <b>126</b> is preferably updated on a monthly basis, and the associated videos and games are distributed to corresponding P500 memory <b>212</b> during off-hours (e.g., Sunday 02:00 to 05:00). It would be possible, however, to allow more frequent analyses and file transfers of titles. Additionally, if a service operator knew of an impending high demand for a video, the operator could manually initiate a file transfer procedure to the COS <b>126</b>. An outline of a preferred method of the P500 selection criteria is next described with reference to FIG. 4.
[0071] First, the COS Group to which each COS <b>126</b> belongs, if any, is determined (Step <b>401</b>). This is preferably based on video type and category mix and is described in more detail below. Next, the COI-DBs <b>214</b> from each COS <b>126</b> are collected and the associated data for each parameter is aggregated under the applicable COS Group (Step <b>402</b>). Then, using video rental statistics for the aggregated COS <b>126</b> group database, video titles are ranked from highest to lowest to determine a prescribed number of most popular titles for that COS <b>126</b> group (Step <b>403</b>).
[0072] Next, the lowest ranked videos from the initial P500 list <b>212</b> are deleted to allow inclusion of new release videos on the P500 list <b>212</b> (Step <b>404</b>). For example, if there are 10 new releases for the month, the 10 lowest ranked videos are removed and the 10 new releases are inserted. Also, videos with a New Release tag are removed from the initial popular titles list (Step <b>405</b>). The applicable COS <b>126</b> group video type and category percentages are then applied to the remaining number of videos in the initial P500 list to derive an Adjusted Popular Titles list (Step <b>406</b>).
[0073] At this time, quantity gaps in video type and category are identified for the Adjusted Popular Titles list for each COS <b>126</b> (Step <b>407</b>). The quantity gaps in video type and category are filled by using applicable videos from the aggregated COI-DB <b>214</b> for each COS <b>126</b> group (Step <b>407</b>). If gaps still remain, applicable videos from the VWn list with the highest WRF value are used to fill the gaps.
[0074] Next, holiday, seasonal tags, or other relevant category tags, are applied to select and add video titles to ensure they are included in the video mix at the appropriate time of year (Step <b>408</b>). The outcome is the P500 list.
[0075] Minimum percentages can be established for the various video types and categories to ensure multiple selections are available on each COS <b>126</b> for video types and categories. These percentages could preferably be derived during service trials and refined over time.
[0076] Additional techniques could be used to ensure the availability of titles for the COS <b>126</b>. For example, a COS <b>126</b> group could be established based on demographic profiles. That is, subscribers connected to each COS <b>126</b> tend to form a unique usage profile or community of interest. This information could be captured in the COI-DB <b>214</b>. Several COI-DBs may have similar profiles or usage preferences, due to similar demographics (e.g. age, sex, and ethnic background). As a result, COSs <b>126</b> can be grouped to more accurately predict video selection criteria. A purpose of this grouping is to tailor the COS storage <b>212</b> selection of videos for each COS <b>126</b>, so those subscribers could access a more relevant mix of videos from their local COS <b>126</b>. Next, the COS <b>126</b> is populated with a popular mix P500. A similar weighting scheme could be used for COS <b>126</b> populating as used for VW <b>102</b> populating.
[0077] In addition, COS <b>126</b> groupings allow the service provider to deliver tailored information such as advertising, infomercials, and movie trailers that are relevant to subscribers connected to the COS <b>126</b>. As a result, sponsors or producers can advertise highly segmented and targeted information to the various subscriber groups of the VOD service provider. For example, some COS <b>126</b> may have predominantly Hispanic Americans renting videos. The usage profiles for such Hispanic Americans could be different from predominantly Chinese American subscribers connected to another COS <b>126</b>. On the other hand, predominantly Hispanic Americans renting videos from a third COS <b>126</b> may have a similar usage profile to those of the first COS <b>126</b>.
[0078] Finally, COS <b>126</b> groupings provide a focused and more statistically significant database given the larger pool of similar subscribers. By grouping by the COS <b>126</b>, the COS storage <b>212</b> list could have less missed hits at the COS <b>126</b> when the COS storage <b>212</b> list is created, and service delivery costs can be minimized. The process of using the COI-DBs <b>214</b>, and forming groupings for COSs <b>126</b> is described next.
[0079] First, the COS <b>126</b> Group to which each COS <b>126</b> belongs is determined based on prescribed criteria, such as video type and category mix. This is preferably done on a monthly basis by comparing the video type (i.e., games, films, short video series, etc.) and category (i.e., comedy, drama, etc.) percentage mix for a COS <b>126</b> against the established percentages for the COS <b>126</b> Groups. If the actual percentage mix for a given COS <b>126</b> differs by a prescribed percentage from a COS <b>126</b> Group's established percentage mix, that COS <b>126</b> Group's percentages are used for the COS's final percentage mix. This grouping analysis preferably provides an optimum percentage mix of video types (games, short video series, and movies) and video categories (e.g., comedy, drama, etc,) to be included in the P500 <b>212</b> so that the items in the highest demand are located on the COS <b>126</b>. Based on statistical correlation results, at least two COSs are matched to a COS <b>126</b> Group.
[0080] Next, management of the COI-DB will be described. For each P500 video title stored at the COS <b>126</b>, a unique record in the COI-DB <b>214</b> would preferably be assigned. When a subscriber requests a particular P500 video title from the COS <b>126</b>, the associated COI-DB <b>214</b> record would be updated to reflect rental frequency and other statistics. Several COI-DB 214 parameters are described in Table 1. The items in Table <b>1</b> are shown as a preferred set of parameters. Different parameters could be used in place of or in addition to these to add different or more functionality. <tables id="TABLE-US-00001" num="1"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="1" colwidth="105PT" align="left" /><colspec colname="2" colwidth="112PT" align="left" /><thead><row><entry namest="1" nameend="2" align="center">TABLE 1</entry></row><row><entry /></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row><row><entry>COI-DB Parameter</entry><entry>Data</entry></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry>CO Number</entry><entry>0250</entry></row><row><entry>COS Group</entry><entry>A5</entry></row><row><entry>Video Number</entry><entry>A1111</entry></row><row><entry>Video Name</entry><entry>The Famous Movie</entry></row><row><entry>Video Type</entry><entry>Movie/Game/Short Video</entry></row><row><entry>Video Category</entry><entry>Science</entry></row><row><entry /><entry>Fiction/Comedy/Drama/</entry></row><row><entry /><entry>Adventure/Children/Instructional/</entry></row><row><entry /><entry>Adult/News/Foreign</entry></row><row><entry>Season or Holiday</entry><entry>None/Christmas/Easter/Summer/</entry></row><row><entry /><entry>Winter/Fall/Spring</entry></row><row><entry>P500 Duration (Days)</entry><entry>340</entry></row><row><entry>P500 Missed Hit Rate</entry><entry>0</entry></row><row><entry>Number of Rentals</entry><entry>15</entry></row><row><entry>Peak Rental Day</entry><entry>Friday</entry></row><row><entry>Peak Rental Time</entry><entry>8:05 PM</entry></row><row><entry>Reserved 1</entry><entry>Data 1</entry></row><row><entry>Reserved 2</entry><entry>Data 2</entry></row><row><entry>. . .</entry><entry>. . .</entry></row><row><entry>Reserved N</entry><entry>Data N</entry></row><row><entry>Video Introduction Date</entry><entry>01/11/00</entry></row><row><entry>(Master COI-DB Only)</entry></row><row><entry>New Release Tag</entry><entry>Yes/No</entry></row><row><entry>All Time Favorite Tag (Master</entry><entry>Yes/No</entry></row><row><entry>COI-DB Only)</entry></row><row><entry>Total Monthly Rentals for ALL</entry><entry>340</entry></row><row><entry>COS (Master COI-DB Only)</entry></row><row><entry>YTD Total Rentals (Master</entry><entry>7510</entry></row><row><entry>COI-DB Only)</entry></row><row><entry>Master Reserved 1</entry><entry>Data 1</entry></row><row><entry>Master Reserved 2</entry><entry>Data 2</entry></row><row><entry>. . .</entry><entry>. . .</entry></row><row><entry>Master Reserved N</entry><entry>Data N</entry></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
[0081] The VFM <b>210</b> updates and maintains the COI-DB <b>214</b> for future analysis by the AVA <b>202</b>. The AVA <b>202</b> would periodically retrieve a complete set of COI-DB <b>214</b> records associated with the P<b>500</b> video titles stored on the COS <b>126</b>. The VFM <b>210</b> then sends these records from the COS <b>126</b> to the VW <b>102</b>, where each COI-DB <b>214</b> could be aggregated into a Master COI-DB <b>206</b> for detailed analysis by the AVA <b>202</b>. In the preferred embodiment, the COS <b>126</b> is coupled to the VW <b>102</b> via a secure Internet link <b>110</b> or any secure communication medium and transmits the records over this link.
[0082] Referring back to FIG. 4, video titles included in the P500 memory <b>212</b> can be further analyzed at this point. For example, missed video hits for each COS <b>126</b> or COS Group are first identified (Step <b>409</b>). For each COS <b>126</b> or COS Group, the missed video titles are ranked from highest to lowest, to determine the top ten-percent missed video titles. (Step <b>410</b>). The top ten-percent missed video titles can then be included in the P500 list <b>212</b> for each COS <b>126</b> or COS Group.
[0083] Additionally, for each rental day, the system can determine if there are any video titles that are popular, but display an atypical viewing distribution, e.g., a short-series video viewed on one day of the week. Prior to the next viewing day, an updated P500 list <b>212</b> can be sent to the appropriate COS <b>126</b> or COS Group (Step <b>411</b>).
[0084] Finally, on a monthly basis, the AVA <b>202</b> can compare the prior month's P<b>500</b> list against the newly derived P500 list to determine which P500 videos on each COS <b>126</b> need to be added and/or deleted (Step <b>412</b>). Based on this variance analysis, the AVA <b>202</b> could send a job request to the VFM <b>210</b> directing it to delete videos from P500 memory <b>212</b> not on the latest P500 lists. Concurrently the AVA <b>202</b> could make multicast transmissions to COS <b>126</b> Groups to populate missing P500 video selections. Each COS <b>126</b> could be instructed by the AVA <b>202</b> to receive a specific multicast transmission if a particular video title is missing from its new P500 list.
[0085] To further ensure a real time VOD experience, certain titles are preloaded on the STB <b>140</b> and stored in the T10 memory <b>222</b>. These titles, the T10 list, will typically vary for each STB <b>140</b> and are based on individual user preferences. In the preferred embodiment, the STB <b>140</b> has enough storage space <b>222</b> to store at least 10 full length videos. It has further memory <b>224</b> to store other data, such as trailers, commercials, and studio logos, for example. Additionally, the STB <b>140</b> has storage space in the T10 memory <b>222</b> for at least one additional video that is not on the list. For purposes of example, the preloaded videos will be referred to as the T10 videos.
[0086] The AVA preferably uses the Master STB-DB <b>208</b> information from each subscriber, and/or an on-line subscriber questionnaire, to determine an appropriate mix of T10 videos to be pre-loaded into each STB <b>140</b>. The STB-DB <b>218</b> information is preferably collected from each subscribers' STBs <b>140</b> on a monthly basis during off-hours. The frequency of collection can be modified to accommodate varying needs. The STB-DB <b>218</b> information is then aggregated on the Master STB-DB <b>208</b> at the VW <b>102</b>. By analyzing the Master STB-DB <b>208</b>, the AVA <b>202</b> determines the T10 video mix for each STB <b>140</b> that best fits the usage profile and preferences of the subscriber. In this manner, only a relevant selection of new releases and preferred-category videos is stored in the T10 memory <b>222</b>. This reduces the load on the COS <b>126</b> file server and also minimizes the possibility that a video file would need to be fetched from the VWn <b>204</b>. Additionally, it increases the effectiveness of the real time VOD system. It should be noted that the analysis to produce the T10 list could take place at the COS <b>126</b>, at a remote analysis center, or at the VW <b>102</b>.
[0087] The T10 list is preferably divided into two sections: New Release Videos (NRV) and Preferred-Category Videos (PCV). The PCV component tailors the T10 video mix based on usage history for each subscriber. The appropriate percentage mix on each subscriber's STB <b>140</b> for NRV and PCV could vary from user to user. The percentage mix is preferably determined using a variety of factors. For example, items such as year-to-date (YTD) video rental statistics for new releases from the STB-DB (<b>218</b>), percent mix for Favorite Categories and Topics specified by subscribers through an on-line registration and/or subscriber questionnaire, or YTD video rental statistics for all videos from the STB-DB <b>218</b>.
[0088] A preferred method for analyzing and calculating the T10 list will be described with reference to FIG. 5. First, the VFM <b>210</b> collects STB-DBs <b>218</b> from each subscriber's STB <b>140</b> on a regular basis (Step <b>501</b>). For purposes of example, it is assumed that this will take place monthly. Next, the AVA <b>202</b> captures STB-DB <b>218</b> data from each VFM <b>210</b>, and creates an aggregated Master STB-DB <b>208</b> at the VW <b>102</b> of YTD video rental data (Step <b>502</b>). This aggregate preferably covers YTD data, but could analyze any block of data. Then, using the Master STB-DB <b>208</b>, the previous month's video rental list is added to the associated YTD video rental list for each STB <b>140</b> (Step <b>503</b>).
[0089] Next, individual percentages for video categories rented (e.g., science fiction, comedy, drama, etc.) for each STB <b>140</b> are calculated using the YTD video rental list (Step <b>504</b>).
[0090] Then, using the YTD video rental list that incorporates STB <b>140</b> Rented Video Records, percentages for NRV and PCV for each STB <b>140</b> are derived (Step <b>505</b>). A sample Rented Video Record is shown in Table 4. <tables id="TABLE-US-00002" num="2"><table frame="none" colsep="0" rowsep="0" pgwide="1"><tgroup align="left" colsep="0" rowsep="0" cols="10"><colspec colname="1" colwidth="28PT" align="center" /><colspec colname="2" colwidth="28PT" align="center" /><colspec colname="3" colwidth="35PT" align="center" /><colspec colname="4" colwidth="35PT" align="center" /><colspec colname="5" colwidth="28PT" align="center" /><colspec colname="6" colwidth="28PT" align="center" /><colspec colname="7" colwidth="35PT" align="center" /><colspec colname="8" colwidth="28PT" align="center" /><colspec colname="9" colwidth="35PT" align="center" /><colspec colname="10" colwidth="35PT" align="center" /><thead><row><entry namest="1" nameend="10" align="center">TABLE 4</entry></row><row><entry /></row><row><entry namest="1" nameend="10" align="center" rowsep="1" /></row><row><entry /><entry>New</entry><entry /><entry /><entry /><entry /><entry>Video</entry><entry /><entry /><entry /></row><row><entry>Video</entry><entry>Release</entry><entry>Category</entry><entry>Seasonal</entry><entry>Video</entry><entry>Studio</entry><entry>Trailer</entry><entry># of</entry><entry>Reserved</entry><entry>Reserved</entry></row><row><entry>Number</entry><entry>Tag</entry><entry>Tag</entry><entry>Tag</entry><entry>Source</entry><entry>Clip #</entry><entry>Mix #</entry><entry>Views</entry><entry>Parameter</entry><entry>Parameter</entry></row><row><entry namest="1" nameend="10" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry>C3333</entry><entry>Yes</entry><entry>Comedy</entry><entry>Christmas</entry><entry>COS</entry><entry>S676</entry><entry>VT12000</entry><entry>4</entry><entry>0</entry><entry>0</entry></row><row><entry namest="1" nameend="10" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
[0091] Titles of all new releases available to subscribers are then fetched (Step <b>506</b>), and a relevant list of NRV for each subscriber is selected based on individual preferences, which are calculated from percentages of video categories rented (Step <b>507</b>). The NRVs in each video category are prioritized based on a database of box office results or other historical viewing statistics (Step <b>508</b>).
[0092] A minimum number of NRVs are then selected from the prioritized list of all new release titles, according to each subscriber's profile, which is derived from online questionnaire responses of Favorite Categories and Topics and an analysis of the YTD video rental list for the Master STB-DB <b>208</b> (Step <b>509</b>). For purposes of example, the minimum number of NRVs is five. Next, the VWn <b>204</b> is sorted by video category and ranked in descending order by WRF to create a prioritized VWn list (Step <b>510</b>). Finally, to determine the quantity and type of PCV videos to include in the T<b>10</b> mix applicable PCV percentages are applied to the prioritized VWn list (Step <b>511</b>).
[0093] To optimize PCV selections, the YTD video rental data is analyzed to determine if specific video titles or types are rented frequently (Step <b>512</b>). For example, if the YTD list shows that “Sesame Street” videos are rented very often, then new releases of Sesame Street or any children is educational videos can be inserted into the PCV mix. Any quantity gaps in the T10 and preferably filled with additional NRVs, using the prioritized list of NRVs (Step <b>513</b>).
[0094] Other data can be preloaded onto the STB <b>140</b> as well. For example, as will be described in greater detail below, it can be advantageous to first display short preloaded video clips, such as movie trailers or advertisements, prior to showing a selected video. To increase the probability that a viewer will watch the trailers and advertisements, the preloaded trailers clips can be selected based on the subscriber's profile. This information is preferably stored in memory <b>204</b> of the STB <b>140</b>.
[0095] Based on subscriber profile information of preferred video categories and usage data in the Master STB-DB <b>208</b>, the AVA <b>202</b> preferably directs the VFM <b>210</b> to transfer a relevant subset of video trailers, clips, and advertisements to the subscriber's STB <b>140</b>. This action serves at least two purposes. First, by selecting relevant video trailers, the subscriber is more likely to have an interest in the film, and thus more likely to rent the video. Second, because of preference and relevance, the subscriber can more likely watch the video trailer in its entirety. Because the STB <b>140</b> can buffer the selected video while the trailer is playing, a higher percentage of the STB <b>140</b> local video buffer could be filled by the COS <b>126</b> or VW <b>102</b> prior to actual playing of the selected video.
[0096] In the preferred embodiment, a suite of video trailers is preferably preloaded into each STB <b>140</b> and each trailer is tagged with a video category code. The entire suite of preloaded video trailers preferably allows for approximately 60 video trailers, although any number could be used. When a subscriber selects a video, the VFA <b>216</b> preferably determines an appropriate subset of video trailers to be applied for the selected video. This allows for fewer repeats and attracts the attention of the subscriber prior to playing the selected video. The video trailer selection analysis is performed utilizing subscriber profile information, including preferred video categories, the Master STB-DB <b>208</b>, and the video category code for the selected video.
[0097] A preferred method for analyzing and selecting the video trailers is described next with reference to FIG. 6.
[0098] First, the STB-DB <b>218</b> from each subscriber's STB <b>140</b> is collected on a regular basis, for example, monthly (Step <b>601</b>). The collected STB-DBs <b>218</b> are then aggregated into the Master STB-DB <b>208</b> at the VW <b>102</b> (Step <b>602</b>). Using this information, the list of trailers to be loaded for a given STB <b>140</b> is modified to remove both already-watched trailers and trailers of videos already rented (Step <b>603</b>).
[0099] Next, a parameter for “Average Percent of Video Trailers Watched” is analyzed (Step <b>604</b>). If the average falls below a prescribed minimum, such as fifty percent, a new set of trailers are added by analyzing the YTD list of videos rented to determine the highest-ranking video category selected by the subscriber (Step <b>605</b>).
[0100] In the preferred embodiment, the COS <b>126</b> stores all trailers associated with the P500 list. Based on subscriber profile, the AVA <b>202</b> sends a list of appropriate trailers to be downloaded to each STB <b>140</b>. The VFM <b>210</b> uses the trailer list to push video trailer files from the COS <b>126</b> to the STB <b>140</b> memory for trailers <b>224</b>.
[0101] The Video File Manager (VFM) <b>210</b> preferably resides on the COS <b>126</b>. The COS <b>126</b> can be any storage medium, but is preferably a high performance server with a high-speed input/output device, a high capacity hard disk drive, a multiprocessor with high-speed bus architecture, and a high capacity Dynamic Random Access Memory and Cache. The VFM <b>210</b> provides an intelligent interface between the STB <b>140</b> and VW <b>102</b>, as well as the interaction between the COS <b>126</b> and the VW <b>102</b>. The VFM <b>210</b> preferably performs multiple functions. A description of some of the functions follows.
[0102] In the preferred embodiment, the VFM <b>210</b> performs a video cache management function. Specifically, when a file requested by a subscriber is not resident on the COS <b>126</b>, the VFM <b>210</b> acts as an intermediary to download the requested file from the VW <b>102</b>, and then transfers the data to the STB <b>140</b>. The VW <b>102</b> preferably multicasts the video file not only to the VFM <b>210</b> that initiated the request, but also to all VFM <b>210</b>s that are in the same COS Group. Additionally, the VFM <b>210</b> retains and manages the missed video titles (non-P500 list) on the COS <b>126</b> until a new P500 list is calculated by the AVA <b>202</b>, or until a prescribed time period expires. The VFM <b>210</b> also manages the storage of each P500 video on the P500 list on the COS <b>126</b>. This includes, for example, formatting the video file by chapters and storing the data in memory, such as the COS <b>126</b> hard disk <b>212</b>.
[0103] Because multiple video file transfers may occur at any given time, the VFM <b>210</b> preferably prioritizes and calculates which files are to be pushed to subscriber STBs <b>140</b>. In the preferred embodiment, this calculation is performed by tracking how much data has been transferred to each STB <b>140</b>, and analyzing each subscriber's viewing profile. The subscriber profile would identify a subscriber's viewing habits, for example, whether the viewer watches a video from beginning to end without interruption, or instead moves from chapter to chapter. The subscriber profile could be stored on the STB <b>140</b> and sent to the COS <b>126</b> when requested, or the COS <b>126</b> could maintain a database of subscriber profiles. As another alternative, the subscriber data could be stored in a remote database, e.g., the VW <b>102</b>, that the COS <b>126</b> can access, and that other applications, including third party applications could likewise access.
[0104] The VFM <b>210</b> preferably tracks memory reserved on the COS <b>126</b> for video titles missed in the P500 list. This reserved storage space preferably comprises approximately 1% of total storage on the COS <b>126</b>. The missed P500 videos are then prioritized by frequency of use for inclusion in the reserved storage space.
[0105] The VFM <b>210</b> can also manage the files pushed to the STB <b>140</b>. For example, the VFM <b>210</b> would initiate a file push to subscribers on a multicast basis. The VFM <b>210</b> preferably receives data from the VW <b>102</b> using a multicast file transfer protocol (MFTP), although any protocol could be used. Other MFTP transmissions could also be performed by the VFM <b>210</b>. For example, the VFM <b>210</b> could be instructed by the VW <b>102</b> to receive only video files that are listed on the P500 list for the applicable COS Group. Additionally, the VW <b>102</b> could multicast various subsets of video trailers for each applicable COS Group, and each VFM <b>210</b> would receive such video trailer subset. The VFM <b>210</b> would also receive the P500 list, the T10 list for each STB <b>140</b>, the Video Trailers list for each STB, and the VWn list from the AVA <b>202</b>. The VFM could further transfer T10 videos, the VWn list, and video trailers via a multicast to all STBs <b>140</b> connected to the COS <b>126</b>.
[0106] It should be noted that the COS <b>126</b> could initiate a file transfer, as could a subscriber STB <b>140</b>. Moreover, a subscriber using a remote communications device, such as a telephone, computer, or wireless communications device, could initiate the file transfer. Thus, the subscriber could determine remotely what titles were available on his STB <b>140</b>, and could request that a particular title be available at a particular time on his STB <b>140</b>. If the title were not already at the COS <b>126</b>, the COS <b>126</b> would be able to schedule a retrieval time from the VW <b>102</b>. Additionally, the requested file could be pushed to the requesting subscriber's STB <b>140</b>.
[0107] The VFM <b>210</b> also preferably provides video distribution control from the COS <b>126</b> where subscribers are connected. In the preferred embodiment, the VFM <b>210</b> server software manages the client VFA <b>216</b> software to control several features. For example, the VFM <b>120</b> would process the VFA <b>216</b> requests for video titles at the COS <b>126</b>, process the VFA <b>216</b> requests for video titles at the VW <b>102</b>, periodically send the VLT <b>220</b> to all VFAs <b>216</b> associated with the COS <b>126</b>, and retrieve STB-DB <b>218</b> records from each VFA <b>216</b>. Additionally, it could aggregate and send STB-DB <b>218</b> records (detailed usage report) to the AVA <b>202</b> for T10 selection and billing, periodically send updated T10 videos and video trailer mix to the VFA <b>216</b> based on the AVA <b>202</b> analysis, and control the flow of video file download to each VFA <b>216</b> utilizing the Tempo-Differential file transfer method. It should be understood that the VFM <b>210</b> software could also be configured to control other aspects of the system.
[0108] The VFM <b>210</b> maintains all applicable COS Group video trailers used by the associated STBs <b>140</b>. In a preferred embodiment, this would include all video trailers associated with the P500 videos stored at the COS <b>126</b>. Periodically, for example on a monthly basis, the VFM <b>210</b> would receive video trailers from the AVA <b>202</b> and a relevant video trailer list for each STB <b>140</b> to be transferred to the VFA <b>216</b>. The relevant trailers could be selected based on various criteria, such as subscriber profile information of preferred video categories, and the Master STB-DB <b>208</b>. Other aspects of the selection are described above. The VFM <b>210</b> preferably sends these video trailer files, which preferably form a subset of approximately 60 video trailers, to each STB <b>140</b> during non-peak subscriber usage hours. A subscriber, however, could request and retrieve trailers at any time using the STB <b>140</b>, or by accessing the network using any type of communications device.
[0109] The Video File Agent (VFA) <b>216</b> will now be described in more detail. The VFA <b>216</b> is preferably an interactive JAVA client that resides on the STB <b>140</b>. It could, however, be any application capable of carrying out the functions of the VFA <b>216</b>. The VFA <b>216</b> performs several functions to achieve a real-time video on-demand experience in conjunction with the VFM <b>210</b> and the AVA <b>202</b>.
[0110] One functional element of the VFA <b>216</b> is the Tempo-Differential file transfer method software. By taking advantage of the latency parameters associated with subscriber decisions and interaction, as well as the ordering/purchasing protocol, a portion or all of the requested video file is preferably pre-loaded in the subscriber's STB <b>140</b> prior to playing, thus achieving a real-time viewing experience. By interacting with a distant VFM <b>210</b>, the VFA <b>216</b> receives segments of the video file prior to subscriber viewing, and leverages the download speed differential against the play speed. The VFA <b>216</b> also leverages the initial time lag associated with the viewing of local STB <b>140</b> movie trailers (pre-pushed by the VFM <b>210</b>), the video checkout interval, and the account/billing maintenance interval.
[0111] The VFA <b>216</b> JAVA client determines the availability of a video requested by checking the STB <b>140</b> Video Lookup Table (VLT) <b>220</b>, which is periodically updated by the VFM <b>210</b>. The VLT <b>220</b> preferably comprises T<b>10</b> videos that are stored on the STB <b>140</b>, P500 videos stored on a hard disk <b>22</b> on the COS <b>126</b>, and the VWn <b>204</b> videos stored at the VW <b>102</b>. Through a hierarchical menu display, where videos at the VW <b>102</b> are on the last set of submenus, a higher priority is given to T10 <b>222</b> and P500 menus. The VWn list is provided as an additional selection option menu. A higher premium could be charged for VWn titles to encourage subscribers to choose from T10 <b>222</b> or P500 menus. Using the available list of trailers resident on the STB <b>140</b>, the VFA <b>216</b> also selects an appropriate mix of video trailers for viewing, based on usage profile of the subscriber and the category of video selected.
[0112] Detailed usage statistics are maintained by the VFA <b>216</b> using the STB-DB <b>218</b> records. The VFA <b>216</b> preferably updates the STB-DB <b>218</b> when a transaction occurs at the STB <b>140</b> (for example, a T10 video rental) or between the STB <b>140</b> and the COS <b>126</b> (for example, a P500 video rental) or the VW <b>102</b> (for example, a VWn video rental). Periodically, for example on a monthly basis, the VFM <b>210</b> requests and collects the STB-DB <b>218</b> records from the VFA <b>216</b>. A preferred set of parameters for the STB-DB <b>218</b> record is shown in Table 2. Different parameters could be used in place of or in addition to these to add different or more functionality. <tables id="TABLE-US-00003" num="3"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="2"><colspec colname="1" colwidth="98PT" align="left" /><colspec colname="2" colwidth="119PT" align="left" /><thead><row><entry namest="1" nameend="2" align="center">TABLE 2</entry></row><row><entry /></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row><row><entry>STB-DB Parameter</entry><entry>Data</entry></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row></thead><tbody valign="top"><row><entry>CO Number</entry><entry>0250</entry></row><row><entry>COS Group</entry><entry>A5</entry></row><row><entry>STB Number</entry><entry>Z0000001</entry></row><row><entry>Subscriber IDs</entry><entry>A0000001, B0000002, C0000003</entry></row><row><entry>Video Category Preference</entry><entry>Science Fiction(K)/Comedy(C)</entry></row><row><entry>P500 Missed Hit Rate</entry><entry>2</entry></row><row><entry>P500 Missed Video Number</entry><entry>K5555, K5555</entry></row><row><entry>Average Percent of Video</entry><entry>95%</entry></row><row><entry>Trailers Watched</entry></row><row><entry>Average Lag Time Between</entry><entry>7.15</entry></row><row><entry>Video Selection & Play (in</entry></row><row><entry>Minutes)</entry></row><row><entry>List of trailers watched and</entry><entry>P8888, K6666, K7777, C2222,</entry></row><row><entry>rented this month</entry><entry>A0009 . . .</entry></row><row><entry>Peak Rental Day</entry><entry>Saturday</entry></row><row><entry>Peak Rental Time</entry><entry>8:05 PM</entry></row><row><entry>Current T10 NRV List</entry><entry>A1111, B2222, C3333, D4444, E5555,</entry></row><row><entry /><entry>F6666</entry></row><row><entry>Current T10 PCV list</entry><entry>G7777, H8888, I9999, J0000</entry></row><row><entry>Active Video Rental List</entry><entry>K5555, C3333</entry></row><row><entry>(Cached either 2 days or 1 week)</entry></row><row><entry>Number of Rentals for this</entry><entry>8</entry></row><row><entry>month</entry></row><row><entry>STB Rented Video Record #1</entry><entry>xxxC3333</entry></row><row><entry>(see Table 4)</entry></row><row><entry>STB Rented Video Record #2</entry><entry>xxxG7777</entry></row><row><entry>. . .</entry><entry>. . .</entry></row><row><entry>STB Rented Video Record #N</entry><entry>xxxD4444</entry></row><row><entry>Reserved 1</entry><entry>Data 1</entry></row><row><entry>Reserved 2</entry><entry>Data 2</entry></row><row><entry>. . .</entry><entry>. . .</entry></row><row><entry>Reserved N</entry><entry>Data N</entry></row><row><entry>Membership Date (Master STB-</entry><entry>01/01/00</entry></row><row><entry>DB Only)</entry></row><row><entry>YTD Video Rentals (Available</entry><entry>22</entry></row><row><entry>on VW Master STB-DB)</entry></row><row><entry>YTD Video List (Available on</entry><entry>G2345, X6789, . . . Z0900</entry></row><row><entry>VW Master STB-DB)</entry></row><row><entry>Master Reserved 1</entry><entry>Data 1</entry></row><row><entry>Master Reserved 2</entry><entry>Data 2</entry></row><row><entry>. . .</entry><entry>. . .</entry></row><row><entry>Master Reserved N</entry><entry>Data N</entry></row><row><entry namest="1" nameend="2" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
[0113] The VFA <b>216</b> serves as an interactive control interface. That is, from the beginning to the end of a video selection, the VFA <b>216</b> manages the subscriber commands.
[0114]FIG. 3 illustrates how the VFA <b>216</b> interacts with a subscriber to provide a real-time VOD experience.
[0115] First, a movie title is selected (Step <b>301</b>). The VFA <b>126</b> then determines if the video is currently on the STB <b>140</b> (Step <b>302</b>). If the video is not currently stored on the STB <b>140</b>, the VFA <b>216</b> displays a movie checkout screen and billing verification information (Step <b>303</b>). This provides a minimum 15 seconds of buffer time. During this 15 second buffer, the requested video file download is initiated from the COS <b>126</b> or from the VW <b>102</b> to the STB video memory <b>222</b> (Step <b>309</b>). Next, after a movie checkout display, the VFA <b>216</b> provides the user with an opportunity to select administrative options (Step <b>304</b>). If the user chooses to enter the administrative options menu, the VFA <b>216</b> continues to download the selected video to the STB video buffer while performing administrative options (Step <b>310</b>).
[0116] If, however, the user opts to bypass administrative options, the VFA <b>216</b> begins playing trailers and video clips stored on the local hard drive <b>224</b> of the STB <b>140</b> (Step <b>305</b>). It is possible for the VFA <b>216</b> to either automatically begin playing the trailers, or to prompt the subscriber to begin playing the trailers. Alternatively, the user could skip over the trailers one by one, or in their entirety. While the trailers are being displayed, the file transfer of the selected video continues (Step <b>311</b>). If the subscriber opts not to play trailers or skips over them, the VFA <b>216</b> begins playing the selected video that has been buffered up until that point (Step <b>306</b>). The file transfer preferably continues at a rate faster than the play rate, such that the entire video is buffered.
[0117] If any user commands (Step <b>307</b>) are received by the VFA <b>216</b> while the video is playing, for example pause, fast forward, or rewind, then the video continues to download, if the download has not already completed (Step <b>308</b>). Various download methods are also available. Based on the subscriber's profile, the video is either downloaded from start to finish, or has portions of each chapter simultaneously downloaded, such that portions of each chapter are buffered in case the user skips to a subsequent chapter.
[0118] If, in step <b>302</b>, it is determined that the video is stored on the STB video memory <b>222</b>, then the VFA <b>216</b> displays a checkout movie screen and an account summary screen (<b>312</b>). The VFA <b>216</b> then prompts the user to either select or not select administrative options (<b>313</b>). If administrative options are selected, they are performed (<b>314</b>). Otherwise, trailers and preloaded video clips are played (<b>315</b>). Again, the user is given the option to skip over these, or skip from one to another. In the preferred embodiment, the VFA prompts the user to determine if the trailer should be played. If the user decided to play the trailers, they are played from the STB local hard drive <b>224</b> (<b>316</b>). Otherwise, the video begins playing (<b>317</b>).
[0119] In the preferred embodiment, a Tempo-Differential file transfer method is used to achieve real time video on demand. The Tempo-Differential file transfer method uses various buffering schemes to generate a time lag between when the user requests a video and when the video begins playing. In this way, the video can be downloaded while the user is interacting with other system command and response related tasks.
[0120] When used in the manner described below, the Tempo-Differential file transfer method in combination with the adaptive capabilities of the VOD system achieves a real time VOD viewing experience. The Tempo-Differential file transfer method can preferably enhance buffering, especially when the selected video is not preloaded as part of T10 videos on the STB <b>140</b> local memory <b>222</b>.
[0121] Referring to FIG. 7, the Tempo-Differential file transfer method leverages time differential factors to optimize buffering. In the preferred embodiment, two time differential factors are leveraged. The first is the subscriber decision process time delay (T<sub>o</sub>), and the second is the time delay caused by viewing preloaded generic and customized video clips (T<sub>t</sub>). The first delay factor, T<sub>o</sub>, occurs in real-time, while the subscriber interacts with the VOD system. Specifically, after the subscriber selects a video, the download begins immediately. However, the selection menus/screens require the subscriber to complete the order process. This gives the VOD system a head start on the initial buffering of the selected video while the subscriber makes the various decisions required to complete the order.
[0122] The second delay factor, T<sub>t</sub>, is inherent in a “typical” viewing protocol due to introductory video segments that always occur, in full or in part, when a video selection is made. Based on a subscriber's profile, these short video segments are preloaded into the subscriber's STB <b>140</b> local memory <b>224</b> prior to any subscriber interaction or selection of the video. When the introductory video clips are viewed, additional buffering of the selected video would continue. These two delay factors allow the system to achieve a perception of real-time VOD experience, without the subscriber having any prior knowledge that the VOD system is buffering the selected video.
[0123] The total initial time differential, T<sub>i</sub>, gained on video buffering as a result of T<sub>o </sub>and T<sub>t</sub>, is most useful when the VOD system can maintain the buffer ahead of the actual play rate. Therefore, for the VOD system to function optimally, the download rate must be consistently greater than the play rate. This requires that the video encoded rate be less than the line speed of the subscriber's connection to the COS <b>126</b>. For data transmission over a xDSL line from the COS <b>126</b> to the STB <b>140</b>, where a fully dedicated connection exists, a consistent file download rate can be maintained so that the STB <b>140</b> local video memory <b>222</b> can always be available for the STB <b>140</b> video processor. If the rate is slower, additional buffering techniques can be used to achieve the perception of a real-time VOD service. However, a near real-time VOD is possible if the line speed is less than the video encoded rate. This includes notifying the subscriber by pre-checking the line rate. If a consistent line rate is not available to provide real-time VOD, a message of when it would be available would be displayed. Thus, the viewer is informed when the video will be available for viewing. To provide a full screen VHS quality video, a minimum of MPEG2 video encoded at 2Mbps should be used. For Asymmetric Digital Subscriber Line (ADSL) service, customers within 1.51 miles of the Central Office can achieve line speeds of up to 8Mbps, depending on the modem manufacturer. Typically, a complete file download for an average 90-minute MPEG 2 video encoded at 2Mbps may require 25 minutes to download. Table 3 shows average download times (in minutes) for ADSL customers accessing various MPEG2-encoded video files. Other high speed dedicated connections, such as VDSL, will have faster download rates. ADSL is shown as an example. <tables id="TABLE-US-00004" num="4"><table frame="none" colsep="0" rowsep="0"><tgroup align="left" colsep="0" rowsep="0" cols="3"><colspec colname="OFFSET" colwidth="98PT" align="left" /><colspec colname="1" colwidth="35PT" align="left" /><colspec colname="2" colwidth="84PT" align="center" /><thead><row><entry /><entry namest="OFFSET" nameend="2" align="center">TABLE 3</entry></row></thead><tbody valign="top"><row><entry /><entry /></row><row><entry /><entry namest="OFFSET" nameend="2" align="center" rowsep="1" /></row><row><entry /><entry>MPEG2</entry><entry /></row><row><entry /><entry>Encoding</entry><entry>Video Length</entry></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="6"><colspec colname="1" colwidth="98PT" align="left" /><colspec colname="2" colwidth="35PT" align="left" /><colspec colname="3" colwidth="14PT" align="center" /><colspec colname="4" colwidth="21PT" align="center" /><colspec colname="5" colwidth="21PT" align="center" /><colspec colname="6" colwidth="28PT" align="center" /><tbody valign="top"><row><entry>ADSL Type</entry><entry>Rate</entry><entry>30</entry><entry>60</entry><entry>90</entry><entry>120</entry></row><row><entry namest="1" nameend="6" align="center" rowsep="1" /></row></tbody></tgroup><tgroup align="left" colsep="0" rowsep="0" cols="6"><colspec colname="1" colwidth="98PT" align="left" /><colspec colname="2" colwidth="35PT" align="left" /><colspec colname="3" colwidth="14PT" align="char" /><colspec colname="4" colwidth="21PT" align="char" /><colspec colname="5" colwidth="21PT" align="char" /><colspec colname="6" colwidth="28PT" align="char" /><tbody valign="top"><row><entry>Full-rate ADSL MPEG-2 Video</entry><entry>2 Mbps</entry><entry>8</entry><entry>17</entry><entry>25</entry><entry>33</entry></row><row><entry>Download (min)</entry></row><row><entry>Full-rate ADSL MPEG-2 Video</entry><entry>3 Mbps</entry><entry>12</entry><entry>24</entry><entry>36</entry><entry>48</entry></row><row><entry>Download (min)</entry></row><row><entry>Full-rate ADSL MPEG-2 Video</entry><entry>4 Mbps</entry><entry>16</entry><entry>32</entry><entry>48</entry><entry>63</entry></row><row><entry>Download (min)</entry></row><row><entry>G.Lite ADSL MPEG-2 Video</entry><entry>2 Mbps</entry><entry>44</entry><entry>89</entry><entry>133</entry><entry>178</entry></row><row><entry>Download (min)</entry></row><row><entry>G.Lite ADSL MPEG-2 Video</entry><entry>4 Mbps</entry><entry>84</entry><entry>169</entry><entry>253</entry><entry>338</entry></row><row><entry>Download (min)</entry></row><row><entry namest="1" nameend="6" align="center" rowsep="1" /></row></tbody></tgroup></table></tables>
[0124] If, as a result of time delays T<sub>o </sub>and T<sub>t</sub>, five minutes have lapsed before the selected 90 minute MPEG 2 video begins, then the VOD system could preload approximately 20% of the selected video from the COS <b>126</b> or the VW <b>102</b> on the STB <b>140</b> video memory <b>222</b>. The Tempo-Differential file transfer method can be used with other MPEG formats (e.g., MPEG1, MPEG4, or MPEG7) or any audio or video CODECs encoded at various rates and VDSL lines (up to 52Mbps). Additionally, other dedicated communication connections or network connections with guaranteed bit rate are available, and xDSL service is used by way of example only.
[0125] In order to maximize the usefulness of the Tempo-Differential delay scheme, various delay elements are used. Some of the Tempo-Differential delay elements were described above with reference to FIG. 3. Further details of these elements will now be described with reference to FIG. 7.
[0126] There are many Tempo-Differential elements that can be inserted into the VOD system to achieve a higher Tempo-Differential, T<sub>i</sub>, prior to the viewing of the selected video. The preferred embodiment includes at least the following elements. First, the time lag between screen displays (TSCREEN) is used. This is the short pause between each of the screen displays shown before the movie begins. Next, a billing verification display screen (TBILLING) is used. This screen verifies the video selection and that the subscriber accepts the amount charged for the selected video. In addition to this biling screen, there is optionally a monthly summary screen that gives the subscriber the option to view billing details for the month.
[0127] Next, there is an administrative options menu (TADMIN). This screen allows the subscriber to select various format and delivery options, such as a wide screen or standard TV screen display. Additionally, the subscriber can select filmography at this point, such as information and details about actors, producers, scenes, critiques, and product endorsements. These can be fetched by the subscriber before, during, or after the movie. Additional options include subtitles on or off, language selection, and closed caption on or off.
[0128] The next delay elements are a service provider promotional/introductory video clips (TSERVPRO), followed by preloaded video trailers (TTRAILER). The video trailer segments are preloaded in the STB <b>140</b> memory <b>224</b> in accordance with the subscriber's profile. Advertisements/product endorsement video clips (TAD) are used next to delay the selected video. These include product endorsements or advertisements relevant to the video selected by the subscriber (e.g., movie soundtracks on CD and other memorabilia). It should be noted that the subscriber need not engage in viewing any of these delay features, but that the time spent scrolling by each option is itself a delay technique.
[0129] Further delay is achieved by preloading in the STB <b>140</b> certain generic video clips that are shown with each movie. For example, the Mandatory FBI notice (TFBI) must be displayed, and movie studio or video brand clips can be pre-stored and played based on selected video (TBRAND). The above elements form a cumulative time delay T<sub>i</sub>. During this delay time, the selected video preferably continues to be downloaded. Therefore, as the delay elements proceed, data continues to be buffered on the STB video memory <b>222</b>. The subscriber may decide to skip some elements, and thereby reduce T<sub>i</sub>. However, some basic elements, such as billing confirmation for the selected video and the FBI notice, form a minimum level of T<sub>i</sub>. Other delay factors can be implemented as well, and can be selected based on a subscriber's profile.
[0130] For simplicity, the above described delay elements can be grouped into two categories. First, Subscriber Decision Process Time Delay: To=TSCREEN+TBILLING+TADMIN. Second, Preloaded Generic and Customized Video Clips Time Delay: T<sub>t</sub>=TSERVPRO+TTRAILER+TAD+TFBI+TTRAILER+TBRAND. Therefore, the total Tempo-Differential, T<sub>i </sub>is the sum of T<sub>o </sub>and T<sub>t</sub>.
[0131] It should be understood that any method could be used to introduce a time delay before video viewing begins and that the enumerated examples are not intended to be limiting. Furthermore, any such method could increase the amount of buffering that occurs, and thus could enhance the real-time VOD experience. It is also possible to preload (push) to the STB <b>140</b> several minutes of the first chapter of each video in the P500 list. This would decrease the time delay necessary, because a portion of the selected video itself would already be stored on the STB <b>140</b>. Thus, if a subscriber selects a video from the P500 list that is not already loaded on the subscriber's STB <b>140</b>, the subscriber could skip through each of the Tt delay elements and still have no interruption or perceived delay in video viewing. In this manner the Tempo-Differential file transfer method is further enhanced.
[0132] Videos transferred to the STB video memory <b>222</b> are preferably divided into c hapters. This serves at least two purposes. First, it provides the subscriber the freedom to move from chapter to chapter without having to play through the undesired video chapters. Second, the video chapters can be transferred in a non-linear, weighted distribution that is more heavily buffered in the beginning video chapters.
[0133]FIG. 7 provides a graphical illustration on how video chapters <b>701</b>, <b>702</b>, . . . N are buffered from the initial Tempo-Differential gain according to a preferred embodiment. Typically, each of the chapters is sequentially downloaded in a linear fashion. A portion of each chapter C<sub>1</sub>, C<sub>2</sub>, . . . CN, however, is downloaded in parallel, so that if a viewer skips forward to any chapter, there will be at least a small portion of that chapter already buffered. This ensures a higher probability of successful real-time VOD experience without having to wait for any buffering while the video is playing. The chapters for the selected video can be buffered linearly (each chapter gets downloaded simultaneously in equal amounts) or nonlinearly (downloading is exponentially weighted towards beginning chapters or done sequentially through the chapters) based on the subscriber's profile obtained from the STB-DB <b>218</b>.
[0134] By way of example, if a subscriber profile suggests that a particular subscriber is not likely to skip ahead in the video, but instead is likely to watch the video straight through, then very little data on subsequent chapters would be file transferred simultaneously with the first chapter. Thus, the majority of the file transfer goes to the first chapter, and then sequentially through the other chapters. This minimizes the possibility of interruption in service, and the video would be fully buffered for the subscriber to watch. A small percentage, x %, of each chapter, however, would be preloaded.
[0135] On the other hand, if a subscriber's profile indicates that the subscriber is likely to skip ahead through the chapters, then the file transfer process can begin transferring each chapter in parallel at a uniform rate so that at least the beginning of each chapter is buffered. Thus, if the subscriber skips ahead to a subsequent chapter, there would be no delay in viewing that chapter. Additionally, if the subscriber's profile indicates that once the subscriber skips to a particular chapter, the subscriber stays on that chapter, the file transfer can be dynamically reallocated to that chapter.
[0136] Additionally, as another variation of the Tempo-Differential file transfer, a subscriber could pre-select a video from any remote location using any type of communications device. For example, the subscriber could select a video to watch using a mobile telephone or other wireless communication device (e.g., pager, PDA) through a wireless web interface, or from a PC through a web page. In this way, a subscriber can choose a video and have it loaded to the STB <b>140</b> even when the subscriber is not home, and not presently able to watch the video. Then, when the subscriber is ready to watch the video, it would have been preloaded, either partially or entirely, to the STB <b>140</b>.
[0137] The preferred embodiment disclosed herein is based on two-dimensional (2D) video for VOD service. However, the video file could be in three-dimensional (3D) or holographic format for viewing by the subscriber. This could be accomplished with or without external viewing devices. Related art methods for VOD service could be cost prohibitive in offering this type of video format because such systems would require substantial video processing resources at the video head-end. On the other hand, the VOD system of the preferred embodiment leverages the video processing resources of the STB <b>140</b> to display such 3D or holographic videos using any laser optics device embedded within the STB <b>140</b>. This system would require a higher dedicated connection from the COS <b>126</b> to the STB <b>140</b>, such as VDSL (52 Mbps) or Fiber to the Home.
[0138] Moreover, the various lists of videos can be defined to meet any criteria. For example, the P500 list could be expanded to a P1000 list or reduced to a P100 list, or any size depending on the circumstances. Additionally, the same holds true for the T10 list. Similarly, the monthly operational cycle used as the preferred embodiment disclosed herein for the service could be performed on a weekly basis, or any other time frames. Additionally, while the system is described as a video on demand system, the concept can be applied to any type of data that any subscriber would require. Additionally, the Tempo Differential file transfer can be used by itself, without the other elements of the system, and each of the other elements can be used alone without the Tempo-Differential file transfer. Additionally, it should be understood that the system could be run on any type of platform using any type of operating system. The examples given in this description are by way of description only, and should not be considered as the only method to achieve the outcome. For example, the systems could be Unix based, Linux based, Mac OS based, or could be Windows based. Additionally, any hardware configuration could be used.
[0139] The foregoing embodiments and advantages are merely exemplary and are not to be construed as limiting the present invention. The present teaching can be readily applied to other types of apparatuses. The description of the present invention is intended to be illustrative, and not to limit the scope of the claims. Many alternatives, modifications, and variations will be apparent to those skilled in the art.
Contents4
10 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US2009208190A1 | Cited by | United States of America | Pre-grant |
| US2006059227A1 | Cited by | United States of America | Pre-grant |
| US2010153943A1 | Cited by | United States of America | Pre-grant |
| US7721320B2 | Cited by | United States of America | Search report |
| WO2006019819A3 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US2006221826A1 | Cited by | United States of America | Pre-grant |
| WO2010125584A2 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US2013332946A1 | Cited by | United States of America | Pre-grant |
| US8104054B2 | Cited by | United States of America | Applicant |
| CN107222756A | Cited by | China | Search report |
| US2007011747A1 | Cited by | United States of America | Pre-grant |
| US9071875B2 | Cited by | United States of America | Search report |
| US9554182B2 | Cited by | United States of America | Search report |
| US9276941B2 | Cited by | United States of America | Search report |
| US2011225268A1 | Cited by | United States of America | Pre-grant |
| EP2194689A1 | Cited by | European Patent Office (EPO) | Search report |
| US2005283811A1 | Cited by | United States of America | Pre-grant |
| US2004267602A1 | Cited by | United States of America | Pre-grant |
| US2006222008A1 | Cited by | United States of America | Pre-grant |
| US2008086750A1 | Cited by | United States of America | Pre-grant |
| US2014310819A1 | Cited by | United States of America | Pre-grant |
| GB2514701B | Cited by | United Kingdom | Search report |
| US8682857B2 | Cited by | United States of America | Applicant |
| US2008015953A1 | Cited by | United States of America | Pre-grant |
| US9166898B2 | Cited by | United States of America | Applicant |
| US9152220B2 | Cited by | United States of America | Search report |
| US2006184985A1 | Cited by | United States of America | Pre-grant |
| US2007133603A1 | Cited by | United States of America | Pre-grant |
| WO2009057159A3 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US2010185613A1 | Cited by | United States of America | Pre-grant |
| US2006251116A1 | Cited by | United States of America | Pre-grant |
| US8306033B2 | Cited by | United States of America | Applicant |
| US8335239B2 | Cited by | United States of America | Applicant |
| US2003061624A1 | Cited by | United States of America | Pre-grant |
| US2006225106A1 | Cited by | United States of America | Pre-grant |
| US2009125962A1 | Cited by | United States of America | Pre-grant |
| US8590053B2 | Cited by | United States of America | Applicant |
| CN105306974A | Cited by | China | Search report |
| US2011231764A1 | Cited by | United States of America | Pre-grant |
| GB2514701A | Cited by | United Kingdom | Search report |
| US9432710B2 | Cited by | United States of America | Applicant |
| US2004117844A1 | Cited by | United States of America | Pre-grant |
| US8701148B2 | Cited by | United States of America | Applicant |
| US2008178239A1 | Cited by | United States of America | Pre-grant |
| US2006230176A1 | Cited by | United States of America | Pre-grant |
| WO2006019819A2 | Cited by | World Intellectual Property Organization (WIPO) | Search report |
| US2008189329A1 | Cited by | United States of America | Pre-grant |
| WO2008033598A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| WO2009057159A2 | Cited by | World Intellectual Property Organization (WIPO) | Search report |
| EP2515537A4 | Cited by | European Patent Office (EPO) | Search report |
| US7926083B2 | Cited by | United States of America | Search report |
| US2011185041A1 | Cited by | United States of America | Pre-grant |
| US2008279535A1 | Cited by | United States of America | Pre-grant |
| US2008189152A1 | Cited by | United States of America | Pre-grant |
| US11463763B2 | Cited by | United States of America | Search report |
| US2008189338A1 | Cited by | United States of America | Pre-grant |
| US8443056B2 | Cited by | United States of America | Applicant |
| US2007255915A1 | Cited by | United States of America | Pre-grant |
| WO2011091331A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US8150845B2 | Cited by | United States of America | Applicant |
| US2007223635A1 | Cited by | United States of America | Pre-grant |
| US2007136772A1 | Cited by | United States of America | Pre-grant |
| US2007253675A1 | Cited by | United States of America | Pre-grant |
| US8621500B2 | Cited by | United States of America | Applicant |
| US7647464B2 | Cited by | United States of America | Applicant |
| US9538232B2 | Cited by | United States of America | Search report |
| US8098582B2 | Cited by | United States of America | Applicant |
| US10887638B2 | Cited by | United States of America | Search report |
| US2011154382A1 | Cited by | United States of America | Pre-grant |
| US8554941B2 | Cited by | United States of America | Search report |
| US2018352279A1 | Cited by | United States of America | Search report |
| US8605755B2 | Cited by | United States of America | Applicant |
| US8146129B2 | Cited by | United States of America | Search report |
| US9894011B2 | Cited by | United States of America | Applicant |
| US2010169502A1 | Cited by | United States of America | Pre-grant |
| EP2515537A1 | Cited by | European Patent Office (EPO) | Search report |
| US8925026B2 | Cited by | United States of America | Search report |
| US9497564B2 | Cited by | United States of America | Search report |
| WO2010125584A3 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US2007255913A1 | Cited by | United States of America | Pre-grant |
| US7975283B2 | Cited by | United States of America | Applicant |
| US2006195875A1 | Cited by | United States of America | Pre-grant |
| US9721110B2 | Cited by | United States of America | Applicant |
| US2009133084A1 | Cited by | United States of America | Pre-grant |
| US2007294717A1 | Cited by | United States of America | Pre-grant |
| US10075752B2 | Cited by | United States of America | Search report |
| US2013227068A1 | Cited by | United States of America | Pre-grant |
| US8225410B2 | Cited by | United States of America | Applicant |
| US8024438B2 | Cited by | United States of America | Applicant |
| US7650368B2 | Cited by | United States of America | Applicant |
| US2008101415A1 | Cited by | United States of America | Pre-grant |
| US8245267B2 | Cited by | United States of America | Applicant |
| US2009063681A1 | Cited by | United States of America | Pre-grant |
| US8429702B2 | Cited by | United States of America | Search report |
| US10306317B2 | Cited by | United States of America | Applicant |
| US8291182B2 | Cited by | United States of America | Applicant |
| US8499090B2 | Cited by | United States of America | Applicant |
| US2012079524A1 | Cited by | United States of America | Pre-grant |
| US2006195875A1 | Cited by | United States of America | Pre-grant |
| US2003084455A1 | Cited by | United States of America | Pre-grant |
2 members in 1 office
Priority claims6
| Document | Office | Kind | Date |
|---|---|---|---|
| 25987201 | United States of America | P | |
| 25987201 | United States of America | P | |
| 82858201 | United States of America | A | |
| 60259872 | – | – | – |
| US20010259872P | – | – | – |
| US20010828582 | – | – | – |
Members2
| Document | Office | Kind | |
|---|---|---|---|
| US2002129375A1 | United States of America | A1 | |
| US2002133830A1 | United States of America | A1 |
21 transactions on the USPTO file
Abandoned after 1 non-final rejection.
- Non-final rejections
- 1
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | |
|---|---|
| Mail Abandonment for Failure to Respond to Office ActionAbandoned | |
| Aband. for Failure to Respond to O. A. | |
| Correspondence Address Change | |
| Case Docketed to Examiner in GAU | |
| Correspondence Address Change | |
| Mail Non-Final RejectionNon-final rejection | |
| Non-Final RejectionNon-final rejection | |
| Case Docketed to Examiner in GAU | |
| IFW TSS Processing by Tech Center Complete | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Case Docketed to Examiner in GAU | |
| Application Dispatched from OIPE | |
| Application Dispatched from OIPE | |
| Application Is Now Complete | |
| Application Is Now Complete | |
| Application Is Now Complete | |
| Notice Mailed--Application Incomplete--Filing Date Assigned | |
| Correspondence Address Change | |
| IFW Scan & PACR Auto Security Review | |
| Initial Exam Team nn |
2 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Information on status: application discontinuationABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTIONSTCB | STCB | |
| AssignmentAS | AS |
Numbers
- Publication, DOCDB
- 2002133830
- Publication, EPODOC
- US2002133830
- Application
- 9828582
- Application, DOCDB
- 82858201
- Application, EPODOC
- US20010828582
Titles
- English
- Adaptive video on-demand system and method using tempo-differential file transfer
Classification
- CPC, 12
- H04N21/4147
- H04N5/63
- H04N7/17318
- H04N21/222
- H04N21/23106
- H04N21/25891
- H04N21/4325
- H04N21/4331
- H04N21/4335
- H04N21/47
- H04N21/47202
- H04N21/816
- IPC, 12
- H04N5 63
- H04N7 173
- H04N21 222
- H04N21 231
- H04N21 258
- H04N21 4147
- H04N21 432
- H04N21 433
- H04N21 4335
- H04N21 47
- H04N21 472
- H04N21 81
- USPC, 6
- 725142000
- 348E05103
- 348E05127
- 348E07071
- 725034000
- 725146000