Sndlib BETA 1.0

De EnTuWii

Librería de sonido para Wii desarrollada por "Hermes".


Tabla de contenidos

Características

- Trabaja a 32000Hz y 48000Hz por hardware

- Manejo de 16 voces (configurable, aunque como el mezclado es mediante software, mejor ser prudentes)

- ejecución de voces en Mono o Stereo, 8 o 16 bits (con signo), con ajuste de volumen independiente para cada canal

- Control del Pitch (frecuencia) desde 1Hz hasta 144000Hz en las voces

- Posibilidad de añadir un retardo en ejecución para crear efectos de reverberación, ecos y encadenamiento de sonidos

- Ajuste dinámico del pitch y volumen (para creación de efectos especiales)

- Tres modos de operación: ejecución simple, ejecución continua en doble buffer y ejecución de notas musicales

- Diversas funciones de control, posibilidad de callbacks, contadores de tiempo, etc

- Añadido soporte para MODs, OGG (lib 'tremor') y librería de creación de canciones (ver song_lib.h)


ejecución Libre

Se programa una voz para que se ejecute una sola vez, ajustando el formato, frecuencia, retardo y volumen de cada canal. Ideal para efectos de sonido


ejecución continua en doble buffer

Se programa una voz de forma similar a la ejecución simple, pero se le añade una función de callback que será invocada cuando la voz pueda agregar nuevos samples, mediante una función especial.

Ideal para reproductores de música (por ejemplo, Modplay, que ya lo he adaptado para trabajar con esto, o la librería 'Tremor' para reproducir Ogg)


ejecución de notas musicales

Se ajusta la voz con una función especial que permite cargar el sample fijando un punto de loop, para luego ejecutar las notas mediante otra función que permite ajustar la frecuencia de la nota, retardo, ataque, sostenimiento, caída y volumen de cada canal.

Ideal para pequeñas ejecuciones musicales, improvisar música, etc

song_lib se apoya en estas funciones para la ejecución de voces


Los ejemplos

-El primer ejemplo, ejecuta un MOD de 'fondo' usando la voz 0 mientras muestra algunos efectos de sonido mezclando otras voces.

-El segundo ejemplo, ejecuta OGG de 'fondo' usando la voz 0 mientras muestra algunos efectos de sonido mezclando otras voces. Si se incluye un fichero en formato 'sample.ogg' en el directorio raíz, se ira reproduciendo de forma alternante con el interno

Modo libre: (Wiimote) : Usa A y B para mezclar voces de efectos. Con - y + puedes cambiar la velocidad de reproducción del Ogg/Mod, mientras que 1 y 2 activan diferentes 'músicas'. Pulsando la cruceta, Izquierda/Derecha avanzan o retroceden dentro del Ogg (solo para este ejemplo)

Con HOME o Pulsando RESET se sale de la aplicación.

Por cierto, el ejemplo muestra de fondo 900 cubos girando, junto con 900 secciones de 'suelo' y una iluminación compuesta por tres fuentes de luz 'Spot' para demostrar que Rocky puede con todo XD

NOTA: Este conjunto de librerías no debería dar problemas de adaptarlo a GameCube: solo habría que cambiar los Makefiles a la manera de GC, aunque snd.c (el núcleo central) se compila para ambas versiones. también se puede utilizar desde el PC, usando SDL la parte de Tremor, song_lib y snd.c /snd.h


Instalacion

Leete el leeme.txt o el readme.txt, pero básicamente, consiste en copiar el contenido de 'libogc' encima de el directorio del mismo nombre de devkitpro si tienes bajada la librería del CVS y compilar. O copiar el contenido de 'libogc_patch' dentro del directorio 'libogc' y compilar, si no tienes los fuentes y cuentas con libogc.a y los include.

El resto, sería copiar los ejemplos, tremor y song_lib en el directorio donde compiléis las cosas

Herramientas personales