IP Library Granted Patent US 11,076,198
Granted Patent B2
US 11,076,198 · App. 14/723,536 · Granted Jul 27, 2021

System and method to generate an interactive video on the fly

Inventors: Danny Kalish (Raanana, IL); Idan Shenberg (Aseret, IL)
Assignee: IDOMOO LTD.
H04N21/4316G11B27/031G11B27/11H04L12/1813H04L12/1818H04N1/00196H04N21/2743H04N21/431H04N21/8133H04N21/8405H04N21/8541H04N21/8549
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,076,198
App. No.
14/723,536
Granted
Jul 27, 2021
Kind
B2
Abstract

The present invention provides a method for real-time generation and streaming of at least one interactive context based video according to video template, raw context related data and real time event data. The method comprising the steps of: receiving input data related to an identified template and context related data, receiving real time input of event data, while the subsequent portion of video is still in generation, choosing, updating and generating audible and visual materials, according to the predefined logic of the identified template in relation to real time data event, generating and encoding video frames for pre-defined portion based polling the generated/updated visual materials, generating continuous audio streams/frames for predefined portion of the video based on polling generated or updated audible materials and providing the generated streamable data of the predefined video portion at the external entity side, while the subsequent portion of video is still in generation.

Claims (38)

1. A method for real-time generation and streaming of a context based video, implemented by one or more processors operatively coupled to a non-transitory computer readable storage device, on which are stored modules of instruction code that when executed cause the one or more processors to perform, said method comprising:

receiving real time data of a plurality of events from a mechanized, non-user, external source matched to an event type;

wherein each event is associated with a specific video generation process or video stream process;

wherein each event is identified by a unique event type;

wherein each video generation process or video stream process receives real-time event data based on a pre-defined set of data extraction mechanisms;

wherein the pre-defined set of data extraction mechanisms comprises checking current weather at a specified location, checking current local time, or receiving data from sensors;

identifying a video generation template, comprising visual content, according to a received request from a computer terminal or remote entity, said received request including a template identifier that identifies the video generation template;

retrieving and validating input data based on the template identifier and user profile data;

generating an undivided complete video stream, only after the received request is initiated, during a specific video generation process or video stream process, based on the identified video generation template, by:

automatically selecting all parts, including at least two parts, of the visual content of the video template to be incorporated into the generated video stream, wherein the selected parts form only partial portions of the complete video stream, wherein only integration of all selected parts provides a playable video stream according to a predefined logic of the identified video generation template, said predefined logic including rules which define, in relation to received events, what new visual material is required, wherein the predefined logic is different for each identified video generation template;

choosing, generating and updating audio and visual material items and incorporating said audio and visual material items with the selected parts of the video template to complement the partial portions of the video steam to create the complete video stream, wherein only incorporation of all selected parts with the audio and visual material items provides a playable video stream according to the predefined logic of the identified video generation template in relation to the real time event data and input data, wherein each selected part of the video template is updatable with visual material items at any location of the screen;

wherein the updating of audio and visual material items is initiated at predefined time points of the video stream based on a template definition;

during the specific video generation process or video stream process, incorporating said new or updated audio or visual material items into the selected parts of the video template at any location of the screen based on said video template, by generating and encoding video frames of the single generated undivided video stream, that incorporate the selected parts of the video template including the new or updated visual material items, produced during the specific video generation process or video stream process, such that the new or updated visual material items are part of the single generated undivided video stream formed from the video frames, where all video parts and visual material items of the single generated undivided video stream are visible to a user located at any location on screen;

rendering and encoding the undivided video stream, from the selected parts of the video template incorporating the new and updated visual material items, produced during the specific video generation process or video stream process, such that that new or updated video material items are combined into a single undivided stream of video; and

providing the rendered and encoded video stream to an external entity, wherein the rendered and encoded video stream is a portion of a longer streamed video, while a subsequent portion of the longer streamed video is still in generation.

2. The method of claim 1 , wherein the event type is identified by a match handling mechanism.

3. The method of claim 2 , wherein the real time event data is processed by a specific video generation process and a specific video stream process.

4. The method of claim 1 , further comprising receiving user data from a user source, wherein the user data is based on actions performed by at least one user while viewing the streamed video.

5. A system for real-time generation and streaming of a context based video said system comprising a non-transitory computer readable storage device and one or more processors operatively coupled to the storage device on which are stored modules of instruction code executable by the one or more processors, said modules comprising:

an interactive video module configured to, during a specific video generation process or video stream process:

receive real time data of a plurality of events from a mechanized, non-user, external source matched to an event type,

wherein each event is associated with a specific video generation process or video stream process,

wherein each event is identified by a unique event type,

wherein each video generation process or video stream process receives real-time event data based on a pre-defined set of data extraction mechanisms,

wherein the pre-defined set of data extraction mechanisms comprises checking current weather at a specified location, checking current local time, or receiving data from sensors,

identify a video generation template, comprising visual content, according to a received request from a computer terminal or remote entity, said received request including a template identifier that identifies the video generation template,

retrieve and validate input data based on the template identifier and user profile data, and

generate an undivided complete video stream, only after the received request is initiated, during the specific video generation process or video stream process, based on the identified video generation template by:

automatically selecting all parts, including at least two parts, of the visual content of the video template to be incorporated into the generated video stream, wherein the selected parts include only partial portions of the complete video stream, wherein only integration of all selected parts provides a playable video stream according to a predefined logic of the identified video generation template, said predefined logic including rules which define, in relation to received events, what new visual material is required;

wherein the predefined logic is different for each identified video generation template;

visual and audio material preparation modules configured to:

choose and generate audio and visual material items, and update respective visual and audio material items, and incorporate said visual and audio material items with the selected parts of the video template to complement the partial portions of the video stream to create the complete video stream, wherein only incorporation of all selected parts with the audio and visual material items provides a playable video stream according to the predefined logic of the identified video generation template, in relation to the real time data and input data, wherein each selected part of the video template is updatable with visual material items at any location of the screen;

wherein the updating of audio and visual material items is initiated at predefined time points of the video stream based on a template definition;

rendering and encoding modules configured to incorporate, during the specific video generation process or video stream process, the new or updated audio or visual material items into the selected parts of the video template at any location of the screen based on said video template, by generating and encoding video frames of the single generated undivided video stream, that incorporate the selected parts of the video template including the new or updated visual material items, produced during the specific video generation process or video stream process, such that the new or updated visual material items are part of the single generated undivided video stream formed from the video frames, where all video parts and visual material items of the single generated undivided video stream are visible to a user located at any location on the screen, so that the rendering and encoding modules render and encode the undivided video stream, from the selected parts of the video template incorporating the new and updated audio and visual material items, produced during the specific video generation process or video stream process, such that that new or updated video material items are combined into a single undivided stream of video; and

a video stream management module configured to provide the rendered and encoded video stream to an external entity, wherein the rendered and encoded video stream is a portion of a longer streamed video, while a subsequent portion of the longer streamed video is still in generation.

6. The system of claim 5 , wherein the event type is identified by a match handling mechanism.

7. The system of claim 5 , wherein the mechanized, non-user external sources include a remote communication server or remote sensors.

8. The system of claim 5 , wherein the real-time user driven input data is based on actions performed by at least one user while viewing the streamed video.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Aug 9, 2023
From: SILICON VALLEY BANK
To: IDOMOO, INC.; IDOMOO LTD; IDOMOO UK LTD
Reel/Frame 064534/0305 →
RELEASE OF SECURITY INTEREST Recorded Apr 27, 2023
From: KREOS CAPITAL V (EXPERT FUND) L.P.
To: IDOMOO LTD
Reel/Frame 063455/0315 →
RELEASE OF SECURITY INTEREST Recorded Apr 27, 2023
From: KREOS CAPITAL VI (EXPERT FUND) L.P.
To: IDOMOO LTD
Reel/Frame 063455/0320 →
SECURITY INTEREST Recorded Feb 3, 2020
From: IDOMOO LTD.
To: KREOS CAPITAL VI (EXPERT FUND) L.P.
Reel/Frame 051695/0330 →
SECURITY INTEREST Recorded Nov 19, 2018
From: IDOMOO LTD.
To: KREOS CAPITAL V (EXPERT FUND) L.P.
Reel/Frame 047535/0225 →
SECURITY AGREEMENT Recorded Jul 14, 2016
From: IDOMOO LTD
To: SILICON VALLEY BANK
Reel/Frame 039340/0666 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2015
From: KALISH, DANNY; SHENBERG, IDEN
To: IDOMOO LTD.
Reel/Frame 036256/0908 →
Continuity (1)
Related Publication 20160351228A1 · Dec 1, 2016
Cited By (1)
US 12,532,052