US2017214950A1PendingUtilityA1

Video advertising insertion using multiple processes

Assignee: AdGorilla LLCPriority: Mar 11, 2015Filed: Apr 10, 2017Published: Jul 27, 2017
Est. expiryMar 11, 2035(~8.6 yrs left)· nominal 20-yr term from priority
Inventors:Daniel Ryan
H04N 21/26241H04N 21/812H04N 21/23418H04N 21/8455H04N 21/23424H04N 21/64322
46
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A system for video advertising insertion is presented. In one example, the system includes a transport stream interface to receive multiple video program channels in at least one first video transport stream. The system also includes at least one hardware processor that executes a host process to initiate a plurality of instance processes to execute concurrently, wherein each of the instance processes is assigned a distinct subset of the channels. Each of the instance processes analyzes the at least one first video transport stream to determine advertisement insertion points of the distinct subset of the channels, and inserts at least some of the plurality of video advertisements into the distinct subset of the channels based on the advertisement insertion points and an advertising schedule. The transport stream interface is also to transmit the channels with the inserted video advertisements in at least one second video transport stream.

Claims

exact text as granted — not AI-modified
1 . A system for video advertising insertion, the system comprising:
 a transport stream interface to receive multiple video program channels in at least one first video transport stream;   a network interface to access an advertising schedule and a plurality of video advertisements;   at least one hardware processor; and   memory comprising instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to execute a host process to initiate a plurality of instance processes to execute concurrently, each of the instance processes being assigned a distinct subset of the multiple video program channels, each of the instance processes comprising:
 a transport stream analysis module to analyze the at least one first video transport stream to determine advertisement insertion points of the distinct subset of the multiple video program channels; and 
 a video advertisement insertion module to insert at least some of the plurality of video advertisements into the distinct subset of the multiple video program channels based on the advertisement insertion points and the advertising schedule; 
   the transport stream interface to transmit the multiple video program channels with the inserted video advertisements in at least one second video transport stream.   
     
     
         2 . A method of inserting video advertising, comprising:
 receiving multiple video program channels in at least one first video transport stream;   accessing an advertising schedule and a plurality of video advertisements;   executing a host process on at least one hardware processor, the host process to initiate a plurality of instance processes to execute concurrently on the at least one hardware processor, each of the instance processes being assigned a distinct subset of the multiple video program channels, each of the instance processes to:
 determine advertisement insertion points of the distinct subset of the multiple video program channels; and 
 insert at least some of the plurality of video advertisements into the distinct subset of the multiple video program channels based on the advertisement insertion points and the advertising schedule; and 
   transmitting the multiple video program channels with the inserted video advertisements in at least one second video transport stream.   
     
     
         3 . A method of multimedia insertion comprising:
 receiving an input data stream over a network at a transport stream interface, the input data stream comprising a plurality of media program channels;   executing a host process on at least one hardware processor, the host process to initiate a plurality of instance processes to execute concurrently on the at least one hardware processor, each of the instance processes being assigned a distinct subset of the plurality of media program channels, each of the instance processes to:
 analyze the input data stream to determine an insertion point of the assigned distinct subset of the plurality of media program channels; and 
 insert media data into the input data stream based on the insertion point; and 
   transmitting an output data stream comprising the plurality of media program channels with the inserted media data.   
     
     
         4 . The method of  claim 1  further comprising:
 accessing the media data from a data storage unit, wherein the data storage unit is a server accessed through a network interface. 
 
     
     
         5 . The method of  claim 1  wherein the plurality of media program channels each comprise video data and the media data comprises video data. 
     
     
         6 . The method of  claim 1  wherein the plurality of media program channels each comprise audio data and the media data comprises audio data. 
     
     
         7 . The method of  claim 1  wherein the media data comprise both video data and audio data. 
     
     
         8 . The method of  claim 2  further comprising:
 retrieving an insertion schedule from the data storage unit, the insertion schedule comprising at least one rule for insertion of the media data into the input data stream. 
 
     
     
         9 . The method of  claim 6  wherein the at least one rule for insertion of the media data into the input data stream comprises a day and time for insertion of the media data. 
     
     
         10 . The method of  claim 1  wherein insertion of the media data into the input data stream comprises replacing a portion of the input data stream with the media data. 
     
     
         11 . The method of  claim 1  further comprising:
 de-multiplexing the input data stream into the plurality of media program channels; and 
 multiplexing the plurality of media program channels into the output data stream. 
 
     
     
         12 . The method of  claim 1  wherein the host process and the plurality of instance processes operate within the Microsoft® Windows® .NET Framework. 
     
     
         13 . The method of  claim 10  wherein each of the instance processes further de-allocate memory allocated for use by the instance process. 
     
     
         14 . The method of  claim 10  wherein at least one of the plurality of instance processes comprises a plurality of execution threads to execute concurrently within the at least one of the plurality of instance processes, the plurality of execution threads to analyze the input data stream and insert the media data. 
     
     
         15 . The method of  claim 1  wherein the input stream and the output stream each comprise Motion Picture Experts Group 2 (MPEG-2) data or MPEG-4 data, and wherein analyzing the input data stream to determine an insertion point of the assigned distinct subset of the plurality of media program channels comprises detecting digital program insertion (DPI) packets within the input data stream. 
     
     
         16 . A system for insertion in a data stream, the system comprising:
 a transport stream interface receiving an input data stream comprising a plurality of media program channels;   at least one hardware processor; and   a non-transitory data storage unit storing instructions that, when executed by the at least one hardware processor, cause the at least one hardware processor to:
 de-multiplex the input data stream into the plurality of media program channels; 
 initiate a plurality of instance processes to execute concurrently with each of the instance processes being assigned at least one of the plurality of media program channels of the input data stream, the instructions further causing each of the instance processes to instantiate:
 an input stream analysis module to analyze the input data stream to determine an insertion point of the assigned at least one of the plurality of media program channels; and 
 an insertion module to insert media data into the input data stream based on the insertion point; and 
 
 multiplex the plurality of media program channels into an output data stream, the transport stream interface transmitting the output data stream comprising the plurality of media program channels with the inserted media data. 
   
     
     
         17 . The system of  claim 14  further comprising:
 a network interface in communication with a server providing the media data. 
 
     
     
         18 . The system of  claim 14  wherein the plurality of media program channels each comprise video data and the media data comprises video data. 
     
     
         19 . The system of  claim 14  wherein the plurality of media program channels each comprise audio data and the media data comprises audio data. 
     
     
         20 . The system of  claim 14  wherein the media data comprises both video data and audio data. 
     
     
         21 . The system of  claim 14  wherein the host process and the plurality of instance processes operate within the Microsoft® Windows® .NET Framework. 
     
     
         22 . The system of  claim 14  wherein at least one of the plurality of instance processes further instantiates a memory management module to de-allocate memory allocated for use by the at least one of the plurality of instance processes.

Join the waitlist — get patent alerts

Track US2017214950A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.