Method and system for generating highlights from scored data streams
A method and system for generating highlights from scored data streams is disclosed. According to one embodiment, media content containing time-stamped payloads is received in a data stream from one or more sources. The received media content is recorded in a buffer for a predetermined period of time and sliced into data buckets. For each of the data buckets, a score is assigned according to user-provided keywords. The data buckets are recorded along with the assigned score to generate highlights from the one or more sources using the scores of the recorded data buckets.
1. A method, comprising:
receiving live media content;
receiving, from a plurality of users of a social publishing content provider, a plurality of time-stamped payloads including responses to the media content;
analyzing payload content of the plurality of time-stamped payloads;
assigning the plurality of time-stamped payloads to media content based on the analyzing of the payload content and based on the time-stamping of the plurality of time-stamped payloads;
segmenting the media content into a plurality of segments based on an analysis of a plurality of scored data points with respect to a threshold, the plurality of scored data points corresponding in time with the media content based on time-stamping of the plurality of time-stamped payloads,
the segmenting including:
analyzing the plurality of scored data points using a moving window average, including assigning a numerical score for each of a plurality of data points in the moving window, the assigning of the numerical score for each of the plurality of data points including detecting a number of instances of a specified keyword from the plurality of time-stamped payloads for each data point in the moving window;
generating a highlight of the media content, the highlight including at least one segment of the plurality of segments;
determining a time offset value for each of the one or more media content sources by comparing streams from the one or more media content sources; and synchronizing the streams from the one or more media content sources based on the time offset value.
2. A non-transitory computer readable medium having stored thereon computer-readable instructions, which instructions when executed by a processor cause the processor to perform operations comprising: receiving live media content from one or more media content sources; receiving a plurality of time-stamped payloads including responses to the media content; analyzing payload content of the plurality of time-stamped payloads; assigning the plurality of time-stamped payloads to media content based on the analyzing of the payload content and based on the time-stamping of the plurality of time-stamped payloads; segmenting the media content into a plurality of segments based on an analysis of a plurality of scored data points with respect to a threshold, the plurality of scored data point corresponding in time with the media content based on time-stamping of the plurality of time-stamped payloads, the segmenting including: analyzing the plurality of scored data points using a moving window average, including assigning a numerical score for each of a plurality of data points in the moving window, the assigning of the numerical score for each of the plurality of data points including detecting a number of instances of a specified keyword from the plurality of time-stamped payloads for each data point in the moving window;
generating a highlight of the media content, the highlight including at least one segment of the plurality of segments;
determining a time offset value for each of the one or more media content sources by comparing streams from the one or more media content sources; and synchronizing the streams from the one or more media content sources based on the time offset value.