long_help="Methods to search files.\nNAME - Fast but but rarely usable,\nSIZE - Fast but not accurate, checking by the file's size,\nHASH - The slowest method, checking by the hash of the entire file"
)]
pubsearch_method: CheckingMethod,
#[clap(
short='D',
long,
default_value="NONE",
value_parser=parse_delete_method,
help="Delete method (AEN, AEO, ON, OO, HARD)",
long_help="Methods to delete the files.\nAEN - All files except the newest,\nAEO - All files except the oldest,\nON - Only 1 file, the newest,\nOO - Only 1 file, the oldest\nHARD - create hard link\nNONE - not delete files"
// #[clap(short = 'D', long, help = "Delete found files")]
// delete_files: bool, TODO
#[clap(flatten)]
pubdelete_method: DMethod,
#[clap(flatten)]
pubdry_run: DryRun,
#[clap(
short='z',
long,
@ -369,6 +368,15 @@ pub struct SameMusicArgs {
long_help="Sets which rows must be equal to set this files as duplicates(may be mixed, but must be divided by commas)."
)]
pubmusic_similarity: MusicSimilarity,
#[clap(
short,
long,
default_value="TAGS",
value_parser=parse_checking_method_same_music,
help="Search method (CONTENT, TAGS)",
long_help="Methods to search files.\nCONTENT - finds similar audio files by content, TAGS - finds similar images by tags, needs to set"
)]
pubsearch_method: CheckingMethod,
#[clap(flatten)]
pubfile_to_save: FileToSave,
#[clap(flatten)]
@ -398,6 +406,53 @@ pub struct SameMusicArgs {
long_help="Maximum size of checked files in bytes, assigning lower value may speed up searching"
)]
pubmaximal_file_size: u64,
#[clap(
short='l',
long,
value_parser=parse_minimum_segment_duration,
default_value="10.0",
help="Maximum size in bytes",
long_help="Minimum segment duration, smaller value will finds also shorter similar segments, which may increase false positives number"
)]
pubminimum_segment_duration: f32,
#[clap(
short='d',
long,
value_parser=parse_maximum_difference,
default_value="2.0",
help="Maximum difference between segments",
long_help="Maximum difference between segments, 0.0 will find only identical segments, 10.0 will find also segments which are almost not similar at all"
long_help="Methods to delete the files.\nAEN - All files except the newest,\nAEO - All files except the oldest,\nON - Only 1 file, the newest,\nOO - Only 1 file, the oldest\nHARD - create hard link\nNONE - not delete files"