Awesome
This project has been forked from https://code.google.com/p/audioscout
Audio Scout content indexing software version 1.0.1 creator: D. Grant Starkweather & Evan Klinger contact: dstarkweather@phash.org, eklinger@phash.org
BACKGROUND
Audio Scout is audio content indexing software. For more of a detailed explanation, please read audioscoutm.pdf.
INSTALLATION:
Use the cmake build system. From the top level directory:
mkdir build
cd build
cmake ..
make all
sudo make install
This should build the libraries, the servers, the client application (both console and qt gui) and the driver and test programs.
NOTE: In order for cmake to recognize Qt4 installation, the bin directory in which qmake program is installed might have to be on the system PATH.
Files:
/libs - source code for the AudioData and pHashAudio libraries.
/clients - source code for a console based client app (auscout-client.c) and a qt gui app.
/servers - source code for the server programs (auscoutd, tblservd, metadatadb)
/tests - source code for test programs and driver programs to test the server performance.
/docs - audioscoutm.pdf manual
INSTRUCTIONS
1. Create sqlite database for the audio file metadata storage.
sqlite3 audio.db
In the sqlite environ,
.read audiodb.sql
2. Start the metadatadb server against this database file.
./metadatadb -i /path/to/database/file/audio.db
Be sure to use an absolute path. Check the -h option
for other settings you might want to make.
3. (Optional) Build the index files on local machines using the
'audioindex' utility program. This is optional. However,
if you already have alot of files you want to index, this
provides a faster way, since you can start building on multiple
machines. Just type:
./audioindex
to get a list of the program options.
4. Start the auscoutd server with the address to find the metadatadb
server.
./auscoutd -d tcp://<address>:<metadatadb_port>
e.g. ./auscoutd -d tcp://localhost:4000
5. Start the table servers. This might only be one server but could be any
number of table servers (up to 255).
./tblservd -s <address of auscoutd> -p <auscoutd port> -i /path/to/index/file
e.g. ./tblservd -s 192.168.1.100 -p 4005 -i /home/usr/audiodb
Be sure to use full path to the index file. If you did not create an index file
in step 3, an empty index will be created with the name you provide. Use the -h
option to find out about the other options.
6. Use client program to to query the index with unknown files or add new
unindexed files to the system.
There is a simple console based program in auscout-client.c that demonstrates how
to use the api programatically.
Use the program names 'auscout' to test out the system. It is GUI front end based
on Qt. It should be straightforward to use:
1. You can set the connection to the auscoutd server through the connect button or
the menu item. If it is a wrong connection, a message box will inform you.
2. You can sample from a the mic through the sample interface. A list box allows
you to choose the device. You can also set the amplitude gain adjustment that
is applied to the signal and the sample interval in seconds through the menu
items.
3. Simply click the sample button to begin sampling from the mic. A meter will
show the measured signal as it is recieved. A look up is attempted when the
sampling is finished. View the process in the display.
4. The system works in two modes: query and submit. You can submit new files to
be indexed by selecting the 'submit' radio button. Or you can choose to query
for files by selecting the 'query' radio button. Browse and select which files
you want to send and click the 'hash & send' button when you are ready.
REQUISITE SOFTWARE
zeromq version 3.x www.zeromq.org sqlite3 version 3.6.23 www.sqlite.org sndfile version 1.0.21 www.mega-nerd.com/libsndfile
libOGG 1.2.0 (required by sndfile for ogg and flac support) (NOTE: be sure to install ogg before flac!) libFLAC 1.2.1 http://xiph.org/downloads libvorbis 1.3.0
samplerate version 0.1.7 www.mega-nerd.com/SRC (NOTE: install sndfile before samplerate) mpg123 version 1.12.1 www.mpg123.de/api (for mp3 support) opencore-amr 0.1.3
Qt 4.7.1 (required for the GUI client application)