IP Library Granted Patent US 11,991,489
Granted Patent B2
US 11,991,489 · App. 17/818,946 · Granted May 21, 2024

Commercials on mobile devices

Inventors: Adam L. Berger (Pittsburgh, PA); Joshua Pressnell (Spring Valley, OH); Richard David Jackson (Parana, BR)
Assignee: PENTHERA PARTNERS, INC.
H04N9/8205G06Q30/0261G06Q30/0264G06Q30/0267G06Q30/0269G11B27/10H04N5/76H04N5/92H04N5/93
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 11,991,489
App. No.
17/818,946
Granted
May 21, 2024
Kind
B2
Abstract

A method including: detecting a request for a first part of a video; detecting a request for a second part of the video, wherein the video has a video timeline and the second part of the video immediately follows the first part of the video in the video timeline; after detecting the request for the first part of the video and prior to detecting the request for the second part of the video, transmitting a request for a third part of the video, wherein the third part of the video follows the second part of the video in the video timeline; receiving the requested third part of the video; and storing the received third part of the video.

Claims (116)

1. A method performed by an end-user device, the method comprising:

storing on the end-user device media content for playback to a user;

storing on the end-user device a first set of one or more advertisements;

after storing the first set of advertisements, detecting an advertising refresh triggering event;

in response to detecting the advertising refresh triggering event, initiating a download of a second set of one or more advertisements;

after initiating the download, receiving the second set of advertisements and storing the second set of advertisements on the end-user device;

after storing the second set of advertisements, receiving a request to play the media content;

after receiving the request to play the media content, obtaining an advertisement from a set of available advertisements, wherein the set of available advertisement comprises advertisements from the second set of advertisements; and

after obtaining the advertisement, playing the advertisement.

2. The method of claim 1 , wherein

each advertisement in the set of available advertisements is associated with metadata for the advertisement, and

the step of obtaining an advertisement from a set of available advertisements comprises choosing an advertisement from among the set of available advertisements based on the metadata associated with the advertisement.

3. The method of claim 1 , wherein detecting the advertising refresh triggering event comprises:

determining that at least a certain amount of time has passed since the first set of advertisement was obtained;

determining that at least a threshold portion or number of the advertisements included in the first set of advertisements have become unsuitable;

determining that the size of the set of available advertisements has fallen below a threshold size;

detecting a change of location of the end-user device; and/or

receiving a refresh request from a remote computer.

4. The method of claim 1 , further comprising, after receiving the request to play the media content determining whether the total number of advertisements included in the set of available advertisements exceeds a threshold.

5. The method of claim 4 , wherein, if the total number of advertisements included in the set of available advertisements does not exceed the threshold, then providing an indication that the media content cannot be played at this time.

6. The method of claim 4 , wherein the threshold is determined based on i) a duration of the media content and/or ii) a number of ad insertion points for the media content.

7. The method of claim 1 , further comprising forming the set of available advertisements, wherein forming the set of available advertisements comprises:

determining whether a first advertisement satisfies one or more criteria; and

adding the first advertisement to the set of available advertisements as a result of determining that the first advertisement satisfies the one or more criteria, wherein determining whether the first advertisement satisfies the one or more criteria comprises:

determining whether the end-user device is located within a specific area identified by metadata associated with the first advertisement;

determining whether the first advertisement has been played less than a threshold number of times;

determining, based on a use-by date associated with the first advertisement, whether the first advertisement has expired; and/or

determining, based on the amount of time that has elapsed since the first advertisement was stored on the end-user device, whether the first advertisement has expired.

8. The method of claim 1 , further comprising:

determining that an advertisement included in the first set of advertisements is an expired advertisement and, as a result of determining that the advertisement is an expired advertisement, deleting the expired advertisement, or

determining that the advertisement included in the first set of advertisements is an unexpired advertisement and, as a result of determining that the advertisement is an unexpired advertisement, adding the unexpired advertisement to the set of available advertisements.

9. The method of claim 1 , wherein

the advertisement was played during a time when the end-user device was unable to communicate with an ad tracking server, and

the method further comprises:

storing an ad beacon related to the playing of the advertisement; and

at a later point in time, transmitting the ad beacon to the ad tracking server.

10. The method of claim 1 , wherein the ad beacon comprises an ad identifier for identifying the advertisement.

11. The method of claim 10 , wherein the ad beacon further comprises:

a media content identifier for identifying the media content, and/or

a timestamp indicating the time at which the advertisement was played.

12. A device, the device comprising:

a storage unit;

processing circuitry; and

memory coupled to the processing circuitry, wherein the memory stores a computer program executable by the processing circuitry for configuring the device to perform a process comprising:

storing in the storage unit a media content for playback to a user;

storing in the storage unit a first set of one or more advertisements;

after storing the first set of advertisements, detecting an advertising refresh triggering event;

in response to detecting the advertising refresh triggering event, initiating a download of a second set of one or more advertisements;

after initiating the download, receiving the second set of advertisements and storing the second set of advertisements in the storage unit;

after storing the second set of advertisements, receiving a request to play the media content;

after receiving the request to play the media content, obtaining an advertisement from a set of available advertisements, wherein the set of available advertisement comprises advertisements from the second set of advertisements; and

after obtaining the advertisement, playing the advertisement.

13. The device of claim 12 , wherein

each advertisement in the set of available advertisements is associated with metadata for the advertisement, and

the step of obtaining an advertisement from a set of available advertisements comprises choosing an advertisement from among the set of available advertisements based on the metadata associated with the advertisement.

