Bienvenido(a), Visitante. Por favor, ingresa o regístrate.

Ingresar con nombre de usuario, contraseña y duración de la sesión

 
Búsqueda Avanzada

15.707 Mensajes en 3.130 Temas- por 371 Usuarios - Último usuario: lasfirrot
Mayo 18, 2012, 06:16:07
Foro de Hispabyte.netProgramaciónLenguajes y ProgramaciónDiseño y Programación de VideojuegosTema: Clase CAudio y CSound
Páginas: 1 [2]   Ir Abajo
Imprimir
Autor Tema: Clase CAudio y CSound  (Leído 3876 veces)
0 Usuarios y 2 Visitantes están viendo este tema.
NAT
Grupo_Moderadores
Experto
*
Mensajes: 415



Ver Perfil WWW
« Respuesta #15 : Diciembre 01, 2004, 09:07:48 »


El c?digo va aqu?.

* Pruebas.zip (0.75 KB - descargado 131 veces.)
En línea

Para beber no hace falta divertirse... Giñar
Zheo
Grupo_Moderadores
Miembro Imprescindible
*
Mensajes: 1.408



Ver Perfil
« Respuesta #16 : Diciembre 01, 2004, 07:19:36 »

Código:
#include "caudio.h" // Cabecera de la clase

//inicializamos el puntero est?tico
CAudio* CAudio::_ptrInstance = 0;

//inicializamos a cero el contador de instancias
int CAudio()::_iNumInstances = 0;

CAudio* CAudio::Instance(){
  
if (_ptrInstance = 0)
   _ptrInstance = new CAudio();
   return _ptrInstance;    
}    

void CAudio::Init (int iFrequency, Uint16 iFormat, int iChannels, int iChunkSize){
   int iInit = Mix_OpenAudio(iFrequency, iFormat, iChannels, iChunkSize);
   _iNumInstances++;
}    

void CAudio::Close(){
    Mix_CloseAudio();  
    _iNumInstances--;
}    

Los errores estaban en caudio.cpp (que por cierto deber?a llamarse audio.cpp Giñar)
El caso es que al inicializar las variables est?ticas no especificabas su tipo:
CAudio* CAudio::_ptrInstance;
significa "la variable _ptrInstance, de tipo CAudio* que pertenece al ?mbito CAudio" (cada clase crea un ?mbito)

Ah, y las variables est?ticas, al igual que los miembros est?ticos, existen aunque no hayamos creado ning?n objeto de la clase a la que pertenecen, por eso se deben inicializar de esa manera tan peculiar.

Debemos inicializar el puntero _ptrInstance a 0 porque f?jate que es la condici?n que necesita el m?todo Instance() para saber que el objeto no ha sido creado antes.

 
En línea
NAT
Grupo_Moderadores
Experto
*
Mensajes: 415



Ver Perfil WWW
« Respuesta #17 : Diciembre 02, 2004, 08:33:09 »

Buenas de nuevo, Zheo hay un fallito en c?digo:

Código:
int CAudio()::_iNumInstances = 0;

Por esto:

Código:
int CAudio::_iNumInstances = 0;

Otra cosita, los comentarios estaban bien???

Salu2 y gracias.
« Última modificación: Diciembre 02, 2004, 08:34:32 por NAT » En línea

Para beber no hace falta divertirse... Giñar
Zheo
Grupo_Moderadores
Miembro Imprescindible
*
Mensajes: 1.408



Ver Perfil
« Respuesta #18 : Diciembre 02, 2004, 01:12:52 »

