View
218
Download
2
Category
Preview:
Citation preview
EzDJ
By Todd Alexander
An easy DJ Mixing Solution
General Overview
The EzDJ program allows common DJ functions to be accomplished using the EzKit Lite
This provides for a cheap alternative to very expensive DJ hardware
Features
Input level monitors Sound effects available for mixing Two versions of cross-fading with beat
matching and fade status
Problems
As indicated in the first slide Disk Jockeys usually work with two input sources, allowing them to switch between songs
Normally while a current input source is being played a DJ would queue another song on the other input channel.
Even if a song is queued it is very difficult to tell when to start playing it so that the beats are in sync.
Why should the beats be in sync? Whenever playing two input sources at the same time with beats that are not synchronized. The result is considered noise by most listeners. [sample]
In order to solve this problem beat matching is used.
Beat Matching Algorithms
There are a few approaches to matching beats. Mostly differing in the way the beats are detected
One of the methods I looked at was identifying the beats by their IDs according to a paper at Microsoft research
In short they determined the peak then stored an ID of it
EzDJ’s Algorithm
First I thought that: 1. A DJ would never try to mix two songs with a largely varied beat count. In fact it is desirable to have songs of similar beat counts; hence, assume the beat counts are similar
Next the input peak levels can be setup to fall within a certain range. The input will be amplified to determine the output thus not adversely affecting the output.
Having control of the input we can then detect the beats, match the beats then perform the cross-fade after successfully matching the beat. Further explanation in subsequent code.
Bearing in mind that the music is of good quality and does not contain noise at the peaks the average value at the peak was ignored to improve the algorithm’s performance
Code Details
Presented in source code documents
Graph of Type 1 Fade
0 5 10 15 20 25 300
1
2
3
4
5
6
7
8
9
10
Graph of Type 2 Fade
0 10 20 30 40 50 600
1
2
3
4
5
6
7
8
9
10
Improvements
Monitor feature Tempo changing to match beat Dynamic level adjustment
Credits
• Cover image – www.ftw-design.com• Code adapted from Analog Devices EzKit Lite examples• Dr. Kepuska’s Lectures and Slides• Darko Kirovski and Hagai Attias, Beat-ID: Identifying
Music via Beat Analysis, Microsoft Research• Beat This, A Beat Synchronization Project
http://www.owlnet.rice.edu/~elec301/Projects01/beat_sync/beatalgo.html
• ECE3551 is the best !
Recommended