Lines Matching +refs:ctl +refs:x +refs:map

1203 	snd_ctl_t *ctl;  in snd_pcm_query_chmaps_from_hw()  local
1207 snd_pcm_chmap_query_t **map; in snd_pcm_query_chmaps_from_hw() local
1210 ret = snd_ctl_hw_open(&ctl, NULL, card, 0); in snd_pcm_query_chmaps_from_hw()
1217 ret = snd_ctl_elem_tlv_read(ctl, &id, tlv, sizeof(tlv)); in snd_pcm_query_chmaps_from_hw()
1218 snd_ctl_close(ctl); in snd_pcm_query_chmaps_from_hw()
1255 map = calloc(nums + 1, sizeof(int *)); in snd_pcm_query_chmaps_from_hw()
1256 if (!map) in snd_pcm_query_chmaps_from_hw()
1259 map[i] = malloc(start[1] + 8); in snd_pcm_query_chmaps_from_hw()
1260 if (!map[i]) { in snd_pcm_query_chmaps_from_hw()
1261 snd_pcm_free_chmaps(map); in snd_pcm_query_chmaps_from_hw()
1264 map[i]->type = start[0] - 0x100; in snd_pcm_query_chmaps_from_hw()
1265 map[i]->map.channels = start[1] / 4; in snd_pcm_query_chmaps_from_hw()
1266 memcpy(map[i]->map.pos, start + 2, start[1]); in snd_pcm_query_chmaps_from_hw()
1269 return map; in snd_pcm_query_chmaps_from_hw()
1296 snd_pcm_chmap_query_t **map; in snd_pcm_hw_query_chmaps() local
1304 map = snd_pcm_query_chmaps_from_hw(hw->card, hw->device, in snd_pcm_hw_query_chmaps()
1306 if (map) in snd_pcm_hw_query_chmaps()
1310 return map; in snd_pcm_hw_query_chmaps()
1316 snd_pcm_chmap_t *map; in snd_pcm_hw_get_chmap() local
1317 snd_ctl_t *ctl; in snd_pcm_hw_get_chmap() local
1342 map = malloc(pcm->channels * sizeof(map->pos[0]) + sizeof(*map)); in snd_pcm_hw_get_chmap()
1343 if (!map) in snd_pcm_hw_get_chmap()
1345 map->channels = pcm->channels; in snd_pcm_hw_get_chmap()
1346 ret = snd_ctl_hw_open(&ctl, NULL, hw->card, 0); in snd_pcm_hw_get_chmap()
1348 free(map); in snd_pcm_hw_get_chmap()
1355 ret = snd_ctl_elem_read(ctl, &val); in snd_pcm_hw_get_chmap()
1356 snd_ctl_close(ctl); in snd_pcm_hw_get_chmap()
1358 free(map); in snd_pcm_hw_get_chmap()
1364 map->pos[i] = snd_ctl_elem_value_get_integer(&val, i); in snd_pcm_hw_get_chmap()
1366 return map; in snd_pcm_hw_get_chmap()
1369 static int snd_pcm_hw_set_chmap(snd_pcm_t *pcm, const snd_pcm_chmap_t *map) in snd_pcm_hw_set_chmap() argument
1372 snd_ctl_t *ctl; in snd_pcm_hw_set_chmap() local
1384 if (map->channels > 128) { in snd_pcm_hw_set_chmap()
1385 SYSMSG("Invalid number of channels %d\n", map->channels); in snd_pcm_hw_set_chmap()
1393 ret = snd_ctl_hw_open(&ctl, NULL, hw->card, 0); in snd_pcm_hw_set_chmap()
1402 for (i = 0; i < map->channels; i++) in snd_pcm_hw_set_chmap()
1403 snd_ctl_elem_value_set_integer(&val, i, map->pos[i]); in snd_pcm_hw_set_chmap()
1404 ret = snd_ctl_elem_write(ctl, &val); in snd_pcm_hw_set_chmap()
1405 snd_ctl_close(ctl); in snd_pcm_hw_set_chmap()
1677 snd_ctl_t *ctl; in snd_pcm_hw_open() local
1681 if ((ret = snd_ctl_hw_open(&ctl, NULL, card, 0)) < 0) in snd_pcm_hw_open()
1702 ret = snd_ctl_pcm_prefer_subdevice(ctl, subdevice); in snd_pcm_hw_open()
1731 snd_ctl_close(ctl); in snd_pcm_hw_open()
1736 snd_ctl_close(ctl); in snd_pcm_hw_open()
1957 #define __OLD_TO_NEW_MASK(x) ((x&7)|((x&0x07fffff8)<<5)) argument
1958 #define __NEW_TO_OLD_MASK(x) ((x&7)|((x&0xffffff00)>>5)) argument