Grabadora de Sonidos

Hace unos dias estaba aburrido y se me ocurrio probar hacer una grabadora de sonidos, el ejmplo del micro ya esta hecho, lo unico que faltaba era guardarlo en la tarjeta.

lo he hecho basandome en la demo del micro por lo que no tiene nada grafico, dejo el codigo por si alguien quiere hacer un interfaz.

Probado en:

SC-CF: Funciona.
SC-SD: NO Funciona.

es probable que no funcione con la SD porque es lo segundo que hago con las librerias FAT. Con lo cual si alguien sabe como arreglarlo y tiene ganas puede hacerlo.
Al parecer si incluyo la compatibilidad con las SD el programa se cuelga en cualquier flashcard.

el sonido se guarda en .raw
cosa que con editores com Audacity o Switch podemos convertir a formatos como mp3 etc. para ello hay que tener en cuenta que se usa un formato 8bit signed y la frecuencia creo que es 8000 (Stereo).


binarios
http://www.lien.palib.info/nds/demos/micro.rar

codigo
http://www.lien.palib.info/nds/demos/micro_src.rar
Gracias por la aportacion lien, solo t falta adaptarlo para mi supercard ya ya vamos, te hago un monumento X-D X-D X-D X-D [toctoc] [toctoc]
un saludo ratataaaa
no lo puedo mirar, porque tengo SC SD, pero gracias por amliar la scene con algo tan desaprobechado en esta como es el micro.

Respecto a lo de La FAT en SC SD, si algun dia lo solucionas, y tienes tiempo, podrias poner un pequeño tutorial por estos foros...

GRACIAS
neopiro, tu que ya controlas las FAT mirate el codigo fuente haber si sabes como hacerlo, porque el programa s una gran idea!!!!

(Lastima k en el EZIV no rule... :'(
Yo también he estado haciendo cosas con el micrófono de la DS y bueno, te doy unos consejillos :-P

En el código ARM7 comenta la parte de actualizar el IPC que no uses. Grabar del micrófono requiere no hacer demasiados cálculos, ya que cuando los haces son milésimas de segundo que no estás grabando y pierdes calidad. Así pues, mientras grabes es mejor que no hagas estas cosas:

for(i=0; i IPC->curtime[i] = ct[i];
}

IPC->temperature = temp;
IPC->tdiode1 = t1;
IPC->tdiode2 = t2;

y tampoco:

z1 = touchRead(TSC_MEASURE_Z1);
z2 = touchRead(TSC_MEASURE_Z2);


batt = touchRead(TSC_MEASURE_BATTERY);
aux = touchRead(TSC_MEASURE_AUX);

// Read the time
rtcGetTime((uint8 *)ct);
BCDToInteger((uint8 *)&(ct[1]), 7);

// Read the temperature
temp = touchReadTemperature(&t1, &t2);

Sobretodo no leas la temperatura, ya que es lo que tarda más tiempo. Si no usas la pantalla táctil tampoco la leas mientras grabas, todo esto que tendrás de mejor calidad.

Tengo por ahí un código que graba a 16 bits, iba, pero al ir trasteando no se si aún va XD Me parece que no, pero si te interesa te lo puedo enviar, ya miraré si conservo una versión que vaya o te hago los cambios en tu programa ya que tienes el código colgado.

Un saludo!
freixa

Edit: Se me olvidaba, hay una nueva versión de la librería fat, puede que te solucione algunos errores: http://chishm.drunkencoders.com/libfat/libfat-20060709.tar.bz2
yo no controlo la fat, simplemente di unas cuantas patadas de ciego al sistema de archivos GBFS que tiene PAlib, ahora que estoy empezando con LibNDS, estoy perdido con el tema, por eso pedia un tutorial XD
vale en la pagina de chishm pone lo siguiente:

Partially supported devices (read only, disabled by default)
SuperCard SD
M3 Adapter SD
EFA 2.

y en los foros de dsdev chishm escribio lo siguiente hace 5 dias:

it doesn't support SC SD saving, and the card detection returns false positives when an SC CF is inserted. You can try enabling it if you want.


es decir, coincide con lo que yo dije, si activo el SD_SUPPORT se me cuelga el programa usando la CF, sera cuestion de las librerias.

despues añade que las esta reescribiendo, sera cuestion de esperar un poquito.


Freixa, de donde sacaste esa version de las librerias? en la pagina oficial no estan, son de ayer? quizas son la clave.

por otra parte gracias por los consejos, voy a probar que tal tira si le quito eso a ver si mejora la calidad de sonido.

eso de empezar a trastear con cosas que funcionan y al final acaban por ser basura, mil veces me ha pasado X-D . pasamelo y lo veo.

Ahora recalco, el programa se deberia poder ejecutar en cualquier flascard, y poder grabar sonido y escucharlo en la misma DS, lo que no es posible en las SD es guardar el archivo.

respecto a lo del tutorial, vere que puedo hacer porque no llevo mucho tiempo dandole a las FAT asique no piloto mucho.

Gracias a todos por escribir.
Se me ocurrió eso mismo, pero encontré el mismo problema para grabar en las sd, cosa que me preocupa ya que es el más usado... ojalá que des soprte para sd ya que es un gran proyecto y muy útil, ánimo
entoses si se podra sacar una para la SC SD ?
ha salido una nueva version de las fat, alguien puede confirmar para que sistemas funciona? quiero decir.... funcionara ya en SD ?
Esto me recuerda un demo del microfono que hace tiempo baje (no se de donde lo descargue y mucho menos si todavia exista) la idea es muy buena aunque si seria conveniente hacer un par de cosas para que mejore...por ejemplo el poder grabar directamente en la SD/CF (no importando la unidad) y el poder elegir un nombre (ya seria demasiado pedir que lo guardara en MP3) otra alternativa tambien seria hacerlo como un complemento para Moonshell o DSOrganize para poder tener un poquito mas de control..Pero como todavia esta en "veremos" se ve que va por muy buen camino..
P.D.espero pacientemente para poderlo ver en mi SC-SD... [oki]
por ejemplo el poder grabar directamente en la SD/CF


no entiendo esto...es decir, en realidad tu grabas y cuando le das a start se guarda en un archivo lo que has grabado.

lo de mp3 yo lo veo muy dificil, pero vamos que en el pc se pueden convertir facilisimo con el "Switch"(programa de audio).

lo de implementarlo no seria mala idea, pero a esto le falta mucho.



neopiro,
farelo,gabrielmariguan


sobre la nueva version de las FAT

Supported devices: Neoflash MK2/3, GBAMP CF, M3 CF, M3 SD, SC CF, Flash Carts (search the forums for FCSR).
Unconfirmed but included: Max Media Player/Dock, EFA2
Included but not working: SC SD
Unsupported: Anything else.


han hecho funcionar el M3 SD pero no la SC... :/
despues de comer veo a ver que tal van
sera cuestion de tiempo
mi hermano vende un EFA II, lo digo xq veo q es compatible con esto XDD

[babas] [babas]

su usuario es Revocool mandale un MP si kereis contactar ;)
12 respuestas