1. A method for processing video data, the method comprising: detecting, within a single chip in a programmable surveillance video camera, one or more moving objects in a raw video signal generated by said programmable surveillance video camera; extracting, within said single chip in said programmable surveillance video camera, one or more characteristics of said detected one or more objects, wherein said extraction is based on said raw video signal; generating, within said single chip in said programmable surveillance video camera, one or more textual representations of at least one of said one or more characteristics of said detected one or more objects; compressing said raw video data in at least one compressed video file; and embedding at least one of said characteristics of said detected one or more objects into a header of said compressed video file.