US20200296433A1 - Campaign router - Google Patents

Campaign router Download PDF

Info

Publication number
US20200296433A1
US20200296433A1 US16/352,878 US201916352878A US2020296433A1 US 20200296433 A1 US20200296433 A1 US 20200296433A1 US 201916352878 A US201916352878 A US 201916352878A US 2020296433 A1 US2020296433 A1 US 2020296433A1
Authority
US
United States
Prior art keywords
placement
placement unit
router
units
placement units
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.)
Granted
Application number
US16/352,878
Other versions
US10785514B1 (en
Inventor
Ron Gutman
Yuval Fisher
Sarah Christine Foss
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
WURL, LLC
Original Assignee
Wurl Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wurl Inc filed Critical Wurl Inc
Priority to US16/352,878 priority Critical patent/US10785514B1/en
Assigned to WURL INC. reassignment WURL INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: FISHER, YUVAL, FOSS, SARAH CHRISTINE, GUTMAN, RON
Publication of US20200296433A1 publication Critical patent/US20200296433A1/en
Application granted granted Critical
Publication of US10785514B1 publication Critical patent/US10785514B1/en
Assigned to WURL, LLC reassignment WURL, LLC MERGER AND CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: WURL, INC., WURL, LLC
Assigned to BANK OF AMERICA, N.A., AS COLLATERAL AGENT reassignment BANK OF AMERICA, N.A., AS COLLATERAL AGENT GRANT OF SECURITY INTEREST IN PATENT RIGHTS Assignors: WURL, LLC
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/237Communication with additional data server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2668Creating a channel for a dedicated end-user group, e.g. insertion of targeted commercials based on end-user profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2407Monitoring of transmitted content, e.g. distribution time, number of downloads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/258Client 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/25866Management of end-user data
    • H04N21/25883Management of end-user data being end-user demographical data, e.g. age, family status or address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2181Source of audio or video content, e.g. local disk arrays comprising remotely distributed storage units, e.g. when movies are replicated over a plurality of video servers

Definitions

  • the present invention relates generally to video distribution, and particularly to monetization of distributed video via advertising.
  • Adaptive bitrate (ABR) video streams are used to deliver video streams to clients.
  • ABR Adaptive bitrate
  • the client When a client requests video content, the client is serviced with a manifest which includes a list of links, such as URL addresses, of files containing fragments of the requested video content.
  • the manifest may include multiple links for a single fragment of the video content, corresponding to different bitrates and/or resolutions.
  • the manifest For pre-existing video assets, the manifest contains links to fragments covering the entire video asset.
  • the manifest may contain links to a sub-portion of the video asset, along with one or more links to further manifests to be requested by the client as the stream progresses.
  • the manifest indicates a function used by the client to programmatically determine fragment URLs forward in time.
  • Video streams are designed with slots, also known as avails, to be filled in with advertisements when the stream is provided to a client.
  • the revenue from the advertisements is split between a content provider, providing the video content, and a video distributor (e.g., a cable operator), which delivers the video content to the viewers.
  • a video distributor e.g., a cable operator
  • Embodiments of the present invention that are described hereinbelow provide methods and apparatus for splitting advertisement insertion between different ad placement units managed by the same entity or by different advertisement insertion entities.
  • a method of providing a video manifest to a client including managing, by a router, for each of a plurality of ad placement units, a measure of advertisement avails provided by the router to the ad placement unit for filling with advertisements, receiving, at the router, a client request for a video content, choosing, by the router, an ad placement unit from the plurality of ad placement units, to select advertisements to be placed in avails of the requested video content, at least partially responsive to the managed measures of advertisement avails, and directing the received client request to the chosen ad placement unit.
  • managing the measure of advertisement avails comprises counting the number of requests directed to each of the ad placement units and/or counting the number of avails in the requests directed to each of the ad placement units.
  • managing the measure of advertisement avails comprises counting the number of avails actually filled by each of the ad placement units.
  • directing the received client request to the chosen ad placement unit comprises forwarding the client request from the router to the chosen ad placement unit.
  • directing the received client request to the chosen ad placement unit comprises sending to a client from which the client request was received, a redirection instruction to forward the client request to the chosen ad placement unit.
  • each of the plurality of ad placement units is assigned a predefined proportion assigned to the ad placement unit and choosing the ad placement unit is responsive to the managed measures of advertisement avails and the assigned predefined proportions.
  • choosing the ad placement unit from the plurality of ad placement units comprises choosing the ad placement unit for which the managed measure is farthest from the assigned predefined proportion.
  • choosing the ad placement unit from the plurality of ad placement units comprises choosing responsive to current efficiency scores of the ad placement units.
  • the current efficiency scores of the ad placement units are dependent on current income received by the ad placement units for filling avails.
  • the current efficiency scores of the ad placement units are dependent on measures of current load on the ad placement units.
  • choosing the ad placement unit from the plurality of ad placement units comprises choosing at least partially responsive to information on the user from which the request was received.
  • choosing the ad placement unit from the plurality of ad placement units comprises choosing in a manner giving preference to directing requests from a specific client to multiple ad placement units.
  • the method includes modifying a format of the received client request, before directing the received client request to the chosen ad placement unit.
  • an apparatus for providing a video manifest to a client comprising at least one interface for communicating with a plurality of clients and a plurality of ad placement units, a router configured to manage for each of the plurality of ad placement units, a measure of advertisement avails provided by the router to the ad placement unit for filling with advertisements, to receive requests for video content from the clients, to choose for each received request an ad placement unit from the plurality of ad placement units, to handle the request, at least partially responsive to the managed measures of advertisement avails; and to direct the received client request to the chosen ad placement unit.
  • the router is configured to direct the received client request to the chosen ad placement unit by forwarding the client request from the router to the chosen ad placement unit.
  • the router is configured to direct the received client request to the chosen ad placement unit by sending to a client from which the client request was received, a redirection instruction to forward the client request to the chosen ad placement unit.
  • the router is configured to modify a format of the received client request, so as to match a format expected by the chosen ad placement unit, before directing the received client request to the chosen ad placement unit.
  • the router is configured to choose the ad placement unit from the plurality of ad placement units at least partially responsive to information on the user from which the request was received.
  • the router is configured to choose the ad placement unit from the plurality of ad placement units in a manner giving preference to directing requests from a specific client to multiple ad placement units.
  • FIG. 1 is a video provision system, in accordance with an exemplary embodiment of the invention.
  • An aspect of some embodiments of the present invention relates to a system for placing advertisement links in video manifests.
  • the system includes a plurality of ad placement units, which insert advertisement links into manifests, and a router, which distributes video requests between the ad placement units according to a predefined rule on splitting the video requests between the ad placement units.
  • the splitting of the advertisement insertion between different ad placement units allows separate placement of advertisements by different entities without the entities exposing their advertisement strategies to each other.
  • the different ad placement units use different rules and/or different targeting metadata in selecting the advertisements to be placed in the avails.
  • FIG. 1 is a schematic illustration of a video provision system 100 , in accordance with an embodiment of the invention.
  • System 100 includes a manifest provision system 106 , and a content distribution network (CDN) 120 .
  • Clients 110 send requests for video content (e.g., video playback requests), over the Internet 138 or any other suitable network, to manifest provision system 106 .
  • Manifest provision system 106 responds to each request with a corresponding manifest listing video data blocks forming the requested video content.
  • Client 110 then retrieves the video content blocks from CDN 120 .
  • Manifest provision system 106 comprises a plurality of ad placement units 102 and a router 104 .
  • Client requests directed to manifest provision system 106 are directed to router 104 , which chooses for each client request an ad placement unit 102 to handle the request, according to one or more predefined rules on splitting the video requests between the ad placement units 102 .
  • the requests are then forwarded to the chosen ad placement unit 102 .
  • Ad placement units 102 retrieve a manifest listing video blocks corresponding to the requested video content, select advertisements to be provided in avails of the retrieved manifest and insert the selected advertisements to the avails of the manifest.
  • the manifest is then provided to the client 110 using any of the methods discussed hereinbelow.
  • the advertisement selection is optionally performed in each ad placement unit 102 by an internal advertisement decision server (ADS).
  • ADS receives targeting metadata and accordingly selects advertisements to be placed in the avails of the video content.
  • the targeting metadata optionally includes information on the content of the video stream, demographic information on the viewers receiving the video stream, and/or information on what the viewers previously viewed.
  • the insertion of the advertisements into the avails is optionally performed by a suitable manifest manipulator (MM).
  • the manifest manipulator operates using any suitable method known in the art, such as any of the methods described in U.S. Pat. No. 8,799,943, titled: “Method and System for Efficient Manifest Manipulation”, which is incorporated herein by reference in its entirety.
  • the manifest provided by the ad placement unit 102 optionally covers the entire requested video content. This option may be used, for example, when the requested video content is a stored video, such as in a video on demand (VOD) service. Alternatively, the provided manifest covers only a short segment of the requested video, for example covering several seconds. To receive further segments of the requested video, the client optionally resends the request and receives a manifest corresponding to a subsequent segment of the video content. Alternatively, the manifest includes a link to one or more further manifests that the client should request to receive further portions of the requested video content.
  • VOD video on demand
  • the system configuration shown in FIG. 1 is an example configuration, which is chosen purely for the sake of conceptual clarity. Alternatively, any other suitable system configuration can be used.
  • the different elements of system 100 may be implemented using software, hardware or a combination of hardware and software elements.
  • ad placement units 102 and/or router 104 comprise a general-purpose processor programmed in software to carry out the functions described herein.
  • the software may be downloaded to the computer in optical or electronic form, over a network, for example, or it may, additionally or alternatively, be provided and/or stored on non-transitory tangible media, such as magnetic, optical, or electronic memory.
  • Ad placement units 102 may be grouped together in a single location or even in a single package or may be distributed in separate locations, possibly separated by more than a kilometer or even more than 100 kilometers.
  • Router 104 optionally comprises one or more interfaces 162 through which it connects to Internet 138 and clients 110 . Additionally, router 104 comprises one or more interfaces 164 through which the router connects to ad placement units 102 . Alternatively, the same interface is used to communicate with both clients 110 and ad placement units 102 .
  • Router 104 also comprises a processor 160 , which carries out at least some of the tasks of the router.
  • router 104 comprises a redirection router, which sends a redirection message to the client in response to the client manifest request.
  • the redirection message causes the client to resend the request to the chosen ad placement unit 102 .
  • the client requests are sent as HTTP requests and ad placement units 102 provide the manifests in accordance with the HTTP protocol.
  • the redirection message comprises an HTTP redirection message.
  • the manifest with the advertisement links inserted into the avails is optionally provided to the client 110 by the ad placement unit 102 directly, without passing through router 104 .
  • router 104 comprises a proxy router, which forwards client requests to the corresponding chosen ad placement unit 102 .
  • the manifest with the advertisement links inserted into the avails is provided back to router 104 , which forwards the manifest back to the client 110 .
  • router 104 before forwarding a manifest to client 110 , router 104 , whether operating as a redirection router or as a proxy router, modifies any pointers therein that point to the ad placement unit 102 , so that the modified pointers point to the router 104 .
  • the one or more predefined rules on splitting the video requests between the ad placement units 102 include, in some embodiments, a predefined percentage distribution between the ad placement units 102 .
  • router 104 may be configured to split the advertisement avails in a 70:30 distribution between two ad placement units 102 .
  • the predefined percentage distribution may relate to the number of requests, the number of avails estimated to be in the video content referred to by the requests, the number of avails actually filled with advertisements, the number of advertisements viewed at least partially (sometimes referred to as ad impressions), the number of advertisements viewed to their completion, and/or any other suitable measure of assigned advertisements.
  • router 104 keeps track of the revenues received for the advertisements inserted to manifests by each of the ad placement units 102 and accordingly the requests are assigned to the ad placement units 102 .
  • the one or more predefined rules depend only on a single one of the above measures of the advertisements assigned to each ad placement unit 102 . In other embodiments, the one or more predefined rules depend on a weighted sum or any other suitable function of a plurality of the above measures.
  • router 104 keeps track of the number of requests forwarded to each of the ad placement units 102 and accordingly ad placement units 102 for subsequent requests are chosen. Alternatively or additionally, router 104 keeps track of the number of avails in the requests provided to each of the ad placement units 102 .
  • router 104 monitors the manifests transmitted from the ad placement units 102 to the clients 110 , and collects statistics on the advertisements the manifests include. These statistics are optionally used in adjusting the selection of ad placement unit 102 . In some embodiments, router 104 monitors information transmitted from the clients 110 on the actual ad impressions or ad completions (i.e., notifications that ads were displayed until their completion) and uses this information in managing the splitting of requests between ad placement units 102 .
  • the ad placement unit 102 to which a specific request is forwarded is selected randomly with weights selected responsive to the tracked number of requests forwarded to each of the ad placement units 102 .
  • the ad placement unit 102 whose proportion of assigned requests and/or avails is farthest from a predefined proportion assigned to the ad placement unit 102 is selected.
  • the router 104 selects the ad placement unit 102 that if selected will move the total average closest to the predefined percentage distribution.
  • router 104 is configured with a desired ratio R pu for each of the ad placement units 102 , where PU designates an identification of the ad placement unit.
  • router 104 keeps track of the number AD pu of avails delivered to each of the ad placement units 102 and of a total number of avails AD tot delivered to all the ad placement units 102 . For each received request, router 104 selects an ad placement unit 102 with:
  • router 104 in addition to attempting to converge in the long run to the predefined percentage distribution, router 104 chooses corresponding ad placement units 102 for received requests, based on short term efficiency considerations. In some embodiments, for each received client request, router 104 determines for each ad placement unit 102 an efficiency score which indicates a current efficiency of handling the received request by the specific ad placement unit 102 . The choosing of the ad placement unit 102 that is to handle a received request is performed at least partially responsive to the efficiency scores of the ad placement units 102 .
  • the efficiency score is optionally a function of time.
  • router 104 manages for each ad placement unit 102 a record which indicates for the ad placement unit 102 , the efficiency score for each time interval. For example, a first efficiency score value is assigned for work hours, a second efficiency score value is assigned for night hours and a third value is assigned for weekends and holidays. Alternatively or additionally, router 104 receives from the ad placement units 102 periodic updates on the load, percentage of avails being filled and/or any other efficiency parameters, and accordingly sets their current efficiency score.
  • the efficiency score for each ad placement unit 102 is a function of a proximity between the client and the ad placement unit 102 .
  • the efficiency score is a function of the current average revenue received by the ad placement unit 102 for placing advertisements in avails. Giving short term preference to an ad placement unit 102 currently achieving a high revenue per avail could increase the overall income of all the ad placement units 102 .
  • the efficiency score is a function of an average response time between receiving a request by the ad placement unit 102 and returning a manifest with inserted advertisement links. The response time could be indicative of the ease of the ad placement units 102 to fill avails with advertisements.
  • advertisement metadata such as advertisement type. Some types of advertisements are less preferred and therefore are indicative of low efficiency of the ad placement units 102 that use them.
  • router 104 receives rules on types of ads that are to be preferred or avoided by specific clients and/or video content. In addition, router 104 monitors the types of ads currently provided by each of ad placement units 102 , and accordingly assigns efficiency scores to the ad placement units 102 .
  • Router 104 optionally chooses the ad placement unit 102 with the highest efficiency score to handle a received request, provided that the difference (R pu ⁇ AD pu )/AD tot is not greater than a predetermined threshold.
  • the ad placement unit 102 to handle each received request is selected using a function which takes both the efficiency score and the difference from the predefined ratio into account.
  • the selection of the ad placement unit 102 depends at least partially on user information about the user from which the request was received.
  • the data about the user is received from the user with the request.
  • the data about the user is received from a data management platform 124 .
  • router 104 comprises a database (DB) 116 in which information about previous requests of users and/or clients is collected.
  • database 116 is consulted to retrieve information about the client and/or user from which the request was received and accordingly the ad placement unit 102 to receive the request is selected.
  • the user information used by router 104 in choosing an ad placement unit 102 includes, in some embodiments, demographic information, such as age, gender, education, profession and/or income level.
  • the user information comprises location information indicating the user's residence (e.g., postal code) and/or current location.
  • the user information comprises information on shopping habits of the user and/or on purchase agreements for given periods, which are coming up for renewal. Such purchase agreements may relate, for example, to insurance, car lease and/or service agreements.
  • the splitting of the requests between the ad placement units 102 is designed such that different requests from the same user and/or client are sent to different ad placement units 102 , such that over time the client will be exposed to the advertisement pools of all the ad placement units 102 .
  • the requested video content is a live video stream (e.g., television channel)
  • each manifest supplied to the client generally covers a short segment of the requested video content and the client repeatedly sends requests for further segments of the video content.
  • Probe 104 optionally forwards requests relating to the same video stream to ad placement units 102 without relation to the fact that the requests relate to the same video stream.
  • probe 104 gives preference to passing manifests belonging to the same video stream to different ad placement units 102 .
  • requests for manifests relating to the same video content are transferred to the same ad placement unit 102 , or preference is given to passing the requests to the same ad placement unit 102 .
  • different ad placement units 102 expect to receive client requests in different formats, or are more efficient when client requests are received in a specific preferred format of that specific ad placement unit 102 .
  • the different formats optionally differ in the metadata they expect to receive with the requests or in the format of the metadata they expect to receive.
  • router 104 After choosing the ad placement unit 102 to receive a specific request, router 104 converts the specific request into the corresponding format of the chosen ad placement unit 102 .
  • the conversion may include addition of information to the request or removal of information from the request.
  • Router 104 is optionally configured with the format required by each ad placement unit 102 and converts client requests to the required format.
  • Each of the ad placement units 102 optionally selects the advertisements to be placed in the avails according to its own rules, generally unrelated to the rules used by the other ad placement units 102 .
  • the different ad placement units 102 optionally select the advertisements from different advertisement pools and/or based on different business relationships.
  • different ad placement units 102 use different ad-sales strategies in selecting the advertisements.
  • the different ad placement units 102 use different metadata regarding the viewers in selecting the advertisements to insert to avails.
  • the metadata may include, for example, age, gender and/or location.
  • different ad placement units 102 use different metadata parameters.
  • different ad placement units 102 use different geographical granularities in selecting advertisements. For example, a first ad placement unit 102 may have different advertisement rules for different states, such that all clients from the same state generally receive the same advertisements, while a second ad placement unit 102 selects different advertisements for different cities or for different postal codes.
  • one ad placement unit 102 may select advertisements based on location of the viewers, while another ad placement unit 102 may select advertisements based on demographic data associated with the viewers of a particular program. For example, the ad placement unit 102 may select for a specific video program known to attract young males, advertisements directed to 18-34 year old males.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Computer Graphics (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

A method of providing a video manifest to a client. A router manages, for each of a plurality of ad placement units, a measure of advertisement avails provided by the router to the ad placement unit for filling with advertisements, receives a client request for a video content, and chooses an ad placement unit from the plurality of ad placement units, to select advertisements to be placed in avails of the requested video content, at least partially responsive to the managed measures of advertisement avails. The received client request is directed to the chosen ad placement unit.

Description

    FIELD OF THE INVENTION
  • The present invention relates generally to video distribution, and particularly to monetization of distributed video via advertising.
  • BACKGROUND
  • Adaptive bitrate (ABR) video streams are used to deliver video streams to clients. When a client requests video content, the client is serviced with a manifest which includes a list of links, such as URL addresses, of files containing fragments of the requested video content. The manifest may include multiple links for a single fragment of the video content, corresponding to different bitrates and/or resolutions.
  • For pre-existing video assets, the manifest contains links to fragments covering the entire video asset. For real-time linear streams, the manifest may contain links to a sub-portion of the video asset, along with one or more links to further manifests to be requested by the client as the stream progresses. Alternatively, the manifest indicates a function used by the client to programmatically determine fragment URLs forward in time.
  • US Patent Publication 2017/0188054 to Ma et al., titled: “Method and System for Optimized Media Delivery”, describes a system in which an origin server receives content requests from clients and generates a manifest file tailored to the clients location, so that the files indicated by the manifest are serviced from a local cache. The manifest is either returned to the client from the origin server or from the local cache.
  • An important source of revenue for the provided video content insertion of advertisements in the video content. Video streams are designed with slots, also known as avails, to be filled in with advertisements when the stream is provided to a client. In some cases, the revenue from the advertisements is split between a content provider, providing the video content, and a video distributor (e.g., a cable operator), which delivers the video content to the viewers. A problem arises in how to split the slots or the revenue from the advertisements between the content provider and the video distributor.
  • U.S. Patent Publication 2013/0254041 to Sherwin et al., titled: “Method for Delivering Fair Advertising Inventory Splits Given Position Preferences”, suggests splitting slots at random between the content provider and the cable operator, according to inventory split percentages.
  • US Patent Publication 2011/0302600 to Kelsen et al., titled: “Multicast Video Advertisement Insertion Using Routing Protocols” describes a method of inserting advertisements into a broadcast video, at local locations, without employing complex insertion units at these local locations.
  • SUMMARY
  • Embodiments of the present invention that are described hereinbelow provide methods and apparatus for splitting advertisement insertion between different ad placement units managed by the same entity or by different advertisement insertion entities.
  • There is therefore provided in accordance with embodiments of the invention, a method of providing a video manifest to a client, including managing, by a router, for each of a plurality of ad placement units, a measure of advertisement avails provided by the router to the ad placement unit for filling with advertisements, receiving, at the router, a client request for a video content, choosing, by the router, an ad placement unit from the plurality of ad placement units, to select advertisements to be placed in avails of the requested video content, at least partially responsive to the managed measures of advertisement avails, and directing the received client request to the chosen ad placement unit.
  • Optionally, managing the measure of advertisement avails comprises counting the number of requests directed to each of the ad placement units and/or counting the number of avails in the requests directed to each of the ad placement units. Alternatively or additionally, managing the measure of advertisement avails comprises counting the number of avails actually filled by each of the ad placement units.
  • Optionally, directing the received client request to the chosen ad placement unit comprises forwarding the client request from the router to the chosen ad placement unit. Optionally, directing the received client request to the chosen ad placement unit comprises sending to a client from which the client request was received, a redirection instruction to forward the client request to the chosen ad placement unit.
  • Optionally, each of the plurality of ad placement units is assigned a predefined proportion assigned to the ad placement unit and choosing the ad placement unit is responsive to the managed measures of advertisement avails and the assigned predefined proportions. Optionally, choosing the ad placement unit from the plurality of ad placement units comprises choosing the ad placement unit for which the managed measure is farthest from the assigned predefined proportion. Optionally, choosing the ad placement unit from the plurality of ad placement units comprises choosing responsive to current efficiency scores of the ad placement units.
  • Optionally, the current efficiency scores of the ad placement units are dependent on current income received by the ad placement units for filling avails. Optionally, the current efficiency scores of the ad placement units are dependent on measures of current load on the ad placement units. Optionally, choosing the ad placement unit from the plurality of ad placement units comprises choosing at least partially responsive to information on the user from which the request was received. Optionally, choosing the ad placement unit from the plurality of ad placement units comprises choosing in a manner giving preference to directing requests from a specific client to multiple ad placement units. Optionally, the method includes modifying a format of the received client request, before directing the received client request to the chosen ad placement unit.
  • There is further provided in accordance with embodiments of the invention, an apparatus for providing a video manifest to a client, comprising at least one interface for communicating with a plurality of clients and a plurality of ad placement units, a router configured to manage for each of the plurality of ad placement units, a measure of advertisement avails provided by the router to the ad placement unit for filling with advertisements, to receive requests for video content from the clients, to choose for each received request an ad placement unit from the plurality of ad placement units, to handle the request, at least partially responsive to the managed measures of advertisement avails; and to direct the received client request to the chosen ad placement unit.
  • Optionally, the router is configured to direct the received client request to the chosen ad placement unit by forwarding the client request from the router to the chosen ad placement unit. Optionally, the router is configured to direct the received client request to the chosen ad placement unit by sending to a client from which the client request was received, a redirection instruction to forward the client request to the chosen ad placement unit. Optionally, the router is configured to modify a format of the received client request, so as to match a format expected by the chosen ad placement unit, before directing the received client request to the chosen ad placement unit. Optionally, the router is configured to choose the ad placement unit from the plurality of ad placement units at least partially responsive to information on the user from which the request was received. Optionally, the router is configured to choose the ad placement unit from the plurality of ad placement units in a manner giving preference to directing requests from a specific client to multiple ad placement units.
  • The present invention will be more fully understood from the following detailed description of the embodiments thereof, taken together with the drawings in which:
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1 is a video provision system, in accordance with an exemplary embodiment of the invention.
  • DETAILED DESCRIPTION OF EMBODIMENTS
  • An aspect of some embodiments of the present invention relates to a system for placing advertisement links in video manifests. The system includes a plurality of ad placement units, which insert advertisement links into manifests, and a router, which distributes video requests between the ad placement units according to a predefined rule on splitting the video requests between the ad placement units.
  • The splitting of the advertisement insertion between different ad placement units allows separate placement of advertisements by different entities without the entities exposing their advertisement strategies to each other. In some embodiments, the different ad placement units use different rules and/or different targeting metadata in selecting the advertisements to be placed in the avails.
  • FIG. 1 is a schematic illustration of a video provision system 100, in accordance with an embodiment of the invention. System 100 includes a manifest provision system 106, and a content distribution network (CDN) 120. Clients 110 send requests for video content (e.g., video playback requests), over the Internet 138 or any other suitable network, to manifest provision system 106. Manifest provision system 106 responds to each request with a corresponding manifest listing video data blocks forming the requested video content. Client 110 then retrieves the video content blocks from CDN 120.
  • Manifest provision system 106 comprises a plurality of ad placement units 102 and a router 104. Client requests directed to manifest provision system 106 are directed to router 104, which chooses for each client request an ad placement unit 102 to handle the request, according to one or more predefined rules on splitting the video requests between the ad placement units 102. The requests are then forwarded to the chosen ad placement unit 102. Ad placement units 102 retrieve a manifest listing video blocks corresponding to the requested video content, select advertisements to be provided in avails of the retrieved manifest and insert the selected advertisements to the avails of the manifest. The manifest is then provided to the client 110 using any of the methods discussed hereinbelow.
  • The advertisement selection is optionally performed in each ad placement unit 102 by an internal advertisement decision server (ADS). The ADS receives targeting metadata and accordingly selects advertisements to be placed in the avails of the video content. The targeting metadata optionally includes information on the content of the video stream, demographic information on the viewers receiving the video stream, and/or information on what the viewers previously viewed. The insertion of the advertisements into the avails is optionally performed by a suitable manifest manipulator (MM). The manifest manipulator operates using any suitable method known in the art, such as any of the methods described in U.S. Pat. No. 8,799,943, titled: “Method and System for Efficient Manifest Manipulation”, which is incorporated herein by reference in its entirety.
  • The manifest provided by the ad placement unit 102, optionally covers the entire requested video content. This option may be used, for example, when the requested video content is a stored video, such as in a video on demand (VOD) service. Alternatively, the provided manifest covers only a short segment of the requested video, for example covering several seconds. To receive further segments of the requested video, the client optionally resends the request and receives a manifest corresponding to a subsequent segment of the video content. Alternatively, the manifest includes a link to one or more further manifests that the client should request to receive further portions of the requested video content.
  • The system configuration shown in FIG. 1 is an example configuration, which is chosen purely for the sake of conceptual clarity. Alternatively, any other suitable system configuration can be used. Generally, the different elements of system 100 may be implemented using software, hardware or a combination of hardware and software elements. In some embodiments, ad placement units 102 and/or router 104 comprise a general-purpose processor programmed in software to carry out the functions described herein. The software may be downloaded to the computer in optical or electronic form, over a network, for example, or it may, additionally or alternatively, be provided and/or stored on non-transitory tangible media, such as magnetic, optical, or electronic memory. Ad placement units 102 may be grouped together in a single location or even in a single package or may be distributed in separate locations, possibly separated by more than a kilometer or even more than 100 kilometers. Router 104 optionally comprises one or more interfaces 162 through which it connects to Internet 138 and clients 110. Additionally, router 104 comprises one or more interfaces 164 through which the router connects to ad placement units 102. Alternatively, the same interface is used to communicate with both clients 110 and ad placement units 102. Router 104 also comprises a processor 160, which carries out at least some of the tasks of the router.
  • In some embodiments, router 104 comprises a redirection router, which sends a redirection message to the client in response to the client manifest request. The redirection message causes the client to resend the request to the chosen ad placement unit 102. In some embodiments, the client requests are sent as HTTP requests and ad placement units 102 provide the manifests in accordance with the HTTP protocol. Optionally, in accordance with these embodiments, the redirection message comprises an HTTP redirection message.
  • In embodiments in which router 104 operates as a redirection router, the manifest with the advertisement links inserted into the avails is optionally provided to the client 110 by the ad placement unit 102 directly, without passing through router 104.
  • In other embodiments, router 104 comprises a proxy router, which forwards client requests to the corresponding chosen ad placement unit 102. In these embodiments, the manifest with the advertisement links inserted into the avails is provided back to router 104, which forwards the manifest back to the client 110.
  • Optionally, before forwarding a manifest to client 110, router 104, whether operating as a redirection router or as a proxy router, modifies any pointers therein that point to the ad placement unit 102, so that the modified pointers point to the router 104.
  • The one or more predefined rules on splitting the video requests between the ad placement units 102, include, in some embodiments, a predefined percentage distribution between the ad placement units 102. For example, router 104 may be configured to split the advertisement avails in a 70:30 distribution between two ad placement units 102.
  • The predefined percentage distribution may relate to the number of requests, the number of avails estimated to be in the video content referred to by the requests, the number of avails actually filled with advertisements, the number of advertisements viewed at least partially (sometimes referred to as ad impressions), the number of advertisements viewed to their completion, and/or any other suitable measure of assigned advertisements. Optionally, router 104 keeps track of the revenues received for the advertisements inserted to manifests by each of the ad placement units 102 and accordingly the requests are assigned to the ad placement units 102.
  • In some embodiments, the one or more predefined rules depend only on a single one of the above measures of the advertisements assigned to each ad placement unit 102. In other embodiments, the one or more predefined rules depend on a weighted sum or any other suitable function of a plurality of the above measures.
  • Optionally, router 104 keeps track of the number of requests forwarded to each of the ad placement units 102 and accordingly ad placement units 102 for subsequent requests are chosen. Alternatively or additionally, router 104 keeps track of the number of avails in the requests provided to each of the ad placement units 102.
  • In some embodiments, router 104 monitors the manifests transmitted from the ad placement units 102 to the clients 110, and collects statistics on the advertisements the manifests include. These statistics are optionally used in adjusting the selection of ad placement unit 102. In some embodiments, router 104 monitors information transmitted from the clients 110 on the actual ad impressions or ad completions (i.e., notifications that ads were displayed until their completion) and uses this information in managing the splitting of requests between ad placement units 102.
  • In some embodiments, the ad placement unit 102 to which a specific request is forwarded, is selected randomly with weights selected responsive to the tracked number of requests forwarded to each of the ad placement units 102. Alternatively, at each time point, the ad placement unit 102 whose proportion of assigned requests and/or avails is farthest from a predefined proportion assigned to the ad placement unit 102 is selected. In some embodiments, the router 104 selects the ad placement unit 102 that if selected will move the total average closest to the predefined percentage distribution.
  • In one embodiment, given as an example, router 104 is configured with a desired ratio Rpu for each of the ad placement units 102, where PU designates an identification of the ad placement unit. In addition, router 104 keeps track of the number ADpu of avails delivered to each of the ad placement units 102 and of a total number of avails ADtot delivered to all the ad placement units 102. For each received request, router 104 selects an ad placement unit 102 with:

  • max(R pu −AD pu /AD tot).
  • In other embodiments, in addition to attempting to converge in the long run to the predefined percentage distribution, router 104 chooses corresponding ad placement units 102 for received requests, based on short term efficiency considerations. In some embodiments, for each received client request, router 104 determines for each ad placement unit 102 an efficiency score which indicates a current efficiency of handling the received request by the specific ad placement unit 102. The choosing of the ad placement unit 102 that is to handle a received request is performed at least partially responsive to the efficiency scores of the ad placement units 102.
  • The efficiency score is optionally a function of time. In some embodiments, router 104 manages for each ad placement unit 102 a record which indicates for the ad placement unit 102, the efficiency score for each time interval. For example, a first efficiency score value is assigned for work hours, a second efficiency score value is assigned for night hours and a third value is assigned for weekends and holidays. Alternatively or additionally, router 104 receives from the ad placement units 102 periodic updates on the load, percentage of avails being filled and/or any other efficiency parameters, and accordingly sets their current efficiency score.
  • In some embodiments, the efficiency score for each ad placement unit 102 is a function of a proximity between the client and the ad placement unit 102. In other embodiments, the efficiency score is a function of the current average revenue received by the ad placement unit 102 for placing advertisements in avails. Giving short term preference to an ad placement unit 102 currently achieving a high revenue per avail could increase the overall income of all the ad placement units 102. Alternatively or additionally, the efficiency score is a function of an average response time between receiving a request by the ad placement unit 102 and returning a manifest with inserted advertisement links. The response time could be indicative of the ease of the ad placement units 102 to fill avails with advertisements. Another parameter which is used in some embodiments in determining the efficiency, is advertisement metadata, such as advertisement type. Some types of advertisements are less preferred and therefore are indicative of low efficiency of the ad placement units 102 that use them.
  • In some embodiments, router 104 receives rules on types of ads that are to be preferred or avoided by specific clients and/or video content. In addition, router 104 monitors the types of ads currently provided by each of ad placement units 102, and accordingly assigns efficiency scores to the ad placement units 102.
  • Router 104 optionally chooses the ad placement unit 102 with the highest efficiency score to handle a received request, provided that the difference (Rpu−ADpu)/ADtot is not greater than a predetermined threshold. Alternatively, the ad placement unit 102 to handle each received request is selected using a function which takes both the efficiency score and the difference from the predefined ratio into account. In some embodiments, the selection of the ad placement unit 102 depends at least partially on user information about the user from which the request was received. Optionally, the data about the user is received from the user with the request. Alternatively or additionally, the data about the user is received from a data management platform 124. Alternatively, router 104 comprises a database (DB) 116 in which information about previous requests of users and/or clients is collected. When a request of a user is received, database 116 is consulted to retrieve information about the client and/or user from which the request was received and accordingly the ad placement unit 102 to receive the request is selected.
  • The user information used by router 104 in choosing an ad placement unit 102, includes, in some embodiments, demographic information, such as age, gender, education, profession and/or income level. Optionally, the user information comprises location information indicating the user's residence (e.g., postal code) and/or current location. Alternatively or additionally, the user information comprises information on shopping habits of the user and/or on purchase agreements for given periods, which are coming up for renewal. Such purchase agreements may relate, for example, to insurance, car lease and/or service agreements.
  • In some embodiments, the splitting of the requests between the ad placement units 102 is designed such that different requests from the same user and/or client are sent to different ad placement units 102, such that over time the client will be exposed to the advertisement pools of all the ad placement units 102. For example, when the requested video content is a live video stream (e.g., television channel), each manifest supplied to the client generally covers a short segment of the requested video content and the client repeatedly sends requests for further segments of the video content. Probe 104 optionally forwards requests relating to the same video stream to ad placement units 102 without relation to the fact that the requests relate to the same video stream. Alternatively, probe 104 gives preference to passing manifests belonging to the same video stream to different ad placement units 102. In other embodiments, however, requests for manifests relating to the same video content are transferred to the same ad placement unit 102, or preference is given to passing the requests to the same ad placement unit 102.
  • In some cases, different ad placement units 102 expect to receive client requests in different formats, or are more efficient when client requests are received in a specific preferred format of that specific ad placement unit 102. The different formats optionally differ in the metadata they expect to receive with the requests or in the format of the metadata they expect to receive.
  • In some embodiments, after choosing the ad placement unit 102 to receive a specific request, router 104 converts the specific request into the corresponding format of the chosen ad placement unit 102. The conversion may include addition of information to the request or removal of information from the request. Alternatively or additionally, the conversion includes modification of information in the request into a different format. For example, some ad placement units 102 expect to receive location information of the client in the format zip=ZIPCODE, while others expect the format location=ZIPCODE. Router 104 is optionally configured with the format required by each ad placement unit 102 and converts client requests to the required format.
  • Each of the ad placement units 102 optionally selects the advertisements to be placed in the avails according to its own rules, generally unrelated to the rules used by the other ad placement units 102. The different ad placement units 102 optionally select the advertisements from different advertisement pools and/or based on different business relationships. Optionally, different ad placement units 102 use different ad-sales strategies in selecting the advertisements. In some embodiments, the different ad placement units 102 use different metadata regarding the viewers in selecting the advertisements to insert to avails. The metadata may include, for example, age, gender and/or location. In some embodiments different ad placement units 102 use different metadata parameters. Optionally, different ad placement units 102 use different geographical granularities in selecting advertisements. For example, a first ad placement unit 102 may have different advertisement rules for different states, such that all clients from the same state generally receive the same advertisements, while a second ad placement unit 102 selects different advertisements for different cities or for different postal codes.
  • For example, one ad placement unit 102 may select advertisements based on location of the viewers, while another ad placement unit 102 may select advertisements based on demographic data associated with the viewers of a particular program. For example, the ad placement unit 102 may select for a specific video program known to attract young males, advertisements directed to 18-34 year old males.
  • It will be appreciated that the embodiments described above are cited by way of example, and that the present invention is not limited to what has been particularly shown and described hereinabove. Rather, the scope of the present invention includes both combinations and subcombinations of the various features described hereinabove, as well as variations and modifications thereof which would occur to persons skilled in the art upon reading the foregoing description and which are not disclosed in the prior art.

Claims (19)

1. A method of providing a video manifest to a client, comprising:
managing, by a router, for each of a plurality of ad placement units, a numerical measure of advertisement avails provided by the router to the ad placement unit for filling with advertisements;
receiving, at the router, a client request for a video content;
choosing, by the router, an ad placement unit from the plurality of ad placement units, to select advertisements to be placed in avails of the requested video content, at least partially responsive to the managed measures of advertisement avails; and
directing the received client request to the chosen ad placement uni
wherein each of the plurality of ad placement units is assigned a predefined proportion assigned to the ad placement unit and wherein choosing the ad placement unit from the plurality of ad placement units comprises choosing responsive to the managed measures of advertisement avails and the assigned predefined proportions, and
wherein choosing the ad placement unit from the plurality of ad placement units comprises choosing the ad placement unit for which the managed measure is farthest from the assigned predefined proportion.
2. The method of claim 1, wherein managing for each of the plurality of ad placement units, a measure of advertisement avails comprises counting the number of requests directed to each of the ad placement units.
3. The method of claim 1, wherein managing for each of the plurality of ad placement units, a measure of advertisement avails comprises counting the number of avails in the requests directed to each of the ad placement units.
4. The method of claim 1, wherein managing for each of the plurality of ad placement units, a measure of advertisement avails comprises counting the number of avails actually filled by each of the ad placement units.
5. The method of claim 1, wherein directing the received client request to the chosen ad placement unit comprises forwarding the client request from the router to the chosen ad placement unit.
6. The method of claim 1, wherein directing the received client request to the chosen ad placement unit comprises sending to a client from which the client request was received, a redirection instruction to forward the client request to the chosen ad placement unit.
7-8. (canceled)
9. The method of claim 1, wherein choosing the ad placement unit from the plurality of ad placement units comprises choosing responsive to current efficiency scores of the ad placement units.
10. The method of claim 9, wherein the current efficiency scores of the ad placement units are dependent on current income received by the ad placement units for filling avails.
11. The method of claim 9, wherein the current efficiency scores of the ad placement units are dependent on measures of current load on the ad placement units.
12. The method of claim 1, wherein choosing the ad placement unit from the plurality of ad placement units comprises choosing at least partially responsive to information on the user from which the request was received.
13. The method of claim 1, wherein choosing the ad placement unit from the plurality of ad placement units comprises choosing in a manner giving preference to directing requests from a specific client to multiple ad placement units.
14. The method of claim 1, further comprising modifying a format of the received client request, before directing the received client request to the chosen ad placement unit.
15. Apparatus for providing a video manifest to a client, comprising:
at least one interface for communicating with a plurality of clients and a plurality of ad placement units; and
a router configured to manage for each of the plurality of ad placement units, a numerical measure of advertisement avails provided by the router to the ad placement unit for filling with advertisements, to receive requests for video content from the clients, to choose for each received request an ad placement unit from the plurality of ad placement units, to handle the request, at least partially responsive to the managed measures of advertisement avails and to direct the received client request to the chosen ad placement unit
wherein each of the plurality of ad placement units is assigned a predefined proportion assigned to the ad placement unit and wherein the router is configured to choose the ad placement unit from the plurality of ad placement units responsive to the managed measures of advertisement avails and the assigned predefined proportions, and
wherein the router is configured to choose the ad placement unit from the plurality of ad placement units by choosing the ad placement unit for which the managed measure is farthest from the assigned predefined proportion.
16. The apparatus of claim 15, wherein the router is configured to direct the received client request to the chosen ad placement unit by forwarding the client request from the router to the chosen ad placement unit.
17. The apparatus of claim 15, wherein the router is configured to direct the received client request to the chosen ad placement unit by sending to a client from which the client request was received, a redirection instruction to forward the client request to the chosen ad placement unit.
18. The apparatus of claim 15, wherein the router is configured to modify a format of the received client request, so as to match a format expected by the chosen ad placement unit, before directing the received client request to the chosen ad placement unit.
19. The apparatus of claim 15, wherein the router is configured to choose the ad placement unit from the plurality of ad placement units at least partially responsive to information on the user from which the request was received.
20. The apparatus of claim 15, wherein the router is configured to choose the ad placement unit from the plurality of ad placement units in a manner giving preference to directing requests from a specific client to multiple ad placement units.
US16/352,878 2019-03-14 2019-03-14 Campaign router Active US10785514B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/352,878 US10785514B1 (en) 2019-03-14 2019-03-14 Campaign router

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US16/352,878 US10785514B1 (en) 2019-03-14 2019-03-14 Campaign router

Publications (2)

Publication Number Publication Date
US20200296433A1 true US20200296433A1 (en) 2020-09-17
US10785514B1 US10785514B1 (en) 2020-09-22

Family

ID=72422544

Family Applications (1)

Application Number Title Priority Date Filing Date
US16/352,878 Active US10785514B1 (en) 2019-03-14 2019-03-14 Campaign router

Country Status (1)

Country Link
US (1) US10785514B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10999616B1 (en) * 2020-01-17 2021-05-04 Verizon Patent And Licensing Inc. Systems and methods for value-based provision of television content in a hybrid quadrature amplitude modulation (QAM)/internet protocol (IP) content delivery environment

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7653923B2 (en) 2000-02-18 2010-01-26 Prime Research Alliance E, Inc. Scheduling and presenting IPG ads in conjunction with programming ads in a television environment
US20050283796A1 (en) 2000-02-18 2005-12-22 Prime Research Alliance E., Inc. Method and system for addressable and program independent advertising during recorded programs
US20020184047A1 (en) 2001-04-03 2002-12-05 Plotnick Michael A. Universal ad queue
US20100138290A1 (en) 2006-06-12 2010-06-03 Invidi Technologies Corporation System and Method for Auctioning Avails
US20080046924A1 (en) 2006-07-28 2008-02-21 Tandberg Television Inc. System and methods for competitive dynamic selection of digital advertising assets in a video distribution system
US8387086B2 (en) 2009-12-14 2013-02-26 Microsoft Corporation Controlling ad delivery for video on-demand
US8910198B2 (en) 2010-06-02 2014-12-09 Time Warner Cable Enterprises Llc Multicast video advertisement insertion using routing protocols
US8489760B2 (en) 2011-03-31 2013-07-16 Juniper Networks, Inc. Media file storage format and adaptive delivery system
CA2847908A1 (en) 2011-10-13 2013-04-18 Rogers Communications Inc. Systems and methods for real-time advertisement selection and insertion
US20130254041A1 (en) 2012-03-23 2013-09-26 Jeffrey Sherwin Method for delivering fair advertising inventory splits given position preferences
US8799943B1 (en) 2013-05-02 2014-08-05 This Technology, Llc Method and system for efficient manifest manipulation
US20150120464A1 (en) * 2013-10-29 2015-04-30 Cox Communications, Inc. Interconnected platform for providing advertisements
US20150302487A1 (en) * 2014-04-17 2015-10-22 Ericsson Television Inc. Method and arrangement for providing adaptive bitrate-dynamic advertisements
US10506262B2 (en) 2015-12-29 2019-12-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and system for optimized media delivery
US10580455B2 (en) 2016-06-20 2020-03-03 Scripps Networks Interactive, Inc. Non-linear program planner, preparation, and delivery system
US11051056B2 (en) * 2017-12-04 2021-06-29 At&T Intellectual Property I, L.P. Systems and methods to support cross platform addressable advertising

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10999616B1 (en) * 2020-01-17 2021-05-04 Verizon Patent And Licensing Inc. Systems and methods for value-based provision of television content in a hybrid quadrature amplitude modulation (QAM)/internet protocol (IP) content delivery environment
US11368734B2 (en) 2020-01-17 2022-06-21 Verizon Patent And Licensing Inc. Systems and methods for value-based provision of television content in a hybrid quadrature amplitude modulation (QAM)/internet protocol (IP) content delivery environment
US11671639B2 (en) 2020-01-17 2023-06-06 Verizon Patent And Licensing Inc. Systems and methods for value-based provision of television content in a hybrid quadrature amplitude modulation (QAM)/internet protocol (IP) content delivery environment

Also Published As

Publication number Publication date
US10785514B1 (en) 2020-09-22

Similar Documents

Publication Publication Date Title
CA2840827C (en) System and method for advertisement delivery within a video time shifting architecture
JP4191932B2 (en) Media distribution apparatus and media distribution method
US8997142B2 (en) Advertisement insertion decisions for set top box management of advertisements
US9009753B2 (en) Measurement and reporting of set top box inserted AD impressions
US7814519B2 (en) Providing and receiving on-demand assets using a pool of assets containing unavailable assets
US9648359B2 (en) Method and system for advertisement multicast pre-delivery caching
US20060135233A1 (en) System and method for managing advertising content delivery in an on-line gaming environment
WO2000039710A2 (en) Method and system for interactive distribution of messages
US20100228626A1 (en) Content reproduction and content publication methods and clients therefor enabling content user or content publisher to select advertisement inserted in media content
EP2944037A1 (en) System and method for customizing audio advertisements
US20120303764A1 (en) Peer-to-peer system with censorship
US10757462B2 (en) Integrating digital advertising ecosystems into linear TV
US20090070217A1 (en) Targeted Advertisement Transmission and Delivery in a Bandwidth Limited Multicast Wireless System
EP2352292A1 (en) System for managing television channels
US10785514B1 (en) Campaign router
CA2413079A1 (en) Method and system for using a communication network to supply targeted advertising in interactive media
US20210191906A1 (en) Cooperation between cloud-based application and media automation system for content delivery
US20110313916A1 (en) Streamed content distribution service
US11057687B2 (en) Auxiliary information in manifests
US20190394112A1 (en) Auditing of content related events
JP2003122787A (en) System and method for optimizing advertisement distribution
KR102066502B1 (en) Method and system for delivering target advertisement policy
WO2009042304A1 (en) Targeted advertisement transmission and delivery in a bandwidth limited multicast wireless system

Legal Events

Date Code Title Description
AS Assignment

Owner name: WURL INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GUTMAN, RON;FISHER, YUVAL;FOSS, SARAH CHRISTINE;REEL/FRAME:048592/0018

Effective date: 20190226

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE

AS Assignment

Owner name: WURL, LLC, CALIFORNIA

Free format text: MERGER AND CHANGE OF NAME;ASSIGNORS:WURL, INC.;WURL, LLC;REEL/FRAME:065197/0812

Effective date: 20220401

AS Assignment

Owner name: BANK OF AMERICA, N.A., AS COLLATERAL AGENT, TEXAS

Free format text: GRANT OF SECURITY INTEREST IN PATENT RIGHTS;ASSIGNOR:WURL, LLC;REEL/FRAME:065851/0943

Effective date: 20231208

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: M2551); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY

Year of fee payment: 4