Introduction to Event Stream Processing

Event Stream Processing (ESP) applies rules to the output of other tasks, including other ESP tasks.

One use of ESP is to identify interesting events from a large number of records. A simple example is detecting the occurrence of a particular word in an audio stream. A more complex example is detecting when a combination or sequence of events occurs within a specific time interval; for example, a number plate is detected shortly after a traffic light changes to red.

The tracks passed to ESP engines are not modified. An ESP task produces a new output track that contains records which meet the specified conditions.

ESP engine Description Example
Filter Filters a track, and produces an output track that contains only records that meet specified conditions. Filter speech-to-text results for a news channel to produce an output track that only contains records for the word "weather".
Deduplicate Identifies duplicate records in a track, and produces an output track without the duplicates. Face recognition produces a result each time a person is recognized. Deduplication can filter the output to remove any records produced when the same person is recognized again within a certain number of seconds.
Or Combines two or more tracks into a single output track. The output track contains all of the records from all of the input tracks. Combine tracks from OCR, speech-to-text, and face recognition to produce an output track that contains information about text, speech, and faces in a video.
And Compares two tracks to identify combinations of events. The event in the second track must occur within a specific time interval (before or after) the event in the first track. The records in the output track each contain a pair of related records. A record in the first track can appear in the output track more than once if it becomes part of multiple combinations. Identify when the text "election results" appears on-screen and a news presenter speaks the name of a politician up to ten seconds before or after the text appears.
AndThen Compares two tracks to identify combinations of events. The event in the second track must occur at the same time as, or within a specific time interval after the event in the first track. The records in the output track each contain a pair of related records. A record in the first track can appear in the output track more than once if it becomes part of multiple combinations. Identify when the text "election results" appears on-screen and a news presenter speaks the name of a politician up to ten seconds after the text appears.
AndNot Compares two tracks to identify when an event occurs in the first track and nothing happens in the second track, within a specific time interval (before or after) that event. The records in the output track contain the record from the first track. Records from the second track are never included in the output. Produce a track containing records for all appearances of a logo that are not accompanied by the company name in the ten seconds preceding or following the logo's appearance.
AndNotThen Compares two tracks to identify when an event occurs in the first track and nothing happens in the second track, within a specific time interval after that event. The records in the output track contain the record from the first track. Records from the second track are never included in the output. Produce a track containing records for all appearances of a logo that are not followed within ten seconds by the company name.
AndAny Compares two tracks and produces a track containing records from the first track for which there is at least one event in the second track within a specified time interval (before or after the first track's event).  
AndThenAny Compares two tracks and produces a track containing records from the first track which are followed within a specified time interval by at least one event in the second track.  
Combine

Combines records from two or more tracks. This is similar to the And ESP task, except:

  • It produces an output record for every record in the first input track, and this output record contains copies of all related records from the other input track(s). In comparison, the And task creates one output record for each pair of related records.
  • Every record from the first input track always appears in the output, even if there are no related records in the other input track(s).

Combine information about detected faces that appear at the same time so that all of the faces can be blurred by a transformation task.

The ESP engines support configuration parameters that allow you to customize the operations for your data. Some engines also allow you to run scripts written in the Lua scripting language. For more information about Lua scripts, see Write a Lua Script for an ESP Engine.

ESP engines can accept any track. They also accept the output of other ESP engines.


_HP_HTML5_bannerTitle.htm