Method and apparatus for distributing multimedia to remote clients
First Claim
1. A method of distributing media data to a client computer via a network from a host computer, comprising:
- receiving a data request at the host computer from a client computer via the network;
launching a module on the client computer;
receiving a client computer specific parameter from the module on the client computer;
streaming media data to the client computer from the host computer via the network according to the client computer specific parameter; and
detecting video motion, wherein said detecting is performed on a block level, by the process comprising;
receiving a video image;
subdividing the video image into a grid of blocks;
processing every block from the grid of blocks according to the following;
determining a cross correlation by comparing an individual block from a current grid of blocks with a corresponding individual block from a previous grid of blocks;
if the cross correlation is below a predetermined correlation threshold level, then;
calculating the variance in the brightness of the block over the corresponding block of the previous image;
if the variance in the brightness is above a variance threshold, then marking the block as having motion;
if the variance in the brightness is below the variance threshold, then marking the block as not having motion;
if the cross correlation is above the predetermined threshold level, then marking the block as not having motion; and
repeating the processing until video motion detection is determined for every block in the grid.
5 Assignments
0 Petitions
Accused Products
Abstract
Video and audio signals are streamed to remote viewers that are connected to a communication network. A host server receives an originating video and audio signal that may arrive from a single source or from a plurality of independent sources. The host server provides any combination of the originating video and audio signals to viewers connected to a communication network. A viewer requests the host server provide a combination of video and audio signals from the host server. The host server transmits an instruction set to be executed by the viewer. The instruction set causes the viewer to transmit parameters to the host user, including parameters relating to the processing capabilities of the viewer. The host server then transmits multimedia data to the viewer according to the received parameters. A plurality of viewers may be simultaneously connected to the host server. Each of the plurality of viewers may configure the received video and audio signals independent of any other viewer and may generate alerts based on the video and audio content.
113 Citations
31 Claims
-
1. A method of distributing media data to a client computer via a network from a host computer, comprising:
-
receiving a data request at the host computer from a client computer via the network; launching a module on the client computer; receiving a client computer specific parameter from the module on the client computer; streaming media data to the client computer from the host computer via the network according to the client computer specific parameter; and detecting video motion, wherein said detecting is performed on a block level, by the process comprising; receiving a video image; subdividing the video image into a grid of blocks; processing every block from the grid of blocks according to the following; determining a cross correlation by comparing an individual block from a current grid of blocks with a corresponding individual block from a previous grid of blocks; if the cross correlation is below a predetermined correlation threshold level, then; calculating the variance in the brightness of the block over the corresponding block of the previous image; if the variance in the brightness is above a variance threshold, then marking the block as having motion; if the variance in the brightness is below the variance threshold, then marking the block as not having motion; if the cross correlation is above the predetermined threshold level, then marking the block as not having motion; and repeating the processing until video motion detection is determined for every block in the grid. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25)
-
-
26. A method of distributing media data to a client computer via a network from a host computer, comprising:
-
receiving a data request at the host computer from a client computer via the network; launching a module on the client computer; receiving a client computer specific parameter from the module on the client computer; streaming media data to the client computer from the host computer via the network according to the client computer specific parameter; and detecting video motion wherein detecting motion is performed on a frame level by comprising; obtaining a reference video frame; obtaining a current video frame; determining motion detection on a block level comparing the current video frame to the reference video frame such that a number of blocks with motion detection is determined; calculating a fraction of video blocks having motion; if the fraction is below a low threshold value, then no motion is detected for the current video frame; if the fraction is above the low threshold value, then determining if the fraction is below a medium threshold value; if the fraction is below the medium threshold value, then performing a slight response and logging subsequent images; if the fraction is above the medium threshold value, then determining if fraction is below a high threshold value; if the fraction is below the high threshold value, then performing a moderate response and logging subsequent images; and if the fraction is above the high threshold value, then performing a severe response and logging subsequent images. - View Dependent Claims (27, 28, 29, 30, 31)
-
Specification