Back to results
US 2022/0166940 A1Published application
System and Method for Synchronizing Auxiliary Content to a Video Stream
OwnerOran Gilad, Samuel Chenillo +1inventors
InventorsOran Gilad, Samuel Chenillo, Oren Steinfeld
Life of this patent
Estimating the term…
Abstract
A system and method of synchronizing auxiliary content to a video stream is disclosed that uses a block of bit-vectors linked to a target frame in a video steam. The block of bit-vectors consists of a multi-frame sequence of image bit-vectors. The video stream and block of bit-vectors are transmitted to an end user device that uses the bit-vector block to uniquely identify the target frame. The target frame is used to synchronize auxiliary content to the video stream.
Claims13
1:
- A method of synchronizing auxiliary content to a video stream, comprising:
- identifying a target frame in said video stream;
- creating a block of bit-vectors comprising a multi-frame sequence of image bit-vectors linked to said target frame;
- transmitting said video stream to an end user device via a first transmission path;
- transmitting said block of bit-vectors to said end user device via a second transmission path;
- identifying said target frame by said end user device using said block of bit-vectors;
- synchronizing said auxiliary content to said video stream by said end user device using said target frame;
- and,
- displaying said synchronized video stream and said auxiliary content on said end user device.
6 more elements
2:
- The method of claim 1, further comprising:
- obtaining virtual insertion data from said target frame;
- and,
- transmitting said virtual insertion data with said block of bit-vectors to said end user device via said second transmission path.
1 more element
3:
- The method of claim 2, wherein, said virtual insertion data and said block of bit-vectors are compressed using a lossless compression algorithm prior to transmission.
4:
- The method of claim 2, wherein, said virtual insertion data comprises virtual insertion keying, occlusion, and tracking data;
- and, said auxiliary content comprises a video image.
5:
- The method of claim 4, wherein, said auxiliary content is transmitted to said end user device via a third transmission path.
6:
- The method of claim 1, wherein, said block of bit-vectors uses only every nth frame in sequence of image bit-vectors, where n is an integer greater than or equal to 2.
7:
- The method of claim 1, wherein, said video stream is obtained from cameras at a live event.
8:
- The method of claim 1, wherein, each frame of said multi-frame sequence of bit-vectors comprises one or more distinct bit-vectors created using a method selected from an average bit-vector function, a median bit-vector function, and a frequency bit-vector function.
9:
- The method of claim 8, wherein, said bit-vectors are created using said average bit-vector function comprising the steps of:
- reducing a video frame to N smaller, equally sized images;
- converting each of said N smaller images to a gray scale image;
- obtaining an average pixel value of each of said N smaller gray scale images;
- obtaining an average value of all N average pixel values;
- and generating an image bit-vector by sequentially appending a 1 for each occurrence of said average pixel value of each of said N smaller gray scale images equaling or exceed said average value of all N average values, and a 0 when it does not.
3 more elements
10:
- The method of claim 9, wherein, N is 64.
11:
- The method of claim 1, further comprising transmitting to said end user device via said second transmission path a size of said block of bit-vectors.
12:
- A system for synchronizing auxiliary content to a video stream, comprising:
- said video stream;
- a bit-vector block module that identifies a target frame of the video record, and creates a block of bit-vectors comprising a multi-frame sequence of image bit-vectors linked to said target frame;
- a first transmission path that transmits said video stream to an end user device;
- a second transmission path that transmits said block of bit-vectors to said end user device;
- an auxiliary content supply that supplies an auxiliary content file to said end user device;
- a synchronize and display app functioning on said end user device that identifies said target frame using said block of bit-vectors, synchronizes said auxiliary content file to said video stream, and displays said synchronized video stream and said auxiliary content file.
4 more elements
13:
- The method of claim 10, further comprising:
- a virtual insertion preparation module that obtains virtual insertion data linked to said target frame;
- and,
- transmits said virtual insertion data with said bit-vector block to said end user device via said second transmission path.
1 more element