IP Library › Granted Patent US 12,615,412
Granted Patent B2
US 12,615,412 · App. 18/774,401 · Granted Apr 28, 2026

Addressable advertisement and programmatically delivered advertisement insertion and playing

Inventors: Aaron S. Hoff (Littleton, CO); Brian J. Smith (Parker, CO)
Assignee: DISH Network L.L.C.
H04N21/44016H04N21/2187H04N21/23424H04N21/2668H04N21/4131H04N21/442H04N21/44204H04N21/4532H04N21/458H04N21/47217H04N21/64322H04N21/812H04N21/8547
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,615,412
App. No.
18/774,401
Granted
Apr 28, 2026
Kind
B2
Abstract

It may occur that various addressable ads are used to help fill an entire addressable break which have little or no monetary value for being played (often referred to as “evergreen or “filler” ads). Such ads and other types of candidate ads for replacement are replaced in real time with programmatically delivered Internet Protocol (IP) based ads (IP ads). Upon encountering an indication of an upcoming ad break including one or more evergreen ads in an addressable ad playlist, an ad request may be automatically transmitted that puts those evergreen ad spots up for bidding by various advertisers, and then such ads may be replaced by IP ads that in total have a duration equaling the duration of the evergreen ads being replaced and that are based on, among other things, a user's or household's receiving device location, a current channel a particular receiving device at that location is tuned to, a particular program that is playing on that channel, a genre of the program, individual user and/or household demographics including, but not limited to: age category, marital status, income range, gender, education level, occupation, and number of people in the household, etc. The selected IP ad(s) are then, in real time, seamlessly inserted or “stitched”, as described herein, into a media content stream comprising or consisting of the television programming (e.g., live linear satellite (SAT) stream) or other media content stream.

Claims (93)

1 . A method in a media presentation system, the method comprising:

electronically receiving, by one or more processors of a receiving device, a cue out presentation time stamp (PTS) indicating a beginning of an upcoming advertising (ad) break when playing media content;

playing a first streaming media source including first portion of the media content until arriving at the cue out PTS during playing of the first streaming media source;

calculating a cue in PTS based on a total ad break duration of the ad break;

saving a first file position in the first streaming media source when crossing over the cue out point corresponding to the cue out point during the playing the first streaming media source;

starting at the cue out PTS, automatically switching from playing the first streaming media source to playing one or more additional streaming media sources in succession until the cue in point PTS, wherein each additional streaming media source content includes a respective ad of a plurality of ads;

for each respective ad of the plurality of ads that is played, automatically reporting an electronic beacon indicating the respective ad was played to indicate an advertisement impression;

during the switching from playing the first streaming media source to playing one or more additional streaming media sources, saving respective additional file positions corresponding to each switch between streaming media sources;

starting at the cue in PTS, automatically switching from playing the one or more additional streaming media sources to a second streaming media source including a second portion of the media content following the cue in PTS;

electronically receiving, by one or more processors of the receiving device, an indication via a private data persistent identifier, indicating an additional upcoming advertisement (ad) break in a linear broadcast television signal as the linear broadcast television signal is being received, wherein the indication includes an additional cue out presentation time stamp (PTS) indicating when the additional ad break will start and a duration of the additional ad break;

determining an entirety of the additional break is uniquely owned and designated only for programmatically delivered Internet Protocol (IP) based ads (IP ads);

parsing metadata and one or more cues in a streaming media source including the linear broadcast television signal to determine ownership of the additional ad break;

determining the ownership matches an ownership identifier (ID) dynamically set in the receiving device;

in response to determining the ownership matches an ownership identifier (ID) dynamically set in the receiving device, electronically transmitting a request for one or more IP ads which have a total duration equal to the duration of the additional ad break;

electronically generating an ad playlist including the one or more requested ads such that a total duration of all ads in the ad playlist equals the duration of the additional ad break;

initiating downloading of the one or more ads in the ad playlist; and

in response to arriving at the additional cue out PTS when playing the linear broadcast television signal, initiating playing downloaded ads according to the ad playlist.

2 . The method of claim 1 , further comprising:

after switching from playing the one or more additional streaming media sources to the second streaming media source including the second portion of the media content following the cue in PTS, receiving a user input indicating to rewind play;

in response to receiving a user input indicating to rewind play, using the saved file positions, rewinding play over the second portion of the media content that was played following the cue in PTS, each respective ad that was played and at least a portion of the first portion of the media content was played before the cue out PTS;

after the rewinding, receiving user input indicating normal play from a point in the first portion of the media content was played; and

in response to receiving the user input indicating normal play, starting the normal play from the point.

