Auto-tuning for Electric Guitars using Digital Signal Processing Pat Hurney, 4ECE 31 st March 2009.

Slides:



Advertisements
Similar presentations
Tamara Berg Advanced Multimedia
Advertisements

VSMC MIMO: A Spectral Efficient Scheme for Cooperative Relay in Cognitive Radio Networks 1.
Analysis and Digital Implementation of the Talk Box Effect Yuan Chen Advisor: Professor Paul Cuff.
Guitar Effects Processor Using DSP
Final Year Project Pat Hurney Digital Pitch Correction for Electric Guitars.
Seismic Octave Programming for Analog/Digital Converters Michael W. Siekman Electrical and Computer Engineering Senior Capstone Design Project 2007 Advisor:
Audio to MIDI Converter Team Obama Advisor: Dr. William Hunt Adnan Burkic Sean Earley Jon Kump Brian Tyson Georgia Institute of Technology 4/27/2010.
SYED SYAHRIL TRADITIONAL MUSICAL INSTRUMENT SIMULATOR FOR GUITAR1.
Gerald Leung.  Implementation Goal of Phase Vocoder  Spectral Analysis and Manipulation  Matlab Implementation  Result Discussion and Conclusion.
Classification of Music According to Genres Using Neural Networks, Genetic Algorithms and Fuzzy Systems.
System Microphone Keyboard Output. Cross Synthesis: Two Implementations.
Digital Voice Communication Link EE 413 – TEAM 2 April 21 st, 2005.
Effects in frequency domain Stefania Serafin Music Informatics Fall 2004.
DSP Implementation of a 1961 Fender Champ Amplifier James Siegle Advisor: Dr. Thomas L. Stewart March 11, 2003.
1 Manipulating Digital Audio. 2 Digital Manipulation  Extremely powerful manipulation techniques  Cut and paste  Filtering  Frequency domain manipulation.
DSP Implementation of a 1961 Fender Champ Amplifier James Siegle Advisor: Dr. Thomas L. Stewart April 8, 2003.
Use of FOS for Airborne Radar Target Detection of other Aircraft Example PDS Presentation for EEE 455 / 457 Preliminary Design Specification Presentation.
Digital Communication Techniques
CHAPTER 13 TRANSMITTERS AND RECEIVERS. Frequency Modulation (FM) Receiver.
Self-Calibrating Audio Signal Equalization Greg Burns Wade Lindsey Kevin McLanahan Jack Samet.
GCT731 Fall 2014 Topics in Music Technology - Music Information Retrieval Overview of MIR Systems Audio and Music Representations (Part 1) 1.
Synthesis Basics (1) Analog Synthesis Intro to Digital Oscillators.
Kinect Player Gender Recognition from Speech Analysis
The Wavelet Tutorial: Part3 The Discrete Wavelet Transform
Speech Recognition ECE5526 Wilson Burgos. Outline Introduction Objective Existing Solutions Implementation Test and Result Conclusion.
Elad Hadar Omer Norkin Supervisor: Mike Sumszyk Winter 2010/11, Single semester project. Date:22/4/12 Technion – Israel Institute of Technology Faculty.
1 ELEN 6820 Speech and Audio Processing Prof. D. Ellis Columbia University Midterm Presentation High Quality Music Metacompression Using Repeated- Segment.
Tutorial 7 Working with Multimedia. New Perspectives on HTML, XHTML, and XML, Comprehensive, 3rd Edition 2 Objectives Explore various multimedia applications.
Subtractive Sound Synthesis. Subtractive Synthesis Involves subtracting frequency components from a complex tone to produce a desired sound Why is it.
Basic Concepts of Audio Watermarking. Selection of Different Approaches Embedding Domain  time domain  frequency domain DFT, DCT, etc. Modulation Method.
ECE 448: Lab 6 DSP and FPGA Embedded Resources (Digital Downconverter)
Real-time Acquisition and Processing of Data from the GMRT Pulsar Back- ends Ramchandra M. Dabade (VNIT, Nagpur) Guided By, Yashwant Gupta.
Presented By Chris Loveless Microcomputer Systems 1 ECE /13/2006.
Audio to MIDI Converter Team Obama Advisor: Dr. William Hunt Adnan Burkic Sean Earley Jon Kump Brian Tyson Georgia Institute of Technology 3/16/2010.
Scanning FM Receiver SOC FPGA Design Lab Project by Marc Chiesa.
Using IR Chapters 7 & 8 of Robotics with the Boe-Bot.
Auto-tuning for Electric Guitars using Digital Signal Processing Pat Hurney, 4ECE 22 nd January 2009.
Present document contains informations proprietary to France Telecom. Accepting this document means for its recipient he or she recognizes the confidential.
Automatic Equalization for Live Venue Sound Systems Damien Dooley, Final Year ECE Progress To Date, Monday 21 st January 2008.
Emergency Vehicle Detector for use in Consumer’s Motor Vehicle Georgia Institute of Technology School of Electrical and Computer Engineering ECE 4007 Ehren.
Turning a Mobile Device into a Mouse in the Air
ECE 477 Final Presentation Team 13  Spring 2012 Martin Pendergast, Stephen Edwards, Nick Kwolek, David Duelmler.
ECE 477 DESIGN REVIEW TEAM 14  SPRING Project Overview  Target Audience: Amateur Musicians  Obtain a “Guitar Tab” format of music  View Tabs.
Circular Buffer Audio Generation Using the Karplus-Strong String Synthesis Algorithm.
Project Presentation Eoin Culhane Multi Channel Music Recognition for an Electric Guitar.
Multi Channel Music Recognition for an Electric Guitar.
Final Year Project Eoin Culhane. MIDI Guitar Guitar with 6 outputs 1 output for each string Each individual string output will be converted to MIDI.
S.Klimenko, LSC meeting, March 2002 LineMonitor Sergey Klimenko University of Florida Other contributors: E.Daw (LSU), A.Sazonov(UF), J.Zweizig (Caltech)
ELECTRONIC STETHOSCOPE ARRAY Groupe 70 Robin GUIGNY & Fatima Zohra HASNAOUI ECE 445 Spring 2016.
Automatic Guitar Tuner Group #10 Dariusz Prokopczak & Stephan Erickson ECE 445 Sr. Design December 9, 2014.
Sound Controlled Smoke Detector Group 67 Meng Gao, Yihao Zhang, Xinrui Zhu 1.
SOUND
Codec 2 ● open source speech codec ● low bit rate (2400 bit/s and below) ● applications include digital speech for HF and VHF radio ● fills gap in open.
[1] National Institute of Science & Technology Technical Seminar Presentation 2004 Suresh Chandra Martha National Institute of Science & Technology Audio.
ECE 492 Capstone Design: Multi-Functional Wireless Guitar
  Digital Signal Processing Implementation of a 1961 Fender Champ Amplifier