14. The device of claim 12 , wherein detecting the advertising refresh triggering event comprises:

determining that at least a certain amount of time has passed since the first set of advertisement was obtained;

determining that at least a threshold portion or number of the advertisements included in the first set of advertisements have become unsuitable;

determining that the size of the set of available advertisements has fallen below a threshold size;

detecting a change of location of the end-user device; and/or

receiving a refresh request from a remote computer.

15. The device of claim 12 , wherein the process further comprises, after receiving the request to play the media content determining whether the total number of advertisements included in the set of available advertisements exceeds a threshold.

16. The device of claim 15 , wherein, if the total number of advertisements included in the set of available advertisements does not exceed the threshold, then the device is configured to provide an indication that the media content cannot be played at this time.

17. The device of claim 15 , wherein the threshold is determined based on i) a duration of the media content and/or ii) a number of ad insertion points for the media content.

18. The device of claim 12 , wherein the process further comprises forming the set of available advertisements, wherein forming the set of available advertisements comprises:

determining whether a first advertisement satisfies one or more criteria; and

adding the first advertisement to the set of available advertisements as a result of determining that the first advertisement satisfies the one or more criteria, wherein determining whether the first advertisement satisfies the one or more criteria comprises:

determining whether the end-user device is located within a specific area identified by metadata associated with the first advertisement;

determining whether the first advertisement has been played less than a threshold number of times;

determining, based on a use-by date associated with the first advertisement, whether the first advertisement has expired; and/or

determining, based on the amount of time that has elapsed since the first advertisement was stored on the end-user device, whether the first advertisement has expired.

19. The device of claim 12 , wherein the process further comprises:

determining that an advertisement included in the first set of advertisements is an expired advertisement and, as a result of determining that the advertisement is an expired advertisement, deleting the expired advertisement, or

determining that the advertisement included in the first set of advertisements is an unexpired advertisement and, as a result of determining that the advertisement is an unexpired advertisement, adding the unexpired advertisement to the set of available advertisements.

20. The device of claim 12 , wherein

the advertisement was played during a time when the end-user device was unable to communicate with an ad tracking server,

the method further comprises:

storing an ad beacon related to the playing of the advertisement, the ad beacon comprising i) an ad identifier for identifying the advertisement and ii) a media content identifier for identifying the media content and/or a timestamp indicating a time at which the advertisement was played; and

at a later point in time, transmitting the ad beacon to the ad tracking server.

21. The method of claim 1 , wherein the media content comprises encoded audio content.

22. The method of claim 1 , wherein the media content is a video comprising encoded audio content.

23. A method for playing media content from a local storage unit of a player device, the method comprising:

storing the media content on the local storage unit of the player device;

storing a default set of ads on the local storage unit of the player device;

after storing the media content and the default set of ads, detecting a request to play the media content; and

in response to detecting the request to play the media content:

performing a process for obtaining from a remote server a set of ad URLs, and

initiating playing the media content from the local storage unit.

24. The method of claim 23 , wherein detecting the request to play the media content comprises detecting that a user has activated a play button associated with the media content.

25. The method of claim 23 , wherein

the process for Obtaining the set of ad URLs comprises transmitting a request to the remote server and receiving from the remote server a response responsive to the request,

the response comprises the set of ad URLs, and each ad URL identifies an ad file stored at a content server remote from the player device, and

the step of initiating the playing of the media content from the local storage unit is performed after receiving the response from the remote server.

26. The method of claim 25 , wherein the method further comprises:

using the set of ad URLs to get the ad files from the content server; and

after getting the ad files from the content server, storing the ad files in the local storage unit.

27. The method of claim 26 , wherein the method further comprises playing the ad files from the local storage unit.

28. The method of claim 25 , wherein

the method further comprises using the set of ad URLs to get the ad files from the content server, and

the step of initiating the playing of the media content from the local storage unit is performed after using the set of ad URLs to get the ad files from the content server.

29. The method of claim 25 , wherein

the method further comprises using the set of ad URLs to get the ad files from the content server, and

the method further comprises playing the ad files before playing the media content from the local storage unit.

30. The method of claim 25 , wherein the method further comprises playing the ad files from the content server.

31. The method of claim 30 , wherein the ad files are played before playing the media content from the local storage unit.

32. The method of claim 23 , wherein the process comprises:

determining whether the player device has network connectivity; and

in response to determining that the player device has network connectivity, transmitting an ad request to the remote server.

33. The method of claim 32 , wherein

the process further comprises receiving an ad response message responsive to the request, the ad response message comprising the set of ad URLs, and

the method further comprises using the set of ad URLs to get from an ad server one or more ads or a plurality of ad segments.

34. The method of claim 33 , wherein

each ad URL in the set of ad URLs identifies an ad segment, and

the method comprises using the set of ad URLs to get the ad segments from the ad server.

35. The method of claim 33 , wherein

each ad URL in the set of ad URLs identifies a media file containing media data for an ad.

Continuity (10)
Continuation 17348443 · Jun 15, 2021
Continuation 16816532 · Mar 12, 2020
Continuation 15963954 · Apr 26, 2018
Continuation 15457351 · Mar 13, 2017
Continuation 14504360 · Oct 1, 2014
Continuation 14243971 · Apr 3, 2014
Continuation 14016963 · Sep 3, 2013
Continuation 14243937 · Apr 3, 2014
Continuation 14016963 · Sep 3, 2013
Related Publication 20230075732A1 · Mar 9, 2023