3 . The method of claim 2 , further comprising:

using the saved file positions:

playing again the first portion of the media content was played before the cue out PTS, playing again each respective ad that was played, and playing again the second portion of the media content that was played following the cue in PTS; and

for each respective ad of the plurality of ads that is played again, automatically reporting an electronic beacon indicating the respective ad was played again to indicate another advertisement impression for the respective ad.

4 . The method of claim 1 , wherein:

the first streaming media source is for a particular episode of a television series played on-demand via streaming media delivered from a remote server or read from a local digital video recorder (DVR);

the one or more additional streaming media sources played in succession is for one or more respective ads of a plurality of ads to be played automatically between the particular episode of the television series and a next episode in the television series over streaming media; and

the second streaming media source is for the next episode in the television series played automatically via streaming media delivered from a remote server or read from the DVR after the one or more respective ads is played.

5 . The method of claim 1 , wherein the media content is content of a television channel of a linear broadcast satellite television signal currently tuned to and currently being received by the receiving device.

6 . The method of claim 1 , wherein the media content is streaming media delivered from a remote server or read from a local DVR.

7 . The method of claim 1 wherein one or more of the plurality of ads are addressable ads and one or more of the plurality of ads are programmatically delivered Internet Protocol (IP) based ads (IP ads) which were selected to replace one or more candidate ads for replacement that were to be inserted in the media content while it is being played by a particular media player device, and further comprising:

selecting the one or more candidate ads for replacement based on the one or more candidate ads for replacement not being previously selected based on the particular media player device and not being previously selected based on a particular user account associated with the media player device.

8 . The method of claim 1 , wherein the media content is streaming media read from a local DVR, and further comprising:

pacing a rate at which the media content from the DVR is read such that the calculating of the cue in PTS based on the total ad break duration of the upcoming ad break may be performed and acted upon before the cue out PTS is reached when playing the media content.

9 . The method of claim 1 wherein the electronically receiving the cue out PTS indicating a beginning of an upcoming advertising (ad) break when playing media content includes receiving an indication of the PTS in a range of about 5 seconds to about 12 seconds before arriving at the PTS during playing the first streaming media source.

10 . The method of claim 1 wherein each respective ad of the plurality of ads is added to the media content and extends a length of a television program included in the media content to make a service providing the media content including the television program free to a consumer.

11 . The method of claim 10 wherein the television program included in the media content is provided as part of a live linear satellite television broadcast being received by the receiving device and streamed by the receiving device as the first streaming media source.

12 . A media presentation system comprising:

at least one computer processor;

at least one non-transitory memory device coupled to the at least one processor, the at least one non-transitory memory device having computer-executable instructions stored thereon which, when executed by the at least one computer processor, cause operations to be performed, the operations including:

electronically receiving, by one or more processors of a receiving device, a cue out presentation time stamp (PTS) indicating a beginning of an upcoming advertising (ad) break when playing media content;

playing a first streaming media source including first portion of the media content until arriving at the cue out PTS during playing of the first streaming media source;

calculating a cue in PTS based on a total ad break duration of the ad break;

saving a first file position in the first streaming media source when crossing over the cue out point corresponding to the cue out point during the playing the first streaming media source;

starting at the cue out PTS, automatically switching from playing the first streaming media source to playing one or more additional streaming media sources in succession until the cue in point PTS, wherein each additional streaming media source content includes a respective ad of a plurality of ads;

for each respective ad of the plurality of ads that is played, automatically reporting an electronic beacon indicating the respective ad was played to indicate an advertisement impression;

during the switching from playing the first streaming media source to playing one or more additional streaming media sources, saving respective additional file positions corresponding to each switch between streaming media sources;

starting at the cue in PTS, automatically switching from playing the one or more additional streaming media sources to a second streaming media source including a second portion of the media content following the cue in PTS;

electronically receiving, by one or more processors of the receiving device, an indication via a private data persistent identifier, indicating an additional upcoming advertisement (ad) break in a linear broadcast television signal as the linear broadcast television signal is being received, wherein the indication includes an additional cue out presentation time stamp (PTS) indicating when the additional ad break will start and a duration of the additional ad break;

determining an entirety of the additional break is uniquely owned and designated only for programmatically delivered Internet Protocol (IP) based ads (IP ads);

parsing metadata and one or more cues in a streaming media source including the linear broadcast television signal to determine ownership of the additional ad break;

determining the ownership matches an ownership identifier (ID) dynamically set in the receiving device;

in response to determining the ownership matches an ownership identifier (ID) dynamically set in the receiving device, electronically transmitting a request for one or more IP ads which have a total duration equal to the duration of the additional ad break;

