Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15490051
  • 博文数量: 2005
  • 博客积分: 11986
  • 博客等级: 上将
  • 技术积分: 22535
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-17 13:56
文章分类

全部博文(2005)

文章存档

2014年(2)

2013年(2)

2012年(16)

2011年(66)

2010年(368)

2009年(743)

2008年(491)

2007年(317)

分类: LINUX

2009-11-17 11:26:49

static int snd_pcm_hw_param_set(struct snd_pcm_substream *pcm,
                struct snd_pcm_hw_params *params,
                snd_pcm_hw_param_t var, unsigned int val,
                int dir)
{
    int changed = _snd_pcm_hw_param_set(params, var, val, dir);
    // 设置range类型为固定值val的integer整型,这里为8000采样率
    if (changed < 0)
        return changed;
    if (params->rmask) {
        int err = snd_pcm_hw_refine(pcm, params);  《浅析alsa声卡驱动snd_pcm_hw_refine函数》
        // 将与采样率相关的所有参数,按照constrs->rules规则中的deps[]相关信息,
        // 进行与var采样率相关的统一运算调整[luther.gliethttp]
        if (err < 0)
            return err;
    }
    return snd_pcm_hw_param_value(params, var, NULL); // 返回i->min最小值.
}
阅读(4296) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~