1. A method for clustering digital media files, comprising: sorting a plurality of digital media files, said digital media files each including time metadata and location metadata associated therewith, said digital media files being sorted into chronological order based on the time metadata; determining a time difference between consecutive digital media files in the chronological order based on the time metadata; determining a location difference between consecutive digital media files in the chronological order based on the location metadata; grouping the sorted digital media files into event clusters based on the determined time difference and the determined location difference, wherein each event cluster contains one or more digital media files in chronological order; wherein at least one of following conditions is true (1) the time difference between two consecutive digital media files within each event cluster is less than a time threshold and (2) the location difference between two consecutive digital media files within each event cluster is less than a location threshold; and wherein the chronological order of the digital media files is maintained across the event clusters such that subsequent event clusters do not contain digital media files earlier in time than the digital media files of previous event clusters.