Arxiu

Arxiu de l'autor

Síntesis FM: El patito feo de la sintetización. (Parte 1)

dimarts, 26 de gener de 2010 Comentaris desactivats

Este artículo proviene del audioblog, clausurado por su desuso y cuyas entradas han sido movidas a este blog para que no se pierdan en el olvido.

Entrada escrita originalmente por 909.

Fuera de la coña que pueda tener el titulo, no se va tan lejos de la realidad. La síntesis FM, no deja ser un proceso muy costoso en paciencia y esfuerzo, y muy alejado de la “nueva técnica” desarrollada llamada el “toqueteo”, ya que, a diferencia con otros tipos de síntesis los resultados son muy dispares y una complejidad muy superior a cualquier otra síntesis. Fuera de la crítica, constructiva, sobre el “toqueteo” en la síntesis, esta no deja de ser una presima básica para cualquiera que quiera dedicarse a saber programar síntesis FM, ya veremos durante los siguientes articulos sobre síntesis FM, que es un hueso muy duro de roer y de resultados bastante aleatorios. Por lo que si quieres toquetear, cierra tu navegador y ponte a jugar con tu NI Massive, este no es tu sitio. 😛

Antes de ponernos a explicar cómo funciona la síntesis FM, deberíamos hacer un poco de historia, y explicar qué es y qué instrumentos son sintetizadores FM. Vamos, de lo que va a tratar esta primera parte.

En 1973 John Chowning, el padre putativo de la síntesis FM, publica un artículo haciendo referencia a este punto y argumentando su descubrimiento al obtener sonidos por medio de procedimiento electrónicos utilizando una técnica familiar a la tecnología de radio y transmisión de ondas, en búsqueda como objetivo de sonidos similares con la voz humana donde el contenido armónico espectral es de una riqueza formidable; Es decir, la síntesis FM nace de la teoría por la que es posible alcanzar a programar sonidos naturales mediante una edición electrónica. Al estar experimentando con diferentes tipos y tasas de vibrato y tremolo en la voz, Chowning descubrió que con velocidades por encima de la capacidad humana y frecuencias con una rapidez similar a las de frecuencias de audio, comienzan a aparecer componentes armónicos proporcionales a mas o menos la frecuencia portadora del tono que se estaba haciendo vibrar. Así pues, el timbre de los sonidos tiene como característica principal un espectro relativamente complejo y que se desenvuelve con la duración del sonido. Por lo tanto cada elemento o componente del espectro posee su propio desarrollo individual produciendo un desarrollo espectral en la duración del sonido.

Si nos ponemos un poco “científicos” descubrimos que en la FM, la frecuencia instantánea de una onda portadora es variada de acuerdo a una onda moduladora, de tal forma que los cambios en la portadora se convierten en la frecuencia de la onda moduladora o frecuencia moduladora. La cantidad de variación en la onda portadora cambia alrededor de un promedio que se conoce como la desviación de picos de frecuencia entre ambas ondas y a la vez es proporcional a la amplitud de la onda moduladora. Los parámetros de una señal con características de frecuencia modulada son los siguientes:

  • $ {c, }$ Frecuencia de la portadora o frecuencia promedio.
  • $ {m, }$ Frecuencia moduladora.
  • $ {d, }$ Desviación de picos de frecuencia.

En resumida cuentas, en síntesis FM normalment se utilizan varios osciladores, llamados operadores, donde unos actuan como generadores de onda y otros modulan en frecuencia esa señal. Estos, los operadores, se colocan de distintos modos, por ejemplo varios generando ondas distintas y uno modulando todos a distintas intensidades, creando lo que se denomina, algoritmos.

Para saber que sintetizadores utilizan la síntesis FM hay que también hacer un poco de historia. Ya que Chownig vendió la patente de la síntesis FM a Yamaha en 1975. Yamaha lanzó posteriormente sus primeros sintetizadores de FM, los GS-1 y GS-2, que eran muy caros y pesados. Yamaha pronto siguió con la serie del GS, que utilizó un par de más pequeños llamados Combo CE20 y CE25, lo que podría llamarse la segunda generación FM de Yamaha .

