Implementing an audio fingerprinting system

Assignment Help Python Programming
Reference no: EM132519283 , Length: 5 pages

Multimedia Security

Audio Fingerprinting Practical Work

Multimedia fingerprinting (also known as perceptual hashing) are a class of techniques used to produce short summaries of multimedia content. These summaries can then be used to search for these pieces of content in databases in an efficient way. Typical uses of perceptual hashing are reverse search, by which a piece of multimedia itself (instead of the file metadata, such as the name of the piece or its author's name) can be used to query a database; and copy detection to identify unauthorized copies of copyright-protected work or their distribution. An example of the first use would be the Shazam service1, which can be used to identify a song in a database from a short, often noisy, recording from a smartphone's microphone. An example of the second use would be Toutube's ContentID2. More details on media fingerprinting can be found in the slides for Unit 5 T5 - Copy Detection.

Task description

This practical work consists on implementing an audio fingerprinting system for reverse search database search, similar to the Shazam service, that is capable of identifying songs from short noisy samples. In the Practical Exercices section in the course moodle page, you will find a music library named Music Library part 1 and Music Library part 2, which contain 40 songs in total. The provided songs are wave files (.wav) with 2 audio channels, sample rate of 44100 samples per second and 16 bits per sample, making them 16 2 44100 t in size each, being t the song duration in seconds. Also, in the same moodle page section, you can find a selection of test samples, extracted from the songs in the Music Library, that you can use for testing. All samples have a random duration of 8 to 15 seconds and are divided in 4 categories:

Clean samples are extracted direclty from the songs in the Music Library and have no aditional processing.

Through a landline phone.

Noisy samples have been mixed with the noise samples also available in the moodle course page. The volume of the song with respect to the background noise is random for every sample (some of the samples are barely audible).

Noisy filtered samples combine the two previous processing actions, they should emulate noisy samples recorded with a bad quality micro- phone.

Your work is to implement two utilities, one that builds a fingerprint database from the songs directory and a second that identifyies a song from the database using one of the samples. You can implement the system in any programming language of your choice. The application design and archi- tecture are up to you. Note: The paper describing Shazam is in the moodle course page in the complementary reading section of Unit 5. Use that paper as your guide. However, the commands to build the fingerprints database and to identify a sample must be of the following form:
• Building the fingerprint database: builddb -i songs-folder -o database-file
• Identifying a sample: identify -d database-file -i sample
The first of the utilities does not need to return anything in particular (except for building the database). The second one should return the song name in the console. This does not mean that the sofware should be compiled. If you develop the programs in an interpeted language such as python or deliver a Java .jar file indicate so in your documentation. This means that the following examples are also valid:
• python builddb.py -i songs-folder -o database-file
• java -jar builddb.jar -i songs-folder -o database-file
• builddb.sh -i songs-folder -o database-file

But be completeley clear in how to execute the commands in the provided documentation.

Attachment:- Audio Fingerprinting Practical Work.zip

Reference no: EM132519283

Questions Cloud

How you ensure authentic learning has taken place : Using your mini-assignment topic, discuss how your lesson plan relates to a Common Core or State Standard.Create a matrix that maps out the topic, standards.
Determining the home improvement brands : The home improvement brands, Home Depot and Lowes typically locate their stores near each other rather than away from each other.
American airlines has monopoly power : The passengers sitting in front of each other on an American Airlines flight typically will have paid different ticket price amounts. Does this mean
Discuss about the case of mags ltd with valid conclusion : Explain how Mag ltd should account for the costs. provide reason for your answer in reference to relevant paragraphs of AASB 138 / IAS 38
Implementing an audio fingerprinting system : Implementing an audio fingerprinting system for reverse search database search, similar to the Shazam service, that is capable of identifying songs from short
Define and describe NAS : Define and describe NAS. Assume you must implement a shared file system within the cloud. What company would you select? Why?
Estimating the corona virus pandemic : Assuming the price of oil increase to where it was before the corona virus pandemic, can small firms in this highly competitive market make profit in the long r
Customer relationship management systems : A variety of Customer Relationship Management (CRM) systems have integrated social media networks in an effort to be competitive.
Derive the labor hiring rule for a profit maximizer : Derive the labor hiring rule for a profit maximizer firm in the short-run and give a graphical example to explain the argument.

Reviews

Write a Review

Python Programming Questions & Answers

  Write a python program to implement the diff command

Without using the system() function to call any bash commands, write a python program that will implement a simple version of the diff command.

  Write a program for checking a circle

Write a program for checking a circle program must either print "is a circle: YES" or "is a circle: NO", appropriately.

  Prepare a python program

Prepare a Python program which evaluates how many stuck numbers there are in a range of integers. The range will be input as two command-line arguments.

  Python atm program to enter account number

Write a simple Python ATM program. Ask user to enter their account number, and print their initail balance. (Just make one up). Ask them if they wish to make deposit or withdrawal.

  Python function to calculate two roots

Write a Python function main() to calculate two roots. You must input a,b and c from keyboard, and then print two roots. Suppose the discriminant D= b2-4ac is positive.

  Design program that asks user to enter amount in python

IN Python Design a program that asks the user to enter the amount that he or she has budget in a month. A loop should then prompt the user to enter his or her expenses for the month.

  Write python program which imports three dictionaries

Write a Python program called hours.py which imports three dictionaries, and uses the data in them to calculate how many hours each person has spent in the lab.

  Write python program to create factors of numbers

Write down a python program which takes two numbers and creates the factors of both numbers and displays the greatest common factor.

  Email spam filter

Analyze the emails and predict whether the mail is a spam or not a spam - Create a training file and copy the text of several mails and spams in to it And create a test set identical to the training set but with different examples.

  Improve the readability and structural design of the code

Improve the readability and structural design of the code by improving the function names, variables, and loops, as well as whitespace. Move functions close to related functions or blocks of code related to your organised code.

  Create a simple and responsive gui

Please use primarily PHP or Python to solve the exercise and create a simple and responsive GUI, using HTML, CSS and JavaScript.Do not use a database.

  The program is to print the time

The program is to print the time in seconds that the iterative version takes, the time in seconds that the recursive version takes, and the difference between the times.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd