Portál AbcLinuxu, 10. listopadu 2025 16:15
mixer_idz_t *
alsa_mixer_get_id_list(void) {
mixer_idz_t *result = NULL;
snd_mixer_t *handle;
int err;
char name[64];
int i;
if ((err = snd_mixer_open(&handle, 0)) < 0) {
return NULL;
}
for (i = 0; i < 64; i++) {
sprintf(name, "hw:%d", i);
if ((err = snd_mixer_attach(handle, name)) < 0) {
break;
snd_mixer_close(handle);
}
if ((err = snd_mixer_detach(handle, name)) < 0) {
snd_mixer_close(handle);
break;
}
result = mixer_id_list_add(name, result);
}
return result;
}
Např. by šlo pár řádky přidat možnost dodat další externí string názvu zařízení přes proměnnou prostředí. Více času asi zabere nastavení kompilace, než ta jednoduchá úprava zdrojáku.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.