mirror of
https://github.com/alsa-project/alsa-lib.git
synced 2025-10-31 22:25:35 -04:00
Fixed a bug in interval printing. Added missing mmap functions. Added _try hw_params variant.
This commit is contained in:
parent
6171d0fc20
commit
e618ef6f00
4 changed files with 94 additions and 12 deletions
|
|
@ -308,6 +308,18 @@ int snd_pcm_hw_param_min(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
|||
return snd_pcm_hw_param_value_min(params, var);
|
||||
}
|
||||
|
||||
int snd_pcm_hw_param_min_try(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
||||
unsigned int var, unsigned int val)
|
||||
{
|
||||
snd_pcm_hw_params_t save;
|
||||
int err;
|
||||
save = *params;
|
||||
err = snd_pcm_hw_param_min(pcm, params, var, val);
|
||||
if (err < 0)
|
||||
*params = save;
|
||||
return err;
|
||||
}
|
||||
|
||||
int _snd_pcm_hw_param_max(snd_pcm_hw_params_t *params, int hw,
|
||||
unsigned int var, unsigned int val)
|
||||
{
|
||||
|
|
@ -347,6 +359,18 @@ int snd_pcm_hw_param_max(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
|||
return snd_pcm_hw_param_value_max(params, var);
|
||||
}
|
||||
|
||||
int snd_pcm_hw_param_max_try(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
||||
unsigned int var, unsigned int val)
|
||||
{
|
||||
snd_pcm_hw_params_t save;
|
||||
int err;
|
||||
save = *params;
|
||||
err = snd_pcm_hw_param_max(pcm, params, var, val);
|
||||
if (err < 0)
|
||||
*params = save;
|
||||
return err;
|
||||
}
|
||||
|
||||
int _snd_pcm_hw_param_minmax(snd_pcm_hw_params_t *params, int hw,
|
||||
unsigned int var,
|
||||
unsigned int min, unsigned int max)
|
||||
|
|
@ -409,6 +433,19 @@ int snd_pcm_hw_param_minmax(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
|||
return 0;
|
||||
}
|
||||
|
||||
int snd_pcm_hw_param_minmax_try(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
||||
unsigned int var,
|
||||
unsigned int min, unsigned int max)
|
||||
{
|
||||
snd_pcm_hw_params_t save;
|
||||
int err;
|
||||
save = *params;
|
||||
err = snd_pcm_hw_param_minmax(pcm, params, var, min, max);
|
||||
if (err < 0)
|
||||
*params = save;
|
||||
return err;
|
||||
}
|
||||
|
||||
int _snd_pcm_hw_param_set(snd_pcm_hw_params_t *params, int hw,
|
||||
unsigned int var, unsigned int val)
|
||||
{
|
||||
|
|
@ -448,6 +485,18 @@ int snd_pcm_hw_param_set(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
|||
return snd_pcm_hw_param_value(params, var);
|
||||
}
|
||||
|
||||
int snd_pcm_hw_param_set_try(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
||||
unsigned int var, unsigned int val)
|
||||
{
|
||||
snd_pcm_hw_params_t save;
|
||||
int err;
|
||||
save = *params;
|
||||
err = snd_pcm_hw_param_set(pcm, params, var, val);
|
||||
if (err < 0)
|
||||
*params = save;
|
||||
return err;
|
||||
}
|
||||
|
||||
int _snd_pcm_hw_param_mask(snd_pcm_hw_params_t *params, int hw,
|
||||
unsigned int var, const mask_t *val)
|
||||
{
|
||||
|
|
@ -484,6 +533,18 @@ int snd_pcm_hw_param_mask(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
|||
return 0;
|
||||
}
|
||||
|
||||
int snd_pcm_hw_param_mask_try(snd_pcm_t *pcm, snd_pcm_hw_params_t *params,
|
||||
unsigned int var, const mask_t *val)
|
||||
{
|
||||
snd_pcm_hw_params_t save;
|
||||
int err;
|
||||
save = *params;
|
||||
err = snd_pcm_hw_param_mask(pcm, params, var, val);
|
||||
if (err < 0)
|
||||
*params = save;
|
||||
return err;
|
||||
}
|
||||
|
||||
/* Inside configuration space defined by PARAMS set PAR to the available value
|
||||
nearest to VAL. Reduce configuration space accordingly.
|
||||
This function cannot be called for SND_PCM_HW_PARAM_ACCESS,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue