=head1 NAME AudioFile::Find - Finds audio files located on your system and maps them to L objects. =head1 SYNOPSIS use AudioFile::Find; my $finder = AudioFile::Find->new( 'some/dir' ); # find everything my @audiofiles = $finder->search(); # specify a search directory my @audiofiles = $finder->search( 'some/other/dir' ); #same for genre, title, track, artist and album my @audiofiles = $finder->search( artist => 'Seeed' ); #search using a regex my @audiofiles = $finder->search( 'some/other/dir', title => qr/Ding/ ); # anonymous subroutine that returns true or false my @audiofiles = $finder->search( 'some/other/dir', track => sub { return shift > 10; } ); =head1 METHODS =head2 new Creates an object of this class. Takes an optional single argument which is the directory to search in. =head2 new Sets and returns the directory to search. =head2 search Starts the search and returns a hash of filenames as keys and AudioFile::Info-Objects as values. You may specify a search directory as the first argument and also pass a hash with search criteria. See the synopsis for details. =head2 pass Checks whether a given L object meets given criteria. First argument is the L object, second argument is a reference to the criteria hash. =head2 extensions Discovers the extensions that are supported by the installed L plugins. =head1 AUTHORS =over =item Markus, C<< >> =item Joel Berger C =back =head1 SOURCE REPOSITORY L =head1 BUGS Bugs may be reported to: =over =item L =item L =back =head1 COPYRIGHT & LICENSE Copyright 2008-2014 by Authors listed above, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.