Avances, Diario de...

Started by SplinterGU, April 17, 2008, 03:00:51 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

SplinterGU

nueva funcion al mod_sound

set_music_position( double segundos )

bueno, con respecto al tema de la performance, voy a intentar conseguir los fuentes de la SDL que esta en el SDK de GPH, quizas el problema esta en como maneja los threads de sonido (si es que esta compilada con threads) o los wait que hay que esperan que termine cada chunk de sonido.

necesito esta version porque tiene el manejo de los joys.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

BoMbErLiNk

Mola, eso vendra bien para devolver la canción en el trozo en el que se estaba reproduciendo, ej. entras a una tienda, suena otra canción, sales y sigue la música donde estaba  :)

Ahora que estas tocando el sonido has pensado en añadir alguna función para eco ? Se que se puede hacer por código sin embargo..
O una para decidir por donde empieza y acaba un bucle en una canción ?

Solo sugerencias claro  :)

Mr Matsusaka

Viene bien para canciones que tienen una intro, y no quieres que se repita desde el principio.

Drumpi

Oye, si viene alguna función para obtener la FFT o para obtener los datos antes de mandarlos a la tarjeta de sonido, se le podrían aplicar miles de efectos: con las muestras se podría conseguir eco, cancelación de ruido, reverberación... y con la FFT el cambio de frecuencia, ecualizador, filtrado de sonido...

Bueno, ya estoy soñando otra vez ;D
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

SplinterGU

Quote from: BoMbErLiNk on August 15, 2010, 12:44:25 PM
Mola, eso vendra bien para devolver la canción en el trozo en el que se estaba reproduciendo, ej. entras a una tienda, suena otra canción, sales y sigue la música donde estaba  :)

Ahora que estas tocando el sonido has pensado en añadir alguna función para eco ? Se que se puede hacer por código sin embargo..
O una para decidir por donde empieza y acaba un bucle en una canción ?

Solo sugerencias claro  :)

para hacer eso deberias saber donde estas en la reproduccion, pero para saber eso no hay funcion en la mixer.

con respecto al eco, podria fijarme que efectos hay.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

Quote from: Drumpi on August 15, 2010, 03:56:56 PM
Oye, si viene alguna función para obtener la FFT o para obtener los datos antes de mandarlos a la tarjeta de sonido, se le podrían aplicar miles de efectos: con las muestras se podría conseguir eco, cancelación de ruido, reverberación... y con la FFT el cambio de frecuencia, ecualizador, filtrado de sonido...

Bueno, ya estoy soñando otra vez ;D

no se que es la fft, pero si hay funciones de pre-proceso, que te permite modificar vos lo que quieras, pero dudo que eso sea performante.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Quote from: SplinterGU on August 15, 2010, 03:58:36 PMpara hacer eso deberias saber donde estas en la reproduccion, pero para saber eso no hay funcion en la mixer.

con respecto al eco, podria fijarme que efectos hay.

Eso es fácil: basta con tener un contador o usar un timer desde el principio de la reproducción.

Respecto a los efectos, la gran mayoría se limitan a versiones del eco, es decir, repetir muestras con mayor o menos retardo, con mayor o menor atenuación... al menos los que se hacen sin procesado.

Quote from: SplinterGU on August 15, 2010, 03:59:39 PMno se que es la fft, pero si hay funciones de pre-proceso, que te permite modificar vos lo que quieras, pero dudo que eso sea performante.

FFT: Fast Fourier Transform, transformada rápida de Fourier, transforma una señal representada por una serie de muestras en la suma de sinusoides que la componen, representado por valores delta que indican frecuencia y amplitud.
No se si te acuerdas de qué iba mi PFC inicialmente, programé la FFT en Bennu tomando datos desde un archivo wav.

Que si es perfomante o no, depende: los DSP pueden manejarla sin problema gracias al manejo de instrucciones SIMD, de la paralelización y de la posibilidad de hacer una suma y multiplicación en un único ciclo. Obviamente la transformada consume ciclos, pero no sé hasta qué punto es necesario hacer la transformada inversa (se puede obtener el valor de la siguiente muestra sumando el resultado de una multiplicación por sinusoide), o la directa (creo que OGG y MP3 comprimen en base a transformar la señal en su FFT y descartando frecuencias inaudibles, enmascaradas, con poca amplitud y tomando sólo una transformada cada x tiempo).

Vamos, la FFT es básico en el tratamiento de audio: puedes sintetizar un instrumento en menos de 5 sinusoides, y símplemente desplazandolos en frecuencia obtener cualquier nota.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

BoMbErLiNk

Quote from: SplinterGU on August 15, 2010, 03:58:36 PM
con respecto al eco, podria fijarme que efectos hay.

:)
--

set_music_position es dinamico y cambia la cancion en cualquier momento o hay que llamarlo antes del play_song ? Si es lo segundo se me ocurre una idea  :)

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

SplinterGU

drumpi, hasta donde recuerdo, si, creo que la mixer lo soporta...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

panreyes

Esto... ¿no funciona load_song con wav?
En Fénix juraría que si que se podía, evitando cargar el wav entero en memoria y haciendo uso de buffer.

Ahora dice: "Couldn't load ./ogg/menu.wav: Module format not recognized" :S

SplinterGU

eso no es memoria, es el formato de tu wav.

algo mal esta en el formato que la mixer no lo reconoce, o la sdl_mixer.dll que estas usando.
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

panreyes

#1002
Eso veo... Veo que en mod_sound no hay ninguna referencia a los formatos, se encarga todo la sdl_mixer!

Vale, my megafault y un FAIL que te cagas: el programica OGGDropXPd convierte los ogg a wav de 48khz :\

panreyes

¿Y funciona el instalador de Bennu para Windows? :S

osk

Quote from: osk on August 14, 2010, 09:29:59 AM
Hola. ¿Habría la posibilidad,por reota que fuera, de prescindir de la SDL_Mixer? Existen varias librerías de sonido muy buenas por ahí...

Estoooo...¿fao?