electronically generating an ad playlist including the one or more requested ads such that a total duration of all ads in the ad playlist equals the duration of the additional ad break;

initiating downloading of the one or more ads in the ad playlist; and

in response to arriving at the additional cue out PTS when playing the linear broadcast television signal, initiating playing downloaded ads according to the ad playlist.

13 . The system of claim 12 , wherein the operations further comprise:

after switching from playing the one or more additional streaming media sources to the second streaming media source including the second portion of the media content following the cue in PTS, receiving a user input indicating to rewind play;

in response to receiving a user input indicating to rewind play, using the saved file positions, rewinding play over the second portion of the media content that was played following the cue in PTS, each respective ad that was played and at least a portion of the first portion of the media content was played before the cue out PTS;

after the rewinding, receiving user input indicating normal play from a point in the first portion of the media content was played; and

in response to receiving the user input indicating normal play, starting the normal play from the point.

14 . The system of claim 13 , wherein the operations further comprise:

using the saved file positions:

playing again the first portion of the media content was played before the cue out PTS, playing again each respective ad that was played, and playing again the second portion of the media content that was played following the cue in PTS; and

for each respective ad of the plurality of ads that is played again, automatically reporting an electronic beacon indicating the respective ad was played again to indicate another advertisement impression for the respective ad.

15 . A non-transitory computer-readable storage medium having computer-executable instructions stored thereon which, when executed by at least one computer processor, cause operations to be performed, the operations including:

electronically receiving, by one or more processors of a receiving device, a cue out presentation time stamp (PTS) indicating a beginning of an upcoming advertising (ad) break when playing media content;

playing a first streaming media source including first portion of the media content until arriving at the cue out PTS during playing of the first streaming media source;

calculating a cue in PTS based on a total ad break duration of the ad break;

saving a first file position in the first streaming media source when crossing over the cue out point corresponding to the cue out point during the playing the first streaming media source;

starting at the cue out PTS, automatically switching from playing the first streaming media source to playing one or more additional streaming media sources in succession until the cue in point PTS, wherein each additional streaming media source content includes a respective ad of a plurality of ads;

for each respective ad of the plurality of ads that is played, automatically reporting an electronic beacon indicating the respective ad was played to indicate an advertisement impression;

during the switching from playing the first streaming media source to playing one or more additional streaming media sources, saving respective additional file positions corresponding to each switch between streaming media sources;

starting at the cue in PTS, automatically switching from playing the one or more additional streaming media sources to a second streaming media source including a second portion of the media content following the cue in PTS;

electronically receiving, by one or more processors of the receiving device, an indication via a private data persistent identifier, indicating an additional upcoming advertisement (ad) break in a linear broadcast television signal as the linear broadcast television signal is being received, wherein the indication includes an additional cue out presentation time stamp (PTS) indicating when the additional ad break will start and a duration of the additional ad break;

determining an entirety of the additional break is uniquely owned and designated only for programmatically delivered Internet Protocol (IP) based ads (IP ads);

parsing metadata and one or more cues in a streaming media source including the linear broadcast television signal to determine ownership of the additional ad break;

determining the ownership matches an ownership identifier (ID) dynamically set in the receiving device;

in response to determining the ownership matches an ownership identifier (ID) dynamically set in the receiving device, electronically transmitting a request for one or more IP ads which have a total duration equal to the duration of the additional ad break;

electronically generating an ad playlist including the one or more requested ads such that a total duration of all ads in the ad playlist equals the duration of the additional ad break;

initiating downloading of the one or more ads in the ad playlist; and

in response to arriving at the additional cue out PTS when playing the linear broadcast television signal, initiating playing downloaded ads according to the ad playlist.

16 . The non-transitory computer-readable storage medium of claim 15 , wherein the operations further comprise:

after switching from playing the one or more additional streaming media sources to the second streaming media source including the second portion of the media content following the cue in PTS, receiving a user input indicating to rewind play;

in response to receiving a user input indicating to rewind play, using the saved file positions, rewinding play over the second portion of the media content that was played following the cue in PTS, each respective ad that was played and at least a portion of the first portion of the media content was played before the cue out PTS;

after the rewinding, receiving user input indicating normal play from a point in the first portion of the media content was played; and

in response to receiving the user input indicating normal play, starting the normal play from the point.

17 . The non-transitory computer-readable storage medium of claim 16 , wherein the operations further comprise:

using the saved file positions:

playing again the first portion of the media content was played before the cue out PTS, playing again each respective ad that was played, and playing again the second portion of the media content that was played following the cue in PTS; and