La tercera generación Yamaha de sintetizadores se convirtió en su más popular. Éstos consistieron en el DX7 y el DX9 (1983) y posteriormente la serie TX como los modelos TX7 y TX81Z, que no dejan de ser DX pero en formato modulo/rack, y poco más tarde los también famosos FB-01. Ambos modelos anteriormente mencionados, DX7 y DX9, eran compactos y a un precio razonablemente, siendo el DX7 el primer sintetizador all-digital del mercado, . Llegó a ser y es imprescindible a muchos artistas de la música de los años 80, 90 y actuales, como por ejemplo: Depeche Mode, Sneaker Pimps, Front 242, Beastie Boys, The Crystal Method, Kraftwerk, Underworld, o incluso Supertramp y Stevie Wonder. Aunque para haceros un poco más de idea del “poderio” de los DX, el tema “The Bells”de Jeff Mills esta hecho apartir de un DX-100, la versión compacta del DX7.

Una de las anécdotas interesantes sobre este sintetizador, DX-7, es que durante la producción de la primera horneada. Sequential Circuits lanzó al mercado el Prophet 600, el primer sintetizador MIDI, obligando a reconfigurar los DX-7 para adaptarse al nuevo protocolo.

En la siguiente serie de fotografías podemos observar la evolución de los sintetizadores FM Yamaha.

Yamaha GS-1

Yamaha GS-1

Yamaha CE-20

Yamaha CE-20

Yamaha DX-7

Yamaha DX-7

Aunque no nos entrentendremos mucho más sobre los diferentes sintetizadores FM caben destacar de otras marcas los Roland D-50. Y de modelos Yamaha posteriores al 1990, como los DX-200 o los FS1R. O incluso VSTi como Native Instruments FM7-FM8. A titulo personal os diría que si os interesa este tipo de sintetizadores, os entrentengais primero con un FM8 para familiarizarse un poco en como va el tema. Ya que, sobretodo las primeras veces es bastante frustrante los resultados que da, y más, si no tenemos una cierta dinámica en programación de sintetizadores.

Aquí os dejo también algunas fotos algunos de los instrumentos antes mencionados.

Roland D-50

Roland D-50

Yamaha DX-200

Yamaha DX-200

Y ahora viene, posiblemente, la pregunta del millón: ¿Por qué síntesis FM? Como diría algún pseudo-intelectual mientras se atusa la barba con su mano: “Me agrada que me hagas esta pregunta”. 😀

Basicamente la síntesis FM, y no exagero, es un tipo de síntesis es ilimitado. Puedes estar años programando con uno de ellos y nunca repetirás un patch. Eso es debido a que las configuraciones para la programación de un patch es al detalle, permitiendo además una libertad de movimientos de las partes del sintetizador que permiten esa libertad de creación de sonidos. También cabe destacar que casi siempre son sonidos sacados des de 0.

“Si, si. Esto es muy bonito para un freak como tú. Pero ¿ Y los sonidos?” Bueno, si os habéis quedado con la copla, ha salido varias veces durante este articulo mencionada la palabra armónicos.

Uno de los sonidos, bajo mi punto de vista, más bonitos de estos instrumentos, y concretamente de mi queridísimo DX-7S, son los denominados Chords. Este sonido consiste en crear una serie de armónicos a partir de la nota tocada. Es decir para un intervalo o un acorde, se generará una serie de armónicos para cada nota, dependiendo si la serie armónica está programada para cada operador, o independientes entre operadores . Es el sonido tan común y caracteritisco de estilos como Dub Techno, Detroit, House y otros estilos varios.

Hablando de Techno y sucedáneos, la FM también es capaz de sacar unos bajos y sub bajos muy gordos, agresivos, a la par que pads muy suaves con texturas muy finas, casi celestiales. Por supuesto, los órganos también son un punto fuerte, e inclusive, podemos tener un guitarra española, casi idéntica a una original. Ayer probando también intenté emular un violín, pero siempre queda ese resquicio sintético, aunque a mi me parece agradable. Como ya hemos dicho al principio, ” La síntesis FM nace de la teoría por la que es posible alcanzar a programar sonidos naturales mediante una edición electrónica“; por lo que siempre podéis intentar emular cualquier instrumento natural, aunque a veces los resultados no sean 100% al original. Y para rematar, algo que a mi me tiene encandilado, son los sonidos percusivos, algunos muy marcianos, tan utilizados en el minimal y en el Detroit Techno a lo más puro estilo Axis, UR.

Por cierto, os dejo aquí la foto de mi DX-7S junto a sus compañeros de estudio.

Estudio

Hasta la siguiente entrega.

Categories: General Etiquetes:

Integrando CakePHP y phpBB 3.x

dissabte, 23 de gener de 2010 6 comentaris

Ocultar

Antes de empezar…

