User Tag List

Página 3 de 3 PrimerPrimer 123
Resultados 31 al 39 de 39

Tema: SDL_Mixer, problemas al poner musiquitas y sonidicos :P

  1. #31

    Fecha de ingreso
    Sep 2005
    Ubicación
    Barcelona
    Mensajes
    1,268
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por cybernoid Ver mensaje
    Tendre de volver a probar a ver si con las minilib puedo subir el volumen

    alguien tiene un codigo para subir el volumen por hard?

    Código:
    #include <unistd.h>
    #include <fcntl.h>
    
    static unsigned long mixer_device = 0;
    void volmanager_init()
    {
        if(!mixer_device)  mixer_device = open("/dev/mixer", O_RDWR);
    }
    
    void volmanager_set(int L /*0..100*/, int R /*0..100*/)
    {
        if(!mixer_device) return;
        
        L=(((L*0x50)/100)<<8)|((R*0x50)/100);
        ioctl(mixer_device, SOUND_MIXER_WRITE_PCM, &L);
    }   
    
    void volmanager_quit()
    {
        close(mixer_device);
    }
    Recien sacado del horno. Este c&#243;digo deber&#237;a ser capaz de cambiar el volumen por hardware. Puedes cambiar el volumen de ambos altavoces de forma independiente y tienes que pasar un valor de 0 a 100.

    EDIT1: Me faltan includes, tanto para el ioctl como para la constante SOUND_MIXER_WRITE_PCM, creo que faltan estos dos includes.

    #include <sys/ioctl.h>
    #include <sys/soundcard.h>
    Última edición por BuD; 17/08/2008 a las 23:40

    Si eres gepero, estás invitado a unirte a nuestra guild de Albatross18. Informate aquí!

  2. #32

    Fecha de ingreso
    Aug 2005
    Mensajes
    3,386
    Mencionado
    1 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    2
    Thanked in
    Agradecido %1$s veces en 1 post
    Cybernoid, yo tambi&#233;n hace un mont&#243;n que no toco la consola as&#237; que no te puedo echar una mano. Yo mods no reproduc&#237;a, pero WAVs y OGGs s&#237;. Si quieres te busco el comando que utilizaba para compilar. O mejor (y as&#237; me lo ahorro ) &#233;chale t&#250; mismo un vistazo al Makefile del c&#243;digo fuente de Beat2X. Claro que yo ten&#237;a la primera versi&#243;n de GP2X...

    Cita Iniciado por Puck2099 Ver mensaje
    Joe, pues ser&#225; con SDL nuevas, hace un par de a&#241;os, cuando lo necesit&#233; yo, solo tiraba a trav&#233;s de minilib...
    Pues yo estoy casi seguro al 100&#37; de que cambiaba el volumen a trav&#233;s de SDL en Beat2X, y de eso har&#225; ya 2 a&#241;os y pico. ***** c&#243;mo pasa el tiempo...

    Cita Iniciado por BuD Ver mensaje
    Saludetes.
    Hola BuD.
    Última edición por miq01; 18/08/2008 a las 03:58

  3. #33

    Fecha de ingreso
    Jul 2008
    Mensajes
    200
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por miq01 Ver mensaje
    Cybernoid, yo también hace un montón que no toco la consola así que no te puedo echar una mano. Yo mods no reproducía, pero WAVs y OGGs sí. Si quieres te busco el comando que utilizaba para compilar. O mejor (y así me lo ahorro ) échale tú mismo un vistazo al Makefile del código fuente de Beat2X. Claro que yo tenía la primera versión de GP2X...


    Pues yo estoy casi seguro al 100% de que cambiaba el volumen a través de SDL en Beat2X, y de eso hará ya 2 años y pico. ***** cómo pasa el tiempo...


    Hola BuD.
    le pegare un vistazo, pero el problema no lo tengo con la f100, con la f100 chuta perfecto, el problema es al ponerlo en la f200
    < - >
    Cita Iniciado por BuD Ver mensaje
    Código:
    #include <unistd.h>
    #include <fcntl.h>
     
    static unsigned long mixer_device = 0;
    void volmanager_init()
    {
        if(!mixer_device)  mixer_device = open("/dev/mixer", O_RDWR);
    }
     
    void volmanager_set(int L /*0..100*/, int R /*0..100*/)
    {
        if(!mixer_device) return;
     
        L=(((L*0x50)/100)<<8)|((R*0x50)/100);
        ioctl(mixer_device, SOUND_MIXER_WRITE_PCM, &L);
    }   
     
    void volmanager_quit()
    {
        close(mixer_device);
    }
    Recien sacado del horno. Este código debería ser capaz de cambiar el volumen por hardware. Puedes cambiar el volumen de ambos altavoces de forma independiente y tienes que pasar un valor de 0 a 100.

    EDIT1: Me faltan includes, tanto para el ioctl como para la constante SOUND_MIXER_WRITE_PCM, creo que faltan estos dos includes.

    #include <sys/ioctl.h>
    #include <sys/soundcard.h>

    gracias

    en cuanto llegue a casa lo pruebo
    < - >
    Cita Iniciado por juanvvc Ver mensaje
    El volumen por hardware estará en las minilib, digo yo. Coge el código de cualquier juego o emulador liberado, que en todos funciona el sonido y el volumen

    A todo esto no has comentado qué SDK estás usando, versión de las SDL, si lincas dinámica o estáticamente...No sea que el problema venga por aquí.
    estoy usando el devkitgp2x que viene con el Kit del codeblocks preparado para gp2x

    la compilacion debe ser estatica por que con el SDK oficial no suenan los MOD.
    < - >
    Cita Iniciado por fananest Ver mensaje
    [ytb]<object width="425" height="344"><param name="movie" value="<A href="http://www.youtube.com/v/gl5M9_Ad26g&hl=en&fs=1"></param><param">http://www.youtube.com/v/gl5M9_Ad26g&hl=en&fs=1"></param><param name="allowFullScreen" value="true"></param></object>[/ytb]
    ¿ein?
    Última edición por cybernoid; 18/08/2008 a las 08:40 Razón: Edición automática anti doble-post.

  4. #34

    Fecha de ingreso
    Sep 2005
    Ubicación
    Barcelona
    Mensajes
    1,268
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por miq01 Ver mensaje
    Hola BuD.
    Hola Soler.

    Cita Iniciado por cybernoid Ver mensaje
    en cuanto llegue a casa lo pruebo
    Uhm, he hecho un .h y un .c para comodidad de la gente. Ea aquí un código que usa este .h y .c

    Código:
    #include "volman.h"
    
    int main(int argc, char **argv)
    {
       //INITS como SDL_Init(......);
       //Y ahora tocaría inicializar el volume manager
       volmanager_init();
    
       int NoMePiro = 1;
       int vol      = 100;
       //Aquí reside la magia.
       volmanager_set(vol, vol);
    
       //MAIN LOOP
       while(NoMePiro)
       {
          //INPUT
          if(input[vol_up])
          {
             vol += 10;
             if (vol > 100) vol = 100;
             volmanager_set(vol, vol);
          }
          if(input[vol_down])
          {
             vol -= 10;
             if (vol < 0) vol = 0;
             volmanager_set(vol, vol);
          }
    
          //CODIGO BLAH BLAH
          //  BLAH BLAH BLAH
       }
    
       //DEINITS como SDL_QUIT()
       volmanager_quit();
    
    }
    Es un poco pseudo-codigo, por supuesto no compila, pero solo te tienes que fijar en las llamadas a las funciones "volmanager_XXXXX()" y usarlas en tu código. Como podrás ver es una tontería.
    Archivos adjuntados Archivos adjuntados

    Si eres gepero, estás invitado a unirte a nuestra guild de Albatross18. Informate aquí!

  5. #35

    Fecha de ingreso
    Jan 2008
    Ubicación
    Madrid
    Mensajes
    4,451
    Mencionado
    14 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    87
    Agradecer Thanks Received 
    161
    Thanked in
    Agradecido 94 veces en [ARG:2 UNDEFINED] posts
    Gracias Bud por la clase y el ejemplo del volmanager. Podr&#237;a ser que en el &#250;ltimo firmware hayan bajado el volumen hardware. Pero en mi F200 con firmware 4.1.0 se oye bien. Tendr&#233; que hacer m&#225;s pruebas.

  6. #36

    Fecha de ingreso
    Jul 2008
    Mensajes
    200
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por BuD Ver mensaje
    Es un poco pseudo-codigo, por supuesto no compila, pero solo te tienes que fijar en las llamadas a las funciones "volmanager_XXXXX()" y usarlas en tu código. Como podrás ver es una tontería.
    gracias


    Cita Iniciado por hardyx Ver mensaje
    Gracias Bud por la clase y el ejemplo del volmanager. Podría ser que en el último firmware hayan bajado el volumen hardware. Pero en mi F200 con firmware 4.1.0 se oye bien. Tendré que hacer más pruebas.
    hardyx me puedes pasar algun compilado tuyo para probarlo en mi consola?

    asi saldremos de dudas.
    < - >
    bueno chicos,

    esto ya esta funcionando

    suena como dios manda (por fiiiin!!!)

    gracias a todos
    Última edición por cybernoid; 18/08/2008 a las 20:49 Razón: Edición automática anti doble-post.

  7. #37

    Fecha de ingreso
    Sep 2005
    Ubicación
    Barcelona
    Mensajes
    1,268
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por cybernoid Ver mensaje
    bueno chicos,

    esto ya esta funcionando

    suena como dios manda (por fiiiin!!!)

    gracias a todos
    Un placer. Al final te sirvió mi código?

    Si eres gepero, estás invitado a unirte a nuestra guild de Albatross18. Informate aquí!

  8. #38

    Fecha de ingreso
    Jul 2008
    Mensajes
    200
    Mencionado
    0 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    0
    Agradecer Thanks Received 
    0
    Thanked in
    Agradecido 0 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por BuD Ver mensaje
    Un placer. Al final te sirvió mi código?
    si, es el que uso actualmente

    se agradece la ayuda de todos, puedo asegurar que empezaba a desesperarme xD

  9. #39

    Fecha de ingreso
    Jan 2008
    Ubicación
    Madrid
    Mensajes
    4,451
    Mencionado
    14 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    87
    Agradecer Thanks Received 
    161
    Thanked in
    Agradecido 94 veces en [ARG:2 UNDEFINED] posts
    El sdltest del enlace que te puse vienen compilado y a m&#237; me funciona el sonido. Puedes bajarte mi port de xpired que usa s&#243;lo SDL a ver que tal se te oye. Tiene control de volumen por software y creo que a todos se le oye bien. Aunque podr&#237;a ser que las librer&#237;as SDL de paeryn (optimizadas) suban el volumen hardware al iniciarse...

Página 3 de 3 PrimerPrimer 123

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •