Centro Multimedia 2012 SESIN 15 Distorsin La distorsin en la seal de audio se da cuando est sobrepasa la capacidad de un componente para reproducir adecuadamente el proceso al que se est sometiendo La distorsin ms com!n es la "enerada por el proceso de incrementar la amplitud Cuando la seal su#re un recorte abrupto sobre la amplitud esta se cuadrati$a% #enmeno que es conocido como clipping. Lo que sucede es que se la seal adquiere una #orma de onda cuadrada en los picos lo que "enera un "ran contenido de armnicos y as& se produce el sonido que conocemos como 'distorsionado( Este sonido entonces es una distorsin de la amplitud 1 En las "r#icas anteriores )emos en el primer caso un *in+*c con mul,1% en el se"undo caso un *in+sc con mul,2% lo que sobrepasa su capacidad de ran"o dinmico y cuadrati$a la #orma redonda de la onda sinoidal En *C e-isten ob.etos y mensa.es que tienen como #inalidad "enerar distorsin de manera deliberada% )eamos al"unos Clip Cuadrati$a la seal a partir de un umbral determinado Clipar/0r1entrada% ba.o% alto2 entrada, seal de entrada ba.o, umbral de cuadrati$acin ba.o alto, umbral de cuadrati$acin alto // cuadratizando la onda sinoidal, prueba otros UGens {Clip.ar(SinOsc.ar(440,0,1), -0., 0.!.scope 3ota que ambos umbrales deben ser un )alor menor al del ar"umento de mul de la seal% de otra manera no ocurrir la cuadrati$acin .clip2 Este m4todo cuadrati$a de i"ual manera la seal% solo que a di#erencia del +b.eto Clip en este m4todo no se de#inen los umbrales Es necesario que el ar"umento de este mensa.e sea menor al )alor de ar"umento mul de la seal al que se esta aplicando 2 // para "erlo {SinOsc.ar(440,0,1).clip#(0.1)!.plot // para oirlo {SinOsc.ar(440,0,1).clip#(0.1)!.scope Wrap Enrolla una seal a partir de umbrales de#inidos 5rapar/0r1entrada%ba.o%alto2 entrada, seal que ser enrollada ba.o, umbral ba.o del enrrollado% debe ser menor que el alto alto, umbral alto del enrollado% debe ser mayor que el ba.o .wrap2 Este m4todo enrrolla la seal de manera bilateral% es un operador binario% que act!a sobre la seal de tal manera que la dobla% a di#erencia del ob.eto 5rap% este m4todo no de#ine el umbral alto y ba.o El mensa.e 6rap2 recibe el ar"umento de la cantidad de doblado que 7aremos% este )alor debe ser menor que el ar"umento ,mul de nuestra seal para que actue // para "er co$o actua {SinOsc.ar(#00,0,1).%rap#(0.#)!.plot // para escuc&arlo {SinOsc.ar(#00,0,1).%rap#(0.#)!.scope .distort Es un m4todo de distorsin no lineal perteneciente al "rupo de operadores unitarios Manipulacin de muestras de audio sboot8 b9:u##erread1s% ;/7ome/tito/s7are/*uperCollider/sounds/no<ontoLoop6a);2 bplay bquery = Record:u#ar1input>rray% bu#num% o##set% recLe)el% preLe)el% run% loop% tri""er% done>ction2 1 *ynt7?e#1@record% ABbu#90% dur9CC100B )ar si"% en)8 si"9Record:u#ar1*oundDnar102%bu#%loop,028 en)9En)Een0r1En)1F0%1%1%0G%F001%dur H002%002G2%done>ction,228 I2send1s28 2 smeter c9:u##eralloc1s%CC100JC%12 *ynt71@record% F@bu#% cbu#num% @dur% CC100JCG2 cplay c6rite1;/7ome/tito/s7are/*uperCollider/sounds/)o$ai##;% ;>DKK;% ;int1L;2 6rite1pat7% 7eaderKormat% sampleKormat% numKrames% startKrame% lea)e+pen% completionMessa"e2 pat7, strin"% entre comillas Dndica la ruta en donde se quiere escribir el arc7i)o 7eaderKormat, Kormato de audio con el que se quiere escribir el arc7i)o ?ebe ir entre comillas i con mayusculas1e";>DKK;2 sampleKormat, Kormato de sampleo con el que se quiere escribir el arc7i)o 1e" ;int1L;2 d9:u##eralloc1s%CC100JC%12 *ynt71@record% F@bu#% dbu#num% @dur% CC100JCG2 dplay d6rite1;/7ome/tito/s7are/*uperCollider/sounds/"ar"antaai##;% ;>DKK;% ;int1L;2 e9:u##eralloc1s%CC100JC%12 *ynt71@record% F@bu#% ebu#num% @dur% CC100JCG2 eplay e6rite1;/7ome/tito/s7are/*uperCollider/sounds/mascaai##;% ;>DKK;% ;int1L;2 #9:u##eralloc1s%CC100J1%12 *ynt71@record% F@bu#% #bu#num% @dur% CC100JCG2 #play #6rite1;/7ome/tito/s7are/*uperCollider/sounds/popai##;% ;>DKK;% ;int1L;2 <lay:u#ar1numC7annels% bu#num% rate% tri""er% start<os% loop% done>ction2 1 *ynt7?e#1@play% ABbu#num90% rate91% tri"Kreq9001% pos90% loop91% dur9CC100% amp91B C )ar tri""er%si"% en)8 tri""er9Dmpulse0r1tri"Kreq28 si"9<lay:u#ar11%bu#num%rate%tri""er%pos%loop2Jamp8 en)9En)Een0r1En)1F0%1%1%0G%F001%dur H002%002G2%done>ction,228 +utar10%si"Jen)28 I2send1s28 2 *ynt71@play% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002% @rate% 1% @tri"Kreq% 001% @pos% 0% @loop% 0G2 *ynt71@play% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002% @rate% 2% @tri"Kreq% 001% @pos% 0% @loop% 0G2 *ynt71@play% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002JC% @rate% 1% @tri"Kreq% 001% @pos% 0% @loop% 1G2 *ynt71@play% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002% @rate% 1% @tri"Kreq% 2% @pos% 0% @loop% 0G2 *ynt71@play% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002% @rate% H1% @tri"Kreq% 001% @pos% 1cnumKrames/CC1002/C% @loop% 1G2 1 Mde#1@bu#num% A)ar bu#8 in#doA bu#9Fc%d%e%#Gc7oosepostln8 *ynt71@play% F@bu#num% bu#bu#num% @dur% 1bu#numKrames/CC1002% @rate% 1% @tri"Kreq% 001% @pos% 0% @loop% 1G28 1bu#numKrames/CC10026ait8 I I2quantN1028 2 Mde#1@bu#num2play Mde#1@bu#num2stop 1 Mde#1@rate% A)ar rate8 O in#doA rate9rrand10O%22JF1% H1Gc7oose8 *ynt71@play% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002% @rate% rate% @tri"Kreq% 001% @pos% 1cnumKrames/CC1002% @loop% 1G28 16ait8 I I2quantN1028 2 Mde#1@rate2play Mde#1@rate2stop :u#?ur0r1bu#num2 // ?uracion del bu##er en se"undos u9A<lay:u#ar11%ebu#num%1%Dmpulse0r1MouseP0r101%C022%MouseQ0r10%:u#?ur0r1ebu#num2JC C1002poll2Iplay u#ree 1 Mde#1@tri"<os% A)ar tri"Kreq% pos8 in#doA tri"Kreq9FR%C%2Gc7oose8 pos9FS1R1O% TS2RS% 1C02C2Gc7oose8 *ynt71@play% F@bu#num% ebu#num% @dur% 1/tri"Kreq% @tri"Kreq% tri"Kreq% @pos% pos% @amp% 0O%G28 11/tri"Kreq26ait8 I I2quantN1028 2 1 i9ARL<Kar1Dmpulsear12%F0%0OG2% F1000%2000G%012JRIplay8 Mde#1@tri"<os2play 2 1 i#ree8 Mde#1@tri"<os2stop L 2 1 *ynt7?e#1@playMod% ABbu#num90%dur9CC100% amp91% rin"Kreq91000% rin">mp90% rin">dd91% #mKreq90%d90%rate91% loop90B )ar rateKM%si"% en)8 rateKM9*in+sc0r1#mKreq%0%d%rate28 si"9<lay:u#ar11%bu#num%rateKM% loop,loop2J*in+sc0r1rin"Kreq%0%rin">mp%rin">dd28 en)9En)Een0r1En)1F0%1%1%0G%F001%dur H002%002G2%done>ction,228 +utar10%si"Jen)Jamp28 I2send1s28 2 // *in modulacin *ynt71@playMod% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002G2 // Modulacin de >nillo *ynt71@playMod% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002% @rin"Kreq% 1000% @rin">mp% 1% @rin">dd% 0G2 // Krecuencia modulada 1rate2 *ynt71@playMod% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002% @#mKreq% T% @d% 00O% @rate% 1G2 *ynt71@playMod% F@bu#num% cbu#num% @dur% 1cnumKrames/CC1002% @#mKreq% 100% @d% 10% @rate% 100% @loop% 1G2 // Control "rano 1 *ynt7?e#1@playErano% ABbu#num90% rate91% pos90% dur9CC100% amp91B )ar si"% en)8 si"9<lay:u#ar11%bu#num%rate%1%pos2Jamp8 en)9En)Een0r1En)1F0%1%1%0G%F0001%dur H0002%0001G2%done>ction,228 +utar10%si"Jen)28 I2send1s28 2 *ynt71@playErano% F@bu#num% dbu#num% @dur% 001% @rate% 1%@pos% 0G2 Ubu#9dbu#num8 T Urate9rrand10O%228 Udur90018 Upos9rrand10%dnumKrames28 1 Mde#1@"rano% A)ar rate% dur% pos8 in#doA rate9rrand10O%228 dur9Udur8 pos9Upos8 *ynt71@playErano% F@bu#num% Ubu#% @dur% dur% @rate% rate% @pos% Upos G28 Udur6ait8 I I2quantN1028 2 Mde#1@"rano2play Mde#1@"rano2stop >udacity es un pro"rama de uso libre donde pueden editar sus sonidos antes de pasarlos a *uperCollider Esta obra est su.eta a la licencia >ttributionH3onCommercialH*7are>li0e =0 Vnported de Creati)e Commons <ara )er una copia de esta licencia% )isite 7ttp,//creati)ecommonsor"/licenses/byHncHsa/=0/ o en)ie una carta a Creati)e Commons% CCC Castro *treet% *uite S00% Mountain Vie6% Cali#ornia% SC0C1% V*> R