def copy_media(input_dir_path, output_directory): media_set = MediaSet(input_dir_path) media_set2 = MediaSet(output_directory) CameraFilesProcessor.compute_necessary_signatures( media_set, media_set2) CameraFilesProcessor.batch_copy_multi_process(media_set, media_set2) media_set.save_database() media_set.close_database() media_set2.save_database() media_set2.close_database()
def find_cm(dir_path): media_set = MediaSet(dir_path) # CameraFilesProcessor.batch_compute_cm(media_set.get_file_list(cm="unknown"), media_set) CameraFilesProcessor.batch_read_internal_md_multi_process(media_set) CameraFilesProcessor.batch_missing_thumbnails_multi_process(media_set) media_set.output_directory.save_list( media_set.get_files_with_thumbnail_errors(), "thumbnails_errors.json") CameraFilesProcessor.batch_create_pdf(media_set) media_set.save_database() media_set.close_database()
def dup(dir_1_path): media_set = MediaSet(dir_1_path) file_list_1 = media_set.get_possibly_duplicates() CameraFilesProcessor.batch_compute_necessary_signatures_multi_process( media_set, file_list_1) media_set.propagate_sig_to_duplicates() media_set.propagate_cm_to_duplicates() duplicates = media_set.duplicates() duplicates_report = CameraFilesProcessor.get_duplicates_report( duplicates, media_set) tab = ConsoleTable() tab.print_header(str(media_set.root_path)) tab.print_multi_line(duplicates_report) print("") if True: pdf_file = PdfFile( str(media_set.output_directory.path / "duplicates.pdf")) for n_copy, media_list_list in sorted(duplicates.items()): if n_copy != 1: for media_list in media_list_list: for media in media_list: pdf_file.add_media_image(media) pdf_file.new_line() pdf_file.save() pdf_file = PdfFile(str(media_set.output_directory.path / "edited.pdf")) for date in media_set.date_model_size_map: for model in media_set.date_model_size_map[date]: if model is not None and model != "" and len( media_set.date_model_size_map[date][model]) > 1: for dim in media_set.date_model_size_map[date][model]: for media in media_set.date_model_size_map[date][ model][dim]: pdf_file.add_media_image(media) break pdf_file.new_line() pdf_file.save() media_set.save_database() media_set.close_database()
def organize_media(input_dir_path): media_set = MediaSet(input_dir_path) CameraFilesProcessor.batch_organize(media_set.get_copied_files()) media_set.save_database() media_set.close_database()