Download Direct Sound

Document related concepts
no text concepts found
Transcript
Resumen:
DirectSound
Componente de sonido de la API para
aplicaciones multimediales de
Microsoft: DirectX
Direct X & DirectSound

En 1995 aparece DirectX, con la idea de ser una
API, con la cual, los programadores de video juegos
se olvidarían del hardware que el usuario este
utilizando, dejando la responsabilidad al SO.

Parte de DirectX 1, es DirectSound, que en ese
tiempo solo ofrecía efectos básicos de paneo
izquierdo y derecho.
Direct X & DirectSound

DirectSound 3 introdujo en concepto de
Directsound3d (DS3D), que ofrecía comandos para
ubicar sonidos en un espacio 3D.

Fue hasta DS5 que estas librerías pudieron ser
aceleradas por componentes alternativos, lo que
redujo sustancialmente el consumo de CPU.
DirectSound hoy

Lo que hoy nos ofrece DirectSound:

Tocar archivos o recursos en formato WAV.
Tocar varios sonidos de manera simultanea.
Asignar alta prioridad a los sonidos.
Localizar sonidos en ambientes 3-D.
Agregar efectos como Ecos y Coros, y cambiar los
parámetros de estos de manera dinámica.
Capturar sonidos en formato WAV desde un
micrófono u otros dispositivos.





Buffers de sonido.

Para mezclar un conjunto de sonidos, se usan buffers
secundarios. Luego se mezclan y se reproducen en el
buffer primario de manera simultanea.

Para escribir sobre un buffer secundario, primero
debemos hacer un lock, a un trozo de ese buffer.
Escribir lo que deseemos en esos bytes y desbloquearlo,
con unlock. DS te permite bloquear un trozo mientras
se está reproduciendo otro, siempre con cierta
seguridad para evitar mezclas no deseadas.
Buffers de sonido.

Cada aplicación debe crear al menos un buffer secundario,
para almacenar y tocar los sonidos.

Un buffer secundario puede ser destruido en cualquier
momento, puede ser estático y que almacene un sonido
simple, o también puede tocar los sonidos de forma
streaming, en caso de que el consumo de memoria fuese
mayor.

Los buffers secundarios se mezclan simplemente al tocar
los sonidos al mismo tiempo, cualquiera sea el número, sólo
dependerá del poder de procesamiento.
Manejo de sonido 3D



Cordenadas usadas son las cartesianas, eje x de
izq a der, eje y de arriba abajo, y eje z, lejos a
cerca.
Para la posicion se usan metros.
Velocidad se mide por unidades en cada eje por
segundo, es decir m/s.
Sonido 3D:
Percepción de posición

Ruido general :
Una fuente de sonido que se aleja, se percibe
como una disminución cte de sonido.

Diferencia interaural de intensidad :
Sonidos que vienen del lado derecho se perciben
más fuerte por el oído derecho.
Sonido 3D:
Percepción de posición
Diferencia de tiempo interaural :
Un sonido que viaja hacia el oyente desde la
derecha, llegará antes al oído derecho que al izq.
 Amortiguación (Rolloff)
Dada la forma de la persona, los sonidos que
vienen desde atrás, así como los que vienen de la
derecha y son oídos por el oído izq., son
amortiguados.

Sonido 3D:
Processing Mode

Tres modelos de procesar la información 3D

Normal
Relativo a la cabeza
Disabled


Sonido 3D:
Efecto Doppler.


La velocidad en DS sólo
se usa para calcular
efectos Doppler.
Cambio en el tono
debido a un cambio en la
frecuencia de las ondas
de sonido.
Sonidos 3D:
Cono De Sonido.

Estos conos de sonido sirven para tratar con
fuentes de sonido, que se localizan en
determinado punto del espacio.
Sonidos 3D:
Cono De Sonido.
Efectos










Los efectos que se pueden aplicar a los sonidos con la librería de
DS son los siguientes.
Chorus
Compression
Distortion
Echo
Environmental Reverberation
Flange
Gargle
Parametric Equalizer
Waves Reverberation
DirectSound and DirectMusic

DirectSound y DirectMusic son componentes
separados de DirectX, que tienen funcionalidades muy
parecidas. Ambos reproducen sonidos WAV, y
DirectMusic al final sintetiza todos los sonidos en
ondas que son reproducidos por los buffers de
DirectSound.
Links

http://msdn.microsoft.com/directx