! ! 5 EFECTOS DE SONIDO En#el#mercado#existen#multitud#de#sistemas#multiefectos#en#forma#de#pedaleras,)equipos)multifuncionales)con) varios'controles'giratorios'y'botones,'o'amplificadores'con'efectos'integrados.'Hay'equipos'profesionales+que+ sobrepasan) los) 1000) euros! y" otros," más$ asequibles,$ con$ precios$ que$ oscilan$ entre$ los$ 50$ y$ 100$ euros.$ A$ continuación(se(muestran(algunos(de#dichos#sistemas:! ! ! ! ! ! ! ! ! ! ! Figura'5.1!–!Algunos(ejemplos(de(sistemas(comerciales(multi"efectos'para'guitarra'eléctrica.! ! ! Los$efectos$más$utilizados$en$el!mundo&de&la&guitarra"eléctrica"son"la"distorsión,"el"delay"o"eco,"el"flanger,"el" trémolo,(el(chorus,(el(reverb,(el(overdrive,(el(fuzz…(pero(para(este(proyecto(vamos(a(quedarnos(con(cuatro(de( ellos,& ya& que& serán& suficientes& para& demostrar& algunas& funcionalidades& del& DSP& y& las! posibilidades* que* nos* ofrecen'los'transceptores'de'radio"frecuencia)NRF24L01+.! ! Los$cuatro$efectos$que$finalmente$se$han$elegido$para$este$proyecto$van$a$ser$los$siguientes:! 1) 2) 3) 4) Distorsión Delay Flanger Chorus ! Para!su#implementación#en#código#C#se#ha#hecho#un"estudio"previo"del"funcionamiento"interno"de"cada"uno" de#ellos.#Consultando#en#diversas#bibliografías,#webs#y#proyectos#fin#de#carrera#de#otras#universidades,#se#ha# llegado'a'tener'una'idea'del'funcionamiento'de'estos'cuatro'efectos.'Como'se'verá'a'continuación,(estos(efectos( se# basan,# mayoritariamente,# en# el# almacenaje# y# posterior# recuperación# de# muestras# de# sonido& y& en& la& multiplicación+de#dichas#muestras#con#cantidades#numéricas#preestablecidas.! ! ! ! ! ! ! ! !(Algunos!diagramas(de#este#capítulo#han#sido#tomados"de"la"referencia"[4])! 35! ! ! ! 36! ! ! ! Efectos!de!sonido! 5.1 Distorsión ! La#distorsión#ha#sido#utilizada#en#la#música#desde#hace#mucho#tiempo,#usándola#con#guitarras#eléctricas#en#la# música'rock'&'roll,'y'en'otros'estilos'como'el'blues&eléctrico!o"el"jazz$fusión.!Los$efectos$de$distorsión$a!menudo' son$llamados$“efectos$de$ganancia”,$o$gain!effects,"ya"que"el#sonido!de#guitarra#distorsionada#se#conseguía,"en" un#principio,#saturando#amplificadores#de#válvulas.!Su#característico#sonido#se#consigue#cuando#la#onda#de! sonido&se&va&deformando&hasta!parecerse'más'a'una'señal'cuadrada'que'a'una'señal'sinusoidal.! ! ! Figura'5.2!–!Amplificador,a,válvulas,con,control,de,ganancia,y,distorsión.! ! Los$ primeros$ amplificadores$ para$ guitarra$ eléctrica,$ allá$ por$ los! años% 50,% eran,% de% cierta% forma,% de% baja% fidelidad,(y(solían(distorsionar(cuando(su(volumen((gain)!era$incrementado$por$encima$de$su$límite$de$diseño$ o"cuando"éstos"presentaban"algún"daño"o"defecto."En#la#actualidad#hay#multitud#de#pedales#con#los#que#imitar# dicho&efecto&gracias&al&uso&de&amplificadores&operacionales&o&de&DSPs,&al&igual&que&en&este&proyecto.! ! ! ! Figura'5.3!–!Pedal&de&distorsión&a&base&de&amplificador&operacional.! ! El#efecto#de#distorsión#en#la!señal&de&audio&puede&verse&gráficamente&en&la&siguiente&figura,&donde&se&muestra& una$distorsión$suave$y$otra$más$fuerte.'En'la'primera,"la"señal"sinusoidal"aún"conserva"cierta"curvatura"en"sus" picos&mientras&que,&en&la&segunda,&la&señal&casi%ha#tomado#forma#de#señal#cuadrada:! ! !! ! Diseño!y!Realización!de!un!Sistema!de!Procesamiento!de!Audio!con!Control!Inalámbrico! ! 37! ! Figura'5.4!–!Comparación+entre+distintas'formas'de'onda'distorsionadas!y"la"original.! ! La#implementación#en#pseudocódigo!de#este#efecto!sería&de&la&siguiente&manera:! Si#Valor&absoluto&de#x(n)#>!Umbral:! y(n)%=%Umbral;!(Si$x(n)%>%0%)! y(n)%=%"Umbral;((Si$!x(n)%<%0%)! En#caso#contrario:! y(n)%=%x(n);! Siendo'y(n)!la#salida#y#x(n)!la#entrada#del#sistema.! ! 5.2 Delay ! El#efecto#de#Delay#o#eco#en#los#antiguos#equipos#analógicos#se#basaban#en#el#uso#de!cavidades(reverberantes(o( en#el#uso#de#cintas#magnéticas,#con#una#cabeza#grabadora#que#grababa#el#sonido#en#una#parte#de#la#cinta#y#una# cabeza&lectora&que&leía&los&datos&que&habían&sido&grabados&un&tiempo&anterior&en&dicha&cinta.&Este&tiempo&era& modificable#alargando#o#acortando#la#longitud#de#la#cinta#magnética.! ! ! Figura'5.5!–!Antiguo(equipo(de(cinta(para(crear(el(efecto(de(Delay.! ! ! ! 38! ! ! ! Efectos!de!sonido! En# los# equipos# modernos# de# Delay# se# utilizan# procesadores# digitales# y# memorias" de" lectura" y" escritura." El" efecto& se& consigue& con& el& almacenamiento& y& posterior& lectura& de& muestras& de& sonido.& En& la& señal& final& se& mezclan(tanto(la(señal(limpia(de(entrada(como(la(almacenada((en(las(proporciones(deseadas),(consiguiendo(así( el#conocido#efecto&sonoro&de&eco.&! ! ! ! Figura'5.6!–!Moderno'pedal&para&crear&el&efecto&de&Delay.! ! ! Los$parámetros$típicos$de$un$efecto$de$Delay$son$los$siguientes:! • • • Retraso: es el tiempo elegido para reproducir la primera muestra almacenada desde que se recibió por el canal de entrada. Mezcla: es la cantidad, en tanto por uno, de señal almacenada que se mezcla con la señal original. Feedback o retroalimentación: es la cantidad de señal de salida que es reintroducida en el sistema. Si el feedback es alto, el número de repeticiones de la señal original que se oirá será superior al caso en el que la retroalimentación es menor. ! En#este#caso#podemos#distinguir#dos#tipos#de#Delay,#según#el#valor#de#la#variable#feedback:! • • Eco discreto: una sola reproducción de las muestras que se van almacenando (feedback = 0). Reverberación: una repetición infinita de las muestras grabadas con una progresiva disminución de la amplitud de las mismas, llegando al punto en que dejen de ser audibles dichas repeticiones (feedback mayor que cero y menor que la unidad). En caso de que se elija una cantidad de retroalimentación mayor a la unidad, el sistema se volvería inestable, haciendo que el sonido se amplifique cada vez más, llegando a saturar. ! El#diagrama%de%bloques%de%un%Eco%discreto%sería%como%el%que%sigue:! ! Figura'5.7!–!Diagrama'de'bloques(del(efecto(de(Eco(discreto.! ! ! ! ! !! ! Diseño!y!Realización!de!un!Sistema!de!Procesamiento!de!Audio!con!Control!Inalámbrico! ! 39! La#ecuación#de#este#modelo#sería#de#la#forma:! ! y(n)!="x(n)!+"Mix!!!x(n!"!m)! ! Siendo#Mix$la#cantidad#de#mezcla#deseada.! ! La#implementación#en#código#C#de#este#efecto#sería#de#la#siguiente#manera:! ! Almacenar)en)un)buffer)la)muestra)de)sonido)actual:! BUFFER['i']'='x(n);! i++;! Reproducir*la*mezcla*del*sonido*actual*con*la*muestra*almacenada:! y(n)%=%x(n)%+%a*BUFFER[%j%];! j++;! Siendo'‘j"="i"–!DELAY’!y"‘a’!un#valor#inferior#a#la#unidad#para#que#el#sonido#del#eco#sea#de#menor# amplitud)que)el)de)la)muestra)actual.! ! ! Mientras)que)el)diagrama)del)efecto)de)Reverberación)sería)del)siguiente)modo:! ! Figura'5.8!–!Diagrama!de#bloques#del#efecto#de#Delay.! ! ! La#ecuación#que#representaría#este#diagrama#sería#como#la#siguiente:! ! y(n) = x(n) + Mix · !! !!! ∙ !(! − ! ∙ !) Siendo i el índice del sumatorio, g la ganancia de realimentación y Mix la cantidad de mezcla a la salida. ! ! ! ! ! ! 40! ! ! ! Efectos!de!sonido! La#implementación#en#código#C#de#este#último#efecto#sería#de#la#siguiente#manera:! Almacenar)en)un)buffer)la)muestra)de"sonido"actual"sumándole"la"muestra"que"se"almacenó:! BUFFER['i']'='x(n)'+'a*BUFFER['j'];'! i++;! Reproducir*la*mezcla*del*sonido*actual*con*la*muestra*almacenada:! y(n)%=%x(n)%+%b*BUFFER[%j%];! j++;! Siendo'‘j#=#i#–!DELAY’!y"‘a’"y"‘b’!valores(inferiores(a(la(unidad%para%que%el%volumen%del%eco%vaya%en% decremento)y)evitar)así)un)efecto)indeseable)en)el)que)el)sonido)nunca)cese)(a!y"b!="1)"o"incluso"vaya" en#aumento#(a!y"b!>"1).! ! 5.3 Flanger ! El#efecto#Flanger#es#aquel#con#el#que#se#consigue#un#sonido#metalizado#oscilante,%sobre%todo%en%las%frecuencias% medias'y'altas.'Este'efecto'tiene'su'origen'en'la'palabra'inglesa'“flanging”!allá$por$los$años$60,$que$a$su$vez$ recibe&el&nombre&el&método&original&de&su&creación.&Originalmente,&la&señal&debía&ser&grabada&en&dos&máquinas! de# cinta# simultáneamente.# La# salida# de# las# dos# cabezas# reproductoras# de# estas# dos# máquinas# era,# a# continuación,*mezclada*en*una*tercera*grabadora.*De*esta*forma,*la*pequeña*diferencia*entra*las*velocidades* de#los#motores#de#las#dos#primeras#máquinas#resultaba$en$un$efecto$de$desfase,$o$“phasing”,!cuando'las'señales' eran%combinadas%en%la%tercera%grabadora.%El%efecto%de%“flange”!se#originó#cuando#un#ingeniero#puso#su#dedo,# literalmente,*sobre*el*flange!o"carcasa"de"la"cinta,"de"una"de"las"dos"grabadoras,"haciendo&que&la&máquina&se& ralentizara.* Cuando* el* operario* quitaba* el* dedo* de* encima* de* la* carcasa,* donde* giraba* la* cinta,* la* máquina* recuperaba(su(velocidad,(haciendo(que(el(efecto(de(sonido(se(revertiera(y(produjera(este(característico(sonido.! ! ! Figura'5.9!–!Antiguo(equipo'de'cinta&para&crear&el&efecto&de&Flanger.! ! ! ! !! ! Diseño!y!Realización!de!un!Sistema!de!Procesamiento!de!Audio!con!Control!Inalámbrico! ! 41! Ya#en#los#años#70#se#comenzaron#a#usar#dispositivos#electrónicos#para#recrear#este#tipo#de#sonido,#gracias#a#los# circuitos( impresos.( En( la( actualidad# también# se# usan# DSPs# para# crear# este# efecto.# En# cuanto# a# su# funcionamiento+en+procesadores+digitales,+este+efecto+se+consigue+duplicando+la+señal+original,+manteniendo+ una$ de$ ellas$ limpia$ (sin$ procesado),$ y$ desfasando$ la$ otra$ una$ pequeña$ cantidad$ de$ tiempo,& aumentando& o& disminuyendo*su*retraso*con*una*oscilación*contralada*por*un*Oscilador*de*Baja*Frecuencia*o*Low$Frequency$ Oscilator!(LFO).'Finalmente,'se'suma'esta'señal'retrasada'a'la'señal'limpia.! ! ! Figura'5.10!–!Moderno'pedal&para&crear&el&efecto&de&Flanger.! ! ! El#efecto#espectral#que#se#produce#en#la#frecuencia#de#la#señal,#a#causa#de#dicho#retraso#variable#en#el#tiempo,#es# equivalente* a* un* grupo* de* muescas* igualmente* espaciadas* en* el* espectro* de* audio* que$ se$ desplazarán$ armónicamente*por*él,*filtrando*la*señal.! ! Este%efecto%de%“filtro%peine”%aparece%porque,%para%algunas%frecuencias,%el%retraso%de%fase%introducido%será%de% 180$grados,$lo$que$es$equivalente$a$sumar$la$misma$señal$pero$de$valor$contrario$(interferencia)destructiva),) originando( las( muescas( del( filtro( para( dichas( frecuencias.( El( caso( contrario( se( dará( cuando( el( desfase( producido( sea( de( 360( grados,( en( cuyo( caso( las( señales( original( y( retrasada( se( sumarán,( doblando( su( valor( (interferencia*constructiva).! ! A"continuación"se"muestra"un"diagrama"de"su"funcionamiento:! ! ! Figura'5.11!–!Diagrama'de'bloques'del'efecto'de'Flanger.! ! ! ! ! ! 42! ! 5.3.1 Parámetros típicos ! ! Efectos!de!sonido! 1.#Mix:"Cuando"este"valor"de"ganancia"es"igual"a"cero,"la"respuesta"en"frecuencia"es"plana,"pero"a"medida"que" la#aumentamos,#acercándose#a#uno,#las#muescas#empiezan#a#aparecer,#llegando#a#conseguir#que#en#las#muescas# haya$un$cero$de$transmisión$cuando$Mix$vale$uno."Incluso"cuando"las"muescas"no"atenúan"del"todo!la#señal,#el# efecto&de&Flanger&es&audible,&siendo&máximo&cuando&Mix&es&igual&a&la&unidad.! ! 2.# Delay:# Especifica) el) tiempo) mínimo) de) retraso) en) la) copia) de) la) señal) de) entrada.) Razonando) sobre) la) respuesta(en(frecuencia,(este(valor(determina(cómo(de(lejos(irá$la$primera$muesca,$ya$que$a$menor$tiempo$de$ retraso,( menor( compresión( de( las( muescas,( y( viceversa,( a( mayor( valor( de( Delay,( mayor( compresión( de( las( muescas'del'“filtro'peine”,'como'se'observa'en'las'siguientes'imágenes:! ! ! Figura'5.12!–!Imagen'de'la'izquierda:'poca'compresión'de'las'muescas'del'“filtro'peine”'(valor'de'Delay'bajo).! Imagen'de'la'derecha:'mucha'compresión'de'las'muescas'del'“filtro'peine”'(valor'de'Delay'alto).! ! 3.# Profundidad# de# Barrido:# Este" parámetro" indicará" cómo" de" amplio" va" a" ser" la" variación" del" tiempo" de" retraso.(También(se(corresponde(con(la(amplitud(pico(a(pico(del(LFO.(! ! Se#cumple#la#siguiente#relación:! Delay+'Profundidad'de'Barrido'='Máximo'retraso'utilizado.! ! Un#valor#pequeño#para!este$parámetro$mantendrá$una$pequeña$variación$en$el$tiempo$de$retraso,$causando$ una$ compresión/expansión$ de$ la$ respuesta$ en$ frecuencia$ menos$ acusada,$ mientras$ que$ un$ valor$ elevado$ causará'que'las'muescas'se'compriman'y'expandan'a'lo'largo'de'un'área'mayor.#Debido#a#esto,#a#medida#que# la#profundidad#de#barrido#se#incrementa,#la#modulación#en#el#tono#se#vuelve#más#notable.#! ! ! Figura'5.13!–!Esquema(de(la(profundidad(de(barrido.! ! ! !! ! Diseño!y!Realización!de!un!Sistema!de!Procesamiento!de!Audio!con!Control!Inalámbrico! ! 43! 4.#Forma#de#onda#del#LFO:#Algunas#unidades#de#flanger#permiten#elegir#la#forma#de#onda#usada#por#el#LFO.# Esta%forma%de%onda%determina%como%varía%el%retraso%para%generar%el%efecto.%En%este%proyecto,%y%debido%a%que%es% deseable'un'tiempo'de'procesamiento'muy'bajo,'se'ha'elegido'una'señal'triangular,)si)bien)algunas)unidades) comerciales*del*efecto*Flanger*permiten*elegir*entre*una*señal*triangular*o*sinusoidal.! ! ! Figura'5.14!–!Formas'de'onda'para'el'LFO.! ! 5.#Frecuencia:#Controla(la(frecuencia(de#la#onda#usada#por#el#LFO.#Afecta#directamente#a#la#modulación#de# tono$producida$(a$mayor$frecuencia,$mayor$modulación$de$tono).! ! 6.#Ganancia#de#Realimentación:!Con$este$parámetro$se$puede$hacer$que$cierta$parte$de$la$señal$de$salida$se$ reintroduzca,en,la"unidad"de"retardo,"consiguiendo"así"un"sonido"más"metálico"y"con"eco.! Si#este#parámetro#es#mayor#que#la#unidad,#el#sistema#puede#volverse#inestable,#haciendo#que#el#sonido#nunca# se#atenúe.! ! La# implementación# en# pseudocódigo# de# este# efecto# sería# muy# parecido$ al$ del$ Delay$ pero$ cambiando$ constantemente)el)valor)de)la)variable)DELAY!en#cada#iteración:! ! Almacenar)en)un)buffer)la)muestra)de)sonido)actual)sumándole)la)muestra)que)se)almacenó:! BUFFER['i']'='x(n)'+'a*BUFFER['j'];'! i++;! Reproducir*la*mezcla*del*sonido$actual$con$la$muestra$almacenada:! y(n)%=%x(n)%+%b*BUFFER[%j%];! j++;! Siendo' ‘j# =# i# –! DELAY’,( donde! ‘DELAY’( irá$ cambiando$ poco$ a$ poco$ en$ cada$ iteración$ del$ bucle$ principal,)y)‘a’"y"‘b’!valores(inferiores(a(la(unidad.! ! 5.4 Chorus ! El#efecto#Chorus#se#percibe#como$varios$instrumentos$tocando$a$la$vez$una$misma$nota,$y$se$utiliza$cuando$se$ quiere&dar&más&riqueza&al&sonido&del&instrumento&que&se&toca.&En&el&efecto&chorus&también&se&hace&uso&de&un& LFO$o$oscilador$de$baja$frecuencia,$para$el$que$se$utilizan$como$entrada%formas%de%onda%como%la%sinusoidal%o% la#triangular.#Aunque#los#instrumentos#estén#perfectamente#afinados#siempre#se#produce#una#ligera#diferencia# de#tono.#Para#conseguir#mayor#realismo,#esto#se#puede#reproducir#mediante#la#variación#de#la#longitud#de#la# onda%que%está%retrasada%con%respecto%a%la%original.%! ! ! ! ! 44! ! ! ! Efectos!de!sonido! ! ! Figura'5.15!–!Pedal&para&recrear&el&efecto&de&Chorus.! ! Su#funcionamiento#es#similar#al#del#Flanger,#ya#que#también#se#duplica#la#señal#y#se#desfasa#con$la$ayuda$de$un$ LFO,% aunque% en% este% caso% no% se% usa% realimentación.% A% este% funcionamiento% de% Chorus% simple% se% le% pueden% añadir&varias&voces,&retrasando&cada&una&de&ellas&una&cantidad&distinta&de&tiempo&o&modificando&la&frecuencia& de#ellas.! ! 5.4.1 Parámetros típicos Los$parámetros$del$efecto$de$Chorus$vienen$a$ser$los$mismos$que$en$el$efecto$de$Flanger,$a$excepción$de$la$ ganancia&de&realimentación,&ya&que&no&existe&bucle&de&la&señal&hacia&atrás&en&este&efecto.! ! El#diagrama#de#bloques#del#Chorus#es#el#siguiente:! ! Figura'5.16!–!Diagrama'de'bloques'del'efecto'Chorus.! ! ! La#implementación#en#pseudocódigo#del#efecto#Chorus#de#voz#simple#es#muy#parecido#al#del#Flanger,#salvo# porque'no'se'realimenta'la'entrada.! ! Almacenar)en#un#buffer#la#muestra#de#sonido#actual:! BUFFER['i']'='x(n);!! i++;! Reproducir*la*mezcla*del*sonido*actual*con*la*muestra*almacenada:! ! !! ! Diseño!y!Realización!de!un!Sistema!de!Procesamiento!de!Audio!con!Control!Inalámbrico! ! 45! y(n)%=%x(n)%+%b*BUFFER[%j%];! j++;! Siendo' ‘j# =# i# –! DELAY’,( donde! ‘DELAY’( irá$ cambiando$ poco$ a$ poco$ en$ cada$ iteración$ del$ bucle$ principal,)y)‘a’"y"‘b’!valores(inferiores(a(la(unidad.! ! ! !