USRE47612EActiveUtility
Adaptive ads with advertising markers
Est. expiryOct 7, 2031(~5.2 yrs left)· nominal 20-yr term from priority
H04N 21/26258H04N 21/4825H04N 21/2668H04N 21/23424H04L 65/60H04N 21/8456H04N 21/812G06Q 30/02H04L 65/4084H04L 65/612
71
PatentIndex Score
1
Cited by
17
References
27
Claims
Abstract
A streaming server and a method are described herein for providing a content stream with advertisements embedded therein through a network (e.g., IP network, CDN network, wireless network) to a client (e.g., personal computer, a mobile phone, a tablet, or a HTTP capable television).
Claims
exact text as granted — not AI-modifiedThe invention claimed is:
1. A streaming server for providing a content stream with advertisements embedded therein through a network to a client, the streaming server comprising system for providing a content stream to a client via a network, the system comprising at least one processor programmed to execute instructions stored in memory, whereby the system is configured to:
a server comprising an input interface programmed toreceive a request from the client to play the content stream;
a segmenting unit programmed to (i) receive the content stream which may or may not contain advertising markers embedded therein and (ii);
segment the content stream into a plurality of content stream segments where the advertising markers when present remain in the content stream segments, wherein the advertising markers indicate where advertisements are to be placed in the content stream; and
the server further comprising:
a processing unit programmed to determine if the content stream segments contain advertising markers embedded therein; wherein
(a) when the content stream segments are determined not to contain advertising markers the processing unit is programmed to the system is configured to build a content manifest based on the content stream segments not containing advertising markers;
(b) when the content stream segments are determined to contain advertising markers the processing unit is programmed to the system is configured to:
(i) determine if the client has demographic information stored in a database;
(ii) review the content stream segments to identify the advertising markers;
(iii) identify the advertisements to be associated with the advertising markers based at least in part on the stored demographic information if any;
(iv) adjust time codes of references to the content stream segments and the advertisements so they are consecutive time codes; and
(v) generate a content-advertisement manifest that includes the references of each of the content stream segments and the advertisements; and
an output interface programmed tothe system further configured to (i) send the content manifest to the client when the content stream segments are determined not to contain advertising markers embedded therein and (ii) send the content-advertisement manifest to the client when the content stream segments are determined to contain advertising markers embedded therein.
2. The streaming server of claim 1 system of claim 26, wherein the content stream segments contain video packets and audio packets which have matching time codes, and the system is further configured to match the timing of the video packets and the audio packets based on the matching time codes.
3. The streaming server of claim 1 , wherein the segmenting unit receives the content stream as a multi-program transport stream format then the segmenting unit is programmed to system of claim 26, wherein the system is further configured to extrapolate the a multi-program transport stream format of the content stream into multiple single-program stream formats in which each single-program stream format is segmented into a plurality of content stream segments.
4. The streaming server of claim 1 , wherein the segmenting unit receives system of claim 26, wherein the content stream as comprises a video-on-demand stream, a broadcast live stream, a broadcast linear stream, or a time shifted-startover stream.
5. The streaming server of claim 1 system of claim 26, wherein the processing unit interfaces system is further configured to interface with an advertisement decision management system to identify the advertisements.
6. The streaming server system of claim 5 , wherein the processing unit uses the system is further configured to use a Society of Cable Telecommunications Engineers (SCTE) 130 to interface with the advertisement decision management system to identify the advertisements.
7. The streaming server of claim 5 , wherein the advertisements are selected based on information associated with the client system of claim 26, wherein the system is configured to obtain the demographic information associated with the client from a database and the demographic information associated with the client indicates one or more of a user's age, gender, income, hobbies, interests, pets, children, food preferences, or employment.
8. The streaming server of claim 7 system of claim 26, wherein the information includes at least one of demographic information and advertisements to be included in the manifest are determined based at least in part on location information associated with the client.
9. The streaming server of claim 1 system of claim 26, wherein the advertising markers are Society of Cable Telecommunications Engineers (SCTE) 35s, or Avail Markers identified in Extensible Markup Language (XML).
10. The streaming server of claim 1 system of claim 26, wherein the client is one of a personal computer, a mobile phone, a tablet, or a Hypertext Transfer Protocol (HTTP) capable television.
11. The streaming server of claim 1 system of claim 26, wherein the advertising markers are located at boundaries between the segments.
12. A method implemented by a streaming server for providing a content stream with advertisements embedded therein through a network to a client, the method comprising the steps of:
receiving, by the streaming server, a request from the client to play the content stream;
receiving, by the streaming server, the content stream which may or may not contain advertising markers embedded therein;
segmenting, by the streaming server, the content stream into a plurality of content stream segments where the advertising markers when present remain in the content stream segments, wherein the advertising markers indicate where advertisements are to be placed in the content stream;
determining, by the streaming server, if the content stream segments contain advertising markers embedded therein;
(a) when the content stream segments are determined not to contain advertising markers building by the streaming server a content manifest based on the content stream segments not containing advertising markers;
(b) when the content stream segments are determined to contain advertising markers the streaming server performs the following steps:
(i) determining if the client has demographic information stored in a database;
(ii) reviewing the content stream segments to identify the advertising markers;
(iii) identifying the advertisements to be associated with the advertising markers based at least in part on the stored demographic information if any;
(iv) adjusting time codes of references to the content stream segments and the advertisements so they are consecutive time codes; and
(v) generating a content-advertisement manifest that includes the references of each of the content stream segments and the advertisements; and
sending, by the streaming server, the content manifest to the client when the content stream segments are determined not to contain advertising markers embedded therein or sending, by the streaming server, the content-advertisement manifest to the client when the content stream segments are determined to contain advertising markers embedded therein.
13. The method of claim 12 27, wherein the content stream segments contain video packets and audio packets which have matching time codes, and wherein the method further comprises matching the timing of the video packets and the audio packets based on the matching time codes.
14. The method of claim 12 27, wherein if the content stream is a multi-program transport stream format then extrapolating the multi-program transport stream into multiple single-program stream formats in which each single-program stream format is segmented into a plurality of content stream segments.
15. The method of claim 12 27, wherein the content stream is a video-on-demand stream, a broadcast live stream, a broadcast linear stream, or a time shifted-startover stream.
16. The method of claim 12 , wherein the identifying step further 27, wherein determining the advertisements to be included in the manifest comprises the step of interfacing with an advertisement decision management system to identify the advertisements.
17. The method of claim 16 , wherein a Society of Cable Telecommunications Engineers (SCTE) 130 is used to interface with the advertisement decision management system to identify the advertisements.
18. The method of claim 16 , wherein the advertisements are selected based on information associated with the client 27, further comprising:
obtaining the demographic information associated with the client from a database, wherein the demographic information associated with the client indicates one or more of a user's age, gender, income, hobbies, interest, pets, children, food preferences, or employment.
19. The method of claim 18 27, wherein the information includes at least one of demographic information and the advertisements to be included in the manifest are determined based at least in part on location information associated with the client.
20. The method of claim 12 27, wherein the advertising markers are Society of Cable Telecommunications Engineers (SCTE) 35s, or Avail Markers identified in Extensible Markup Language (XML).
21. The method of claim 12 27, wherein the client is one of a personal computer, a mobile phone, a tablet, or a Hypertext Transfer Protocol (HTTP) capable television.
22. The method of claim 12 27, wherein the advertising markers are located at boundaries between the segments.
23. A system for providing a content stream with advertisements embedded therein through a network to a client, the system comprising:
a content provider;
a streaming server;
the streaming server is programmed to:
receive a request from the client to play the content stream;
receive the content stream which may or may not contain advertising markers embedded therein;
segment the content stream into a plurality of content stream segments where the advertising markers when present remain in the content stream segments, wherein the advertising markers indicate where advertisements are to be placed in the content stream;
determine if the content stream segments contain advertising markers embedded therein;
(a) when the content stream segments are determined not to contain advertising markers build a content manifest based on the content stream segments not containing advertising markers;
(b) when the content stream segments are determined to contain advertising markers the streaming server is further programmed to:
(i) determine if the client has demographic information stored in a database;
(ii) review the content stream segments to identify the advertising markers;
(iii) identify the advertisements to be associated with the advertising markers based at least in part on the stored demographic information if any;
(iv) adjust time codes of references to the content stream segments and the advertisements so they are consecutive time codes; and
(v) generate a content-advertisement manifest that includes the references of each of the content stream segments and the advertisements; and
send the content manifest to the client when the content stream segments are determined not to contain advertising markers embedded therein and send the content-advertisement manifest to the client when the content stream segments are determined to contain advertising markers embedded therein.
24. The system of claim 23 , further comprising:
an advertisement decision management system;
a demographic data base for storing demographic information associated with the client; and
at least one advertising data base for storing the advertisements.
25. The system of claim 23 , wherein the advertising markers are located at boundaries between the segments.
26. A system for providing a content stream to a client via a network, the system comprising at least one processor programmed to execute instructions stored in memory, whereby the system is configured to:
receive a content stream, which may or may not contain advertising markers embedded therein, the advertising markers indicating where advertisements are to be placed in the content stream; determine if the content stream contains any of the advertising markers; segment the content stream into a plurality of content stream segments, wherein, when the advertising markers are present, the advertising markers remain in the content stream segments; when the content stream segments do not contain advertising markers, generate a manifest based on the content stream segments not containing advertising markers; when the content stream segments contain advertising markers, determine if demographic information associated with the client is available; when the content stream segments contain advertising markers and the demographic information associated with the client is available, generate the manifest based on the content stream segments and the advertisements, the advertisements to be included in the manifest determined based at least in part on the demographic information associated with the client; when the content stream segments contain advertising markers and the demographic information associated with the client is unavailable, generate the manifest based on the content stream segments and the advertisements, the advertisements to be included in the manifest determined from generic advertisements or local advertisements; and provide the content stream based on the manifest; wherein, when the content stream segments contain advertising markers, the manifest indicates timing of when to insert the advertisements relative to the content stream segments so that the content stream can be played in consecutive order.
27. A method for use in a system for providing a content stream to a client via a network, the method comprising:
receiving a content stream, which may or may not contain advertising markers embedded therein, the advertising markers indicating where advertisements are to be placed in the content stream; determining if the content stream contains any of the advertising markers; segmenting the content stream into a plurality of content stream segments, wherein, when the advertising markers are present, the advertising markers remain in the content stream segments; when the content stream segments do not contain advertising markers, generating a manifest based on the content stream segments not containing advertising markers; when the content stream segments contain advertising markers, determining if demographic information associated with the client is available; when the content stream segments contain advertising markers and the demographic information associated with the client is available, generating the manifest based on the content stream segments and the advertisements, the advertisements to be included in the manifest determined based at least in part on the demographic information associated with the client; when the content stream segments contain advertising markers and the demographic information associated with the client is unavailable, generating the manifest based on the content stream segments and the advertisements, the advertisements to be included in the manifest determined from generic advertisements or local advertisements; and providing the content stream based on the manifest; wherein, when the content stream segments contain advertising markers, the manifest indicates timing of when to insert the advertisements relative to the content stream segments so that the content stream can be played in consecutive order.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.