1. A computer-implemented process for locating media objects in a media stream and determining temporal endpoints for each media object, comprising using a computing device to: compute characteristic information for at least one segment of a media stream; analyze the characteristic information to determine whether a media object is possibly present within any segment of the media stream; store the location and characteristic information of any segment of the media stream in an object database when the analysis of the characteristic information indicates that at least part of a media object is possibly present within that segment of the media stream; query the object database to locate potentially matching segments of the media stream; compare potentially matching segments of the media stream to identify repeating segments within the media stream; and automatically align and compare portions of the media stream centered on each repeating segment of the media stream to determine temporal endpoints for each media object in the media stream.