<commit_before>---
layout: post
title:  "linux alsa-lib snd_pcm_open函数详细分析（二)"
date:   2020-08-11 11:56:00
categories: 笔记心得
tags: audio linux alsa
excerpt: alsa-lib 读取更新配置树函数snd_config_update_ref的分析
mathjax: true
---

{:toc}

`snd_config_update_ref`函数的目的是更新配置树，第一次调用时，实际上主要是解析并加载配置文件。
函数的原型已经在[上一篇]({{site.url}}/2020/08/11/alsa_snd_open-analysis-1)中介绍过，
`snd_config_update_ref`主要是调用了`snd_config_update_r`函数，本篇我们会详细分析此函数。

### 1.snd_config_update_r 

函数原型如下:<commit_msg>增加目录功能<commit_after>---
layout: post
title:  "linux alsa-lib snd_pcm_open函数详细分析（二)"
date:   2020-08-11 11:56:00
categories: 笔记心得
tags: audio linux alsa
excerpt: alsa-lib 读取更新配置树函数snd_config_update_ref的分析
mathjax: true
---

{% include toc.html}

`snd_config_update_ref`函数的目的是更新配置树，第一次调用时，实际上主要是解析并加载配置文件。
函数的原型已经在[上一篇]({{site.url}}/2020/08/11/alsa_snd_open-analysis-1)中介绍过，
`snd_config_update_ref`主要是调用了`snd_config_update_r`函数，本篇我们会详细分析此函数。

### 1.snd_config_update_r 

函数原型如下:
{'fraction_non_alphanumeric': 0.13015873015873017, 'fraction_numerical': 0.050793650793650794, 'mean_word_length': 7.446428571428571, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4617361', 'n_tokens_mistral': 571, 'n_tokens_neox': 577, 'n_words': 54}