US20050108776A1 - Content/service handling and delivery - Google Patents
Content/service handling and delivery Download PDFInfo
- Publication number
- US20050108776A1 US20050108776A1 US10/863,065 US86306504A US2005108776A1 US 20050108776 A1 US20050108776 A1 US 20050108776A1 US 86306504 A US86306504 A US 86306504A US 2005108776 A1 US2005108776 A1 US 2005108776A1
- Authority
- US
- United States
- Prior art keywords
- content
- advertising
- entity
- opportunities
- binding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23103—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion using load balancing strategies, e.g. by placing or distributing content on different disks, different memories or different servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23106—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/231—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
- H04N21/23109—Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion by placing content in organized collections, e.g. EPG data repository
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
- H04N21/25883—Management of end-user data being end-user demographical data, e.g. age, family status or address
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25866—Management of end-user data
- H04N21/25891—Management of end-user data being end-user preferences
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/414—Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
- H04N21/4147—PVR [Personal Video Recorder]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/4722—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting additional data associated with the content
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4786—Supplemental services, e.g. displaying phone caller identification, shopping application e-mailing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/65—Transmission of management data between client and server
- H04N21/658—Transmission by the client directed to the server
- H04N21/6587—Control parameters, e.g. trick play commands, viewpoint selection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/81—Monomedia components thereof
- H04N21/812—Monomedia components thereof involving advertisement data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/83—Generation or processing of protective or descriptive data associated with content; Content structuring
- H04N21/845—Structuring of content, e.g. decomposing content into time segments
- H04N21/8455—Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/858—Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17336—Handling of requests in head-ends
Definitions
- the invention relates to content/service handling and delivery.
- Interactive television is limited as a user's choosing to interact must either sacrifice viewing their primary program or split a viewing screen and their attention between programs.
- the introduction of digital home Personal Video Recording (PVR) devices has enhanced the user experience by providing the ability of storing (recording) many hours of content and controlling the recording through use of an associated electronic program guide.
- Home PVR devices record one program at a time and are oriented around content and not broad-based delivery of content and services. Further, advertising contained in recorded programs can easily become stale if played back at a time distant from when the program was aired.
- Video on demand systems provide a user access to a singular library of available video assets maintained at the discretion of a provider and with limited user options.
- the invention features a method and associated systems and software in which a first entity maintains an inventory of advertising opportunities in content and services. At least some of the advertising opportunities are bound with advertising on behalf of a second entity that is separate from the first entity. Aspects of the invention can include one or more of the following features.
- the first entity can be, for example, a content delivery entity such as a cable television operator or a local broadcaster.
- the second entity can be, for example, a content generation or content delivery entity, such as a network, a local broadcaster, a provider to a library of stored content, a network affiliate, a movie producer, a movie distributor, or a program content developer.
- the first entity can receive advertisements from a third entity, and at least some of the advertisements received from the third entity are bound on behalf of the second entity.
- the third entity may be separate from the second entity.
- the third entity may be an agent (e.g. an advertising agent) of a fourth entity (e.g. an advertiser), or the third entity may be an advertiser.
- the invention features a method and associated systems and software that includes: receiving advertising, which includes both advertising copy and structured data associated with the advertising copy. Advertising opportunities are bound to the received advertising according to the received structured data (e.g. data tagged according to an extensible markup language).
- receiving advertising which includes both advertising copy and structured data associated with the advertising copy.
- Advertising opportunities are bound to the received advertising according to the received structured data (e.g. data tagged according to an extensible markup language).
- the received data can identify multiple variants of at least some of the advertising copy, in which case the binding of the advertising opportunities to the advertising includes selecting among the multiple variants according to the received data.
- the invention features a method and associated systems and software that includes maintaining an inventory of advertising opportunities in content and services. For each of at least some of the advertising opportunities, different advertisement copy is bound for presentation to each of multiple of separate sets of one or more viewers.
- At least some advertisements can each include multiple different advertisement copy for presentation to different sets of the one or more viewers. Additionally, the advertising can be received in conjunction with content, for example, by receiving multiplexes of multiple different advertisement copy within the received content.
- Binding of different advertisement copy for presentation to each of multiple separate sets of one or more viewers may be performed at a common distribution location for each of the sets of viewers (e.g. a cable system head end). Alternatively, or in addition, binding different advertisement copy for presentation to each of the separate sets of viewers may be performed at different locations each associated with a different one of the sets of viewers, for example, at one or more of the viewers' set-top boxes.
- the invention features a method and associated systems and software that includes receiving content that includes advertising opportunities in content, receiving advertising associated with the advertising opportunities independently of the content, and binding the advertising to the inventory of advertising opportunities in content and services.
- the advertising can be received via switched digital video streams.
- the advertising can be received via a data network.
- the advertising can be received and stored before binding the advertising to the inventory of advertising opportunities in content and services.
- the advertising may be stored at the viewer's set top box.
- the invention features a method and associated systems and software that includes: maintaining an inventory of advertising opportunities in content. For each of at least some of the advertising opportunities, new advertisement copy is bound to replace old advertising copy associated with the at least some of the advertising opportunities. For example, advertising copy previously presented to one or more viewers can be replaced in time-shifted content.
- Binding advertising opportunities with advertising by one party on behalf of another can enable advertising copy to be targeted to a particular set of users or viewers of the content and services. Advertising can be tailored to the viewers and viewing time by an entity such as a cable operator, which delivers content to particular sets of users.
- Receiving structured data associated with the advertising copy can enable relatively complex criteria for binding advertising opportunities to the received advertising, for example according to a specific residence or individual viewer, demographic such as based on financial information, and explicit or implicit preferences.
- the combination of structured data and advertising copy can reduce the complexity of systems that require association of the data and the copy.
- Advertising sent independently of content may be downloaded ahead of time, for example, times of low bandwidth usage, and pre-stored in a local storage medium associated with the viewers (e.g. a set-top box). This provides a mechanism for providing targeted advertising while using standard distribution methods for the content.
- FIG. 1 is a block diagram of an exemplary content/service handling and delivery network.
- FIG. 2 is a block diagram of the content/service handling and delivery system of FIG. 1 .
- FIG. 3 is a block diagram of the content import component of FIG. 2 .
- FIG. 4 is a block diagram of exemplary content/service handling and delivery system for interactive delivery of real-time and time-shifted audio/video content.
- FIG. 5 is a flow diagram of a content handling process.
- FIG. 6 is a flow diagram of a play process.
- FIG. 7 is a flow diagram of a pause process.
- FIG. 8 is a flow diagram of a resume process.
- FIG. 9 is a flow diagram of a change channel process.
- FIG. 10 is a flow diagram of a rewind process.
- FIG. 11 is a flow diagram of a fast forward process.
- FIG. 12 is a flow diagram of a set mark process.
- FIG. 13 is a flow diagram of a search and select process.
- FIG. 14 is a flow diagram of a termination process.
- FIG. 15 is a block diagram of exemplary content/service handling and delivery system for interactive advertising content and services.
- FIG. 16 is a block diagram of a content storage and cut-through forwarding system utilized in the content/service handling and delivery system of FIG. 2 .
- FIG. 17 is a graph diagram of a content propagation and cut-through routing system utilized in the content/service handling and delivery system of FIG. 2 .
- FIG. 18 is a graph diagram illustrating an exemplary implementation of a content propagation and routing network including an Interactive Advertising Service.
- FIG. 19 is a diagram showing advertising transmitted to a set-top box out-of-band with content and services.
- FIG. 20 is a diagram showing advertising transmitted to a set-top box in-band with content and services.
- FIG. 21 is a graphical representation of an XML delivery wrapper.
- an exemplary content/service handling and delivery network 10 includes one or more source systems 12 linked via communication mechanisms 14 to a content/service handling and delivery system 16 .
- the content/service handling and delivery system 16 is linked via communications mechanisms 18 to one or more terminal systems 20 .
- the source system 12 in the network 10 provides content and/or services to the content/service handling and delivery system 16 .
- the system 16 handles and delivers content, services, and a combination of content and services.
- the system 16 within the network 10 is described using content. However, it will be appreciated that the same or similar descriptions apply to the handling and delivery of services and to the handling and delivery of a combination of content and services.
- Content may be any kind of data.
- content may be audio/video and associated data, on-line or electronic documents, web pages, images, graphics, software programs and scripts, non-linear and multimedia compositions, voice, video, data calls, data messages, and so forth.
- Content in its simplest form, is high production value audio/video in a variety of formats, MPEG-2, MPEG-4, Quicktime, Real, ASF, and so forth, delivered with rudimentary interactivity, pause, fast forward, rewind, bookmark, and so forth.
- HTML with Cascading Style Sheets (CSS) and scripting i.e., DHTML
- DOM Document Object Model
- SVG Scalable Vector Graphics
- SMIL Synchronized Multimedia Integration Language
- JavaScript Java and Personal Java, Macromedia Flash and Shockwave, Adobe LiveMotion, ATVEF, PowerTV, Active-X, Active Server Pages, and so forth.
- Content can integrate linkages to commerce transactions as well as a wide variety of on-line and off-line services: call centers, mail centers, Web sites, and such.
- Content may be a disassembled collection of interactive content objects that is navigated by the user or assembled by the provider in a personalized fashion for each user at the time of use. This latter case is particularly compelling as users may be interested in particular aspects of a product and not interested in others.
- the terminal system 20 in the network 10 receives content and/or services from the content/service handling and delivery system 16 .
- a terminal system 20 typically includes some combination of output devices, input devices, storages, processing elements, peripherals, and so forth.
- An output device is typically capable of receiving different content from a content/service handling and delivery system 16 and/or from storage and processing elements within the terminal system 20 and presenting it to one or more users (not shown).
- An input device is typically capable of sensing and transmitting audio, visual, manual, and/or other information to storage and processing elements within the terminal system 20 or to the content/service handling and delivery system 16 .
- a user may be a person or group of persons using a terminal system.
- the content/service handling and delivery system 16 may be a source and/or terminal system for one or more additional content handling and delivery systems (not shown).
- Such configurations of content/service handling and delivery systems may be embodied within a content propagation and cut-though routing network described below.
- the communication mechanisms 14 and 18 may include any of several methods or systems of communication.
- the communication mechanisms 14 and 18 may include electronic, optic, and wireless busses, links, networks, packaged media, satellite and land-based wireless systems.
- Other examples include cable television systems, telephone systems, general and special purpose networks, the Internet, and so forth.
- the communications methods may include, for example, point-to-point, multicast, broadcast connection-based or connectionless-based.
- the content/service handling and delivery system 16 generally mediates and handles the delivery of content and services between numerous source systems and numerous terminal systems.
- the content/service handling and delivery system 16 typically receives content (particularly real-time content) and services from numerous source systems 12 .
- the content/service handling and delivery system 16 has the ability of storing, handling, and delivering of all received content from all source systems 12 , provides various services, and delivers selected content and services to one or more terminal systems 20 , typically in response to one or more user requests.
- the selected content is delivered to one or more terminal systems 20 by the content/service handling and delivery system 16 either real-time, i.e., as received by the system 16 from a source system 12 , or time-shifted, i.e., delayed by some amount of time from when the system 16 begins receiving the content from a source system.
- time-shifted is used interchangeably with the term “stored”.
- the content/service handling and delivery system 16 may enhance selected content and services before it is delivered to one or more terminal systems 20 . Enhancement may involve processing, composition, and/or aggregation of content in response to a user request, making communications between the terminal system 20 and the content handling and delivery service system 16 interactive.
- the content/service handling and delivery network 10 is designed to be efficient, fault tolerant, and load balanced wherein content (particularly real-time content) need only pass through the network 10 once to be stored or passed through as it is delivered to terminal systems 20 .
- Content may be routed through one or more content/service handling and delivery systems and optionally stored or cached by those systems.
- users are provided access to real-time and time-shifted content as well as compositions of real-time and/or time-shifted content.
- stored video or animated advertisements may be spliced into real-time or time-shifted content (audio/video, web pages and other documents, ATVEF, interactive graphics, and so forth), flowing through the network 10 .
- the content/service handling and delivery system 16 of FIG. 1 includes a collection of components and data flows between components.
- the components include a content import component 30 , a service gateway component 32 , a content information component 34 , a content library component 36 , one or more service components 38 , a primitive composition component 40 , and an input and interaction component 42 .
- All data flow are bi-directional (or multi-directional) and redundant paths do not imply redundant communications mechanisms, though in the preferred embodiment redundant communications mechanisms are used between most components to achieve scalability, fault tolerance, and load balancing.
- Processing elements, memories, storages, busses, and so forth may be employed by and/or shared by the various components 30 , 32 , 34 , 36 , 38 , 40 , and 42 in the system 16 .
- the content/service handling and delivery system 16 is deployed and managed for example, by an interactive television service provider to mediate the handling of content and services between numerous originators and numerous interactive television users.
- the content/service handling and delivery system 16 is designed, in one aspect, to include an ability to be scaled to import all content from all sources all the time, storing the content for a duration of time, and giving users real-time and time-shifted access to the content.
- the content import component 30 performs content import using one or more importers 50 that are configured and managed through an operator interface (not shown) and various associated information bases (not shown). Importers 50 process and prepare content for subsequent storage and use. Analog content is encoded into a digital format. Digital content may be re-encoded, transcoded, translated, and so forth. Imported content may be communicated to other components of the system 16 , including other importers.
- Importers 50 may separate, extract, or demultiplex in-band content. Importers 50 may also mix, insert, or multiplex content communicated to them by one or more other importers receiving out-of-band content.
- Associated content may be received at the same time or at different times.
- the content of a television program may contain in-band descriptive information and/or a program description may have been received earlier, perhaps the night before the program airs.
- importers 50 may be synchronized.
- the content imported by one or more importers 50 may effect the operation of other importers. For example, splicing information received by one importer may be sent to another importer causing it to segment the content it is importing.
- an importer 50 may effect or be effected by other system components.
- configuration information, program schedules and channel assignments, universal resource identifiers, and other source specifications may be used to assist the operator in managing the import of content.
- content imported, generated, and/or collected by the system 16 may be stored in and/or routed through the content library 36 and content information base 34 .
- the content library 36 generally contains content in a form that is directly presentable on an output device without intermediate interpretation or translation.
- the content information base 34 generally contains ancillary data required for and collected during the acquisition and use of content.
- the term information base is interpreted herein to mean any data or collection of data organized in any manner including data files, directories, databases, etc.
- Content in the content library and information in the content information base is managed by a content manager (not shown) through various management interfaces (not shown), the content information base, and possibly other information bases (not shown).
- the content manager controls the system 16 resources, e.g., processing, storage, communications, and so forth, used to store, forward, propagate, and route content through the system 16 .
- the content manager also controls and monitors the caching of content in terminal systems 20 .
- Distinctions made here between the content library 36 and content information base 34 reflect the practice of discriminating between different forms of content and organizing those forms for optimal use. The distinctions, however, are not inherent to the system 16 . Discrimination and organization of content in the preferred embodiment are expected to change over time as technologies advance (e.g., a time may come when a movie is as easy to extract from a relational database as a billing record is today).
- Content is stored on one or more storages.
- the preferred embodiment of the content library is a content storage and cut-through forwarding system or a network of content storage and cut-through forwarding systems managed by a content propagation and cut-through routing system. By applying these storage schemes the resulting system 16 is highly scalable, fault tolerant, and load balanced. Content may be cached onto storage located in the terminal system 20 .
- the content information base 34 may be stored and propagated in the same or in a similar manner.
- the content information base 34 is generally updated to signal the content's availability.
- the availability of content may be signaled at any time before, during, or after content is stored in the content library 34 .
- content stored in and/or routed through a source system 12 employing the cut-through forwarding capabilities described below with reference to the content storage and cut-through forwarding system may be signaled as available in the content library 36 even though the content is not yet (or may never be) stored in the content library 36 .
- content stored or cached by a terminal system 20 may be signaled as available in the content library 36 .
- the content/service handling and delivery system 16 supports a variety of services 38 .
- a service 38 performs a function using imported content, associated information, and user input.
- the resulting service output 38 is aggregated with the output of other services and delivered to one or more terminal systems 20 .
- services 38 receive content and information from other components of the content/service handling and delivery system 16 , perform some function, and send the result to other components of the content/service handling and delivery system 16 .
- a service 38 may communicate with importers 50 bypassing the content library 36 .
- a service 38 may involve multiple users whereby users communicate and collectively participate (cooperate or compete) in some activity such as a multi-user game involving a single terminal system or multiple terminal systems.
- a service 38 may also involve multiple users using one or more terminal systems 20 whereby users communicate and collectively participate in an activity.
- a variety of hardware and software methodologies may be used to construct a service 38 .
- a service 38 may be constructed from or interoperate with other services 38 .
- Some services 38 may reside in the content/service handling and delivery system 16 , others may reside in source systems 12 or terminal systems 20 , yet others may reside in external systems accessed through service gateways 32 .
- the service gateways 32 provide communication between services 38 within the system 16 and services external to the system 16 .
- the service gateways 32 are used to send reports and other messages generated by users or usage of the system 16 .
- a telephony or audio/video conference service may use a service gateway 32 to enable users of the system 16 to communicate to users of other systems or devices of various types.
- Services 38 are managed by a service manager (not shown) through various management interfaces and information bases (not shown).
- the service manager controls the system 16 resources, e.g., processing, storage, communications, and so forth, used in delivering services 38 to terminal systems 20 .
- the service manager may also inter-operate with the terminal systems 20 , such as monitoring the caching and execution of services 38 in terminal systems 20 .
- the input and interaction component 42 receives input from a terminal system 20 and dispatches it to one or more services 38 .
- Input is generally dispatched to the service 38 that requested it.
- Input may be from an input device (not shown) residing in the terminal system 20 , and/or from a service 38 or other applications (not shown) residing in the terminal system 20 .
- the requested input is dispatched according to a set of rules under the control of the operator. For example, the rules may specify that the input be sent to the last service requesting the input, which may use or modify the input, and/or propagate the input to other services requesting the input.
- the primitive composition component 40 of the content/service handling and delivery system 40 aggregates (or otherwise composes) the output from one or more services 38 and delivers the result to one or more terminal systems 20 .
- the aggregate may also be sent to multiple terminal systems 20 .
- a service 38 may be responsible for receiving real-time content, inserting ads into it, and broadcasting the result to all users.
- the term aggregate is interpreted as to gather content into a mass, sum, or whole. This includes, but is not limited to, replacing, inserting, multiplexing, splicing, and composition of content to be sent to one or more terminal systems over various communications mechanisms.
- terminal system 20 uses the terminal system 20 to interact with content and services provided by the content/service handling and delivery system 16 .
- Input received from the terminal system 20 is dispatched to one or more services 38 .
- Content and other data sent to the terminal system 20 may be used by services 38 and applications residing in the terminal system 20 and/or presented to one or more users.
- the terminal system 20 dynamically caches content or services (or components thereof) to increase system 10 efficiency.
- a content/service handling and delivery system 16 for interactive delivery of real-time and time-shifted audio/video content is shown.
- content is stored in a content storage and cut-through forwarding system, described below, or a network of content storage and cut-through forwarding systems managed by the content propagation and cut-though routing system. This is but one aspect of the system 16 and is described as one example. Other aspects are described below.
- the content/service handling and delivery system 16 imports analog and digital audio/video content 50 .
- Various methods of encoding may be utilized, such as MPEG-2, MPEG-4, Quicktime, Real, ASF, and so forth, delivered with rudimentary interactivity, pause, fast forward, rewind, bookmark, and so forth.
- Content is expected to evolve into increasingly rich interactive mixed media experiences though the application of a variety of technologies: World Wide Web Consortium recommendations, HTML with Cascading Style Sheets (CSS) and scripting (i.e., DHTML), Document Object Model (DOM), WebCGM, Scalable Vector Graphics (SVG), Synchronized Multimedia Integration Language (SMIL), and so forth, JavaScript, Java and Personal Java, Macromedia Flash and Shockwave, Adobe LiveMotion, ATVEF, PowerTV, Active-X, Active Server Pages, and so forth.
- the system 16 could have as few as one audio/video importer within the content import component 30 allowing for the import of content from one source at a time.
- Importers can be added to the system 16 to allow the simultaneous import of content from multiple sources or to provide redundancy and fault tolerance.
- the efficiency, load balancing, and fault tolerance of the preferred embodiment supports large scale deployments where one or more importers are dedicated to each content source, thus enabling the simultaneous import (and delivery) of content from numerous sources.
- An example terminal system 20 includes a set top box that communicates with and controls a television. Typically the system 20 will also include a remote control device and other devices.
- the content/service handling and delivery system 16 has a default service for each user. This is referred to as a user service 52 .
- the user service 52 presents a user interface to the user on the terminal system 20 and provides access to services on the content/service handling and delivery service system 16 .
- the user service 52 queries various information bases to ascertain what services are available to a user and enables the user to invoke services. In this example only an interactive delivery service 54 is shown.
- the user service 52 also collects and maintains information associated with users and usage of services.
- This may include, but is not limited, to such things as user account, registration, and profile information, billing and payment information, preferences, content and service subscriptions, permissions, and restrictions, past and pending service requests, a personalized guide to content in the content library, collected usage information, and so forth.
- the interactive delivery service 54 provides users with interactive access to content available through the content/service handling and delivery system 16 .
- the interactive delivery service 54 queries the content library 36 , content information base 34 , and various other information bases (in particular, user and usage information) to generate personalized guides, listings, and recommendations pertaining to content available through the content/service handling and delivery system 16 .
- Users interact with the interactive delivery service 54 to select content for delivery. Delivery may commence immediately or be scheduled for some later time. If the user requests to use content that is not yet available, the interactive delivery service 54 may signal the terminal device 20 when the content becomes available or display such things as a timer indicating how long before the content will be available along with ads, promotions, or other kinds of content appropriate to the situation.
- content is delivered to a user as follows.
- the interactive delivery service 54 reads content through the content library 36 and sends it to the primitive composition component 40 to be added to one or more aggregates of content being sent to one or more terminal systems 20 .
- Delivery of real-time content is accomplished using the content storage and cut-through forwarding system, described below, or by services bypassing the content library to communicate directly with importers 50 .
- Real-time content may also stored in the content library 36 for subsequent time-shifted delivery.
- Pause, fast-forward, rewind, start, and start are supported for content where such controls are appropriate, e.g., streaming media. It should be appreciated that the specific methods of interaction described below may be modified or applied to any sort of interactions involving any sort of content and/or services. If a user on a terminal system 20 is receiving real-time content and pauses or rewinds the content, the content/service handling and delivery system 16 transitions seamlessly from delivering content real-time to delivering it time-shifted from the content library 36 . If a user is viewing time-shifted content and fast-forwards to the end of what has been stored in the content library 36 , the content/service handling and delivery system 16 seamlessly transitions from delivering the time-shifted content to delivering the content real-time.
- the interactive delivery service 54 may interact with the terminal system 20 to stop the delivery of content and bookmark it for later use.
- the interactive delivery service 54 queries and modifies user and usage information in a user information base (not shown).
- the interactive delivery service 54 may collect usage information and save this information in a user information base. This usage information may be used to affect subsequent behavior of the interactive delivery service 54 to the user. For example, different content recommendations may be made to a user based upon their prior usage patterns or the usage patterns of other users.
- a content/service handling process 200 residing in the system 16 and associated with the interactive delivery service 54 , for example, includes receiving 202 a user command.
- the user typically enters a command through a set top box connected to a display unit in the terminal system 20 .
- user commands may be entered using a wireless device.
- the process determines 204 if the user command is a “play” and executes 206 a play process if so.
- the process determines 208 if the user command is a “pause” and executes 210 a pause process if so.
- the process 200 determines 212 if the command is a “resume” and executes 214 a resume process.
- the process 162 determines 216 if the command is a “change channel” and executes 218 a change channel process.
- the process 162 determines 220 if the command is a “rewind” and executes 222 a rewind process.
- the process 162 determines 224 if the command is a “fast forward” and executes 226 a fast forward process.
- the process 162 determines 228 if the command is a “set mark” and executes 230 a set mark process.
- the process 162 determines 232 if the command is a “search and select” and executes 234 a search and select process.
- the process 162 determines 236 if the command is a “terminate” and executes 238 a termination process.
- a play process 206 includes the interactive service delivery delivering 252 content through the content library and to the terminal system.
- the process 206 determines 254 whether there is a bookmark set for the user and delivers 256 recorded content to the terminal system if a bookmark is set. If not, a bookmark is set for the user, the process 206 delivers 258 real-time content passing through (or bypassing) the content library 36 to the terminal system and returns at 260 .
- a pause process 210 includes the interactive delivery service sending 272 a bookmark instruction to the user service.
- the user service sets 274 a bookmark in its user information base.
- the process 210 associates 276 the user with the bookmark in the user information base and the interactive delivery service suspends 278 the delivery of content to the terminal system, i.e., real-time or time-shifted.
- a resume process 214 includes the interactive delivery service sending 292 a resume command to the user service for the user.
- the process 214 determines 296 if the user is found. If the user is not found, an error message is returned 298 to the interactive delivery service and the error message is sent 300 to the user using the interactive delivery service. If the user is found, the interactive delivery service locates content associated with the user and delivers 310 the content from the content library 36 to the terminal system. The process 214 returns at 312 .
- a change channel process 218 includes the interactive delivery service receiving 322 a change channel command.
- the interactive delivery service sets 324 a bookmark for the user at the current channel as described above.
- the interactive delivery service delivers 326 real-time content being broadcasted on the selected channel.
- the process 320 returns at 328 .
- a rewind process 222 includes the interactive delivery service receiving 342 a rewind command.
- the interactive delivery service starts 344 rewind delivery of content (i.e., content, possibly excerpted or modified, delivered in reverse order) for the selected content for the user associated with the interactive delivery service.
- the process 222 determines 346 whether a stop command was received, and if not, continues 348 rewinding. If a stop command is received the interactive delivery service stops 350 the rewinding of content for the user.
- the interactive delivery service sets 352 a bookmark as described above.
- the process 222 returns at 354 .
- a fast forward process 226 includes the interactive delivery service receiving 372 a fast forward command.
- the process 226 determines 374 whether the content is real-time. If the content is real-time, the process 226 signals 376 a user error and returns 378 . If the content is not real-time, the interactive delivery service starts 380 fast forward delivery of content (i.e., content, possibly excerpted or modified, delivered in faster than real-time) 380 from the content library.
- the process 226 determines 382 whether the stored content being fast-forwarded is at its end. If the recorded content is not at its end the interactive delivery service continues to fast forward 380 through the stored content in the content library. If the stored content is at its end, the process 226 signals 384 a stop to the user. The process 226 returns at 378 .
- a mark process 230 includes a interactive delivery service receiving 402 a set mark command.
- the interactive delivery service sets 404 a mark and instructs 406 the user service to associate the mark with the user.
- the process returns at 408 .
- a search and select process 234 includes the interactive delivery service receiving 422 a search and select command.
- the interactive delivery service searches 426 the content library for stored content and queries the user information base for marks and other information related to content usage.
- the interactive delivery service sends 428 a personalized list of titles to the user.
- the user sends 430 a selection choice to the interactive delivery service.
- the interactive delivery service begins delivering 436 the content for the selected choice through (or bypassing) the content library and returns at 438 .
- a termination process 238 includes the interactive delivery service receiving 452 a termination command.
- the interactive delivery service terminates 454 content delivery to the user and sets 458 a bookmark as described above.
- the process 450 returns at 460 .
- the interactive delivery service may collect usage information.
- the information may effect the subsequent behavior of the interactive delivery service. For example, different content recommendations may be made to a user based upon their prior usage patterns or the usage patterns of others.
- the information may be communicated to external services through service gateways 32 .
- the interactive delivery service (or a service cooperating with the interactive delivery service) may present users with the option to buy collateral product and services (for example, the sound track for a movie they are watching) and generate messages to an external order processing center in response to user selections.
- An embodiment supports time-shifted, real-time or both modes of delivery, but does not support a seamless transition between the two.
- the availability of content for time-shifted delivery may be slightly or substantially delayed from when content is imported by the system.
- Another embodiment supports only time-shifted delivery of content.
- the cut-through features of the underlying system may be employed to reduce delay in content availability.
- Real-time services may be delivered to terminal systems through a service gateway or via communications mechanisms external to the system.
- the service features of the system are used to collect information on who is using what content even if the content is not flowing through the system (e.g., monitor who is watching what television broadcast channels even if the system isn't used for broadcast services). Such information may be used for example to decide upon what advertising to insert into the content even if the ad insertion system or process is external to the content/service handling and delivery system.
- a content/service handling and delivery system 16 adapted to provide interactive advertising content and services is shown.
- content is stored in a content storage and cut-through forwarding system, described below, or a network of content storage and cut-through forwarding systems managed by the content propagation and cut-though routing system described below. This is but one aspect of the system 16 . Other aspects are described below.
- Import in the content import component 30 is extended to include content associated with advertising: advertising content (copy) and data used by advertising related services to associate advertising content with other content.
- Ancillary data importers 58 import analog and digital data associated with content imported by one or more content importers in the content import component 30 .
- ancillary data include but are not limited to splice data, content identification, description, origination information, event triggers, enhancement information, available advertising times and spaces, input and interaction times and spaces, and so forth. In an embodiment this may be accomplished using fixed or implicit schemas for the import of a specific kinds of ancillary data. In other embodiments, it may be accomplished by using an extensible set of schema for the generalized import of ancillary data.
- an ancillary data importer is used to import analog and digital splice data (cues, schedules, etc.) associated with content imported by one or more audio/video importers.
- Splice data may be conveyed in-band with or out-of-band from its associated content.
- splice data audio “cue-tones”
- contact closures SCTE standard DVS-253, VBI data, ATVEF (Advanced Television Enhancement Forum), text data, XML data, or other header/descriptor formats
- text data XML data, or other header/descriptor formats
- splice data importers are synchronized with their associated content importers.
- In-band splice data is copied or cut from its associated content, processed, and/or (logically) forwarded to splice data importers to be processed as described above.
- Splice importers send splice data to the content information base 34 where it is stored and/or forwarded to one or more requesting services 38 for use in delivering ads or ad services in conjunction with the associated content.
- Splice data from splice importers or from the content information base 34 may be used by content importers to modify the import of associated content (e.g., splice data sent to MPEG encoders may cause them to end sequences and insert I-Frames to create clean splicing points in the content). This allows for splice data to be imported at the same time as its associated data or at some earlier or later time.
- the ancillary data import mechanism is also used to import trigger and enhancement information defined in ATVEF (and other such mechanisms). This information is used replace general (or default) enhancements with localized and personalized enhancements.
- the preferred embodiment is flexible and has the ability to change over time to accommodate advancements in technology.
- digital methods are expected to supplant analog methods for representing and conveying content and its associated data
- in-band splice signaling is expected to supplant out-of-band signaling methods
- the general practice of splice cueing is expected to be supplanted by content formats in which content and ancillary data is structured into self-identified, self-described components.
- the separate content importers and ancillary data importers in the content import component 30 described above are replaced by integrated and generalized importers whereby the content information base 34 is populated with information extracted directly from content and/or derived from its structure.
- Advertising services are provided in an Interactive Advertising Service (IAS) 60 .
- the IAS 60 commonly cooperates with other services 38 to enhance those services with advertising capabilities.
- the IAS 60 may read ad content from the content library 36 and use it to modify an aggregate of content being delivered to one or more terminal systems 20 . It may also communicate to other services 38 what advertising content (copy) to include in the delivery of their service.
- the IAS 60 cooperates with the interactive delivery service 54 to insert, replace, aggregate, compose, and so forth, the interactive content delivery with advertising.
- the IAS 60 is generally responsible for placement and presentation of advertising to one or more users of one or more terminal devices 20 .
- the opportunity to present advertising to one or more users is considered “inventory” and inventory has many attributes (user or users, time, space, and so forth).
- Inventory is commonly associated with the delivery of other content and services, though it may also stand alone. For example, a user may request the delivery of content describing a product. Inventory may be known in advance, for example, a specification of where and when ads may be displayed in a TV program or web page. Inventory may also appear dynamically (dynamic inventory) when a user begins using a service in the system, for example, when a user begins time-shifted viewing of a TV program.
- the content/service handling and delivery system 16 may import content from an advertiser's content propagation and cut-through routing network such that and when users begin using a service, content from the advertiser is immediately presented to the user.
- the IAS 60 binds advertising to inventory using one of a variety of methods.
- One aspect is its support for binding advertising to dynamically appearing inventory.
- it applies dynamic and late binding approaches such that the binding (or final binding) is made “just in time” before inventory is consumed. This allows a binding function to incorporate the maximum possible amount of information related to the binding decision, thus allowing for optimal results (maximizing the value and minimizing the cost of presenting an ad).
- the binding function incorporates one or more factors including but not limited to user and usage information, information about available advertising, its useful lifetime, its intended audience, information about the content and service with which the advertising is to be associated, time and date information, information about events effecting users and their usage (e.g., news of a snow storm), expressed user preferences and/or requests for product or service information, advertiser agreements, placement schedules, and so forth.
- Another aspect of the IAS 60 is its support for “intelligent or self guided ads” that contain information, instructions, procedures, and possibly software programs that interface with the IAS 60 in search of optimal binding.
- ads to have embedded or associated Java programs and for the IAS 60 to provide a Java run time environment along with an advertising interface package through which the ad can discover inventory, user information, and other information to be factored into a binding decision.
- the result is typically treated as a hint or recommendation that the IAS 60 may either accept or ignore.
- the binding function may be used to compile a set of ads for each user—each ad in the set has a computed value specific to that set.
- the IAS 60 inspects the set of ads associated with that user and binds the ad with the greatest value matching the parameters of the inventory. Inventory parameters include such things as content type, screen size and location, duration, and so forth. So, for example, video ads would not be placed with inventory accommodating only text or still images.
- the IAS 60 inspects the set for each user and the ad common to all sets with the greatest average value is used. Other statistical criteria may also be used. This mechanism supplants the current (generally manual) practice of statically binding advertising to content as a means of reaching an estimated demographic. Here the demographic as well as the expressed interests of users (and other information) is explicitly factored into the valuation.
- the IAS 60 may pre-compute all or part of the function described above.
- the pre-computation would be performed periodically or in response to events such as when new advertising content is imported.
- the pre-computation generally uses a subset of factors such as user demographic information, user preferences and requests, and information about available advertising and its intended audience (all of which is known well in advance of dynamically appearing inventory). When inventory appears and at various time before it is consumed additional computations may be applied before a final binding decision is made.
- services communicate with the IAS 60 to deliver or assist in the delivery of ads. They also communicate with the IAS 60 to respond to user input related to the delivery of ads and to track and report on the delivery and use of ads.
- the IAS 60 may use ancillary data stored in the content information base 34 to sequence or synchronize the delivery of ads during the aggregation and delivery of associated content. It may also use ancillary data to aggregate content in advance. A specific example of the latter is when the IAS 60 uses splice data to segment content in the content library. Segmentation is done directly by modifying the content or indirectly by modifying how content is incorporated or referenced by other content.
- the interactive delivery service 54 described in the previous example may communicate with the IAS 60 before, during, and after it delivers content.
- the IAS 60 tracks inventory in the content, binds ads to inventory, and causes those ads to be added to one or more aggregates of content as required by the parameters of the inventory.
- a specific example of this process is when the interactive delivery service 54 is about to deliver segmented (or structured) content: the interactive delivery service 54 communicates with the IAS 60 to replace segments and possibly add segments containing ads (as described above, this may be done directly by the IAS 60 adding content to the appropriate aggregate(s) or indirectly by the interactive delivery service 54 using the IAS 60 to modify the structure of content it is or is about to deliver)—specifically it replaces ads that have lost value with respect to other available ads—and this process may be repeated at various times during the delivery of a sequence thus allowing for a revaluation of the ads to be delivered.
- Terminal system input and interaction e.g., user input and interaction
- other events may change the value of ads in the set of ads compiled for a user.
- Terminal system input (e.g., user input) associated with the delivery of ads is dispatched to the IAS 60 .
- the IAS 60 may also examine terminal system input not associated with advertising. IAS 60 response to terminal systems input depends on a number of factors such as type of ad eliciting the input, parameters of the inventory, service polices, consumer preferences and requests, provider policies, and so forth.
- the IAS 60 may incorporate the information into the valuation of ads and/or use the information to send messages and reports to external services via a service gateway.
- the IAS 60 may suspend and/or modify the content and services being delivered. In particular, it may cause the delivery of some content to suspend and cause the delivery of other, ad related, content to begin. Alternatively, it may trigger advertising in the form of enhancements to be delivered (e.g., ATVEF). It may modify user information, for example, to note a user's expressed interest or disinterest in an ad. It may also generate and send reports or other kinds of messages to external entities using the service gateway 32 , for example, to execute a purchase or to have an advertiser contact the user (e.g., by mail or by phone call).
- Any communications mechanism may be used.
- the preferred embodiment may employ a variety of standards and practices to achieve secure and non-repudible communications to authenticated entities.
- an extranet designed for the purpose of trafficking interactive advertising content and services (advertising extranet) may be utilized.
- the IAS 60 also presents a user interface to users allowing them to express their advertising preferences and to request advertising related content and services.
- the IAS 60 allows users to request product information. This may be done in a variety of ways including presenting users with product categories to select from, by structured expression (search expressions), and by free form expression (natural spoken or written language).
- the IAS 60 is also responsible for binding ads to inventory associated with various user (and operator) interfaces presented by other components of the system 16 .
- the user service 52 and interactive delivery service 54 would communicate with the IAS 60 to place ads in their user interfaces (UIs).
- UIs user interfaces
- the IAS 60 generates reports and other messages related to the use of interactive advertising and uses one or more service gateways 32 to communicate this information to external entities (e.g., content originators and advertisers). For example, this mechanism may be used to report on the use of interactive ads or it may be used to enable users to request further information, a callback from the advertiser, or linkage to other on-line services.
- external entities e.g., content originators and advertisers.
- this mechanism may be used to report on the use of interactive ads or it may be used to enable users to request further information, a callback from the advertiser, or linkage to other on-line services.
- a content storage and cut-through forwarding system 100 includes at least one input element 102 , at least one store and forward element 104 , and at least one output element 106 .
- Each of the elements 102 , 104 , and 106 are interconnected by one or more communication link mechanisms 108 .
- Processing elements, memories, storages, busses, and so forth may be employed by and/or shared by various elements 102 , 104 et al, and 106 in the system.
- the content manager described above controls the various elements, through management interfaces (not shown), to setup, monitor, and tear down flows of content in the system.
- input 102 and output 106 elements are integrated with store and forward elements such that a store and forward elements may be accompanied by one or more integrated inputs, one or more integrated outputs, a combination of integrated inputs and outputs, or neither.
- multiple input and output elements are integrated and distributed across multiple store and forward elements to load balance input and output traffic across the system 100 , to increase system fault tolerance by providing redundant input and output data paths, and to gracefully degrade service when store and forward elements fail by also removing a source of load on the system (inputs and outputs).
- Elements in the content storage and cut-through forwarding system 100 communicate using one or more communications mechanisms 108 .
- communications in the content storage and cut-through forwarding system 100 may be described as request/response transactions, any of a variety of methods could be used.
- state associated with a data flow through the system would be “lazy bound” (creating virtual or implicit connections) and persist for the duration of the data flow.
- state would be deleted explicitly or garbage collected at some later time.
- Each input element 102 receives content through a communications mechanism, and segments (if prescribed), according to a defined method, the content and computes redundancy information in a parity engine 116 .
- the preferred embodiment uses the segmentation and redundancy methods defined for RAID-5. Other embodiments may apply the methods defined for RAID-0, RAID-1, RAID-2, RAID-3, RAID-4, and RAID-6 systems, non-RAID systems, hybrid storage subsystems, and so forth. Some of these other embodiments do not include segmentation.
- the input element 102 distributes the content segments and redundancy information to one or more store and forward elements 104 , 110 , 112 and 114 .
- the input element 102 may also buffer content segments and retransmit the content segments on demand or in response to failures in one or more store and receive elements 104 , 110 , 112 and 114 .
- the content segments may be buffered by computing a time window within which content segments are held in a retransmission buffer.
- buffer storage may be conserved by detecting element failures and using the information to determine which content segments to retransmit without first putting them in the retransmission buffer.
- Each store and forward element, store and forward element 104 receives content segments from the input element 102 , buffers the content segments in a buffer 117 and stores the content segments in a local storage subsystem 118 .
- the store and forward element 104 responds to requests to read content segments by either retrieving the requested content segments from the buffer 117 or by retrieving the requested content segments from the local storage subsystem 118 .
- buffer 117 or cache Any type of buffer 117 or cache may be used.
- a ring buffer is utilized because it efficiently supports a writer and multiple asynchronous readers of sequential data.
- the buffer is sized to allow for a smooth graduation of delays through the system 100 .
- a smaller buffer size is utilized. Buffer size may be measured in units less than, equal to, or greater than the size of a content segment.
- the local storage subsystem 118 is preferred to be fault tolerant and load balanced, using RAID-5, though other storage methods could be used: RAID-0, RAID-1, RAID-2, RAID-3, RAID-4, and RAID-6 systems, non-RAID systems, hybrid storage subsystems, and so forth.
- Each output element 106 reads content segments from one or more store and forward elements, checks for errors, and outputs the content over a communication mechanism 115 .
- the output element 106 may sequence the segments (if necessary) to reassemble the original content and, in the case of errors, reconstructs the missing or erroneous content.
- an output element 106 does one of two things to reconstruct the content.
- the output element 106 may, in accordance with the defined procedure, read the missing or corrupted data from the appropriate input element 102 , or, second, the output element 106 may read redundancy information from the appropriate store and forward element to reconstruct the missing content.
- the method applied depends on whether the output is real-time or time-shifted with respect to its input and which method can meet the output timing requirements.
- Some embodiments may use content segments small enough such that reconstruction from parity can meet real-time output requirements thereby eliminating the need for retransmission.
- the use of the RAID-3 (or equivalent) algorithm would have a similar effect.
- Other embodiments may use large content segments such that retransmission yields lower delay in the reconstruction process.
- the preferred embodiment is expected to shift over time depending on changes in underlying technology (processors, disks, busses, networks, etc.).
- FIG. 1 may not integrate storage and forwarding in the manner described above, but use distinct (but interconnected) storage and forwarding (or switching) elements to create a system 100 that behaves in a similar or compatible manner.
- the content propagation and cut-through routing network 130 applies the propagation methods defined in “CONTENT PROPAGATION IN INTERACTIVE TELEVISION” (patent application Ser. No. 09/547,474), incorporated by reference herein, to a network of content storage and cut-through forwarding systems 100 described above.
- the term “network” is interpreted broadly as defined in graph theory.
- Systems (labeled A-L) in the network are interconnected by one or more communications mechanisms and any size, type, or combination of content storage and cut-through forwarding systems may be used. For example, appropriately configured terminal systems would qualify as such and be used to cache content.
- the preferred embodiment is an efficient, fault tolerant, and load balanced network wherein real-time content need only pass through a network (or subset of a network) once as it is propagated to storages and delivered for presentation and use.
- the content manager described above controls the various systems in the network system to implement defined propagation and routing procedures thereby controlling how and where content is stored and forwarded through the network as a whole.
- routing algorithms may be used to setup the systems (paths) used for forwarding content through the network.
- the type of routing algorithm used will depend on the size, type of network, and the underlying communications mechanisms used.
- edge routing as opposed to hop-by-hop routing may be used whereby edge systems compute and recomputed optimal routes based on content availability and loading information collected from (or broadcast by) systems in the network. This approach enhances fault tolerance and load balancing: if internal systems fail or overload, those systems are removed from edge route computations and those computations are distributed across edge systems; if edge systems fail, the route signaling load on the system is likewise reduced.
- One aspect stores real-time content on systems in the network 130 as it is delivered to terminal systems.
- the stored content is delivered on-demand (e.g., time-shifted) to other terminal systems.
- Another aspect delivers content to terminal systems from systems to which they are only indirectly connected.
- the content is routed to terminal systems through one or more systems and optionally cached by those systems.
- Another aspect delivers content that is an aggregate of real-time and/or previously stored content.
- video ads may be spliced into real-time or stored video routed through a network or stored banner ads may be transmitted along with web page content routed through a network.
- Another aspect provides for delivery for content segmented (fragmented) across systems in the network.
- a system in the network may begin to cache content it is forwarding in response to the user pausing the presentation. If the presentation is resumed, content is delivered from the cache. If the presentation is reversed (rewound), content missing from the cache is routed through and possibly added to the cache.
- Other caching strategies may be employed, such as caching some amount of the most recently used content (e.g., the last 10 minutes) or pre-fetching (e.g., faster than real-time) content to be delivered later.
- FIG. 17 illustrates content propagation and cut-through routing as a network 130 of content storage and cut-through forwarding systems labeled A through L.
- all systems in the network are at least doubly connected to provide for failure recovery and load balancing.
- FIG. 16 and the following examples are intended to illustrate the various concepts and embodiments of content propagation and cut-through routing. In real deployments a variety of topologies, differing from the one shown here, would likely be used.
- the network 130 could represent systems deployed across organizational, geographic, or topological boundaries.
- A, B, and C may be located at content originator facilities (e.g., television or web site production facilities); E and D may be located at regional or municipal facilities; F, G, H, and I may be located at local or neighborhood facilities; and J, K, and L could be suitably configured terminal devices (set top boxes, personal video recorders) located at user (or subscriber) locations.
- content originator facilities e.g., television or web site production facilities
- E and D may be located at regional or municipal facilities
- F, G, H, and I may be located at local or neighborhood facilities
- J, K, and L could be suitably configured terminal devices (set top boxes, personal video recorders) located at user (or subscriber) locations.
- FIG. 17 shows three of the different ways that content can be delivered by the system 130 .
- Real-time content is delivered by J.
- Time-shifted content is delivered by K.
- a combination of time-shifted and real-time content is delivered by L.
- a variety of delivery paths could be used and the delivery path could change dynamically to load balance the system or to recover from failures.
- D and E could be large content repositories (one primary, one backup) through which all content in the network is delivered and stored.
- Real-time content to J may cut-through though systems B, E, D, and F and be stored on D in the process.
- the content might also be stored on F if the content is given sufficient weight (e.g., a high expectation of subsequent demand).
- the content may also be background propagated to E as a backup for D.
- Time-shifted viewing of the same content on K would cut-through G. Again the content may be stored on G.
- L a appropriately configured set top box or personal video recorder, for example
- content previously stored on L could replace, overlay, or otherwise mix with the real-time content.
- the system is used to insert advertising specific to the user or users receiving content from L.
- the network 140 includes a number of interconnected systems (nodes) which each implement the content/service handling and delivery system 16 , including some or all functions of the interactive advertising service (IAS) 60 .
- the systems are associated with different entities such as a network 541 , a local broadcaster 542 , and a cable television operator 543 .
- the cable television operator 543 receives programming content (or content and services) and advertising content from numerous originators and processes this content for delivery to multiple viewers.
- the system associated with the cable television operator 543 includes a content handling and delivery system 16 (see FIG. 15 ) that hosts a number of services, including the IAS 60 .
- the cable television operator also maintains an inventory of the advertising opportunities in content already received or to be received from the various originators.
- the IAS 60 provides the function of binding advertising with the advertising opportunities.
- the binding function includes the ability to replace advertising copy within time-shifted content or to insert or replace advertising copy to target a particular set of users or viewers of the content and services.
- An advertisement (or “ad”) containing advertising copy (e.g. MPEG encoded video) is optionally associated with structured data (e.g. XML data) that can be used in the binding function.
- the binding function uses the storage and processing capability (e.g. at a cable system head end, or at viewers' set-top boxes) of the content/service handling and delivery system 16 to implement dynamic binding (i.e. binding “just in time” before inventory is consumed), as well as its ability to mediate the handling of content and services between numerous originators. For example, one entity can bind advertising on behalf of another entity according to a commercial agreement. Advertising may comprise multiple variants of an advertisement, advertising from various sources, or a combination thereof.
- FIG. 18 graphically illustrates delivery of content and services from content originators to users or viewers and binding advertising to an inventory of advertising opportunities in the content and services.
- Advertising opportunities are illustrated as slots 510 within a stream 520 of content and services.
- the result of binding 525 an advertisement 530 with an advertising opportunity is indicated by a filled slot 535 .
- the advertisement 530 includes advertisement copy 532 and optionally includes structured data 531 associated with the advertisement copy.
- a content generation entity such as a network 541 or a movie distributor 546 sends a stream of content and services with associated advertising opportunities.
- the network 541 may choose to bind advertising 525 on its own behalf as indicated by label 526 . Additionally, some advertising opportunities may remain available, such that the local broadcaster 542 may bind advertising on its own behalf 560 .
- the cable television operator 543 maintains an inventory of the unfilled advertising opportunities associated with the content and services that it receives, 551 and 552 , from the movie distributor and from the local broadcaster. In addition to binding advertising on its own behalf, the cable television operator 543 is able to bind advertising opportunities with advertising on behalf of another separate entity.
- the cable television operator 543 binds an advertisement 566 , which it receives from an advertiser 547 , on behalf of the movie distributor 546 .
- Commercial relationships, indicated by links 562 and 564 are established between the cable television operator and the movie distributor 562 , and between the movie distributor and the advertiser 564 .
- the movie distributor 546 agrees to compensate the cable television operator 543 for binding an advertisement 566 so that the advertisement can be viewed along with the content and services that the movie distributor 546 sends to the cable television operator 543 .
- the advertisement 566 is directly received from an advertiser 547 , which agrees to pay the movie distributor 546 for placing the advertisement.
- the cable television operator 543 binds an advertisement, which it receives from an advertising agent 544 , on behalf of the network 541 .
- Content and services are sent from the network 541 to the local broadcaster 542 , who then sends content and services to the cable television operator 543 , optionally after binding advertising on its own behalf.
- the cable television operator 543 may have an agreement with the network 541 to bind advertising on the network's behalf with the advertising opportunities in the inventory maintained by the cable television operator. Advertisements received from the advertising agent 544 are to be viewed along with content and services originating from the network 541 sent via the local broadcaster 542 .
- the advertising agent 544 pays the network 541 according to their commercial relationship 548 , generating revenue for the network.
- the cable television operator may receive as compensation either a portion of the revenue, or a right to bind advertising on its own behalf with the advertising opportunities associated with the content of the network 541 , or a right to record and replay time-shifted content received from the network.
- the advertisements may feature a product of a product company 545 .
- the product company 545 may wish to target an advertisement to a particular set of viewers.
- a method for accomplishing this is to bind different advertisement copy for presentation to each of separate sets of one or more viewers.
- the advertisement 570 received from the advertising agent 544 of the product company 545 would contain different copy (i.e. Copy C and Copy D) to present to different sets of viewers. Binding would occur such that a set of viewers 572 receives Copy C and another set of viewers 574 receives Copy D.
- Each set of viewers may be chosen based on various criteria (e.g. specific residence or individual viewer, demographic such as based on financial information, explicit or implicit preferences).
- Each variant of the advertisement copy may use available inventory, or may replace copy previously placed such that a default variant of the copy is sent when there is no replacement.
- the choice of which copy is presented to which set of viewers can be determined using the structured data 571 which can be in the form of an XML delivery wrapper.
- information in the wrapper can be used to implement self-guided ads.
- An example of such a delivery wrapper is described below.
- the binding function may be used to bind an advertising opportunity in the content with different advertising in each of the multiple times the content is replayed to a viewer.
- originally-aired content is viewed by some viewers with particular advertisements.
- different advertisements can replace some or all of those originally-aired.
- Viewers can also be enabled to interactively initiate binding of targeted advertising (for example by indicating an interest in a product), or to initiate interactive sessions based on advertisements.
- the cable television operator 543 may use alternative methods for binding and delivery of advertisements.
- the cable television operator 543 may bind advertising at a common location such as the cable system head end (as illustrated in FIG. 18 ), or alternatively at different locations associated with the viewers such as viewers' set-top boxes.
- a particular household 580 could then be targeted with a particular variant of advertisement copy by actions performed at the set-top box 577 .
- advertising including different advertisements and variants of advertisement copy can be sent in-band (on the same communications mechanism as the content and services) or out-of-band.
- FIG. 19 An example of advertising sent out-of-band is shown in FIG. 19 .
- Content that includes advertising opportunities is sent on communications channel 600 (e.g. a coaxial cable).
- Advertising associated with the advertising opportunities on communications channel 600 is sent independently on communications channel 602 (e.g. a separate frequency band of the same coaxial cable, a separate coaxial cable, or a DSL channel over a twisted pair).
- the communications channel 602 may transmit data in one of a variety of formats (e.g. a switched digital video stream, or a data networking protocol). In this example, binding occurs at the cable system head end and different sets of viewers receive a signal with different variants of advertisement copy.
- FIG. 20 An example of in-band advertising is shown in FIG. 20 .
- the advertisements can be multiplexed in time or in frequency within the content and services.
- FIG. 20 shows three advertisements: advertisement 702 contains Copy A, advertisement 706 contains Copy B, and advertisement 704 contains a multiplex of two variants of advertisement copy, Copy C and Copy D.
- advertisement 702 contains Copy A
- advertisement 706 contains Copy B
- advertisement 704 contains a multiplex of two variants of advertisement copy, Copy C and Copy D.
- the choice of binding Copy C or Copy D occurs at the set-top box 708 (e.g. using a switch 710 ).
- Some viewers may receive a variant of an advertisement with Copy C, and others a variant with Copy D.
- Advertisements may also be stored for some period of time before binding occurs. Advertisements can be stored before they are sent to viewers. For example, the advertisements can be stored in a storage medium 576 located at the head end. Advertisements can also be stored after they are sent to viewers. This has the advantage that advertising can be downloaded at any time (e.g. times of low bandwidth usage) and pre-stored in a local storage medium 606 associated with the set-top box 604 .
- FIG. 21 An example of structured data associated with advertisement copy is shown in FIG. 21 in the form of a graphical representation of an XML delivery wrapper 800 .
- the top level element 802 has delivery wrapper attributes such as an identification tag and a creation date, and contains one or more spot elements 804 corresponding to different advertisement spots.
- Each spot element 804 has attributes such as a text description of the spot and the type of encoding used to encode video for the spot.
- Each spot element 804 contains one or more variant elements 806 for variants of the advertisement spot, and each variant element contains one or more target elements 810 .
- the target element 810 has attributes such as channel, or day of the week which may be useful to the binding function.
- the spot element may optionally contain one or more LocalSpotInfo elements 808 where local spot information may be specified.
- the XML data that comprises the delivery wrapper may be sent embedded within its associated advertisement copy (e.g. in a data field of the video stream) or on a separate channel or on a storage medium.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Finance (AREA)
- Computer Graphics (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Game Theory and Decision Science (AREA)
- Entrepreneurship & Innovation (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Reverberation, Karaoke And Other Acoustics (AREA)
Abstract
A first entity maintains an inventory of advertising opportunities in content and services. At least some of the advertising opportunities are bound with advertising on behalf of a second entity that is separate from the first entity.
Description
- This application is a continuation-in-part of U.S. application Ser. No. 09/723,385 filed on Nov. 28, 2000, and claims the benefit of U.S. Provisional Application No. 60/476,032 filed Jun. 5, 2003. Both of these application are incorporated herein by reference.
- The invention relates to content/service handling and delivery.
- Interactive television (ITV) is limited as a user's choosing to interact must either sacrifice viewing their primary program or split a viewing screen and their attention between programs. The introduction of digital home Personal Video Recording (PVR) devices has enhanced the user experience by providing the ability of storing (recording) many hours of content and controlling the recording through use of an associated electronic program guide. Home PVR devices record one program at a time and are oriented around content and not broad-based delivery of content and services. Further, advertising contained in recorded programs can easily become stale if played back at a time distant from when the program was aired.
- Video on demand systems provide a user access to a singular library of available video assets maintained at the discretion of a provider and with limited user options.
- In one aspect, in general, the invention features a method and associated systems and software in which a first entity maintains an inventory of advertising opportunities in content and services. At least some of the advertising opportunities are bound with advertising on behalf of a second entity that is separate from the first entity. Aspects of the invention can include one or more of the following features.
- The first entity can be, for example, a content delivery entity such as a cable television operator or a local broadcaster. The second entity can be, for example, a content generation or content delivery entity, such as a network, a local broadcaster, a provider to a library of stored content, a network affiliate, a movie producer, a movie distributor, or a program content developer.
- The first entity can receive advertisements from a third entity, and at least some of the advertisements received from the third entity are bound on behalf of the second entity. The third entity may be separate from the second entity. For example, the third entity may be an agent (e.g. an advertising agent) of a fourth entity (e.g. an advertiser), or the third entity may be an advertiser.
- Commercial relationships may be established between the first entity and the second entity, and/or between the second entity and the third entity, related to the binding of advertising opportunities to advertising.
- In another aspect, in general, the invention features a method and associated systems and software that includes: receiving advertising, which includes both advertising copy and structured data associated with the advertising copy. Advertising opportunities are bound to the received advertising according to the received structured data (e.g. data tagged according to an extensible markup language).
- The received data can identify multiple variants of at least some of the advertising copy, in which case the binding of the advertising opportunities to the advertising includes selecting among the multiple variants according to the received data.
- In another aspect, in general, the invention features a method and associated systems and software that includes maintaining an inventory of advertising opportunities in content and services. For each of at least some of the advertising opportunities, different advertisement copy is bound for presentation to each of multiple of separate sets of one or more viewers.
- At least some advertisements can each include multiple different advertisement copy for presentation to different sets of the one or more viewers. Additionally, the advertising can be received in conjunction with content, for example, by receiving multiplexes of multiple different advertisement copy within the received content.
- Binding of different advertisement copy for presentation to each of multiple separate sets of one or more viewers may be performed at a common distribution location for each of the sets of viewers (e.g. a cable system head end). Alternatively, or in addition, binding different advertisement copy for presentation to each of the separate sets of viewers may be performed at different locations each associated with a different one of the sets of viewers, for example, at one or more of the viewers' set-top boxes.
- In another aspect, in general, the invention features a method and associated systems and software that includes receiving content that includes advertising opportunities in content, receiving advertising associated with the advertising opportunities independently of the content, and binding the advertising to the inventory of advertising opportunities in content and services. The advertising can be received via switched digital video streams. Alternatively, the advertising can be received via a data network.
- Additionally, the advertising can be received and stored before binding the advertising to the inventory of advertising opportunities in content and services. For example, the advertising may be stored at the viewer's set top box.
- In another aspect, in general, the invention features a method and associated systems and software that includes: maintaining an inventory of advertising opportunities in content. For each of at least some of the advertising opportunities, new advertisement copy is bound to replace old advertising copy associated with the at least some of the advertising opportunities. For example, advertising copy previously presented to one or more viewers can be replaced in time-shifted content.
- Aspects of the invention can have one or more of the following advantages.
- Binding advertising opportunities with advertising by one party on behalf of another can enable advertising copy to be targeted to a particular set of users or viewers of the content and services. Advertising can be tailored to the viewers and viewing time by an entity such as a cable operator, which delivers content to particular sets of users.
- Receiving structured data associated with the advertising copy can enable relatively complex criteria for binding advertising opportunities to the received advertising, for example according to a specific residence or individual viewer, demographic such as based on financial information, and explicit or implicit preferences.
- The combination of structured data and advertising copy can reduce the complexity of systems that require association of the data and the copy.
- Advertising sent independently of content may be downloaded ahead of time, for example, times of low bandwidth usage, and pre-stored in a local storage medium associated with the viewers (e.g. a set-top box). This provides a mechanism for providing targeted advertising while using standard distribution methods for the content.
- Other features and advantages of the invention are apparent from the following description, and from the claims.
-
FIG. 1 is a block diagram of an exemplary content/service handling and delivery network. -
FIG. 2 is a block diagram of the content/service handling and delivery system ofFIG. 1 . -
FIG. 3 is a block diagram of the content import component ofFIG. 2 . -
FIG. 4 is a block diagram of exemplary content/service handling and delivery system for interactive delivery of real-time and time-shifted audio/video content. -
FIG. 5 is a flow diagram of a content handling process. -
FIG. 6 is a flow diagram of a play process. -
FIG. 7 is a flow diagram of a pause process. -
FIG. 8 is a flow diagram of a resume process. -
FIG. 9 is a flow diagram of a change channel process. -
FIG. 10 is a flow diagram of a rewind process. -
FIG. 11 is a flow diagram of a fast forward process. -
FIG. 12 is a flow diagram of a set mark process. -
FIG. 13 is a flow diagram of a search and select process. -
FIG. 14 is a flow diagram of a termination process. -
FIG. 15 is a block diagram of exemplary content/service handling and delivery system for interactive advertising content and services. -
FIG. 16 is a block diagram of a content storage and cut-through forwarding system utilized in the content/service handling and delivery system ofFIG. 2 . -
FIG. 17 is a graph diagram of a content propagation and cut-through routing system utilized in the content/service handling and delivery system ofFIG. 2 . -
FIG. 18 is a graph diagram illustrating an exemplary implementation of a content propagation and routing network including an Interactive Advertising Service. -
FIG. 19 is a diagram showing advertising transmitted to a set-top box out-of-band with content and services. -
FIG. 20 is a diagram showing advertising transmitted to a set-top box in-band with content and services. -
FIG. 21 is a graphical representation of an XML delivery wrapper. - Referring to
FIG. 1 , an exemplary content/service handling and delivery network 10 includes one ormore source systems 12 linked viacommunication mechanisms 14 to a content/service handling anddelivery system 16. The content/service handling anddelivery system 16 is linked viacommunications mechanisms 18 to one or moreterminal systems 20. Thesource system 12 in the network 10 provides content and/or services to the content/service handling anddelivery system 16. Thesystem 16 handles and delivers content, services, and a combination of content and services. By way of example, thesystem 16 within the network 10 is described using content. However, it will be appreciated that the same or similar descriptions apply to the handling and delivery of services and to the handling and delivery of a combination of content and services. Content may be any kind of data. For example, content may be audio/video and associated data, on-line or electronic documents, web pages, images, graphics, software programs and scripts, non-linear and multimedia compositions, voice, video, data calls, data messages, and so forth. Content, in its simplest form, is high production value audio/video in a variety of formats, MPEG-2, MPEG-4, Quicktime, Real, ASF, and so forth, delivered with rudimentary interactivity, pause, fast forward, rewind, bookmark, and so forth. Content is expected to evolve into increasingly rich interactive mixed media experiences though the application of a variety of technologies: World Wide Web Consortium recommendations, HTML with Cascading Style Sheets (CSS) and scripting (i.e., DHTML), Document Object Model (DOM), WebCGM, Scalable Vector Graphics (SVG), Synchronized Multimedia Integration Language (SMIL), and so forth, JavaScript, Java and Personal Java, Macromedia Flash and Shockwave, Adobe LiveMotion, ATVEF, PowerTV, Active-X, Active Server Pages, and so forth. - Content can integrate linkages to commerce transactions as well as a wide variety of on-line and off-line services: call centers, mail centers, Web sites, and such. Content may be a disassembled collection of interactive content objects that is navigated by the user or assembled by the provider in a personalized fashion for each user at the time of use. This latter case is particularly compelling as users may be interested in particular aspects of a product and not interested in others.
- The
terminal system 20 in the network 10 receives content and/or services from the content/service handling anddelivery system 16. Aterminal system 20 typically includes some combination of output devices, input devices, storages, processing elements, peripherals, and so forth. An output device is typically capable of receiving different content from a content/service handling anddelivery system 16 and/or from storage and processing elements within theterminal system 20 and presenting it to one or more users (not shown). An input device is typically capable of sensing and transmitting audio, visual, manual, and/or other information to storage and processing elements within theterminal system 20 or to the content/service handling anddelivery system 16. A user may be a person or group of persons using a terminal system. - In another embodiment, the content/service handling and
delivery system 16 may be a source and/or terminal system for one or more additional content handling and delivery systems (not shown). Such configurations of content/service handling and delivery systems may be embodied within a content propagation and cut-though routing network described below. - The
communication mechanisms communication mechanisms - The content/service handling and
delivery system 16 generally mediates and handles the delivery of content and services between numerous source systems and numerous terminal systems. The content/service handling anddelivery system 16 typically receives content (particularly real-time content) and services fromnumerous source systems 12. The content/service handling anddelivery system 16 has the ability of storing, handling, and delivering of all received content from allsource systems 12, provides various services, and delivers selected content and services to one or moreterminal systems 20, typically in response to one or more user requests. The selected content is delivered to one or moreterminal systems 20 by the content/service handling anddelivery system 16 either real-time, i.e., as received by thesystem 16 from asource system 12, or time-shifted, i.e., delayed by some amount of time from when thesystem 16 begins receiving the content from a source system. The term “time-shifted” is used interchangeably with the term “stored”. The content/service handling anddelivery system 16 may enhance selected content and services before it is delivered to one or moreterminal systems 20. Enhancement may involve processing, composition, and/or aggregation of content in response to a user request, making communications between theterminal system 20 and the content handling anddelivery service system 16 interactive. - As will be described below, the content/service handling and delivery network 10 is designed to be efficient, fault tolerant, and load balanced wherein content (particularly real-time content) need only pass through the network 10 once to be stored or passed through as it is delivered to
terminal systems 20. Content may be routed through one or more content/service handling and delivery systems and optionally stored or cached by those systems. Thus, users are provided access to real-time and time-shifted content as well as compositions of real-time and/or time-shifted content. For example, stored video or animated advertisements may be spliced into real-time or time-shifted content (audio/video, web pages and other documents, ATVEF, interactive graphics, and so forth), flowing through the network 10. - Referring to
FIG. 2 , the content/service handling anddelivery system 16 ofFIG. 1 includes a collection of components and data flows between components. The components include acontent import component 30, aservice gateway component 32, acontent information component 34, acontent library component 36, one ormore service components 38, aprimitive composition component 40, and an input andinteraction component 42. All data flow are bi-directional (or multi-directional) and redundant paths do not imply redundant communications mechanisms, though in the preferred embodiment redundant communications mechanisms are used between most components to achieve scalability, fault tolerance, and load balancing. Processing elements, memories, storages, busses, and so forth may be employed by and/or shared by thevarious components system 16. - The content/service handling and
delivery system 16 is deployed and managed for example, by an interactive television service provider to mediate the handling of content and services between numerous originators and numerous interactive television users. The content/service handling anddelivery system 16 is designed, in one aspect, to include an ability to be scaled to import all content from all sources all the time, storing the content for a duration of time, and giving users real-time and time-shifted access to the content. - Referring to
FIG. 3 , thecontent import component 30 performs content import using one ormore importers 50 that are configured and managed through an operator interface (not shown) and various associated information bases (not shown).Importers 50 process and prepare content for subsequent storage and use. Analog content is encoded into a digital format. Digital content may be re-encoded, transcoded, translated, and so forth. Imported content may be communicated to other components of thesystem 16, including other importers. - Multiple instances of content may be received in-band (sharing a communications mechanism) or out-of-band using one or more separate communications mechanisms.
Importers 50 may separate, extract, or demultiplex in-band content.Importers 50 may also mix, insert, or multiplex content communicated to them by one or more other importers receiving out-of-band content. - Multiple instances of content received in-band or out-of-band may be associated. Associated content may be received at the same time or at different times. For example, the content of a television program may contain in-band descriptive information and/or a program description may have been received earlier, perhaps the night before the program airs. To synchronize out-of-band associated content,
importers 50 may be synchronized. - The content imported by one or
more importers 50 may effect the operation of other importers. For example, splicing information received by one importer may be sent to another importer causing it to segment the content it is importing. - The operation of an
importer 50 may effect or be effected by other system components. Typically, configuration information, program schedules and channel assignments, universal resource identifiers, and other source specifications may be used to assist the operator in managing the import of content. - Referring again to
FIG. 2 , content imported, generated, and/or collected by thesystem 16 may be stored in and/or routed through thecontent library 36 andcontent information base 34. Thecontent library 36 generally contains content in a form that is directly presentable on an output device without intermediate interpretation or translation. Thecontent information base 34 generally contains ancillary data required for and collected during the acquisition and use of content. The term information base is interpreted herein to mean any data or collection of data organized in any manner including data files, directories, databases, etc. Content in the content library and information in the content information base is managed by a content manager (not shown) through various management interfaces (not shown), the content information base, and possibly other information bases (not shown). The content manager controls thesystem 16 resources, e.g., processing, storage, communications, and so forth, used to store, forward, propagate, and route content through thesystem 16. The content manager also controls and monitors the caching of content interminal systems 20. - Distinctions made here between the
content library 36 andcontent information base 34 reflect the practice of discriminating between different forms of content and organizing those forms for optimal use. The distinctions, however, are not inherent to thesystem 16. Discrimination and organization of content in the preferred embodiment are expected to change over time as technologies advance (e.g., a time may come when a movie is as easy to extract from a relational database as a billing record is today). - Content is stored on one or more storages. The preferred embodiment of the content library is a content storage and cut-through forwarding system or a network of content storage and cut-through forwarding systems managed by a content propagation and cut-through routing system. By applying these storage schemes the resulting
system 16 is highly scalable, fault tolerant, and load balanced. Content may be cached onto storage located in theterminal system 20. Thecontent information base 34 may be stored and propagated in the same or in a similar manner. - When content is stored in the
content library 36, thecontent information base 34 is generally updated to signal the content's availability. The availability of content may be signaled at any time before, during, or after content is stored in thecontent library 34. For example, content stored in and/or routed through asource system 12 employing the cut-through forwarding capabilities described below with reference to the content storage and cut-through forwarding system may be signaled as available in thecontent library 36 even though the content is not yet (or may never be) stored in thecontent library 36. Similarly, content stored or cached by aterminal system 20 may be signaled as available in thecontent library 36. - The content/service handling and
delivery system 16 supports a variety ofservices 38. Typically, aservice 38 performs a function using imported content, associated information, and user input. The resultingservice output 38 is aggregated with the output of other services and delivered to one or moreterminal systems 20. More generally, however,services 38 receive content and information from other components of the content/service handling anddelivery system 16, perform some function, and send the result to other components of the content/service handling anddelivery system 16. Aservice 38 may communicate withimporters 50 bypassing thecontent library 36. Aservice 38 may involve multiple users whereby users communicate and collectively participate (cooperate or compete) in some activity such as a multi-user game involving a single terminal system or multiple terminal systems. Aservice 38 may also involve multiple users using one or moreterminal systems 20 whereby users communicate and collectively participate in an activity. - A variety of hardware and software methodologies may be used to construct a
service 38. Aservice 38 may be constructed from or interoperate withother services 38. Someservices 38 may reside in the content/service handling anddelivery system 16, others may reside insource systems 12 orterminal systems 20, yet others may reside in external systems accessed throughservice gateways 32. - The
service gateways 32 provide communication betweenservices 38 within thesystem 16 and services external to thesystem 16. Typically, theservice gateways 32 are used to send reports and other messages generated by users or usage of thesystem 16. But, for example, a telephony or audio/video conference service may use aservice gateway 32 to enable users of thesystem 16 to communicate to users of other systems or devices of various types. -
Services 38 are managed by a service manager (not shown) through various management interfaces and information bases (not shown). The service manager controls thesystem 16 resources, e.g., processing, storage, communications, and so forth, used in deliveringservices 38 toterminal systems 20. The service manager may also inter-operate with theterminal systems 20, such as monitoring the caching and execution ofservices 38 interminal systems 20. - The input and
interaction component 42 receives input from aterminal system 20 and dispatches it to one ormore services 38. Input is generally dispatched to theservice 38 that requested it. Input may be from an input device (not shown) residing in theterminal system 20, and/or from aservice 38 or other applications (not shown) residing in theterminal system 20. Ifmultiple services 38 request the same input, or type of input, the requested input is dispatched according to a set of rules under the control of the operator. For example, the rules may specify that the input be sent to the last service requesting the input, which may use or modify the input, and/or propagate the input to other services requesting the input. - The
primitive composition component 40 of the content/service handling anddelivery system 40 aggregates (or otherwise composes) the output from one ormore services 38 and delivers the result to one or moreterminal systems 20. The aggregate may also be sent to multipleterminal systems 20. For example, aservice 38 may be responsible for receiving real-time content, inserting ads into it, and broadcasting the result to all users. In this context the term aggregate is interpreted as to gather content into a mass, sum, or whole. This includes, but is not limited to, replacing, inserting, multiplexing, splicing, and composition of content to be sent to one or more terminal systems over various communications mechanisms. - As mentioned above, users use the
terminal system 20 to interact with content and services provided by the content/service handling anddelivery system 16. Input received from theterminal system 20 is dispatched to one ormore services 38. Content and other data sent to theterminal system 20 may be used byservices 38 and applications residing in theterminal system 20 and/or presented to one or more users. In an embodiment, theterminal system 20 dynamically caches content or services (or components thereof) to increase system 10 efficiency. - Referring to
FIG. 4 , a content/service handling anddelivery system 16 for interactive delivery of real-time and time-shifted audio/video content is shown. In a preferred embodiment, content is stored in a content storage and cut-through forwarding system, described below, or a network of content storage and cut-through forwarding systems managed by the content propagation and cut-though routing system. This is but one aspect of thesystem 16 and is described as one example. Other aspects are described below. - The content/service handling and
delivery system 16 imports analog and digital audio/video content 50. Various methods of encoding may be utilized, such as MPEG-2, MPEG-4, Quicktime, Real, ASF, and so forth, delivered with rudimentary interactivity, pause, fast forward, rewind, bookmark, and so forth. Content is expected to evolve into increasingly rich interactive mixed media experiences though the application of a variety of technologies: World Wide Web Consortium recommendations, HTML with Cascading Style Sheets (CSS) and scripting (i.e., DHTML), Document Object Model (DOM), WebCGM, Scalable Vector Graphics (SVG), Synchronized Multimedia Integration Language (SMIL), and so forth, JavaScript, Java and Personal Java, Macromedia Flash and Shockwave, Adobe LiveMotion, ATVEF, PowerTV, Active-X, Active Server Pages, and so forth. Thesystem 16 could have as few as one audio/video importer within thecontent import component 30 allowing for the import of content from one source at a time. Importers can be added to thesystem 16 to allow the simultaneous import of content from multiple sources or to provide redundancy and fault tolerance. The efficiency, load balancing, and fault tolerance of the preferred embodiment supports large scale deployments where one or more importers are dedicated to each content source, thus enabling the simultaneous import (and delivery) of content from numerous sources. - An
example terminal system 20 includes a set top box that communicates with and controls a television. Typically thesystem 20 will also include a remote control device and other devices. The content/service handling anddelivery system 16 has a default service for each user. This is referred to as auser service 52. Theuser service 52 presents a user interface to the user on theterminal system 20 and provides access to services on the content/service handling anddelivery service system 16. Theuser service 52 queries various information bases to ascertain what services are available to a user and enables the user to invoke services. In this example only aninteractive delivery service 54 is shown. Theuser service 52 also collects and maintains information associated with users and usage of services. This may include, but is not limited, to such things as user account, registration, and profile information, billing and payment information, preferences, content and service subscriptions, permissions, and restrictions, past and pending service requests, a personalized guide to content in the content library, collected usage information, and so forth. - The
interactive delivery service 54 provides users with interactive access to content available through the content/service handling anddelivery system 16. Theinteractive delivery service 54 queries thecontent library 36,content information base 34, and various other information bases (in particular, user and usage information) to generate personalized guides, listings, and recommendations pertaining to content available through the content/service handling anddelivery system 16. Users interact with theinteractive delivery service 54 to select content for delivery. Delivery may commence immediately or be scheduled for some later time. If the user requests to use content that is not yet available, theinteractive delivery service 54 may signal theterminal device 20 when the content becomes available or display such things as a timer indicating how long before the content will be available along with ads, promotions, or other kinds of content appropriate to the situation. - In general, content is delivered to a user as follows. The
interactive delivery service 54 reads content through thecontent library 36 and sends it to theprimitive composition component 40 to be added to one or more aggregates of content being sent to one or moreterminal systems 20. Delivery of real-time content is accomplished using the content storage and cut-through forwarding system, described below, or by services bypassing the content library to communicate directly withimporters 50. Real-time content may also stored in thecontent library 36 for subsequent time-shifted delivery. - Users interact with the
interactive delivery service 54 in various ways. Pause, fast-forward, rewind, start, and start are supported for content where such controls are appropriate, e.g., streaming media. It should be appreciated that the specific methods of interaction described below may be modified or applied to any sort of interactions involving any sort of content and/or services. If a user on aterminal system 20 is receiving real-time content and pauses or rewinds the content, the content/service handling anddelivery system 16 transitions seamlessly from delivering content real-time to delivering it time-shifted from thecontent library 36. If a user is viewing time-shifted content and fast-forwards to the end of what has been stored in thecontent library 36, the content/service handling anddelivery system 16 seamlessly transitions from delivering the time-shifted content to delivering the content real-time. - Users may interact with the
interactive delivery service 54 through theterminal system 20 to stop the delivery of content and bookmark it for later use. In response, theinteractive delivery service 54 queries and modifies user and usage information in a user information base (not shown). - The
interactive delivery service 54 may collect usage information and save this information in a user information base. This usage information may be used to affect subsequent behavior of theinteractive delivery service 54 to the user. For example, different content recommendations may be made to a user based upon their prior usage patterns or the usage patterns of other users. - Referring to
FIG. 5 , a content/service handling process 200 residing in thesystem 16 and associated with theinteractive delivery service 54, for example, includes receiving 202 a user command. As mentioned above, the user typically enters a command through a set top box connected to a display unit in theterminal system 20. In an embodiment, user commands may be entered using a wireless device. The process determines 204 if the user command is a “play” and executes 206 a play process if so. The process determines 208 if the user command is a “pause” and executes 210 a pause process if so. - The
process 200 determines 212 if the command is a “resume” and executes 214 a resume process. The process 162 determines 216 if the command is a “change channel” and executes 218 a change channel process. The process 162 determines 220 if the command is a “rewind” and executes 222 a rewind process. The process 162 determines 224 if the command is a “fast forward” and executes 226 a fast forward process. The process 162 determines 228 if the command is a “set mark” and executes 230 a set mark process. The process 162 determines 232 if the command is a “search and select” and executes 234 a search and select process. The process 162 determines 236 if the command is a “terminate” and executes 238 a termination process. - Referring to
FIG. 6 , aplay process 206 includes the interactive service delivery delivering 252 content through the content library and to the terminal system. Theprocess 206 determines 254 whether there is a bookmark set for the user and delivers 256 recorded content to the terminal system if a bookmark is set. If not, a bookmark is set for the user, theprocess 206 delivers 258 real-time content passing through (or bypassing) thecontent library 36 to the terminal system and returns at 260. - Referring to
FIG. 7 , apause process 210 includes the interactive delivery service sending 272 a bookmark instruction to the user service. The user service sets 274 a bookmark in its user information base. Theprocess 210associates 276 the user with the bookmark in the user information base and the interactive delivery service suspends 278 the delivery of content to the terminal system, i.e., real-time or time-shifted. - Referring to
FIG. 8 , aresume process 214 includes the interactive delivery service sending 292 a resume command to the user service for the user. Theprocess 214 determines 296 if the user is found. If the user is not found, an error message is returned 298 to the interactive delivery service and the error message is sent 300 to the user using the interactive delivery service. If the user is found, the interactive delivery service locates content associated with the user and delivers 310 the content from thecontent library 36 to the terminal system. Theprocess 214 returns at 312. - Referring to
FIG. 9 , a change channel process 218 includes the interactive delivery service receiving 322 a change channel command. The interactive delivery service sets 324 a bookmark for the user at the current channel as described above. The interactive delivery service delivers 326 real-time content being broadcasted on the selected channel. The process 320 returns at 328. - Referring to
FIG. 10 , arewind process 222 includes the interactive delivery service receiving 342 a rewind command. The interactive delivery service starts 344 rewind delivery of content (i.e., content, possibly excerpted or modified, delivered in reverse order) for the selected content for the user associated with the interactive delivery service. Theprocess 222 determines 346 whether a stop command was received, and if not, continues 348 rewinding. If a stop command is received the interactive delivery service stops 350 the rewinding of content for the user. The interactive delivery service sets 352 a bookmark as described above. Theprocess 222 returns at 354. - Referring to
FIG. 11 , afast forward process 226 includes the interactive delivery service receiving 372 a fast forward command. Theprocess 226 determines 374 whether the content is real-time. If the content is real-time, theprocess 226 signals 376 a user error and returns 378. If the content is not real-time, the interactive delivery service starts 380 fast forward delivery of content (i.e., content, possibly excerpted or modified, delivered in faster than real-time) 380 from the content library. Theprocess 226 determines 382 whether the stored content being fast-forwarded is at its end. If the recorded content is not at its end the interactive delivery service continues to fast forward 380 through the stored content in the content library. If the stored content is at its end, theprocess 226 signals 384 a stop to the user. Theprocess 226 returns at 378. - Referring to
FIG. 12 , amark process 230 includes a interactive delivery service receiving 402 a set mark command. The interactive delivery service sets 404 a mark and instructs 406 the user service to associate the mark with the user. The process returns at 408. - Referring to
FIG. 13 , a search andselect process 234 includes the interactive delivery service receiving 422 a search and select command. The interactive delivery service searches 426 the content library for stored content and queries the user information base for marks and other information related to content usage. The interactive delivery service sends 428 a personalized list of titles to the user. The user sends 430 a selection choice to the interactive delivery service. The interactive delivery service begins delivering 436 the content for the selected choice through (or bypassing) the content library and returns at 438. - Referring to
FIG. 14 , atermination process 238 includes the interactive delivery service receiving 452 a termination command. The interactive delivery service terminates 454 content delivery to the user and sets 458 a bookmark as described above. The process 450 returns at 460. - In an embodiment, the interactive delivery service may collect usage information. The information may effect the subsequent behavior of the interactive delivery service. For example, different content recommendations may be made to a user based upon their prior usage patterns or the usage patterns of others. The information may be communicated to external services through
service gateways 32. For example, the interactive delivery service (or a service cooperating with the interactive delivery service) may present users with the option to buy collateral product and services (for example, the sound track for a movie they are watching) and generate messages to an external order processing center in response to user selections. - An embodiment supports time-shifted, real-time or both modes of delivery, but does not support a seamless transition between the two. In such embodiments, the availability of content for time-shifted delivery may be slightly or substantially delayed from when content is imported by the system.
- Another embodiment supports only time-shifted delivery of content. The cut-through features of the underlying system may be employed to reduce delay in content availability. Real-time services may be delivered to terminal systems through a service gateway or via communications mechanisms external to the system.
- In still another embodiment, the service features of the system are used to collect information on who is using what content even if the content is not flowing through the system (e.g., monitor who is watching what television broadcast channels even if the system isn't used for broadcast services). Such information may be used for example to decide upon what advertising to insert into the content even if the ad insertion system or process is external to the content/service handling and delivery system.
- Referring now to
FIG. 15 , a content/service handling anddelivery system 16 adapted to provide interactive advertising content and services is shown. In a preferred embodiment, content is stored in a content storage and cut-through forwarding system, described below, or a network of content storage and cut-through forwarding systems managed by the content propagation and cut-though routing system described below. This is but one aspect of thesystem 16. Other aspects are described below. - Import in the
content import component 30 is extended to include content associated with advertising: advertising content (copy) and data used by advertising related services to associate advertising content with other content. -
Ancillary data importers 58 import analog and digital data associated with content imported by one or more content importers in thecontent import component 30. Examples of ancillary data include but are not limited to splice data, content identification, description, origination information, event triggers, enhancement information, available advertising times and spaces, input and interaction times and spaces, and so forth. In an embodiment this may be accomplished using fixed or implicit schemas for the import of a specific kinds of ancillary data. In other embodiments, it may be accomplished by using an extensible set of schema for the generalized import of ancillary data. - In an embodiment, an ancillary data importer (splice importer) is used to import analog and digital splice data (cues, schedules, etc.) associated with content imported by one or more audio/video importers. Splice data may be conveyed in-band with or out-of-band from its associated content. Typically, splice data (audio “cue-tones”), contact closures, SCTE standard DVS-253, VBI data, ATVEF (Advanced Television Enhancement Forum), text data, XML data, or other header/descriptor formats) is encoded (analog) or re-encoded (digital) into a common internal format. To maintain synchronization between out-of-band data and their associated content, splice data importers are synchronized with their associated content importers. In-band splice data is copied or cut from its associated content, processed, and/or (logically) forwarded to splice data importers to be processed as described above.
- Splice importers send splice data to the
content information base 34 where it is stored and/or forwarded to one or more requestingservices 38 for use in delivering ads or ad services in conjunction with the associated content. Splice data from splice importers or from thecontent information base 34 may be used by content importers to modify the import of associated content (e.g., splice data sent to MPEG encoders may cause them to end sequences and insert I-Frames to create clean splicing points in the content). This allows for splice data to be imported at the same time as its associated data or at some earlier or later time. - The ancillary data import mechanism is also used to import trigger and enhancement information defined in ATVEF (and other such mechanisms). This information is used replace general (or default) enhancements with localized and personalized enhancements.
- The preferred embodiment is flexible and has the ability to change over time to accommodate advancements in technology. For example, digital methods are expected to supplant analog methods for representing and conveying content and its associated data; in-band splice signaling is expected to supplant out-of-band signaling methods; the general practice of splice cueing is expected to be supplanted by content formats in which content and ancillary data is structured into self-identified, self-described components. To accommodate these trends the separate content importers and ancillary data importers in the
content import component 30 described above are replaced by integrated and generalized importers whereby thecontent information base 34 is populated with information extracted directly from content and/or derived from its structure. - Advertising services are provided in an Interactive Advertising Service (IAS) 60. The
IAS 60 commonly cooperates withother services 38 to enhance those services with advertising capabilities. TheIAS 60 may read ad content from thecontent library 36 and use it to modify an aggregate of content being delivered to one or moreterminal systems 20. It may also communicate toother services 38 what advertising content (copy) to include in the delivery of their service. For example theIAS 60 cooperates with theinteractive delivery service 54 to insert, replace, aggregate, compose, and so forth, the interactive content delivery with advertising. - The
IAS 60 is generally responsible for placement and presentation of advertising to one or more users of one or moreterminal devices 20. The opportunity to present advertising to one or more users is considered “inventory” and inventory has many attributes (user or users, time, space, and so forth). Inventory is commonly associated with the delivery of other content and services, though it may also stand alone. For example, a user may request the delivery of content describing a product. Inventory may be known in advance, for example, a specification of where and when ads may be displayed in a TV program or web page. Inventory may also appear dynamically (dynamic inventory) when a user begins using a service in the system, for example, when a user begins time-shifted viewing of a TV program. - In some embodiments, the content/service handling and
delivery system 16 may import content from an advertiser's content propagation and cut-through routing network such that and when users begin using a service, content from the advertiser is immediately presented to the user. - The
IAS 60 binds advertising to inventory using one of a variety of methods. One aspect is its support for binding advertising to dynamically appearing inventory. Typically, it applies dynamic and late binding approaches such that the binding (or final binding) is made “just in time” before inventory is consumed. This allows a binding function to incorporate the maximum possible amount of information related to the binding decision, thus allowing for optimal results (maximizing the value and minimizing the cost of presenting an ad). The binding function incorporates one or more factors including but not limited to user and usage information, information about available advertising, its useful lifetime, its intended audience, information about the content and service with which the advertising is to be associated, time and date information, information about events effecting users and their usage (e.g., news of a snow storm), expressed user preferences and/or requests for product or service information, advertiser agreements, placement schedules, and so forth. - Another aspect of the
IAS 60 is its support for “intelligent or self guided ads” that contain information, instructions, procedures, and possibly software programs that interface with theIAS 60 in search of optimal binding. A specific example is for ads to have embedded or associated Java programs and for theIAS 60 to provide a Java run time environment along with an advertising interface package through which the ad can discover inventory, user information, and other information to be factored into a binding decision. The result is typically treated as a hint or recommendation that theIAS 60 may either accept or ignore. - The binding function may be used to compile a set of ads for each user—each ad in the set has a computed value specific to that set. For inventory involving an individual user, the
IAS 60 inspects the set of ads associated with that user and binds the ad with the greatest value matching the parameters of the inventory. Inventory parameters include such things as content type, screen size and location, duration, and so forth. So, for example, video ads would not be placed with inventory accommodating only text or still images. For inventory involving multiple users, theIAS 60 inspects the set for each user and the ad common to all sets with the greatest average value is used. Other statistical criteria may also be used. This mechanism supplants the current (generally manual) practice of statically binding advertising to content as a means of reaching an estimated demographic. Here the demographic as well as the expressed interests of users (and other information) is explicitly factored into the valuation. - In the near term, due to constraints in processing, storage, and/or communications, the
IAS 60 may pre-compute all or part of the function described above. The pre-computation would be performed periodically or in response to events such as when new advertising content is imported. The pre-computation generally uses a subset of factors such as user demographic information, user preferences and requests, and information about available advertising and its intended audience (all of which is known well in advance of dynamically appearing inventory). When inventory appears and at various time before it is consumed additional computations may be applied before a final binding decision is made. - In general, services communicate with the
IAS 60 to deliver or assist in the delivery of ads. They also communicate with theIAS 60 to respond to user input related to the delivery of ads and to track and report on the delivery and use of ads. - The
IAS 60 may use ancillary data stored in thecontent information base 34 to sequence or synchronize the delivery of ads during the aggregation and delivery of associated content. It may also use ancillary data to aggregate content in advance. A specific example of the latter is when theIAS 60 uses splice data to segment content in the content library. Segmentation is done directly by modifying the content or indirectly by modifying how content is incorporated or referenced by other content. - The
interactive delivery service 54 described in the previous example may communicate with theIAS 60 before, during, and after it delivers content. TheIAS 60 tracks inventory in the content, binds ads to inventory, and causes those ads to be added to one or more aggregates of content as required by the parameters of the inventory. A specific example of this process is when theinteractive delivery service 54 is about to deliver segmented (or structured) content: theinteractive delivery service 54 communicates with theIAS 60 to replace segments and possibly add segments containing ads (as described above, this may be done directly by theIAS 60 adding content to the appropriate aggregate(s) or indirectly by theinteractive delivery service 54 using theIAS 60 to modify the structure of content it is or is about to deliver)—specifically it replaces ads that have lost value with respect to other available ads—and this process may be repeated at various times during the delivery of a sequence thus allowing for a revaluation of the ads to be delivered. Terminal system input and interaction (e.g., user input and interaction) or other events may change the value of ads in the set of ads compiled for a user. - Terminal system input (e.g., user input) associated with the delivery of ads is dispatched to the
IAS 60. TheIAS 60 may also examine terminal system input not associated with advertising.IAS 60 response to terminal systems input depends on a number of factors such as type of ad eliciting the input, parameters of the inventory, service polices, consumer preferences and requests, provider policies, and so forth. - The
IAS 60 may incorporate the information into the valuation of ads and/or use the information to send messages and reports to external services via a service gateway. - A specific example of how the
IAS 60 may respond is when a user interacts with an ad using a television remote control: depending on the type of input, theIAS 60 may suspend and/or modify the content and services being delivered. In particular, it may cause the delivery of some content to suspend and cause the delivery of other, ad related, content to begin. Alternatively, it may trigger advertising in the form of enhancements to be delivered (e.g., ATVEF). It may modify user information, for example, to note a user's expressed interest or disinterest in an ad. It may also generate and send reports or other kinds of messages to external entities using theservice gateway 32, for example, to execute a purchase or to have an advertiser contact the user (e.g., by mail or by phone call). Any communications mechanism may be used. The preferred embodiment may employ a variety of standards and practices to achieve secure and non-repudible communications to authenticated entities. For example, an extranet designed for the purpose of trafficking interactive advertising content and services (advertising extranet) may be utilized. - The
IAS 60 also presents a user interface to users allowing them to express their advertising preferences and to request advertising related content and services. In particular, theIAS 60 allows users to request product information. This may be done in a variety of ways including presenting users with product categories to select from, by structured expression (search expressions), and by free form expression (natural spoken or written language). - Though implied above, the
IAS 60 is also responsible for binding ads to inventory associated with various user (and operator) interfaces presented by other components of thesystem 16. For example, theuser service 52 andinteractive delivery service 54 would communicate with theIAS 60 to place ads in their user interfaces (UIs). - The
IAS 60 generates reports and other messages related to the use of interactive advertising and uses one ormore service gateways 32 to communicate this information to external entities (e.g., content originators and advertisers). For example, this mechanism may be used to report on the use of interactive ads or it may be used to enable users to request further information, a callback from the advertiser, or linkage to other on-line services. - Referring now to
FIG. 16 , a content storage and cut-through forwarding system 100 includes at least oneinput element 102, at least one store andforward element 104, and at least oneoutput element 106. Each of theelements communication link mechanisms 108. Processing elements, memories, storages, busses, and so forth may be employed by and/or shared byvarious elements - In a preferred embodiment,
input 102 andoutput 106 elements are integrated with store and forward elements such that a store and forward elements may be accompanied by one or more integrated inputs, one or more integrated outputs, a combination of integrated inputs and outputs, or neither. Typically, multiple input and output elements are integrated and distributed across multiple store and forward elements to load balance input and output traffic across the system 100, to increase system fault tolerance by providing redundant input and output data paths, and to gracefully degrade service when store and forward elements fail by also removing a source of load on the system (inputs and outputs). - Elements in the content storage and cut-through forwarding system 100 communicate using one or
more communications mechanisms 108. Though communications in the content storage and cut-through forwarding system 100 may be described as request/response transactions, any of a variety of methods could be used. In some embodiments, state associated with a data flow through the system would be “lazy bound” (creating virtual or implicit connections) and persist for the duration of the data flow. When a data flow is terminated or modified, state would be deleted explicitly or garbage collected at some later time. - Each
input element 102 receives content through a communications mechanism, and segments (if prescribed), according to a defined method, the content and computes redundancy information in aparity engine 116. The preferred embodiment uses the segmentation and redundancy methods defined for RAID-5. Other embodiments may apply the methods defined for RAID-0, RAID-1, RAID-2, RAID-3, RAID-4, and RAID-6 systems, non-RAID systems, hybrid storage subsystems, and so forth. Some of these other embodiments do not include segmentation. Theinput element 102 distributes the content segments and redundancy information to one or more store andforward elements input element 102 may also buffer content segments and retransmit the content segments on demand or in response to failures in one or more store and receiveelements - In another embodiment, buffer storage may be conserved by detecting element failures and using the information to determine which content segments to retransmit without first putting them in the retransmission buffer.
- Each store and forward element, store and
forward element 104, for example, receives content segments from theinput element 102, buffers the content segments in abuffer 117 and stores the content segments in alocal storage subsystem 118. The store andforward element 104 responds to requests to read content segments by either retrieving the requested content segments from thebuffer 117 or by retrieving the requested content segments from thelocal storage subsystem 118. - Any type of
buffer 117 or cache may be used. In a preferred embodiment, a ring buffer is utilized because it efficiently supports a writer and multiple asynchronous readers of sequential data. In some embodiments, the buffer is sized to allow for a smooth graduation of delays through the system 100. In other embodiments, a smaller buffer size is utilized. Buffer size may be measured in units less than, equal to, or greater than the size of a content segment. - The
local storage subsystem 118 is preferred to be fault tolerant and load balanced, using RAID-5, though other storage methods could be used: RAID-0, RAID-1, RAID-2, RAID-3, RAID-4, and RAID-6 systems, non-RAID systems, hybrid storage subsystems, and so forth. - Each
output element 106 reads content segments from one or more store and forward elements, checks for errors, and outputs the content over acommunication mechanism 115. Depending on the segmentation and redundancy method applied by theinput element 102, theoutput element 106 may sequence the segments (if necessary) to reassemble the original content and, in the case of errors, reconstructs the missing or erroneous content. - If an error occurs, e.g., a read request fails or a segment is corrupted or missing, an
output element 106 does one of two things to reconstruct the content. First, theoutput element 106 may, in accordance with the defined procedure, read the missing or corrupted data from theappropriate input element 102, or, second, theoutput element 106 may read redundancy information from the appropriate store and forward element to reconstruct the missing content. The method applied depends on whether the output is real-time or time-shifted with respect to its input and which method can meet the output timing requirements. - Some embodiments may use content segments small enough such that reconstruction from parity can meet real-time output requirements thereby eliminating the need for retransmission. The use of the RAID-3 (or equivalent) algorithm would have a similar effect. Other embodiments may use large content segments such that retransmission yields lower delay in the reconstruction process. The preferred embodiment is expected to shift over time depending on changes in underlying technology (processors, disks, busses, networks, etc.).
- Other embodiments may not integrate storage and forwarding in the manner described above, but use distinct (but interconnected) storage and forwarding (or switching) elements to create a system 100 that behaves in a similar or compatible manner.
- Referring to
FIG. 17 , an exemplary content propagation and cut-through routing network 130 is shown. The content propagation and cut-through routing network 130 applies the propagation methods defined in “CONTENT PROPAGATION IN INTERACTIVE TELEVISION” (patent application Ser. No. 09/547,474), incorporated by reference herein, to a network of content storage and cut-through forwarding systems 100 described above. In this context, the term “network” is interpreted broadly as defined in graph theory. Systems (labeled A-L) in the network are interconnected by one or more communications mechanisms and any size, type, or combination of content storage and cut-through forwarding systems may be used. For example, appropriately configured terminal systems would qualify as such and be used to cache content. The preferred embodiment is an efficient, fault tolerant, and load balanced network wherein real-time content need only pass through a network (or subset of a network) once as it is propagated to storages and delivered for presentation and use. The content manager described above controls the various systems in the network system to implement defined propagation and routing procedures thereby controlling how and where content is stored and forwarded through the network as a whole. - Any of a variety of routing algorithms may be used to setup the systems (paths) used for forwarding content through the network. The type of routing algorithm used will depend on the size, type of network, and the underlying communications mechanisms used. In some embodiments, edge routing as opposed to hop-by-hop routing may be used whereby edge systems compute and recomputed optimal routes based on content availability and loading information collected from (or broadcast by) systems in the network. This approach enhances fault tolerance and load balancing: if internal systems fail or overload, those systems are removed from edge route computations and those computations are distributed across edge systems; if edge systems fail, the route signaling load on the system is likewise reduced.
- One aspect stores real-time content on systems in the network 130 as it is delivered to terminal systems. The stored content is delivered on-demand (e.g., time-shifted) to other terminal systems.
- Another aspect delivers content to terminal systems from systems to which they are only indirectly connected. The content is routed to terminal systems through one or more systems and optionally cached by those systems.
- Another aspect delivers content that is an aggregate of real-time and/or previously stored content. For example, video ads may be spliced into real-time or stored video routed through a network or stored banner ads may be transmitted along with web page content routed through a network.
- Another aspect provides for delivery for content segmented (fragmented) across systems in the network. For example, a system in the network may begin to cache content it is forwarding in response to the user pausing the presentation. If the presentation is resumed, content is delivered from the cache. If the presentation is reversed (rewound), content missing from the cache is routed through and possibly added to the cache. Other caching strategies may be employed, such as caching some amount of the most recently used content (e.g., the last 10 minutes) or pre-fetching (e.g., faster than real-time) content to be delivered later.
-
FIG. 17 illustrates content propagation and cut-through routing as a network 130 of content storage and cut-through forwarding systems labeled A through L. In this illustration, all systems in the network are at least doubly connected to provide for failure recovery and load balancing.FIG. 16 and the following examples are intended to illustrate the various concepts and embodiments of content propagation and cut-through routing. In real deployments a variety of topologies, differing from the one shown here, would likely be used. - The network 130 could represent systems deployed across organizational, geographic, or topological boundaries. For example, A, B, and C may be located at content originator facilities (e.g., television or web site production facilities); E and D may be located at regional or municipal facilities; F, G, H, and I may be located at local or neighborhood facilities; and J, K, and L could be suitably configured terminal devices (set top boxes, personal video recorders) located at user (or subscriber) locations.
-
FIG. 17 shows three of the different ways that content can be delivered by the system 130. Real-time content is delivered by J. Time-shifted content is delivered by K. And a combination of time-shifted and real-time content is delivered by L. A variety of delivery paths could be used and the delivery path could change dynamically to load balance the system or to recover from failures. - D and E could be large content repositories (one primary, one backup) through which all content in the network is delivered and stored.
- Real-time content to J may cut-through though systems B, E, D, and F and be stored on D in the process. The content might also be stored on F if the content is given sufficient weight (e.g., a high expectation of subsequent demand). The content may also be background propagated to E as a backup for D.
- Time-shifted viewing of the same content on K would cut-through G. Again the content may be stored on G.
- Real-time content is routed though L (a appropriately configured set top box or personal video recorder, for example) and content previously stored on L (or other network system) could replace, overlay, or otherwise mix with the real-time content. Thus the system is used to insert advertising specific to the user or users receiving content from L.
- Referring to
FIG. 18 another exemplary content propagation androuting network 140 is shown. Thenetwork 140 includes a number of interconnected systems (nodes) which each implement the content/service handling anddelivery system 16, including some or all functions of the interactive advertising service (IAS) 60. The systems are associated with different entities such as anetwork 541, alocal broadcaster 542, and acable television operator 543. In this example, thecable television operator 543 receives programming content (or content and services) and advertising content from numerous originators and processes this content for delivery to multiple viewers. - The system associated with the
cable television operator 543 includes a content handling and delivery system 16 (seeFIG. 15 ) that hosts a number of services, including theIAS 60. The cable television operator also maintains an inventory of the advertising opportunities in content already received or to be received from the various originators. TheIAS 60 provides the function of binding advertising with the advertising opportunities. The binding function includes the ability to replace advertising copy within time-shifted content or to insert or replace advertising copy to target a particular set of users or viewers of the content and services. - An advertisement (or “ad”) containing advertising copy (e.g. MPEG encoded video) is optionally associated with structured data (e.g. XML data) that can be used in the binding function. The binding function uses the storage and processing capability (e.g. at a cable system head end, or at viewers' set-top boxes) of the content/service handling and
delivery system 16 to implement dynamic binding (i.e. binding “just in time” before inventory is consumed), as well as its ability to mediate the handling of content and services between numerous originators. For example, one entity can bind advertising on behalf of another entity according to a commercial agreement. Advertising may comprise multiple variants of an advertisement, advertising from various sources, or a combination thereof. -
FIG. 18 graphically illustrates delivery of content and services from content originators to users or viewers and binding advertising to an inventory of advertising opportunities in the content and services. Advertising opportunities are illustrated asslots 510 within astream 520 of content and services. The result of binding 525 an advertisement 530 with an advertising opportunity is indicated by a filledslot 535. The advertisement 530 includesadvertisement copy 532 and optionally includes structureddata 531 associated with the advertisement copy. - Examples of different entities binding advertising opportunities with advertising are shown in
FIG. 18 . A content generation entity such as anetwork 541 or amovie distributor 546 sends a stream of content and services with associated advertising opportunities. Thenetwork 541 may choose to bindadvertising 525 on its own behalf as indicated bylabel 526. Additionally, some advertising opportunities may remain available, such that thelocal broadcaster 542 may bind advertising on its own behalf 560. Thecable television operator 543 maintains an inventory of the unfilled advertising opportunities associated with the content and services that it receives, 551 and 552, from the movie distributor and from the local broadcaster. In addition to binding advertising on its own behalf, thecable television operator 543 is able to bind advertising opportunities with advertising on behalf of another separate entity. - In one example, the
cable television operator 543 binds anadvertisement 566, which it receives from anadvertiser 547, on behalf of themovie distributor 546. Commercial relationships, indicated bylinks 562 and 564, are established between the cable television operator and themovie distributor 562, and between the movie distributor and the advertiser 564. For example, themovie distributor 546 agrees to compensate thecable television operator 543 for binding anadvertisement 566 so that the advertisement can be viewed along with the content and services that themovie distributor 546 sends to thecable television operator 543. As discussed further below, one reason that a movie distributor may prefer the cable operator to bind the advertising rather than itself is that advertising can be tailored to the viewers and viewing time by the cable operator. In this example, theadvertisement 566 is directly received from anadvertiser 547, which agrees to pay themovie distributor 546 for placing the advertisement. - In another example, the
cable television operator 543 binds an advertisement, which it receives from anadvertising agent 544, on behalf of thenetwork 541. Content and services are sent from thenetwork 541 to thelocal broadcaster 542, who then sends content and services to thecable television operator 543, optionally after binding advertising on its own behalf. Thecable television operator 543 may have an agreement with thenetwork 541 to bind advertising on the network's behalf with the advertising opportunities in the inventory maintained by the cable television operator. Advertisements received from theadvertising agent 544 are to be viewed along with content and services originating from thenetwork 541 sent via thelocal broadcaster 542. Theadvertising agent 544 pays thenetwork 541 according to theircommercial relationship 548, generating revenue for the network. In thecommercial relationship 549 between thecable television operator 543 and thenetwork 541, the cable television operator may receive as compensation either a portion of the revenue, or a right to bind advertising on its own behalf with the advertising opportunities associated with the content of thenetwork 541, or a right to record and replay time-shifted content received from the network. The advertisements may feature a product of aproduct company 545. - The
product company 545 may wish to target an advertisement to a particular set of viewers. A method for accomplishing this is to bind different advertisement copy for presentation to each of separate sets of one or more viewers. In such an example, theadvertisement 570 received from theadvertising agent 544 of theproduct company 545 would contain different copy (i.e. Copy C and Copy D) to present to different sets of viewers. Binding would occur such that a set ofviewers 572 receives Copy C and another set ofviewers 574 receives Copy D. Each set of viewers may be chosen based on various criteria (e.g. specific residence or individual viewer, demographic such as based on financial information, explicit or implicit preferences). Each variant of the advertisement copy may use available inventory, or may replace copy previously placed such that a default variant of the copy is sent when there is no replacement. The choice of which copy is presented to which set of viewers can be determined using the structured data 571 which can be in the form of an XML delivery wrapper. For example, information in the wrapper can be used to implement self-guided ads. An example of such a delivery wrapper is described below. - For time-shifted content, the binding function may be used to bind an advertising opportunity in the content with different advertising in each of the multiple times the content is replayed to a viewer. For example, originally-aired content is viewed by some viewers with particular advertisements. When the same content is viewed later by other viewers (e.g. using the feature of content/service handling and
delivery system 16 to provide time-shifted content) different advertisements can replace some or all of those originally-aired. Viewers can also be enabled to interactively initiate binding of targeted advertising (for example by indicating an interest in a product), or to initiate interactive sessions based on advertisements. - The
cable television operator 543 may use alternative methods for binding and delivery of advertisements. Thecable television operator 543 may bind advertising at a common location such as the cable system head end (as illustrated inFIG. 18 ), or alternatively at different locations associated with the viewers such as viewers' set-top boxes. A particular household 580 could then be targeted with a particular variant of advertisement copy by actions performed at the set-top box 577. For delivery of advertisements, advertising including different advertisements and variants of advertisement copy can be sent in-band (on the same communications mechanism as the content and services) or out-of-band. - An example of advertising sent out-of-band is shown in
FIG. 19 . Content that includes advertising opportunities is sent on communications channel 600 (e.g. a coaxial cable). Advertising associated with the advertising opportunities oncommunications channel 600 is sent independently on communications channel 602 (e.g. a separate frequency band of the same coaxial cable, a separate coaxial cable, or a DSL channel over a twisted pair). Thecommunications channel 602 may transmit data in one of a variety of formats (e.g. a switched digital video stream, or a data networking protocol). In this example, binding occurs at the cable system head end and different sets of viewers receive a signal with different variants of advertisement copy. - An example of in-band advertising is shown in
FIG. 20 . The advertisements can be multiplexed in time or in frequency within the content and services.FIG. 20 shows three advertisements:advertisement 702 contains Copy A,advertisement 706 contains Copy B, andadvertisement 704 contains a multiplex of two variants of advertisement copy, Copy C and Copy D. In this implementation the choice of binding Copy C or Copy D occurs at the set-top box 708 (e.g. using a switch 710). Some viewers may receive a variant of an advertisement with Copy C, and others a variant with Copy D. - Advertisements may also be stored for some period of time before binding occurs. Advertisements can be stored before they are sent to viewers. For example, the advertisements can be stored in a storage medium 576 located at the head end. Advertisements can also be stored after they are sent to viewers. This has the advantage that advertising can be downloaded at any time (e.g. times of low bandwidth usage) and pre-stored in a
local storage medium 606 associated with the set-top box 604. - An example of structured data associated with advertisement copy is shown in
FIG. 21 in the form of a graphical representation of anXML delivery wrapper 800. Thetop level element 802 has delivery wrapper attributes such as an identification tag and a creation date, and contains one ormore spot elements 804 corresponding to different advertisement spots. Eachspot element 804 has attributes such as a text description of the spot and the type of encoding used to encode video for the spot. Eachspot element 804 contains one or morevariant elements 806 for variants of the advertisement spot, and each variant element contains one or more target elements 810. The target element 810 has attributes such as channel, or day of the week which may be useful to the binding function. The spot element may optionally contain one or moreLocalSpotInfo elements 808 where local spot information may be specified. The XML data that comprises the delivery wrapper may be sent embedded within its associated advertisement copy (e.g. in a data field of the video stream) or on a separate channel or on a storage medium. - It is to be understood that the foregoing description is intended to illustrate and not to limit the scope of the invention, which is defined by the scope of the appended claims. Other embodiments are within the scope of the following claims.
Claims (38)
1. A method comprising:
maintaining by a first entity an inventory of advertising opportunities in content and services; and
binding at least some of the advertising opportunities with advertising on behalf of a second entity that is separate from the first entity.
2. The method of claim 1 wherein the first entity is a content delivery entity.
3. The method of claim 1 wherein the first entity is a member of a group consisting of a cable television operator and a local broadcaster.
4. The method of claim 1 in which the second entity is content generation or content delivery entity.
5. The method of claim 1 in which the second entity is a member of a group consisting of a network, a local broadcaster, a provider to a library of stored content, a network affiliate, a movie producer, a movie distributor, and a program content developer.
6. The method of claim 1 further comprising the first entity receiving advertisements from a third entity, and binding the at least some of the advertising opportunities includes binding at least some of the advertisements received from the third entity on behalf of the second entity.
7. The method of claim 6 wherein the third entity is separate from the second entity.
8. The method of claim 7 wherein the third entity is an agent of a fourth entity.
9. The method of claim 8 wherein the third entity is an advertising agent.
10. The method of claim 8 wherein the fourth entity is an advertiser.
11. The method of claim 7 wherein the third entity is an advertiser.
12. The method of claim 6 further comprising establishing a commercial relationship between the first entity and the second entity related to the binding of advertising opportunities to advertising.
13. The method of clam 12 further comprising establishing a commercial relationship between the second entity and the third entity related to the binding of advertising opportunities to advertising.
14. A method comprising:
receiving advertising, including receiving advertising copy and receiving structured data associated with the advertising copy; and
binding advertising opportunities to the received advertising according to the received structured data.
15. The method of claim 14 wherein the structured data includes tagged data.
16. The method of claim 15 wherein the tagged data includes data tagged according to an extensible markup language.
17. The method of claim 14 wherein the received data identifies multiple variants of at least some of the advertising copy, and binding the advertising opportunities to the advertising includes selecting among the multiple variants according to the received data.
18. A method comprising:
maintaining an inventory of advertising opportunities in content and services; and
for each of at least some of the advertising opportunities, binding different advertisement copy for presentation to each of a corresponding plurality of separate sets of one or more viewers.
19. The method of claim 18 further comprising:
receiving advertising, receiving at least some advertisements that each include multiple different advertisement copy for presentation to different sets of the one or more viewers.
20. The method of claim 19 further comprising receiving the advertising in conjunction with content.
21. The method of claim 20 wherein receiving the advertising in conjunction with the content include receiving multiplexes of multiple different advertisement copy within the received content.
22. The method of claim 18 wherein binding different advertisement copy for presentation to each of a corresponding plurality of separate sets of one or more viewers is performed at a common distribution location for each of the sets of viewers.
23. The method of claim 22 wherein the common location includes a location of a cable system head end.
24. The method of claim 18 wherein binding different advertisement copy for presentation to each of a corresponding plurality of separate sets of one or more viewers is performed at different locations each associated with a different one of the sets of one or more viewers.
25. The method of claim 24 wherein the binding is performed at one or more of the viewers' set-top boxes.
26. A method comprising:
receiving content that includes advertising opportunities in content;
receiving advertising associated with the advertising opportunities independently of the content; and
binding the advertising to the inventory of advertising opportunities in content and services.
27. The method of claim 26 wherein the advertising is received via switched digital video streams.)
28. The method of claim 26 wherein the advertising is received via a data network.
29. The method of claim 26 wherein the advertising is received and stored before binding the advertising to the inventory of advertising opportunities in content and services.
30. The method of claim 29 wherein the advertising is stored at the viewer's set top box.
31. A method comprising:
maintaining an inventory of advertising opportunities in content; and
for each of at least some of the advertising opportunities, binding new advertisement copy to replace old advertising copy associated with the at least some of the advertising opportunities.
32. The method of claim 31 wherein the content is time-shifted content.
33. The method of claim 31 wherein the old advertising copy was previously presented to one or more viewers.
34. Software stored on a computer-readable medium comprising instruction for causing a computer system to:
maintain by a first entity an inventory of advertising opportunities in content and services; and
bind at least some of the advertising opportunities with advertising on behalf of a second entity that is separate from the first entity.
35. Software stored on a computer-readable medium comprising instruction for causing a computer system to:
receive advertising, including receiving advertising copy and receiving structured data associated with the advertising copy; and
bind advertising opportunities to the received advertising according to the received structured data.
36. Software stored on a computer-readable medium comprising instruction for causing a computer system to:
maintain an inventory of advertising opportunities in content and services; and
for each of at least some of the advertising opportunities, bind different advertisement copy for presentation to each of a corresponding plurality of separate sets of one or more viewers.
37. Software stored on a computer-readable medium comprising instruction for causing a computer system to:
receive content that includes advertising opportunities in content;
receive advertising associated with the advertising opportunities independently of the content; and
bind the advertising to the inventory of advertising opportunities in content and services.
38. Software stored on a computer-readable medium comprising instruction for causing a computer system to:
maintain an inventory of advertising opportunities in content; and
for each of at least some of the advertising opportunities, bind new advertisement copy to replace old advertising copy associated with the at least some of the advertising opportunities.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/863,065 US20050108776A1 (en) | 2000-11-28 | 2004-06-07 | Content/service handling and delivery |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US72338500A | 2000-11-28 | 2000-11-28 | |
US47603203P | 2003-06-05 | 2003-06-05 | |
US10/863,065 US20050108776A1 (en) | 2000-11-28 | 2004-06-07 | Content/service handling and delivery |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US72338500A Continuation-In-Part | 2000-11-28 | 2000-11-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
US20050108776A1 true US20050108776A1 (en) | 2005-05-19 |
Family
ID=24906016
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/455,916 Expired - Lifetime US7451467B2 (en) | 2000-11-28 | 2003-06-06 | Content/service handling and delivery |
US10/863,065 Abandoned US20050108776A1 (en) | 2000-11-28 | 2004-06-07 | Content/service handling and delivery |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/455,916 Expired - Lifetime US7451467B2 (en) | 2000-11-28 | 2003-06-06 | Content/service handling and delivery |
Country Status (9)
Country | Link |
---|---|
US (2) | US7451467B2 (en) |
EP (1) | EP1342364A2 (en) |
JP (1) | JP2004531104A (en) |
KR (1) | KR20030082548A (en) |
CN (1) | CN1486568A (en) |
AU (1) | AU2002225751A1 (en) |
CA (1) | CA2430166A1 (en) |
IL (1) | IL156146A0 (en) |
WO (1) | WO2002045430A2 (en) |
Cited By (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030121051A1 (en) * | 1995-04-25 | 2003-06-26 | Howe Wayne R. | System and method for providing television services |
US20030135484A1 (en) * | 2002-01-14 | 2003-07-17 | Alcatel | Method for using services at a terminal and a terminal, a server and a program module therefore |
US20040268416A1 (en) * | 2003-06-30 | 2004-12-30 | Gray James Harold | System and method for providing enhanced hot key control |
US20070101374A1 (en) * | 2005-10-31 | 2007-05-03 | Etc. Tv Inc. | System and method for providing enhanced video programming to a user |
US20070150338A1 (en) * | 2005-12-22 | 2007-06-28 | Dale Malik | Systems, methods and computer programs for enabling interactive viewer control of advertising content |
US20080089435A1 (en) * | 2005-05-20 | 2008-04-17 | Torrubia Andres M | Computer-implemented method and system to enable out of band tracking for digital distribution |
US20080306818A1 (en) * | 2007-06-08 | 2008-12-11 | Qurio Holdings, Inc. | Multi-client streamer with late binding of ad content |
US20080313029A1 (en) * | 2007-06-13 | 2008-12-18 | Qurio Holdings, Inc. | Push-caching scheme for a late-binding advertisement architecture |
US20090063983A1 (en) * | 2007-08-27 | 2009-03-05 | Qurio Holdings, Inc. | System and method for representing content, user presence and interaction within virtual world advertising environments |
US20090083412A1 (en) * | 2007-09-20 | 2009-03-26 | Qurio Holdings, Inc. | Illustration supported p2p media content streaming |
US20090122216A1 (en) * | 2005-08-24 | 2009-05-14 | Masami Kogure | Housing structure for lighting equipment and process for producing the same, and backlight device using said structure |
WO2010011758A2 (en) * | 2008-07-22 | 2010-01-28 | Ice, Llc | Methods and systems for enhanced advertising display and consumer purchase requests in an interactive environment |
US7805373B1 (en) | 2007-07-31 | 2010-09-28 | Qurio Holdings, Inc. | Synchronizing multiple playback device timing utilizing DRM encoding |
US7996482B1 (en) | 2007-07-31 | 2011-08-09 | Qurio Holdings, Inc. | RDMA based real-time video client playback architecture |
US8060904B1 (en) | 2008-02-25 | 2011-11-15 | Qurio Holdings, Inc. | Dynamic load based ad insertion |
US8065710B2 (en) | 2006-03-02 | 2011-11-22 | At& T Intellectual Property I, L.P. | Apparatuses and methods for interactive communication concerning multimedia content |
US8161412B2 (en) | 2006-01-13 | 2012-04-17 | At&T Intellectual Property I, L.P. | Systems, methods, and computer program products for providing interactive content |
US20120158945A1 (en) * | 2010-12-16 | 2012-06-21 | Christian Goldbach | Server load balancing using dynamic log-on groups |
US20120189069A1 (en) * | 2009-04-15 | 2012-07-26 | Ibiquity Digital Corporation | Systems and Methods for a Multiport Synchronous-Asynchronous Client for Scheduling and Delivering Content for Digital Radio Broadcast Transmission |
US8244586B2 (en) | 2000-11-28 | 2012-08-14 | Almondnet, Inc. | Computerized systems for added-revenue off-site targeted internet advertising |
US8286203B2 (en) | 2003-12-19 | 2012-10-09 | At&T Intellectual Property I, L.P. | System and method for enhanced hot key delivery |
US20120278183A1 (en) * | 2011-03-31 | 2012-11-01 | Fortuna Joseph A | Scripting language, method and system for delivering platform-independent dynamically interpreted and rendered interactive content, and for measuring the degree and nature of user interaction therewith |
US8312487B1 (en) | 2008-12-31 | 2012-11-13 | Qurio Holdings, Inc. | Method and system for arranging an advertising schedule |
US8317618B2 (en) | 2005-12-15 | 2012-11-27 | At&T Intellectual Property I, Lp | System, method and computer program for enabling an interactive game |
US8402503B2 (en) | 2006-02-08 | 2013-03-19 | At& T Intellectual Property I, L.P. | Interactive program manager and methods for presenting program content |
US8560387B2 (en) | 2007-06-07 | 2013-10-15 | Qurio Holdings, Inc. | Systems and methods of providing collaborative consumer-controlled advertising environments |
US8635643B2 (en) | 2003-06-30 | 2014-01-21 | At&T Intellectual Property I, L.P. | System and method for providing interactive media content over a network |
US8683502B2 (en) | 2011-08-03 | 2014-03-25 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US8713600B2 (en) | 2013-01-30 | 2014-04-29 | Almondnet, Inc. | User control of replacement television advertisements inserted by a smart television |
US8756103B1 (en) * | 2007-03-28 | 2014-06-17 | Qurio Holdings, Inc. | System and method of implementing alternative redemption options for a consumer-centric advertising system |
US8762476B1 (en) | 2007-12-20 | 2014-06-24 | Qurio Holdings, Inc. | RDMA to streaming protocol driver |
US8804037B2 (en) | 2009-04-15 | 2014-08-12 | Ibiquity Digital Corporation | Systems and methods for transmitting media content via digital radio broadcast transmission for synchronized rendering by a receiver |
US9071886B2 (en) | 2012-06-05 | 2015-06-30 | Almondnet, Inc. | Targeted television advertising based on a profile linked to an online device associated with a content-selecting device |
US9098868B1 (en) | 2007-03-20 | 2015-08-04 | Qurio Holdings, Inc. | Coordinating advertisements at multiple playback devices |
US10331583B2 (en) | 2013-09-26 | 2019-06-25 | Intel Corporation | Executing distributed memory operations using processing elements connected by distributed channels |
US10380063B2 (en) | 2017-09-30 | 2019-08-13 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator having a sequencer dataflow operator |
US20190251029A1 (en) * | 2018-02-12 | 2019-08-15 | International Business Machines Corporation | Cache line states identifying memory cache |
US10387319B2 (en) | 2017-07-01 | 2019-08-20 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with memory system performance, power reduction, and atomics support features |
US10402168B2 (en) | 2016-10-01 | 2019-09-03 | Intel Corporation | Low energy consumption mantissa multiplication for floating point multiply-add operations |
US10417175B2 (en) | 2017-12-30 | 2019-09-17 | Intel Corporation | Apparatus, methods, and systems for memory consistency in a configurable spatial accelerator |
US10416999B2 (en) | 2016-12-30 | 2019-09-17 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10445250B2 (en) | 2017-12-30 | 2019-10-15 | Intel Corporation | Apparatus, methods, and systems with a configurable spatial accelerator |
US10445098B2 (en) | 2017-09-30 | 2019-10-15 | Intel Corporation | Processors and methods for privileged configuration in a spatial array |
US10445234B2 (en) | 2017-07-01 | 2019-10-15 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with transactional and replay features |
US10445451B2 (en) | 2017-07-01 | 2019-10-15 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with performance, correctness, and power reduction features |
US10459866B1 (en) | 2018-06-30 | 2019-10-29 | Intel Corporation | Apparatuses, methods, and systems for integrated control and data processing in a configurable spatial accelerator |
US10469397B2 (en) | 2017-07-01 | 2019-11-05 | Intel Corporation | Processors and methods with configurable network-based dataflow operator circuits |
US10467183B2 (en) | 2017-07-01 | 2019-11-05 | Intel Corporation | Processors and methods for pipelined runtime services in a spatial array |
US10474375B2 (en) * | 2016-12-30 | 2019-11-12 | Intel Corporation | Runtime address disambiguation in acceleration hardware |
US10496574B2 (en) | 2017-09-28 | 2019-12-03 | Intel Corporation | Processors, methods, and systems for a memory fence in a configurable spatial accelerator |
US10515049B1 (en) | 2017-07-01 | 2019-12-24 | Intel Corporation | Memory circuits and methods for distributed memory hazard detection and error recovery |
US10515046B2 (en) | 2017-07-01 | 2019-12-24 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10558575B2 (en) | 2016-12-30 | 2020-02-11 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10565134B2 (en) | 2017-12-30 | 2020-02-18 | Intel Corporation | Apparatus, methods, and systems for multicast in a configurable spatial accelerator |
US10564980B2 (en) | 2018-04-03 | 2020-02-18 | Intel Corporation | Apparatus, methods, and systems for conditional queues in a configurable spatial accelerator |
US10572376B2 (en) | 2016-12-30 | 2020-02-25 | Intel Corporation | Memory ordering in acceleration hardware |
US10678724B1 (en) | 2018-12-29 | 2020-06-09 | Intel Corporation | Apparatuses, methods, and systems for in-network storage in a configurable spatial accelerator |
US10817291B2 (en) | 2019-03-30 | 2020-10-27 | Intel Corporation | Apparatuses, methods, and systems for swizzle operations in a configurable spatial accelerator |
US10853073B2 (en) | 2018-06-30 | 2020-12-01 | Intel Corporation | Apparatuses, methods, and systems for conditional operations in a configurable spatial accelerator |
US10891240B2 (en) | 2018-06-30 | 2021-01-12 | Intel Corporation | Apparatus, methods, and systems for low latency communication in a configurable spatial accelerator |
US10915471B2 (en) | 2019-03-30 | 2021-02-09 | Intel Corporation | Apparatuses, methods, and systems for memory interface circuit allocation in a configurable spatial accelerator |
US10942737B2 (en) | 2011-12-29 | 2021-03-09 | Intel Corporation | Method, device and system for control signalling in a data path module of a data stream processing engine |
US10965536B2 (en) | 2019-03-30 | 2021-03-30 | Intel Corporation | Methods and apparatus to insert buffers in a dataflow graph |
US11029927B2 (en) | 2019-03-30 | 2021-06-08 | Intel Corporation | Methods and apparatus to detect and annotate backedges in a dataflow graph |
US11037050B2 (en) | 2019-06-29 | 2021-06-15 | Intel Corporation | Apparatuses, methods, and systems for memory interface circuit arbitration in a configurable spatial accelerator |
US11086816B2 (en) | 2017-09-28 | 2021-08-10 | Intel Corporation | Processors, methods, and systems for debugging a configurable spatial accelerator |
US11200186B2 (en) | 2018-06-30 | 2021-12-14 | Intel Corporation | Apparatuses, methods, and systems for operations in a configurable spatial accelerator |
US11307873B2 (en) | 2018-04-03 | 2022-04-19 | Intel Corporation | Apparatus, methods, and systems for unstructured data flow in a configurable spatial accelerator with predicate propagation and merging |
US11907713B2 (en) | 2019-12-28 | 2024-02-20 | Intel Corporation | Apparatuses, methods, and systems for fused operations using sign modification in a processing element of a configurable spatial accelerator |
US12086080B2 (en) | 2020-09-26 | 2024-09-10 | Intel Corporation | Apparatuses, methods, and systems for a configurable accelerator having dataflow execution circuits |
Families Citing this family (88)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2349914C (en) * | 2000-06-09 | 2013-07-30 | Invidi Technologies Corp. | Advertising delivery method |
US20020078443A1 (en) * | 2000-12-20 | 2002-06-20 | Gadkari Sanjay S. | Presentation preemption |
US8516527B2 (en) | 2001-01-11 | 2013-08-20 | The Marlin Company | Electronic media communication system with a displayed code |
US20020091587A1 (en) * | 2001-01-11 | 2002-07-11 | Frank Kenna | Electronic communication display system |
US7743112B2 (en) * | 2001-01-11 | 2010-06-22 | The Marlin Company | Secure electronic media distribution and presentation system |
US7519273B2 (en) * | 2001-01-19 | 2009-04-14 | Blackarrow, Inc. | Content with advertisement information segment |
US20020100062A1 (en) * | 2001-01-19 | 2002-07-25 | Lowthert Jonathan E. | Content with advertisement information segment |
EP1386492A2 (en) * | 2001-03-23 | 2004-02-04 | Popwire.com | Method and apparatus for streaming video |
US7730509B2 (en) | 2001-06-08 | 2010-06-01 | Invidi Technologies Corporation | Asset delivery reporting in a broadcast network |
US20030126611A1 (en) * | 2001-12-28 | 2003-07-03 | International Business Machines Corporation | Methods and apparatus for controlling interactive television information and commerce services |
JP2003219465A (en) * | 2002-01-17 | 2003-07-31 | Matsushita Electric Ind Co Ltd | Communication system for mobile body |
US20030187953A1 (en) * | 2002-03-26 | 2003-10-02 | Pearson Jeffrey J. | Method of preparing and integrating set programming for the internet |
US20050034171A1 (en) * | 2002-05-03 | 2005-02-10 | Robert Benya | Technique for delivering programming content based on a modified network personal video recorder service |
WO2004112302A2 (en) * | 2003-06-12 | 2004-12-23 | Camiant, Inc. | Dynamic service delivery with topology discovery for communication networks |
AU2004247251B2 (en) * | 2003-06-12 | 2009-01-22 | Camiant, Inc. | PCMM application manager |
KR101036588B1 (en) * | 2003-07-14 | 2011-05-24 | 소니 주식회사 | Information processing device and information processing method |
US7836473B2 (en) * | 2003-10-31 | 2010-11-16 | Microsoft Corporation | Interface strategies for creating and invoking marks |
US8429696B2 (en) * | 2003-10-31 | 2013-04-23 | Microsoft Corporation | Multimedia presentation resumption within an environment of multiple presentation systems |
JP2007526679A (en) * | 2004-01-23 | 2007-09-13 | キャミアント,インク. | Video policy server |
US8024225B1 (en) * | 2004-01-27 | 2011-09-20 | Amazon Technologies, Inc. | Controlling access to services via usage models |
FR2876241B1 (en) * | 2004-03-19 | 2006-12-29 | Etienne Georges Felix Gaillard | TIME NAVIGATION SYSTEM IN AUDIOVISUAL CONTENTS PREVIOUSLY SELECTED BY THE PROVIDER OF THESE CONTENTS |
WO2005091626A1 (en) * | 2004-03-22 | 2005-09-29 | Jung-In Choi | System and method for providing personal broadcast recording channel service using extensible markup language (xml) |
US9161068B2 (en) | 2004-03-24 | 2015-10-13 | Onstream Media Corporation | Remotely accessed virtual recording room |
WO2005109888A1 (en) * | 2004-04-07 | 2005-11-17 | Etienne Gaillard | System for temporal navigation through audiovisual content pre-selected by the content provider |
JP2007536634A (en) * | 2004-05-04 | 2007-12-13 | フィッシャー−ローズマウント・システムズ・インコーポレーテッド | Service-oriented architecture for process control systems |
US8434118B2 (en) * | 2004-05-27 | 2013-04-30 | Time Warner Cable Enterprises Llc | Playlist menu navigation |
JP2006031219A (en) * | 2004-07-14 | 2006-02-02 | Sony Corp | Contents using system, contents using terminal, preference server, contents using program and reference program |
US11259059B2 (en) | 2004-07-30 | 2022-02-22 | Broadband Itv, Inc. | System for addressing on-demand TV program content on TV services platform of a digital TV services provider |
US7590997B2 (en) | 2004-07-30 | 2009-09-15 | Broadband Itv, Inc. | System and method for managing, converting and displaying video content on a video-on-demand platform, including ads used for drill-down navigation and consumer-generated classified ads |
US7631336B2 (en) | 2004-07-30 | 2009-12-08 | Broadband Itv, Inc. | Method for converting, navigating and displaying video content uploaded from the internet to a digital TV video-on-demand platform |
KR100597670B1 (en) * | 2004-10-18 | 2006-07-07 | 주식회사 네오엠텔 | mobile communication terminal capable of reproducing and updating multimedia content, and method for reproducing the same |
KR100689507B1 (en) | 2005-01-07 | 2007-03-02 | 삼성전자주식회사 | Apparatus and method for adaptation of multimedia signal performing picture in picture function |
KR20060082353A (en) * | 2005-01-12 | 2006-07-18 | 와이더댄 주식회사 | System and method for providing and handling executable web content |
US20060293954A1 (en) * | 2005-01-12 | 2006-12-28 | Anderson Bruce J | Voting and headend insertion model for targeting content in a broadcast network |
US8484476B2 (en) * | 2005-05-20 | 2013-07-09 | Rovi Technologies Corporation | Computer-implemented method and system for embedding and authenticating ancillary information in digitally signed content |
US8397072B2 (en) * | 2005-05-20 | 2013-03-12 | Rovi Solutions Corporation | Computer-implemented method and system for embedding ancillary information into the header of a digitally signed executable |
US20070081789A1 (en) * | 2005-10-06 | 2007-04-12 | Lockheed Martin Corporation | Time shifting for video |
US20070094071A1 (en) * | 2005-10-21 | 2007-04-26 | Microsoft Corporation | Pushing content to browsers |
WO2007072670A1 (en) * | 2005-12-22 | 2007-06-28 | Matsushita Electric Industrial Co., Ltd. | Broadcast receiving apparatus, video storing apparatus, and multimedia delivering system |
US7716232B2 (en) * | 2006-04-10 | 2010-05-11 | Flagpath Venture Vii, Llc. | Devices, systems, and methods for producing and distributing multiple variations of an instance of a media presentation |
US20130254787A1 (en) | 2006-05-02 | 2013-09-26 | Invidi Technologies Corporation | Method and apparatus to perform real-time audience estimation and commercial selection suitable for targeted advertising |
CN101484890B (en) * | 2006-05-02 | 2017-04-05 | 英维迪技术公司 | Beholder based on fuzzy logic recognizes |
US8272009B2 (en) | 2006-06-12 | 2012-09-18 | Invidi Technologies Corporation | System and method for inserting media based on keyword search |
US8615778B1 (en) | 2006-09-28 | 2013-12-24 | Qurio Holdings, Inc. | Personalized broadcast system |
US20080109859A1 (en) * | 2006-11-07 | 2008-05-08 | Nstreams Technologies, Inc. | Video on demand system for providing graceful degradation and fault tolerance and method thereof |
US7991269B1 (en) | 2006-12-15 | 2011-08-02 | Qurio Holdings, Inc. | Locality-based video playback to enable locally relevant product placement advertising |
US7849477B2 (en) | 2007-01-30 | 2010-12-07 | Invidi Technologies Corporation | Asset targeting system for limited resource environments |
US8146126B2 (en) | 2007-02-01 | 2012-03-27 | Invidi Technologies Corporation | Request for information related to broadcast network content |
US8055536B1 (en) | 2007-03-21 | 2011-11-08 | Qurio Holdings, Inc. | Automated real-time secure user data sourcing |
US11570521B2 (en) | 2007-06-26 | 2023-01-31 | Broadband Itv, Inc. | Dynamic adjustment of electronic program guide displays based on viewer preferences for minimizing navigation in VOD program selection |
US9654833B2 (en) | 2007-06-26 | 2017-05-16 | Broadband Itv, Inc. | Dynamic adjustment of electronic program guide displays based on viewer preferences for minimizing navigation in VOD program selection |
US7917591B2 (en) | 2007-07-25 | 2011-03-29 | Yahoo! Inc. | System and method for streaming videos inline with an e-mail |
US8671428B2 (en) * | 2007-11-08 | 2014-03-11 | Yahoo! Inc. | System and method for a personal video inbox channel |
CN101478662B (en) * | 2008-01-03 | 2013-01-16 | 中兴通讯股份有限公司 | File content distributing method and apparatus |
US9113334B2 (en) * | 2008-02-01 | 2015-08-18 | Tekelec, Inc. | Methods, systems, and computer readable media for controlling access to voice resources in mobile networks using mobility management signaling messages |
CA2733193C (en) | 2008-08-05 | 2016-11-01 | Invidi Technologies Corporation | National insertion of targeted advertisment |
EP2332111B2 (en) | 2008-08-06 | 2023-10-11 | Invidi Technologies Corporation | Third party data matching for targeted advertising |
US20100088186A1 (en) * | 2008-10-08 | 2010-04-08 | Scott Shifflett | Advertising inventory controls |
US9215423B2 (en) | 2009-03-30 | 2015-12-15 | Time Warner Cable Enterprises Llc | Recommendation engine apparatus and methods |
US11076189B2 (en) | 2009-03-30 | 2021-07-27 | Time Warner Cable Enterprises Llc | Personal media channel apparatus and methods |
US9154331B2 (en) | 2009-07-21 | 2015-10-06 | At&T Intellectual Property I, L.P. | Managing linear multimedia content delivery |
WO2011038136A2 (en) * | 2009-09-25 | 2011-03-31 | The Dragonfly Products Co., Inc. | Methods and systems for real-time delivery of data to fixed-tuned digital devices |
US20110107363A1 (en) * | 2009-11-03 | 2011-05-05 | Yahoo! Inc. | Sequenced video overlay advertisements |
JP5745424B2 (en) * | 2009-11-04 | 2015-07-08 | キヤノンイメージングシステムズ株式会社 | Device control apparatus, client apparatus, device control method, and device control system |
KR101517638B1 (en) * | 2010-04-22 | 2015-05-15 | 엘지전자 주식회사 | Method for providing contents and display apparatus thereof |
US8514651B2 (en) | 2010-11-22 | 2013-08-20 | Marvell World Trade Ltd. | Sharing access to a memory among clients |
US8850491B2 (en) | 2010-12-20 | 2014-09-30 | Microsoft Corporation | Wireless distribution system proxy caches |
US8904431B2 (en) | 2010-12-20 | 2014-12-02 | Microsoft Corporation | Current device location advertisement distribution |
US8539526B1 (en) | 2012-09-27 | 2013-09-17 | Tribune Broadcasting Company, Llc | System and method for simultaneously broadcasting multiple media-components |
JP6033541B2 (en) * | 2011-11-24 | 2016-11-30 | シャープ株式会社 | REPRODUCTION DEVICE, REPRODUCTION METHOD, CONTROL PROGRAM, AND RECORDING MEDIUM |
KR101873267B1 (en) * | 2011-12-21 | 2018-07-06 | 주식회사 알티캐스트 | Apparatus for providing contents and method the same |
US8924516B2 (en) * | 2012-01-06 | 2014-12-30 | Apple Inc. | Dynamic construction of modular invitational content |
US8874792B2 (en) | 2012-01-06 | 2014-10-28 | Apple Inc. | Dynamic construction of modular invitational content |
US9426123B2 (en) | 2012-02-23 | 2016-08-23 | Time Warner Cable Enterprises Llc | Apparatus and methods for content distribution to packet-enabled devices via a network bridge |
US9467723B2 (en) | 2012-04-04 | 2016-10-11 | Time Warner Cable Enterprises Llc | Apparatus and methods for automated highlight reel creation in a content delivery network |
US9195622B1 (en) | 2012-07-11 | 2015-11-24 | Marvell World Trade Ltd. | Multi-port memory that supports multiple simultaneous write operations |
US20150067251A1 (en) * | 2013-08-29 | 2015-03-05 | Cisco Technology, Inc. | Consolidated Parity Generation for Duplicate Files on a File Based RAID File System |
KR20150031660A (en) | 2013-09-16 | 2015-03-25 | 엘지전자 주식회사 | Display device and method of providing vod service thereof |
JP6476571B2 (en) * | 2014-03-26 | 2019-03-06 | 富士通株式会社 | VIDEO DATA MANAGEMENT DEVICE, VIDEO DATA MANAGEMENT PROGRAM, AND VIDEO DATA MANAGEMENT METHOD |
US9948962B2 (en) | 2014-11-13 | 2018-04-17 | Time Warner Cable Enterprises Llc | Apparatus and methods for efficient delivery of electronic program guide data |
WO2016092364A1 (en) | 2014-12-09 | 2016-06-16 | Marvell Israel (M.I.S.L.) Ltd. | System and method for performing simultaneous read and write operations in memory |
US10116676B2 (en) | 2015-02-13 | 2018-10-30 | Time Warner Cable Enterprises Llc | Apparatus and methods for data collection, analysis and service modification based on online activity |
US11099746B2 (en) | 2015-04-29 | 2021-08-24 | Marvell Israel (M.I.S.L) Ltd. | Multi-bank memory with one read port and one or more write ports per cycle |
US11403173B2 (en) | 2015-04-30 | 2022-08-02 | Marvell Israel (M.I.S.L) Ltd. | Multiple read and write port memory |
EP3289462B1 (en) | 2015-04-30 | 2019-04-24 | Marvell Israel (M.I.S.L) LTD. | Multiple read and write port memory |
US10089018B2 (en) | 2015-05-07 | 2018-10-02 | Marvell Israel (M.I.S.L) Ltd. | Multi-bank memory with multiple read ports and multiple write ports per cycle |
FI3329670T3 (en) * | 2015-07-28 | 2023-01-13 | Virtual video driver bridge system for multi-source collaboration within a web conferencing system | |
US10313765B2 (en) | 2015-09-04 | 2019-06-04 | At&T Intellectual Property I, L.P. | Selective communication of a vector graphics format version of a video content item |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724521A (en) * | 1994-11-03 | 1998-03-03 | Intel Corporation | Method and apparatus for providing electronic advertisements to end users in a consumer best-fit pricing manner |
US20020010930A1 (en) * | 1998-10-30 | 2002-01-24 | Anthony A. Shah-Nazaroff | Method and apparatus for customized rendering of commercials |
US20020083444A1 (en) * | 2000-08-31 | 2002-06-27 | Blasko John P. | System and method for automatically managing avail inventory data and avail pricing |
US20020095676A1 (en) * | 1998-05-15 | 2002-07-18 | Robert A. Knee | Interactive television program guide system for determining user values for demographic categories |
US6425127B1 (en) * | 2000-01-13 | 2002-07-23 | International Business Machines Corporation | Method and system for controlling visual access by a user to broadcast video segments |
US20020152462A1 (en) * | 2000-08-29 | 2002-10-17 | Michael Hoch | Method and apparatus for a frame work for structured overlay of real time graphics |
US6588013B1 (en) * | 1998-08-18 | 2003-07-01 | United Video Properties, Inc. | Promotional material distribution system with automatic updating of promotional material selection algorithms |
US6698020B1 (en) * | 1998-06-15 | 2004-02-24 | Webtv Networks, Inc. | Techniques for intelligent video ad insertion |
US6718551B1 (en) * | 1997-01-06 | 2004-04-06 | Bellsouth Intellectual Property Corporation | Method and system for providing targeted advertisements |
US6820277B1 (en) * | 1999-04-20 | 2004-11-16 | Expanse Networks, Inc. | Advertising management system for digital video streams |
US7103904B1 (en) * | 1999-06-30 | 2006-09-05 | Microsoft Corporation | Methods and apparatus for broadcasting interactive advertising using remote advertising templates |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5371551A (en) | 1992-10-29 | 1994-12-06 | Logan; James | Time delayed digital video system using concurrent recording and playback |
US5606359A (en) * | 1994-06-30 | 1997-02-25 | Hewlett-Packard Company | Video on demand system with multiple data sources configured to provide vcr-like services |
CA2153445C (en) * | 1994-09-08 | 2002-05-21 | Ashok Raj Saxena | Video optimized media streamer user interface |
US5649093A (en) * | 1995-05-22 | 1997-07-15 | Sun Microsystems, Inc. | Server disk error recovery system |
US5862312A (en) | 1995-10-24 | 1999-01-19 | Seachange Technology, Inc. | Loosely coupled mass storage computer cluster |
JP3247603B2 (en) * | 1996-02-05 | 2002-01-21 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Predecoder circuit and decoder circuit |
US6526575B1 (en) * | 1997-01-07 | 2003-02-25 | United Video Properties, Inc. | System and method for distributing and broadcasting multimedia |
US6029045A (en) * | 1997-12-09 | 2000-02-22 | Cogent Technology, Inc. | System and method for inserting local content into programming content |
AU3746299A (en) * | 1998-04-17 | 1999-11-08 | Karl D. Zetmeir | Telephone call management software and internet marketing method |
US6182050B1 (en) * | 1998-05-28 | 2001-01-30 | Acceleration Software International Corporation | Advertisements distributed on-line using target criteria screening with method for maintaining end user privacy |
US6141010A (en) * | 1998-07-17 | 2000-10-31 | B. E. Technology, Llc | Computer interface method and apparatus with targeted advertising |
WO2000014951A1 (en) | 1998-09-08 | 2000-03-16 | Next Century Media, Inc. | System and method for providing individualized targeted electronic advertising over a digital broadcast medium |
WO2000052934A1 (en) * | 1999-03-02 | 2000-09-08 | Comunic. T.V. Ltd. | System and method for serving local and global media content |
US6751299B1 (en) | 1999-06-01 | 2004-06-15 | America Online, Incorporated | Voice messaging system |
US20020026351A1 (en) | 1999-06-30 | 2002-02-28 | Thomas E. Coleman | Method and system for delivery of targeted commercial messages |
EP1240738A2 (en) | 1999-12-21 | 2002-09-18 | BellSouth Intellectual Property Corporation | Method and system for providing targeted advertisements |
-
2001
- 2001-11-28 AU AU2002225751A patent/AU2002225751A1/en not_active Abandoned
- 2001-11-28 KR KR10-2003-7007201A patent/KR20030082548A/en not_active Application Discontinuation
- 2001-11-28 CN CNA018218334A patent/CN1486568A/en active Pending
- 2001-11-28 EP EP01995236A patent/EP1342364A2/en not_active Withdrawn
- 2001-11-28 JP JP2002546434A patent/JP2004531104A/en active Pending
- 2001-11-28 IL IL15614601A patent/IL156146A0/en unknown
- 2001-11-28 CA CA002430166A patent/CA2430166A1/en not_active Abandoned
- 2001-11-28 WO PCT/US2001/044276 patent/WO2002045430A2/en not_active Application Discontinuation
-
2003
- 2003-06-06 US US10/455,916 patent/US7451467B2/en not_active Expired - Lifetime
-
2004
- 2004-06-07 US US10/863,065 patent/US20050108776A1/en not_active Abandoned
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724521A (en) * | 1994-11-03 | 1998-03-03 | Intel Corporation | Method and apparatus for providing electronic advertisements to end users in a consumer best-fit pricing manner |
US6718551B1 (en) * | 1997-01-06 | 2004-04-06 | Bellsouth Intellectual Property Corporation | Method and system for providing targeted advertisements |
US20020095676A1 (en) * | 1998-05-15 | 2002-07-18 | Robert A. Knee | Interactive television program guide system for determining user values for demographic categories |
US6698020B1 (en) * | 1998-06-15 | 2004-02-24 | Webtv Networks, Inc. | Techniques for intelligent video ad insertion |
US6588013B1 (en) * | 1998-08-18 | 2003-07-01 | United Video Properties, Inc. | Promotional material distribution system with automatic updating of promotional material selection algorithms |
US20020010930A1 (en) * | 1998-10-30 | 2002-01-24 | Anthony A. Shah-Nazaroff | Method and apparatus for customized rendering of commercials |
US6671880B2 (en) * | 1998-10-30 | 2003-12-30 | Intel Corporation | Method and apparatus for customized rendering of commercials |
US6820277B1 (en) * | 1999-04-20 | 2004-11-16 | Expanse Networks, Inc. | Advertising management system for digital video streams |
US7103904B1 (en) * | 1999-06-30 | 2006-09-05 | Microsoft Corporation | Methods and apparatus for broadcasting interactive advertising using remote advertising templates |
US6425127B1 (en) * | 2000-01-13 | 2002-07-23 | International Business Machines Corporation | Method and system for controlling visual access by a user to broadcast video segments |
US20020152462A1 (en) * | 2000-08-29 | 2002-10-17 | Michael Hoch | Method and apparatus for a frame work for structured overlay of real time graphics |
US20020083444A1 (en) * | 2000-08-31 | 2002-06-27 | Blasko John P. | System and method for automatically managing avail inventory data and avail pricing |
Cited By (116)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8914839B2 (en) | 1995-04-25 | 2014-12-16 | At&T Intellectual Property I, L.P. | System and method for providing television services |
US8966542B2 (en) | 1995-04-25 | 2015-02-24 | At&T Intellectual Property I, L.P. | System and method for providing media content and interactive content |
US8490145B2 (en) | 1995-04-25 | 2013-07-16 | At&T Intellectual Property I, L.P. | System and method for providing television services |
US8819758B2 (en) | 1995-04-25 | 2014-08-26 | At&T Intellectual Property I, L.P. | System and method for providing television services |
US20030121051A1 (en) * | 1995-04-25 | 2003-06-26 | Howe Wayne R. | System and method for providing television services |
US8244586B2 (en) | 2000-11-28 | 2012-08-14 | Almondnet, Inc. | Computerized systems for added-revenue off-site targeted internet advertising |
US8600815B2 (en) | 2000-11-28 | 2013-12-03 | Almondnet, Inc. | Methods and systems for facilitating off-site internet advertising and dividing compensation pursuant to contract |
US10628857B2 (en) | 2000-11-28 | 2020-04-21 | Almondnet, Inc. | Methods and apparatus for facilitated off-site targeted internet advertising |
US10026100B2 (en) | 2000-11-28 | 2018-07-17 | Almondnet, Inc. | Methods and apparatus for facilitated off-site targeted internet advertising |
US20030135484A1 (en) * | 2002-01-14 | 2003-07-17 | Alcatel | Method for using services at a terminal and a terminal, a server and a program module therefore |
US8635643B2 (en) | 2003-06-30 | 2014-01-21 | At&T Intellectual Property I, L.P. | System and method for providing interactive media content over a network |
US20040268416A1 (en) * | 2003-06-30 | 2004-12-30 | Gray James Harold | System and method for providing enhanced hot key control |
US8286203B2 (en) | 2003-12-19 | 2012-10-09 | At&T Intellectual Property I, L.P. | System and method for enhanced hot key delivery |
US9544646B2 (en) | 2003-12-19 | 2017-01-10 | At&T Intellectual Property I, L.P. | System and method for enhanced hot key delivery |
US20080089435A1 (en) * | 2005-05-20 | 2008-04-17 | Torrubia Andres M | Computer-implemented method and system to enable out of band tracking for digital distribution |
US20090122216A1 (en) * | 2005-08-24 | 2009-05-14 | Masami Kogure | Housing structure for lighting equipment and process for producing the same, and backlight device using said structure |
US20070101374A1 (en) * | 2005-10-31 | 2007-05-03 | Etc. Tv Inc. | System and method for providing enhanced video programming to a user |
US8317618B2 (en) | 2005-12-15 | 2012-11-27 | At&T Intellectual Property I, Lp | System, method and computer program for enabling an interactive game |
US8651960B2 (en) | 2005-12-15 | 2014-02-18 | At&T Intellectual Property I, L.P. | System, method and computer program for enabling an interactive game |
US20070150338A1 (en) * | 2005-12-22 | 2007-06-28 | Dale Malik | Systems, methods and computer programs for enabling interactive viewer control of advertising content |
US8161412B2 (en) | 2006-01-13 | 2012-04-17 | At&T Intellectual Property I, L.P. | Systems, methods, and computer program products for providing interactive content |
US9544648B2 (en) | 2006-02-08 | 2017-01-10 | At&T Intellectual Property I, L.P. | Interactive program manager and methods for presenting program content |
US10735812B2 (en) | 2006-02-08 | 2020-08-04 | At&T Intellectual Property I, L.P. | Interactive program manager and methods for presenting program content |
US8402503B2 (en) | 2006-02-08 | 2013-03-19 | At& T Intellectual Property I, L.P. | Interactive program manager and methods for presenting program content |
US9218106B2 (en) | 2006-02-08 | 2015-12-22 | At&T Intellectual Property I, L.P. | Interactive program manager and methods for presenting program content |
US8065710B2 (en) | 2006-03-02 | 2011-11-22 | At& T Intellectual Property I, L.P. | Apparatuses and methods for interactive communication concerning multimedia content |
US9098868B1 (en) | 2007-03-20 | 2015-08-04 | Qurio Holdings, Inc. | Coordinating advertisements at multiple playback devices |
US8756103B1 (en) * | 2007-03-28 | 2014-06-17 | Qurio Holdings, Inc. | System and method of implementing alternative redemption options for a consumer-centric advertising system |
US8560387B2 (en) | 2007-06-07 | 2013-10-15 | Qurio Holdings, Inc. | Systems and methods of providing collaborative consumer-controlled advertising environments |
US20080306818A1 (en) * | 2007-06-08 | 2008-12-11 | Qurio Holdings, Inc. | Multi-client streamer with late binding of ad content |
US20080313029A1 (en) * | 2007-06-13 | 2008-12-18 | Qurio Holdings, Inc. | Push-caching scheme for a late-binding advertisement architecture |
US20100332298A1 (en) * | 2007-07-31 | 2010-12-30 | Qurio Holdings, Inc. | Synchronizing multiple playback device timing utilizing drm encoding |
US8549091B1 (en) | 2007-07-31 | 2013-10-01 | Qurio Holdings, Inc. | RDMA based real-time video client playback architecture |
US8583555B1 (en) | 2007-07-31 | 2013-11-12 | Quirio Holdings, Inc. | Synchronizing multiple playback device timing utilizing DRM encoding |
US7805373B1 (en) | 2007-07-31 | 2010-09-28 | Qurio Holdings, Inc. | Synchronizing multiple playback device timing utilizing DRM encoding |
US8290873B2 (en) | 2007-07-31 | 2012-10-16 | Qurio Holdings, Inc. | Synchronizing multiple playback device timing utilizing DRM encoding |
US9032041B2 (en) | 2007-07-31 | 2015-05-12 | Qurio Holdings, Inc. | RDMA based real-time video client playback architecture |
US7996482B1 (en) | 2007-07-31 | 2011-08-09 | Qurio Holdings, Inc. | RDMA based real-time video client playback architecture |
US9111285B2 (en) | 2007-08-27 | 2015-08-18 | Qurio Holdings, Inc. | System and method for representing content, user presence and interaction within virtual world advertising environments |
US20090063983A1 (en) * | 2007-08-27 | 2009-03-05 | Qurio Holdings, Inc. | System and method for representing content, user presence and interaction within virtual world advertising environments |
US20090083412A1 (en) * | 2007-09-20 | 2009-03-26 | Qurio Holdings, Inc. | Illustration supported p2p media content streaming |
US8046453B2 (en) | 2007-09-20 | 2011-10-25 | Qurio Holdings, Inc. | Illustration supported P2P media content streaming |
US9112889B2 (en) | 2007-12-20 | 2015-08-18 | Qurio Holdings, Inc. | RDMA to streaming protocol driver |
US8762476B1 (en) | 2007-12-20 | 2014-06-24 | Qurio Holdings, Inc. | RDMA to streaming protocol driver |
US9549212B2 (en) | 2008-02-25 | 2017-01-17 | Qurio Holdings, Inc. | Dynamic load based ad insertion |
US8739204B1 (en) | 2008-02-25 | 2014-05-27 | Qurio Holdings, Inc. | Dynamic load based ad insertion |
US8060904B1 (en) | 2008-02-25 | 2011-11-15 | Qurio Holdings, Inc. | Dynamic load based ad insertion |
US20100023409A1 (en) * | 2008-07-22 | 2010-01-28 | Hilton Antony A | Methods and systems for enhanced advertising display and consumer purchase requests in an interactive environment |
WO2010011758A2 (en) * | 2008-07-22 | 2010-01-28 | Ice, Llc | Methods and systems for enhanced advertising display and consumer purchase requests in an interactive environment |
WO2010011758A3 (en) * | 2008-07-22 | 2010-07-15 | Ice, Llc | Enhanced advertising display and consumer purchase requests in an interactive environment |
US8312487B1 (en) | 2008-12-31 | 2012-11-13 | Qurio Holdings, Inc. | Method and system for arranging an advertising schedule |
US20120189069A1 (en) * | 2009-04-15 | 2012-07-26 | Ibiquity Digital Corporation | Systems and Methods for a Multiport Synchronous-Asynchronous Client for Scheduling and Delivering Content for Digital Radio Broadcast Transmission |
US8804037B2 (en) | 2009-04-15 | 2014-08-12 | Ibiquity Digital Corporation | Systems and methods for transmitting media content via digital radio broadcast transmission for synchronized rendering by a receiver |
US8660128B2 (en) * | 2009-04-15 | 2014-02-25 | Ibiquity Digital Corporation | Systems and methods for a multiport synchronous-asynchronous client for scheduling and delivering content for digital radio broadcast transmission |
US20120158945A1 (en) * | 2010-12-16 | 2012-06-21 | Christian Goldbach | Server load balancing using dynamic log-on groups |
US20120278183A1 (en) * | 2011-03-31 | 2012-11-01 | Fortuna Joseph A | Scripting language, method and system for delivering platform-independent dynamically interpreted and rendered interactive content, and for measuring the degree and nature of user interaction therewith |
US10070200B2 (en) | 2011-08-03 | 2018-09-04 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US10405058B2 (en) | 2011-08-03 | 2019-09-03 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US9271024B2 (en) | 2011-08-03 | 2016-02-23 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US10771860B2 (en) | 2011-08-03 | 2020-09-08 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US9591380B2 (en) | 2011-08-03 | 2017-03-07 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US9078035B2 (en) | 2011-08-03 | 2015-07-07 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US8683502B2 (en) | 2011-08-03 | 2014-03-25 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US11082753B2 (en) | 2011-08-03 | 2021-08-03 | Intent IQ, LLC | Targeted television advertising based on profiles linked to multiple online devices |
US11368763B2 (en) | 2011-08-03 | 2022-06-21 | Intent IQ, LLC | Methods of using proxy IP addresses and redirection for cross-device actions |
US11689780B2 (en) | 2011-08-03 | 2023-06-27 | Intent IQ, LLC | Methods of using proxy IP addresses and redirection for cross-device actions |
US11949962B2 (en) | 2011-08-03 | 2024-04-02 | Intent IQ, LLC | Method and computer system using proxy IP addresses and PII in measuring ad effectiveness across devices |
US10942737B2 (en) | 2011-12-29 | 2021-03-09 | Intel Corporation | Method, device and system for control signalling in a data path module of a data stream processing engine |
US9351053B2 (en) | 2012-06-05 | 2016-05-24 | Almondnet, Inc. | Targeted television advertising based on a profile linked to an online device associated with a content-selecting device |
US9071886B2 (en) | 2012-06-05 | 2015-06-30 | Almondnet, Inc. | Targeted television advertising based on a profile linked to an online device associated with a content-selecting device |
US9571865B2 (en) | 2013-01-30 | 2017-02-14 | Almondnet, Inc. | User control of replacement television advertisements inserted by a smart television |
US11778249B2 (en) | 2013-01-30 | 2023-10-03 | Almondnet, Inc. | Rewinding replacement television advertisements inserted by a smart television |
US11503348B2 (en) | 2013-01-30 | 2022-11-15 | Almondnet, Inc. | Smart TV detection of STB user-control actions related to STB- originated content presentation speed |
US8713600B2 (en) | 2013-01-30 | 2014-04-29 | Almondnet, Inc. | User control of replacement television advertisements inserted by a smart television |
US12063395B2 (en) | 2013-01-30 | 2024-08-13 | Almondnet, Inc. | Smart TV detection of STB user-control screen-area actions related to STB-originated content presentation |
US10834438B2 (en) | 2013-01-30 | 2020-11-10 | Almondnet, Inc. | User control of replacement television advertisements inserted by a smart television |
US10009636B2 (en) | 2013-01-30 | 2018-06-26 | Almondnet, Inc. | User control of replacement television advertisements inserted by a smart television |
US10331583B2 (en) | 2013-09-26 | 2019-06-25 | Intel Corporation | Executing distributed memory operations using processing elements connected by distributed channels |
US10853276B2 (en) | 2013-09-26 | 2020-12-01 | Intel Corporation | Executing distributed memory operations using processing elements connected by distributed channels |
US10402168B2 (en) | 2016-10-01 | 2019-09-03 | Intel Corporation | Low energy consumption mantissa multiplication for floating point multiply-add operations |
US10416999B2 (en) | 2016-12-30 | 2019-09-17 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10474375B2 (en) * | 2016-12-30 | 2019-11-12 | Intel Corporation | Runtime address disambiguation in acceleration hardware |
US10572376B2 (en) | 2016-12-30 | 2020-02-25 | Intel Corporation | Memory ordering in acceleration hardware |
US10558575B2 (en) | 2016-12-30 | 2020-02-11 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10467183B2 (en) | 2017-07-01 | 2019-11-05 | Intel Corporation | Processors and methods for pipelined runtime services in a spatial array |
US10445451B2 (en) | 2017-07-01 | 2019-10-15 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with performance, correctness, and power reduction features |
US10387319B2 (en) | 2017-07-01 | 2019-08-20 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with memory system performance, power reduction, and atomics support features |
US10515046B2 (en) | 2017-07-01 | 2019-12-24 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator |
US10515049B1 (en) | 2017-07-01 | 2019-12-24 | Intel Corporation | Memory circuits and methods for distributed memory hazard detection and error recovery |
US10445234B2 (en) | 2017-07-01 | 2019-10-15 | Intel Corporation | Processors, methods, and systems for a configurable spatial accelerator with transactional and replay features |
US10469397B2 (en) | 2017-07-01 | 2019-11-05 | Intel Corporation | Processors and methods with configurable network-based dataflow operator circuits |
US11086816B2 (en) | 2017-09-28 | 2021-08-10 | Intel Corporation | Processors, methods, and systems for debugging a configurable spatial accelerator |
US10496574B2 (en) | 2017-09-28 | 2019-12-03 | Intel Corporation | Processors, methods, and systems for a memory fence in a configurable spatial accelerator |
US10445098B2 (en) | 2017-09-30 | 2019-10-15 | Intel Corporation | Processors and methods for privileged configuration in a spatial array |
US10380063B2 (en) | 2017-09-30 | 2019-08-13 | Intel Corporation | Processors, methods, and systems with a configurable spatial accelerator having a sequencer dataflow operator |
US10565134B2 (en) | 2017-12-30 | 2020-02-18 | Intel Corporation | Apparatus, methods, and systems for multicast in a configurable spatial accelerator |
US10417175B2 (en) | 2017-12-30 | 2019-09-17 | Intel Corporation | Apparatus, methods, and systems for memory consistency in a configurable spatial accelerator |
US10445250B2 (en) | 2017-12-30 | 2019-10-15 | Intel Corporation | Apparatus, methods, and systems with a configurable spatial accelerator |
US10891228B2 (en) * | 2018-02-12 | 2021-01-12 | International Business Machines Corporation | Cache line states identifying memory cache |
US20190251029A1 (en) * | 2018-02-12 | 2019-08-15 | International Business Machines Corporation | Cache line states identifying memory cache |
US11307873B2 (en) | 2018-04-03 | 2022-04-19 | Intel Corporation | Apparatus, methods, and systems for unstructured data flow in a configurable spatial accelerator with predicate propagation and merging |
US10564980B2 (en) | 2018-04-03 | 2020-02-18 | Intel Corporation | Apparatus, methods, and systems for conditional queues in a configurable spatial accelerator |
US11200186B2 (en) | 2018-06-30 | 2021-12-14 | Intel Corporation | Apparatuses, methods, and systems for operations in a configurable spatial accelerator |
US10853073B2 (en) | 2018-06-30 | 2020-12-01 | Intel Corporation | Apparatuses, methods, and systems for conditional operations in a configurable spatial accelerator |
US11593295B2 (en) | 2018-06-30 | 2023-02-28 | Intel Corporation | Apparatuses, methods, and systems for operations in a configurable spatial accelerator |
US10459866B1 (en) | 2018-06-30 | 2019-10-29 | Intel Corporation | Apparatuses, methods, and systems for integrated control and data processing in a configurable spatial accelerator |
US10891240B2 (en) | 2018-06-30 | 2021-01-12 | Intel Corporation | Apparatus, methods, and systems for low latency communication in a configurable spatial accelerator |
US10678724B1 (en) | 2018-12-29 | 2020-06-09 | Intel Corporation | Apparatuses, methods, and systems for in-network storage in a configurable spatial accelerator |
US10915471B2 (en) | 2019-03-30 | 2021-02-09 | Intel Corporation | Apparatuses, methods, and systems for memory interface circuit allocation in a configurable spatial accelerator |
US10817291B2 (en) | 2019-03-30 | 2020-10-27 | Intel Corporation | Apparatuses, methods, and systems for swizzle operations in a configurable spatial accelerator |
US11029927B2 (en) | 2019-03-30 | 2021-06-08 | Intel Corporation | Methods and apparatus to detect and annotate backedges in a dataflow graph |
US10965536B2 (en) | 2019-03-30 | 2021-03-30 | Intel Corporation | Methods and apparatus to insert buffers in a dataflow graph |
US11693633B2 (en) | 2019-03-30 | 2023-07-04 | Intel Corporation | Methods and apparatus to detect and annotate backedges in a dataflow graph |
US11037050B2 (en) | 2019-06-29 | 2021-06-15 | Intel Corporation | Apparatuses, methods, and systems for memory interface circuit arbitration in a configurable spatial accelerator |
US11907713B2 (en) | 2019-12-28 | 2024-02-20 | Intel Corporation | Apparatuses, methods, and systems for fused operations using sign modification in a processing element of a configurable spatial accelerator |
US12086080B2 (en) | 2020-09-26 | 2024-09-10 | Intel Corporation | Apparatuses, methods, and systems for a configurable accelerator having dataflow execution circuits |
Also Published As
Publication number | Publication date |
---|---|
EP1342364A2 (en) | 2003-09-10 |
AU2002225751A1 (en) | 2002-06-11 |
US20040015986A1 (en) | 2004-01-22 |
KR20030082548A (en) | 2003-10-22 |
JP2004531104A (en) | 2004-10-07 |
WO2002045430A2 (en) | 2002-06-06 |
CN1486568A (en) | 2004-03-31 |
WO2002045430A9 (en) | 2003-05-15 |
US7451467B2 (en) | 2008-11-11 |
WO2002045430A3 (en) | 2002-11-07 |
CA2430166A1 (en) | 2002-06-06 |
IL156146A0 (en) | 2003-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7451467B2 (en) | Content/service handling and delivery | |
CA2481630C (en) | System and method for advertisement delivery within a video time shifting architecture | |
US7203758B2 (en) | System and method for selective insertion of content into streaming media | |
CA2442842C (en) | Alternative advertising in pre-recorded media | |
US8578410B2 (en) | Video and digital multimedia aggregator content coding and formatting | |
US8079052B2 (en) | Methods, apparatuses, and systems for presenting advertisement content within trick files | |
US20030028890A1 (en) | Video and digital multimedia acquisition and delivery system and method | |
US12022169B2 (en) | Real-time ad tracking proxy | |
WO2005001626A2 (en) | Content/service handling and delivery | |
CN107948685A (en) | Information popularization method and information popularization device | |
SECTOR | FG IPTV-DOC-0125 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |