Lines Matching refs:linear
240 snd_pcm_linear_t *linear = pcm->private_data;
245 _snd_pcm_hw_params_set_format(sparams, linear->sformat);
298 snd_pcm_linear_t *linear = pcm->private_data;
310 linear->use_getput = (snd_pcm_format_physical_width(format) == 24 ||
311 snd_pcm_format_physical_width(linear->sformat) == 24 ||
313 snd_pcm_format_width(linear->sformat) == 20);
314 if (linear->use_getput) {
316 linear->get_idx = snd_pcm_linear_get_index(format, SND_PCM_FORMAT_S32);
317 linear->put_idx = snd_pcm_linear_put_index(SND_PCM_FORMAT_S32, linear->sformat);
319 linear->get_idx = snd_pcm_linear_get_index(linear->sformat, SND_PCM_FORMAT_S32);
320 linear->put_idx = snd_pcm_linear_put_index(SND_PCM_FORMAT_S32, format);
324 linear->conv_idx = snd_pcm_linear_convert_index(format,
325 linear->sformat);
327 linear->conv_idx = snd_pcm_linear_convert_index(linear->sformat,
342 snd_pcm_linear_t *linear = pcm->private_data;
345 if (linear->use_getput)
349 linear->get_idx, linear->put_idx);
353 pcm->channels, size, linear->conv_idx);
367 snd_pcm_linear_t *linear = pcm->private_data;
370 if (linear->use_getput)
374 linear->get_idx, linear->put_idx);
378 pcm->channels, size, linear->conv_idx);
385 snd_pcm_linear_t *linear = pcm->private_data;
387 snd_pcm_format_name(linear->sformat));
393 snd_pcm_dump(linear->plug.gen.slave, out);
416 * \brief Creates a new linear conversion PCM
430 snd_pcm_linear_t *linear;
435 linear = calloc(1, sizeof(snd_pcm_linear_t));
436 if (!linear) {
439 snd_pcm_plugin_init(&linear->plug);
440 linear->sformat = sformat;
441 linear->plug.read = snd_pcm_linear_read_areas;
442 linear->plug.write = snd_pcm_linear_write_areas;
443 linear->plug.undo_read = snd_pcm_plugin_undo_read_generic;
444 linear->plug.undo_write = snd_pcm_plugin_undo_write_generic;
445 linear->plug.gen.slave = slave;
446 linear->plug.gen.close_slave = close_slave;
450 free(linear);
455 pcm->private_data = linear;
459 snd_pcm_set_hw_ptr(pcm, &linear->plug.hw_ptr, -1, 0);
460 snd_pcm_set_appl_ptr(pcm, &linear->plug.appl_ptr, -1, 0);
468 \section pcm_plugins_linear Plugin: linear
470 This plugin converts linear samples from master linear conversion PCM to given
475 type linear # Linear conversion PCM
497 * \brief Creates a new linear conversion PCM
542 SNDERR("slave format is not linear");