prototype of a radio-on-demand broadcast receiver with
TRANSCRIPT
Prototype of a Radio-On-Demand Broadcast Receiver with Real-Time Musical Genre Classification
B. HAPPI TIETCHE1, O. ROMAIN4, B. DENBY2, L. BENAROYA2, F. DE DIEULEVEULT3, B. GRANADO4, G. WASSI4, H. KHEMIRI5, G. CHOLLET5, D.
PETROVSKA5, R. BLOUET6, K. HACHICHA1 AND S. VIATEUR1
1. Laboratoire Informatique de Paris 6 – LIP6 – Université Pierre et Marie Curie 2. Université Pierre et Marie Curie, Laboratoire SIGMA, ESPCI-ParisTech
3. Laboratoire LIST – CEA 4. Laboratoire ETIS – Université Cergy Pontoise
5. Institut Mines Télécom 6. YACAST
[email protected], [email protected], [email protected]
Software Defined Radio applied to broadcast media allows to imagine digitizing an entire broadcast band, decomposing it into its component channels, demodulating these to produce parallel real-time audio streams, and applying indexing or other audio processing algorithms, all in a single programmable device.
Objective Radio On Demand
Speech Music
Genre Song ID
ctc.
Word spot Speaker ID
ctc.
Station 1
Multimedia Database / User Interface
Speech Music
Genre Song ID
ctc.
Word spot Speaker ID
ctc.
Station N LNA
+
ADC
Audio
Indexing
Processor
Multimedia
Interface
Channelizer / Demodulator
Antenna Audio Indexing
Prototype
!!
HMI
• Stratix Altera FPGA : EP2S180 - IP WOLA
- Resampling
- Cordic • Multi-core
- GMM
- HMI
ALUTs 67999/143520 (45%) Registers 64950/143520 (36%) Total registers 64950 Memory in bits 2275985/9383040 (24%) DSP block 9 bit 464/768 (59%)
Features
Algorithms
• Bandpass sampling @ 87MHz
• Resampling @ 51.2MHz
• 4 WOLA Filter with 128point FFT running @ 51.2MHz
• // Cordic
Parallel demodulator Musical Genre Classification • MFCC to extract acoustic feature
• Gaussian Mixture Model Classifier
• Training on GTZAN (http://marsayas.info) and French radio datase
• Decision based on the maximum of the three scores
• 96.3% of accuracy
Classical Jazz Variety Classical 86% 4% 1% Jazz 10% 93% 0% Variety 4% 3% 99%
Confusion matrix
Core 2 duo Q9400@ 2.66GHz Core i7 2600@ 3.4GHz 1 vector 699ms 457ms 51 channels 35.67s 23.307s
Processing time on multi-core
! ! !