CS 591 S1 – Computational Audio
EE434 Jason Adams Mike Dierickx
Spectrum Analysis and Processing
Voice Manipulator Department of Electrical & Computer Engineering
Speech Processing AEGIS RET All-Hands Meeting
EE Audio Signals and Systems
Introduction King Saud University
Basic Concepts of Audio Watermarking
A Comparison of Field Programmable Gate
ECE 477 DESIGN REVIEW PART 2 Team 14
Electrical traditional Chinese Instrument - Xun
ECE 477 DESIGN REVIEW TEAM 14  SPRING 2010
ECE Computer Engineering Design Project
Introduction 1st semester King Saud University
Presentation transcript:

Auto-tuning for Electric Guitars using Digital Signal Processing Pat Hurney, 4ECE 31 st March 2009

Outline of Presentation Project Background Aims of Project System Overview Research, Development and Testing of Functions used in Developing the System Pitch Detection Pitch Manipulation VST Development Project Conclusion Summary of Goals Possible Future Work Questions

Project Background Tuning problems are a large problem for guitarists, both professional and amateur Can be hard to correct in a live environment due to a variety of factors. Numerous hardware methods have been used to try and prevent tuning loss in guitars but these still don’t completely prevent it This system aims to develop a system capable of digitally correcting the pitch offset of the guitar with the use of a VST

Project Overview Signal from Piezo Saddles sent to Firepod interface Pitch altered Signal sent to Guitarists Rig One signal sent in to auto-tune VST for correction Piezos located on bridge