Los comentarios en el .h no hay Lengua
Cuando los pongas recuerda poner tres barras de comentario (///) en el .h ya que s?lo veo dos, para poder procesarlo con doxygen.
Los cpp no se parsean, as? que los comentarios que pongas son para entender el c?digo y para la gente que bucee por ?l, as? que son siempre bienvenidos.
Los del .h se utilizar?n para generar la documentaci?n, as? que ah? es donde se debe ser m?s "formal" y explicar para que sirve cada m?todo y cada clase Sonrisa
 
En línea
Jounin
Visitante
« Respuesta #19 : Diciembre 09, 2004, 07:08:27 »

Bueno a?n estoy vivo. Cuelgo la parte de sonido que tengo hecha(CAudio, CSound, CMusic y con un main.cpp para probarlo). CMusic y Csound  est?n completas; falta documentarlas, probarlas bien pero creo que con lo que hay nos sobra.  CAudio hay que terminarla.
Ya comentais como lo habies visto, si teneis dudas sobre el c?digo, si algo se deber?a hacer de otra manera,....

Esta es la m?sica que he utilizado para probarlo. Testearlo con otros ficheros .wav y .ogg si quereis porque el enlace pesa un poco.

Y por ?ltimo el c?digo:  

* Pruebas_audio.zip (6.25 KB - descargado 143 veces.)
En línea
Zheo
Grupo_Moderadores
Miembro Imprescindible
*
Mensajes: 1.408



Ver Perfil
« Respuesta #20 : Diciembre 09, 2004, 11:52:35 »

Oye,?es que estais haciendo las clases NAT y tu por separado? :huh:  :huh:  :huh:

Lo digo porque el c?digo que le pas? y puse en el foro a NAT ten?a implementado el Singleton, y este no.

No me digais que en vez de subdividir el trabajo lo habeis hecho dos veces porque me da :crazy:
« Última modificación: Diciembre 10, 2004, 12:00:37 por Zheo » En línea
Jounin
Visitante
« Respuesta #21 : Diciembre 10, 2004, 12:48:53 »

Pues mas o menos.  Al principio como NAT no daba se?ales de vida me puse a mirar cosas. Luego me envio un post para a ver como lo haciamos pero no concretamos nada. Como pasaba el tiempo pues he estado implemetandolo. Bueno, el codigo que tenia hecho lo he subido para que se probara. De todas formas a?adir? tambi?n lo del singletron y lo volvere a subir.
Cuando vuelva NAT, lo miraremos a ver que le parece, si el tenia esa idea o cambiamos cosas y miramos tambien lo que tiene el hecho. Sonrisa

Salu2.

 
En línea
Zheo
Grupo_Moderadores
Miembro Imprescindible
*
Mensajes: 1.408



Ver Perfil
« Respuesta #22 : Diciembre 10, 2004, 01:38:31 »

Mi madre! si es que hay para mataros!!

Mira que lo ten?as f?cil, uno cada clase y listo! Lengua


En fin, cuando arrive a casa, Nescaf? capuchino... estooo, cuando llegue a  casa me conecto y bajo tu c?digo y el de NAT para compararlo, en la facultad no me apetece conectar el portatil.

Eso si, los comentarios son vitales a?adidlos por favor.

Por cierto, tengo que hacer un devpack que inc luya todas las bibliotecas que necesitamos para usar el wrapper, sino hay que bajarse cosas aparte y es un co?azo Triste

Un saludo.
En línea
Zheo
Grupo_Moderadores
Miembro Imprescindible
*
Mensajes: 1.408



Ver Perfil
« Respuesta #23 : Diciembre 15, 2004, 11:58:46 »

?c?mo va el codigo?
NAT o Jounin. ?Estais haciendo los comentarios?
Si os poneis a hacerlo, esta vez que uno haga los de CSound y el otro los de otra CMusic ?vale? xDDDD
En línea
oftheiron
Novato
*
Mensajes: 1


Ver Perfil
« Respuesta #24 : Octubre 13, 2006, 02:57:16 »

Citar
Hola compa?eros, ya me he puesto manos a la obra con las clases, pero estoy teniendo problemas por desconocimiento m?o del entorno.

Zheo me he bajado el DevPack de la SDL y me da un error diciendome que no encuentra la librer?a SDL.dll (adjunto imagen), ademas no consigo linkar correctamente la librer?a SDL_mixer y tendr? que buscar por ah? como linkar dicha libre?a o encontrar alg?n devpack que me haga el trabajo (reitero que acabo de empezar con el Dev c++).

Si alguno puede echarme un cable o pasarme la configuraci?n de ambas librerias (como se linkan esas librer?as, si hace falta el archivo include...) se lo agradecr? eternamente (Estoy bastante acostumbrado a utilizar assemblys en C# y esto me supera Giñar)

Salu2 y gracias de antemano.
hola que tal mi nombre es gabriel
tengo El Lettuce Csound
y nesesito convertir un archivo de formato .CSD a .Wav
me acuedo que era poniendole la ruta a donde quiero que baje el archivo en odac. pero no me funca queria saber si alguien me puede decir como pasarlo
En línea
Zheo
Grupo_Moderadores
Miembro Imprescindible
*
Mensajes: 1.408



Ver Perfil
« Respuesta #25 : Octubre 13, 2006, 04:18:34 »

Citar
hola que tal mi nombre es gabriel
tengo El Lettuce Csound
y nesesito convertir un archivo de formato .CSD a .Wav
me acuedo que era poniendole la ruta a donde quiero que baje el archivo en odac. pero no me funca queria saber si alguien me puede decir como pasarlo
Creo que te equivocas de foro, esto no tiene mucho que ver con otra biblioteca que se llame CSound Giñar
« Última modificación: Octubre 13, 2006, 04:19:08 por Zheo » En línea
Páginas: 1 [2]   Ir Arriba
Imprimir
Foro de Hispabyte.netProgramaciónLenguajes y ProgramaciónDiseño y Programación de VideojuegosTema: Clase CAudio y CSound
Ir a:  


Tema diseñado por RJ-45 para Hispabyte.net basado en el
theme famouspadexx v.09 designed by Formado Comprido
Downloable here. My present to padexx.de