for each respective ad of the plurality of ads that is played again, automatically reporting an electronic beacon indicating the respective ad was played again to indicate another advertisement impression for the respective ad.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 16, 2024
From: HOFF, AARON S.; SMITH, BRIAN J.
To: DISH NETWORK L.L.C.
Reel/Frame 068001/0356 →
Continuity (2)
Provisional Application 63538620 · Sep 15, 2023
Related Publication 20250097499A1 · Mar 20, 2025
References Cited (106)
US 7631331B2 · Sie et al. · 2009 [cited by applicant]
US 7930716B2 · Liga · 2011 [cited by examiner]
US 8352981B1 · Oztaskent · 2013 [cited by applicant]
US 8468056B1 · Chalawsky · 2013 [cited by applicant]
US 8516119B2 · Banger et al. · 2013 [cited by applicant]
US 8799943B1 · Sherwin et al. · 2014 [cited by applicant]
US 9066138B1 · Kraiman et al. · 2015 [cited by applicant]
US 9510025B1 · Einarsson et al. · 2016 [cited by applicant]
US 9521437B2 · Sellers · 2016 [cited by examiner]
US 9661380B2 · Major et al. · 2017 [cited by applicant]
US 9848249B2 · Freed et al. · 2017 [cited by applicant]
US 10904639B1 · Benson · 2021 [cited by examiner]
US 10945048B2 · Major et al. · 2021 [cited by applicant]
US 11172269B2 · Major · 2021 [cited by applicant]
US 11178469B2 · Major · 2021 [cited by applicant]
US 11641579B1 · Mukherjee et al. · 2023 [cited by applicant]
US 11659259B1 · Pressnell et al. · 2023 [cited by applicant]
US 11871050B1 · Koceski et al. · 2024 [cited by applicant]
US 20040128682A1 · Liga · 2004 [cited by examiner]
US 20040189873A1 · Konig et al. · 2004 [cited by applicant]
US 20050204381A1 · Ludvig · 2005 [cited by examiner]
US 20060253864A1 · Easty · 2006 [cited by applicant]
US 20070157228A1 · Bayer · 2007 [cited by examiner]
US 20070219859A1 · Huntington · 2007 [cited by applicant]
US 20080132226A1 · Carnall · 2008 [cited by applicant]
US 20090025026A1 · Mick, Jr. · 2009 [cited by examiner]
US 20090077580A1 · Konig et al. · 2009 [cited by applicant]
US 20090304358A1 · Rashkovskiy et al. · 2009 [cited by applicant]
US 20100014594A1 · Beheydt et al. · 2010 [cited by applicant]
US 20100083305A1 · Acharya et al. · 2010 [cited by applicant]
US 20100269128A1 · Gordon · 2010 [cited by applicant]
US 20100325657A1 · Sellers · 2010 [cited by examiner]
US 20110194838A1 · Meijer · 2011 [cited by applicant]
US 20110197224A1 · Meijer · 2011 [cited by applicant]
US 20110296458A1 · Di et al. · 2011 [cited by applicant]
US 20120099022A1 · Sundy et al. · 2012 [cited by applicant]
US 20120124618A1 · Ruiz-Velasco et al. · 2012 [cited by applicant]
US 20120166289A1 · Gadoury et al. · 2012 [cited by applicant]
US 20120192222A1 · Kumar et al. · 2012 [cited by applicant]
US 20130086631A1 · Archer et al. · 2013 [cited by applicant]
US 20130238745A1 · Ramachandran et al. · 2013 [cited by applicant]
US 20130262404A1 · Daga et al. · 2013 [cited by applicant]
US 20140020013A1 · Dilorenzo · 2014 [cited by applicant]
US 20140082659A1 · Fife · 2014 [cited by examiner]
US 20140115631A1 · Mak · 2014 [cited by applicant]
US 20140150019A1 · Ma et al. · 2014 [cited by applicant]
US 20140342776A1 · Viswanadham et al. · 2014 [cited by applicant]
US 20150032547A1 · Malhotra · 2015 [cited by applicant]
US 20150302487A1 · Reynolds · 2015 [cited by applicant]
US 20150319479A1 · Mishra · 2015 [cited by examiner]
US 20150339634A1 · Xiao et al. · 2015 [cited by applicant]
US 20150339722A1 · Hensgen et al. · 2015 [cited by applicant]
US 20150349824A1 · Cho et al. · 2015 [cited by applicant]
US 20160149605A1 · Vecera et al. · 2016 [cited by applicant]
US 20160316233A1 · Ghadi et al. · 2016 [cited by applicant]
US 20170048566A1 · Srinivasan · 2017 [cited by applicant]
US 20170048773A1 · Miao et al. · 2017 [cited by applicant]
US 20170078715A1 · Chao · 2017 [cited by examiner]
US 20170094370A1 · Jankowski · 2017 [cited by examiner]
US 20170188115A1 · Bafekr · 2017 [cited by applicant]
US 20170208369A1 · Major et al. · 2017 [cited by applicant]
US 20170264951A1 · Mitra et al. · 2017 [cited by applicant]
US 20180084504A1 · Lindoff et al. · 2018 [cited by applicant]
US 20180167853A1 · Wang · 2018 [cited by applicant]
US 20180189276A1 · Fonseca, Jr. et al. · 2018 [cited by applicant]
US 20180359540A1 · Major · 2018 [cited by applicant]
US 20190132630A1 · Loheide · 2019 [cited by examiner]
US 20190200065A1 · Haberman et al. · 2019 [cited by applicant]
US 20190313135A1 · Pathak et al. · 2019 [cited by applicant]
US 20200100097A1 · Zheng et al. · 2020 [cited by applicant]
US 20200186862A1 · Garner · 2020 [cited by examiner]
US 20200213673A1 · Major et al. · 2020 [cited by applicant]
US 20210174715A1 · Holloway et al. · 2021 [cited by applicant]
US 20210195392A1 · Kojima et al. · 2021 [cited by applicant]
US 20210250430A1 · Moon · 2021 [cited by applicant]
US 20210281924A1 · Karuppiah · 2021 [cited by examiner]
US 20220022014A1 · Li et al. · 2022 [cited by applicant]
US 20220053607A1 · Rice et al. · 2022 [cited by applicant]
US 20220078514A1 · Bustamante et al. · 2022 [cited by applicant]
US 20220086532A1 · Major · 2022 [cited by applicant]
US 20220182688A1 · Sharma et al. · 2022 [cited by applicant]
US 20220256237A1 · Grover · 2022 [cited by examiner]
US 20220286839A1 · Zhao et al. · 2022 [cited by applicant]
US 20220295343A1 · Pefkianakis et al. · 2022 [cited by applicant]
US 20220321931A1 · Panje · 2022 [cited by examiner]
US 20220368441A1 · Lee · 2022 [cited by applicant]
US 20230107904A1 · Wang et al. · 2023 [cited by applicant]
US 20240098504A1 · Demonget et al. · 2024 [cited by applicant]
US 20240188067A1 · Zhang et al. · 2024 [cited by applicant]
US 20240370903A1 · Ditullio et al. · 2024 [cited by applicant]
US 20240373078A1 · Offeman et al. · 2024 [cited by applicant]
US 20240406469A1 · Millar et al. · 2024 [cited by applicant]
US 20250324137A1 · Baek et al. · 2025 [cited by applicant]
CN 111970686A · 2020 [cited by applicant]
EP 3840439A2 · 2021 [cited by applicant]
WO 2021051219A1 · 2021 [cited by applicant]
WO 2022092805A1 · 2022 [cited by applicant]
WO 2022124679A1 · 2022 [cited by applicant]
Dyoniziak et al., “Detecting Content of Interest in Streaming Media, ” U.S. Appl. No. 17/827,211, filed May 27, 2022. (36 Pages). [cited by applicant]
Nemalipuri et al., “Advertisement Caching for Targeted Delivery,” U.S. Appl. No. 18/488,726, filed on Oct. 17, 2023. (23 pages). [cited by applicant]
Nemalipuri, “Prefetching Advertisements for Streaming Delivery,” U.S. Appl. No. 18/449,976, filed on Aug. 15, 2023. (22 pages). [cited by applicant]
GSMA, “Requirements for Multi SIM Devices,” Version 8.0, 3GPP Draft, Mobile Competence Centre (Jul. 1, 2021). [cited by applicant]
International Search Report and Written Opinion of the International Searching Authority (EPO) issued in PCT Application No. PCT/US2023/074581 on Nov. 29, 2023. [cited by applicant]
International Search Report and Written Opinion received for PCT Patent Application No. PCT/US23/74585, mailed on Mar. 12, 2024, 18 pages. [cited by applicant]
Partial International Search Results Communication issued by the European Patent Office as the International Searching Authority in PCT Application No. PCT/US2023/074585 on Jan. 17, 2024. [cited by applicant]
International Search Report and Written Opinion received for PCT Patent Application No. PCT/US24/46589, mailed on Oct. 24, 2024, 14 pages. [cited by applicant]