Lines Matching refs:ext
209 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_hw_refine_cprepare() local
216 err = extplug_hw_refine(params, ext->params); in snd_pcm_extplug_hw_refine_cprepare()
226 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_hw_refine_sprepare() local
231 extplug_hw_refine(sparams, ext->sparams); in snd_pcm_extplug_hw_refine_sprepare()
262 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_hw_refine_schange() local
263 unsigned int links = get_links(ext->sparams); in snd_pcm_extplug_hw_refine_schange()
272 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_hw_refine_cchange() local
273 unsigned int links = get_links(ext->params); in snd_pcm_extplug_hw_refine_cchange()
295 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_hw_params() local
296 snd_pcm_t *slave = ext->plug.gen.slave; in snd_pcm_extplug_hw_params()
304 ext->data->slave_format = slave->format; in snd_pcm_extplug_hw_params()
305 ext->data->slave_subformat = slave->subformat; in snd_pcm_extplug_hw_params()
306 ext->data->slave_channels = slave->channels; in snd_pcm_extplug_hw_params()
307 ext->data->rate = slave->rate; in snd_pcm_extplug_hw_params()
308 INTERNAL(snd_pcm_hw_params_get_format)(params, &ext->data->format); in snd_pcm_extplug_hw_params()
309 INTERNAL(snd_pcm_hw_params_get_subformat)(params, &ext->data->subformat); in snd_pcm_extplug_hw_params()
310 INTERNAL(snd_pcm_hw_params_get_channels)(params, &ext->data->channels); in snd_pcm_extplug_hw_params()
312 if (ext->data->callback->hw_params) { in snd_pcm_extplug_hw_params()
313 err = ext->data->callback->hw_params(ext->data, params); in snd_pcm_extplug_hw_params()
325 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_hw_free() local
327 snd_pcm_hw_free(ext->plug.gen.slave); in snd_pcm_extplug_hw_free()
328 if (ext->data->callback->hw_free) in snd_pcm_extplug_hw_free()
329 return ext->data->callback->hw_free(ext->data); in snd_pcm_extplug_hw_free()
345 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_write_areas() local
349 size = ext->data->callback->transfer(ext->data, slave_areas, slave_offset, in snd_pcm_extplug_write_areas()
367 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_read_areas() local
371 size = ext->data->callback->transfer(ext->data, areas, offset, in snd_pcm_extplug_read_areas()
382 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_init() local
383 return ext->data->callback->init(ext->data); in snd_pcm_extplug_init()
391 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_dump() local
393 if (ext->data->callback->dump) in snd_pcm_extplug_dump()
394 ext->data->callback->dump(ext->data, out); in snd_pcm_extplug_dump()
396 if (ext->data->name) in snd_pcm_extplug_dump()
397 snd_output_printf(out, "%s\n", ext->data->name); in snd_pcm_extplug_dump()
406 snd_pcm_dump(ext->plug.gen.slave, out); in snd_pcm_extplug_dump()
409 static void clear_ext_params(extplug_priv_t *ext) in clear_ext_params() argument
413 snd_ext_parm_clear(&ext->params[i]); in clear_ext_params()
414 snd_ext_parm_clear(&ext->sparams[i]); in clear_ext_params()
420 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_close() local
422 snd_pcm_close(ext->plug.gen.slave); in snd_pcm_extplug_close()
423 clear_ext_params(ext); in snd_pcm_extplug_close()
424 if (ext->data->callback->close) in snd_pcm_extplug_close()
425 ext->data->callback->close(ext->data); in snd_pcm_extplug_close()
426 free(ext); in snd_pcm_extplug_close()
432 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_query_chmaps() local
434 if (ext->data->version >= 0x010002 && in snd_pcm_extplug_query_chmaps()
435 ext->data->callback->query_chmaps) in snd_pcm_extplug_query_chmaps()
436 return ext->data->callback->query_chmaps(ext->data); in snd_pcm_extplug_query_chmaps()
442 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_get_chmap() local
444 if (ext->data->version >= 0x010002 && in snd_pcm_extplug_get_chmap()
445 ext->data->callback->get_chmap) in snd_pcm_extplug_get_chmap()
446 return ext->data->callback->get_chmap(ext->data); in snd_pcm_extplug_get_chmap()
452 extplug_priv_t *ext = pcm->private_data; in snd_pcm_extplug_set_chmap() local
454 if (ext->data->version >= 0x010002 && in snd_pcm_extplug_set_chmap()
455 ext->data->callback->set_chmap) in snd_pcm_extplug_set_chmap()
456 return ext->data->callback->set_chmap(ext->data, map); in snd_pcm_extplug_set_chmap()
680 extplug_priv_t *ext; in snd_pcm_extplug_create() local
706 ext = calloc(1, sizeof(*ext)); in snd_pcm_extplug_create()
707 if (! ext) in snd_pcm_extplug_create()
710 ext->data = extplug; in snd_pcm_extplug_create()
713 snd_pcm_plugin_init(&ext->plug); in snd_pcm_extplug_create()
714 ext->plug.read = snd_pcm_extplug_read_areas; in snd_pcm_extplug_create()
715 ext->plug.write = snd_pcm_extplug_write_areas; in snd_pcm_extplug_create()
716 ext->plug.undo_read = snd_pcm_plugin_undo_read_generic; in snd_pcm_extplug_create()
717 ext->plug.undo_write = snd_pcm_plugin_undo_write_generic; in snd_pcm_extplug_create()
718 ext->plug.gen.slave = spcm; in snd_pcm_extplug_create()
719 ext->plug.gen.close_slave = 1; in snd_pcm_extplug_create()
721 ext->plug.init = snd_pcm_extplug_init; in snd_pcm_extplug_create()
725 free(ext); in snd_pcm_extplug_create()
732 pcm->private_data = ext; in snd_pcm_extplug_create()
736 snd_pcm_set_hw_ptr(pcm, &ext->plug.hw_ptr, -1, 0); in snd_pcm_extplug_create()
737 snd_pcm_set_appl_ptr(pcm, &ext->plug.appl_ptr, -1, 0); in snd_pcm_extplug_create()
764 extplug_priv_t *ext = extplug->pcm->private_data; in snd_pcm_extplug_params_reset() local
765 clear_ext_params(ext); in snd_pcm_extplug_params_reset()
782 extplug_priv_t *ext = extplug->pcm->private_data; in snd_pcm_extplug_set_slave_param_list() local
787 return snd_ext_parm_set_list(&ext->sparams[type], num_list, list); in snd_pcm_extplug_set_slave_param_list()
804 extplug_priv_t *ext = extplug->pcm->private_data; in snd_pcm_extplug_set_slave_param_minmax() local
813 return snd_ext_parm_set_minmax(&ext->sparams[type], min, max); in snd_pcm_extplug_set_slave_param_minmax()
830 extplug_priv_t *ext = extplug->pcm->private_data; in snd_pcm_extplug_set_param_list() local
835 return snd_ext_parm_set_list(&ext->params[type], num_list, list); in snd_pcm_extplug_set_param_list()
852 extplug_priv_t *ext = extplug->pcm->private_data; in snd_pcm_extplug_set_param_minmax() local
861 return snd_ext_parm_set_minmax(&ext->params[type], min, max); in snd_pcm_extplug_set_param_minmax()
877 extplug_priv_t *ext = extplug->pcm->private_data; in snd_pcm_extplug_set_param_link() local
883 ext->params[type].keep_link = keep_link ? 1 : 0; in snd_pcm_extplug_set_param_link()
884 ext->sparams[type].keep_link = keep_link ? 1 : 0; in snd_pcm_extplug_set_param_link()