A scan path is generated using one or more two-dimensional sets of training signals. For encoding, a two-dimensional set of signals is encoded using the scan path. For decoding, a two-dimensional set of encoded signals is decoded using the scan path. In a preferred embodiment, a plurality of different scan paths are generated for a plurality of quantization levels; signals are transformed and quantized using selected quantization levels; and the quantized, transformed signals are encoded using the scan paths corresponding to the selected quantization levels.
A method for creating a video connection between a video source for transmitting frames of video data and a video sink for receiving the frames. The video source may be a file, a camera, a computer network, and a telephony interface. The video sink may be a file, a visual display device, a computer network, and a telephony interface. The video source has a recycle framehandler function for recycling used buffers and the video sink has a process framehandler function for processing received frames. A video stream object is created having data members that include a reference to the video sink and a reference to the video source, as well as several member functions. The member functions are used to query the video sink to obtain a reference to the process framehandler function and to then provide the reference to the video source. The member functions are also used to query the video source to obtain a reference to the recycle framehandler function, which is then provided to the video sink. The reference to the process framehandler function is stored as a data member of a first framehandler object to be used by the video source, and the reference to the recycle framehandler function is stored as a data member of a second framehandler object to be used by the video sink. The video source may then directly invoke the process framehandler function and the video sink may directly invoke the recycle framehandler function.
A system and methods are described for high speed searching of digital video data 20 to find regions that have motion, for example in a scene monitored by a security camera system. Conventional video motion detection is used to find zones 28,29 and/or times in the video data where motion is detected, either in real time or post-processing. Relatively small data structures 30,50 are created that store metadata or "motion data," as distinguished from the underlying video data, in which regions of detected motion are indicated compactly, for example using one bit 32 per zone or one bit 52 per field, to enable fast searching to find motion by searching the motion data structure rather than the digital video record.
Hot deployable video management modules maintain a video device management platform by integrating independently developed support for new or updated video devices at runtime. A video device module loader builds a management interface for the new or updated video device associated with the management module based on attributes and operations of the video device defined by an XML descriptor and based on access instructions. The management interface is used to create a video device instance in the management platform for each video device under management. The management platform manages a variety of different types of video devices with a video device management module added as a given video device is added to the management platform or an already managed video device is updated.
An apparatus for transmitting compressed video data includes a data interfacing circuit, a data connecting circuit, a decompression unit, and a CPU. The data interfacing circuit receives and stores compressed video data, generates a first control signal in response to receipt of the compressed video data, identifies an address bus and a data bus used for transmitting the compressed video data and then generates a hold permission signal in response to receipt of a hold request signal. The data interfacing circuit also provides output of the compressed video data in response to receipt of an address control signal. The decompression unit generates a data request signal to request input of said compressed video data. The decompression unit receives the compressed video data from the data interfacing circuit and decompresses the compressed video data to generate a motion picture in response to receipt of a data permission signal. The data connecting circuit generates the hold request signal in response to receipt of a second control signal and the data request signal, generates the address control signal in response to receipt of said hold permission signal, and generates a transmission state signal indicating that transmission of the compressed video data to the decompression unit is complete. The CPU generates the second control signal in response to receipt of the first control signal, and generates a third control signal to clear the data connecting circuit in response to receipt of the transmission state signal.
A software/hardware hybrid video decoder, particularly suited for decoding MPEG video, that takes advantage of processing capabilities of graphics coprocessors to perform the motion compensation portion of video decoding. Motion compensation is performed by bit block transfer (bit BLT) operations on the graphics coprocessor. The bit BLT operations perform the addition of pixels in the reference and error blocks. Bit BLT operations may also be used for interpolation between reference blocks to provide subpixel resolution for motion vectors.