Skip to content

h7shin/audiosearchengine

Repository files navigation

audiosearchengine

Requirements

*Python Ver. 3.X.X
*python-tk package for GUI application
*X11 (for Cygwin) or XQuartz installed (for Mac) when using GUI application
*WAV audio file (.wav) format: signed mono 16 bit PCM
	Use .wav converters online, and if neccessary re-sample the audio files
	using Audacity Opensource Software 
	For UNIX users, you may also use SoX to add .wav header to raw bit stream data

Do you have any screenshots?

link

screenshot.png is available in img directory

What does the program do?

Suppose a case where a student has a recorded section of some audio file, or
a snippet of a music file, but he/she cannot remember the song name or the 
ring-tone name. He/she can search for similar audio files in the database 
with the best waveform alignments. 

You can adjust the level of stringency to balance the speed and quality of
the search.

The algorithm implements a Map-Reduce pattern with multiple map/reduce processes
that run in parallel.

Python Libraries Used

tkinter (for GUI)
multiprocessing

How to use

You can run either interfaceCLI.py and interfaceGUI.py. interfaceCLI.py is for
command line use and interfaceGUI.py is for GUI. On the GUI application,
you can also compare the two waveforms.

Place query wav file in the top level directory where interfaceCLI.py is stored.
Run search by running interfaceCLI.py. You can also add .wav files to the
db directory (database). 

Please note that the algorithm is designed for Python Version 3.X.X. (interfaceCLI.py).
If possible, run interfaceCLI.py with python3.

About

Python Audio Search Engine: search for audio .wav files based on percent similarity

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages