画出tinyalsa pcm.c中的pcm_open函数调用到驱动层完整的代码流程图
时间: 2023-02-07 10:20:01 浏览: 220
simplifie_tMP3Player.rar_多媒体编程_Visual_C++_
pcm_open函数位于tinyalsa库中的pcm.c文件中,是用来打开一个PCM设备并返回一个pcm结构体的指针的。它的调用流程如下:
1. 首先,pcm_open函数会调用另一个函数pcm_open_setup,用来设置pcm结构体的一些参数。
2. 接着,pcm_open函数会调用snd_pcm_open函数,这是ALSA库中的一个函数,它的作用是打开一个PCM设备并返回一个snd_pcm_t结构体的指针。
3. 接下来,pcm_open函数会调用snd_pcm_hw_params_malloc函数,这是ALSA库中的一个函数,它的作用是分配一个snd_pcm_hw_params_t结构体的内存,并返回指向该结构体的指针。
4. 然后,pcm_open函数会调用snd_pcm_hw_params_any函数,这是ALSA库中的一个函数,它的作用是将snd_pcm_hw_params_t结构体初始化为默认值。
5. 接着,pcm_open函数会调用snd_pcm_hw_params_set_access函数,这是ALSA库中的一个函数,它的作用是设置PCM设备的访问方式。
6. 然后,pcm_open函数会调用snd_pcm_hw_params_set_format函数,这是ALSA库中的一个函数,它的作用是设置PCM设备的数据格式。
7. 接着,pcm_open函数会调用snd_pcm_hw_params_set
阅读全文