Lines Matching defs:spcm

592 	state = snd_pcm_state(direct->spcm);
615 (direct->spcm->info & SND_PCM_INFO_RESUME)) {
616 snd_pcm_resume(direct->spcm);
617 snd_pcm_drop(direct->spcm);
622 ret = snd_pcm_prepare(direct->spcm);
636 dst_areas = snd_pcm_mmap_areas(direct->spcm);
637 snd_pcm_areas_silence(dst_areas, 0, direct->spcm->channels,
638 direct->spcm->buffer_size,
639 direct->spcm->format);
642 ret = snd_pcm_start(direct->spcm);
670 switch (snd_pcm_state(direct->spcm)) {
775 snd_pcm_state(dmix->spcm) == SND_PCM_STATE_SETUP) {
810 if (dmix->spcm && !dmix->shmptr->use_server)
811 return snd_pcm_info(dmix->spcm, info);
1078 return snd_pcm_query_chmaps(dmix->spcm);
1088 smaps = snd_pcm_query_chmaps(dmix->spcm);
1107 return snd_pcm_get_chmap(dmix->spcm);
1113 return snd_pcm_set_chmap(dmix->spcm, map);
1121 switch (snd_pcm_state(dmix->spcm)) {
1125 err = snd_pcm_prepare(dmix->spcm);
1128 snd_pcm_start(dmix->spcm);
1152 #define COPY_SLAVE(field) (dmix->shmptr->s.field = spcm->field)
1155 static void save_slave_setting(snd_pcm_direct_t *dmix, snd_pcm_t *spcm)
1157 spcm->info &= ~SND_PCM_INFO_PAUSE;
1197 int snd_pcm_direct_initialize_slave(snd_pcm_direct_t *dmix, snd_pcm_t *spcm, struct slave_params *params)
1211 ret = snd_pcm_hw_params_any(spcm, &hw_params);
1216 ret = snd_pcm_hw_params_set_access(spcm, &hw_params,
1219 ret = snd_pcm_hw_params_set_access(spcm, &hw_params,
1229 ret = snd_pcm_hw_params_set_format(spcm, &hw_params,
1248 ret = snd_pcm_hw_params_set_format(spcm, &hw_params,
1255 ret = INTERNAL(snd_pcm_hw_params_set_format_first)(spcm,
1264 ret = INTERNAL(snd_pcm_hw_params_set_channels_near)(spcm, &hw_params,
1270 ret = INTERNAL(snd_pcm_hw_params_set_rate_near)(spcm, &hw_params,
1279 ret = INTERNAL(snd_pcm_hw_params_set_buffer_time_near)(spcm,
1286 ret = INTERNAL(snd_pcm_hw_params_set_buffer_size_near)(spcm,
1297 ret = INTERNAL(snd_pcm_hw_params_set_period_time_near)(spcm,
1304 ret = INTERNAL(snd_pcm_hw_params_set_period_size_near)(spcm,
1315 ret = INTERNAL(snd_pcm_hw_params_set_periods_near)(spcm,
1335 ret = snd_pcm_hw_params(spcm, &hw_params);
1359 ret = snd_pcm_sw_params_current(spcm, &sw_params);
1370 ret = snd_pcm_sw_params_set_stop_threshold(spcm, &sw_params, boundary);
1380 ret = snd_pcm_sw_params_set_tstamp_mode(spcm, &sw_params,
1388 ret = snd_pcm_sw_params_set_tstamp_type(spcm, &sw_params,
1400 ret = snd_pcm_sw_params_set_silence_threshold(spcm, &sw_params, 0);
1405 ret = snd_pcm_sw_params_set_silence_size(spcm, &sw_params, boundary);
1413 ret = snd_pcm_sw_params(spcm, &sw_params);
1421 dst_areas = snd_pcm_mmap_areas(spcm);
1422 snd_pcm_areas_silence(dst_areas, 0, spcm->channels,
1423 spcm->buffer_size, spcm->format);
1426 ret = snd_pcm_start(spcm);
1432 if (snd_pcm_poll_descriptors_count(spcm) != 1) {
1436 snd_pcm_poll_descriptors(spcm, &fd, 1);
1439 save_slave_setting(dmix, spcm);
1448 dmix->slave_buffer_size = spcm->buffer_size;
1449 dmix->slave_period_size = spcm->period_size;
1450 dmix->slave_boundary = spcm->boundary;
1452 spcm->donot_close = 1;
1456 ioctl(spcm->poll_fd, SNDRV_PCM_IOCTL_PVERSION, &ver);
1479 ret = snd_pcm_info(dmix->spcm, &info);
1553 #define COPY_SLAVE(field) (spcm->field = dmix->shmptr->s.field)
1556 static void copy_slave_setting(snd_pcm_direct_t *dmix, snd_pcm_t *spcm)
1586 spcm->info &= ~SND_PCM_INFO_PAUSE;
1587 spcm->boundary = recalc_boundary_size(dmix->shmptr->s.boundary, spcm->buffer_size);
1599 snd_pcm_t *spcm;
1607 spcm = *spcmp;
1608 spcm->donot_close = 1;
1609 spcm->setup = 1;
1611 copy_slave_setting(dmix, spcm);
1614 dmix->slave_buffer_size = spcm->buffer_size;
1616 dmix->slave_boundary = spcm->boundary;
1619 ret = snd_pcm_mmap(spcm);
1631 snd_pcm_t *spcm,
1636 spcm->donot_close = 1;
1637 spcm->setup = 1;
1639 copy_slave_setting(dmix, spcm);
1642 dmix->slave_buffer_size = spcm->buffer_size;
1644 dmix->slave_boundary = spcm->boundary;
1646 ret = snd_pcm_mmap(spcm);
1691 if (channels != dmix->spcm->channels)
1693 dst_areas = snd_pcm_mmap_areas(dmix->spcm);