Más o menos al empezar con este blog expliqué cómo podíais hacer un registro de usuarios externo a phpBB3 con PHP. Hoy voy a contaros cómo hacer para implementar el registro y login de usuarios de phpBB3 en CakePHP.

Podéis ver, como ejemplo, la página de underave. Pero os pido por favor que no os registréis si no vais a utilizar la cuenta.

Antes de empezar con el tutorial, por favor, leeros el tutorial anterior sobre el registro de usuarios externo a phpBB3, ya que habrá ciertos aspectos que pasaré por alto por estar explicados en ese tutorial.

Además de miraros ese tutorial deberíais echar un vistazo a la documentación del componente Auth, ya que sin él el registro de usuarios sería otra cosa…

Como siempre, empiezo con lo que he utilizado para llevar a cabo el tutorial…

  • CakePHP (v. 1.2.4.8284 [1.2.5 stable])
  • phpBB 3.0.2
  • Componente de integración de phpBB3 (que ahora crearemos)

Aunque yo haya utilizado la versión 3.0.2 de phpBB, debéis saber que este sistema debe funcionar igual de bien en cualquier versión de phpBB 3 😉

Parto de la base de que tenéis creado un modelo y un controlador encargados de gestionar los usuarios de vuestra aplicación Cake. En mi caso los he llamado “users“, aunque podéis llamarlos “usuarios”, “members“, o como os dé la gana.

Es decir, doy por supuesto que ya tenéis un sistema de usuarios funcionando en vuestra aplicación CakePHP. En este tutorial sólo os explicaré cómo integrar el registro y login de phpBB3, así que todo lo demás (validaciones de datos, creación de formularios, funcionamiento de la clase Auth…) quedará por supuesto (lo cual no quiere decir que no vaya a haber código al respecto ;)).

Llegir més…

Adiós MultipleIE… Hola IETester!

divendres, 22 de gener de 2010 5 comentaris

Acabo de descubrir IETester, una aplicación para Windows (compatible con todas sus versiones) con la que podéis comprobar cómo se ven vuestras webs desde Internet Explorer (desde la versión 5.5 hasta la 8).

Si habéis probado ‘MultipleIE’ sabréis lo magníficamente bien que va y probablemente también sabréis que dejó de funcionar con Windows Vista.

No me enrollo más, os dejo aquí una imagen y el enlace para que lo probéis ya mismo:

IETester

Categories: Programació, Web, Windows Etiquetes:,

Grave vulnerabilidad en todas las versiones de Windows

dimecres, 20 de gener de 2010 1 comentari

Fuente: GenBeta

¡Urgente! Se ha detectado una vulnerabilidad muy crítica en todas las versiones de Windows desde 1993, un “0-day” en toda regla, que permite escalar privilegios y ejecutar código con permisos de sistema, equivalentes a efectos prácticos a los de administrador.

Por ahora no existe parche, y el exploit es fácilmente aprovechable por cualquiera. La causa es un fallo de diseño que persiste en todas las versiones de Windows de 32 bits desde 1993, por lo que afecta a Windows 2000, 2003, 2008, XP, Vista y 7.

El fallo se encuentra en el soporte “legacy” que permite ejecutar aplicaciones de 16 bits. Resulta que el sistema no valida correctamente el cambio de contexto y pila que se efectúa al llamar al manejador #GP trap. Windows comete varios fallos, toma como ciertas varias suposiciones que son incorrectas y el resultado es una puerta abierta al sistema con alfombra roja y luces de neón.

Con un código que va en contra de dichas suposiciones, un usuario malicioso puede realizar un cambio de contexto y ejecutar código con derechos de Sistema, que están por encima incluso del de los administradores.

Llegir més…

Categories: Windows Etiquetes:,

CakePHP Auth Component ajaxLogin

diumenge, 27 de desembre de 2009 Comentaris desactivats

Si habéis leído mi tutorial sobre la subida de ficheros con uploadify y validación Ajax en CakePHP recordaréis que separé los métodos add y ajax_add, ya que pensé que el único modo que había de mostrar un error de sesión al usuario era separando los métodos para, a uno de ellos darle permisos de acceso y al otro no.

De este modo podía mostrar un error de “sesión expirada” al usuario, así:

$user = $this->Auth->user();
if(!empty($user)){
	// Código para añadir el elemento
}else{
	$message = "<b>" . __("Error",true) . ":</b> " . __("Tu sesión ha expirado, vuelve a iniciarla por favor",true);
	$data = $this->data;
	$this->set('sessionTimeOut',compact('message','data'));
}

Llegir més…

Categories: Programació, Web Etiquetes:, , ,