Pitch Detection An FFT was used to determine the pitch of the guitar signal An FFT was used on blocks of 8000 samples, sampled at 16 kHz to acquire the Magnitude Spectrum of the guitar signal. The fundamental frequency was then determined from this by determining the position of the first significant peak in the signal Highest peak was not used to determine fundamental as 2 nd and 3 rd harmonics are tallest peaks for small window of time The resolution used with the FFT varied depending on the approximate location of the fundamental frequency The location of the fundamental was approximated with the use of LP, BP and HP filters The fundamental has the highest energy content in the note If the highest energy content was present in the low pass filter, the fundamental is located here and a resolution of 8192 is used

Pitch Detection - Filtering Example of filters and cut-off frequencies: If a 110Hz wave was input to the system, its fundamental would lie in the range of the low-pass filter. A resolution of 8192 would then be used 8192 filter4096 filter2048 filter

Pitch Detection - Testing The cut-off frequencies used in the filters were determined through testing the signal Signals ranging in pitch from 110Hz to 660Hz had FFTs of varying resolutions,( ), performed on them This testing showed that low frequencies, from <82Hz to ~170Hz require a large resolution of 8192 for accurate results

Pitch Manipulation Pitch of out-of-tune guitar signal is corrected with the use of a phase vocoder A MATLAB implementation of a phase vocoder was discovered through research. This was then tested to determine how accurate it was at manipulating pitch, and how natural sounding the notes were Flow of Phase Vocoder Block of 8000 samples Windowing STFT Spectral Manipulation ISTFT Overlap Add Pitch-shifted Signal

Pitch Manipulation - Testing Testing carried out in MATLAB by strumming the guitar and determining how much the guitar goes out-of-tune by Strummed softly, max drop in pitch = 2.6Hz Strummed hard, max drop = 10.85Hz These results show that strumming the guitar hard causes a much larger drop in pitch then soft strumming Auditory testing was carried out to determine how natural sounding the pitch shifted note from the phase vocoder was Max pitch shift capable ~ semitones Large pitch-shifts are not possible with the phase vocoder as the spectral envelope of the reconstructed signal has been changed resulting in unwanted sounds in the finished signal

VST Development A VST (Virtual Studio Technology) was used to implement the pitch algorithms in real-time This required re-coding the pitch algorithms in C++ for compatibility with the Steinberg VST SDK The VST is run from a DAW (Digital Audio Workstation) The DAW selected for the project was REAPER. This is a free user-friendly application that is compatible with most free and commercial VSTs

VST Development Two main functions in guitar auto-tuning C++ source code VST constructor processReplacing Variables declared in header file are initialised in main constructor. Other classes called in the main VST, such as the FFT and phase vocoder classes, are also initialised here The input audio stream is manipulated in the processReplacing function before being passed out to the output stream The input audio stream consists of a buffer of 1024 samples rather then a continuous stream of samples. Once these 1024 samples are processed, the next block of samples is passed in to be processed by the VST

VST Development - Operation Two modes of operation available to user: Mode One determines tuning offset of selected string Mode Two continuously corrects tuning offset with phase vocoder If Mode One is enabled, the system accumulates 8000 samples when the selected open string is struck. The tuning offset is then calculated from this and stored for future use If Mode Two is enabled, the tuning offset determined from Mode One is used to correct the pitch of the out-of-tune string

VST Development - Operation Example of System UI, with Low E Pitch Detection enabled is shown below

VST Development - Problems CPU usage is a major factor in the system. A large amount of CPU power is used in: Filtering – 3 5 th Order Butterworth Filters Large FFT – 8192 resolution on block of 8000 samples Six independent channels being run in VST to process each string individually Input/Output Latency is also a large factor in the system. Standard Windows audio drivers have a latency of approximately 447ms. This was solved with the use of the ASIO driver ASIO4ALL. This has a latency of approximately 13ms.

Conclusion Aim of project was to develop a VST system capable of correcting the pitch of an out-of-tune electric guitar signal Both algorithms embedded in C++ in a VST format Pitch Manipulation algorithm runs in real-time, Pitch Extraction algorithm not fully implemented due to time constraints Research performed in MATLAB has proven concept of auto-tuning guitar system

Future Work Wireless link could be implemented between piezos and interface Error handling needs to be embedded in VST to prevent two sliders being turned on for the strings

Questions?