Iniciado por
cybernoid
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ó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>
Marcadores