首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Linux ALSA声卡驱动之二:声卡的创建

list_head controls:记录该声卡下所有的控制单元的链表 void *private_data:声卡的私有数据,可以在创建声卡时通过参数指定数据的大小 二、声卡的建立流程: 2.1.1....第二步,创建声卡的芯片专用数据: 声卡的专用数据主要用于存放该声卡的一些资源信息,例如中断资源、io资源、dma资源等。...第三步,设置Driver的ID和名字: strcpy(card->driver, "My Chip"); strcpy(card->shortname, "My Own Chip 123"); sprintf...第四步,创建声卡的功能部件(逻辑设备),例如PCM,Mixer,MIDI等: 这时候可以创建声卡的各种功能部件了,还记得开头的snd_card结构体的devices字段吗?...三、snd_card_create(): 这个接口在新的Linux内核里面可能找不到,这里我们主要是学习思想! snd_card_create()在/sound/core/init.c中定义。

1.1K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux下使用alsamixer配置系统默认声卡设备(默认音频输出设备、输入设备、系统音量)

    一、系统环境 操作系统: ubuntu 18.04 64位 二、查看系统有哪些声卡可用(麦克风和扬声器) 当系统下存在多个麦克风或者扬声器的时候,配置默认的设备是很有必要的。...2.1 运行alsamixer命令,打开图形界面 wbyq@wbyq:~$ alsamixer 打开图形界面之后,按下F6,即可查看系统默认声卡。...三、设置系统默认的音量 3.1. 使用 alsamixer 图形界面手动设置 打开图形界面之后,按下键盘上的方向键即可设置音量。...四、测试声卡设备是否正常(录音和放音) 4.1 使用系统默认声卡录音和放音 wbyq@wbyq:~$ arecord -d 10 test.wav 正在录音 WAVE 'test.wav' : Unsigned...五、设置系统默认的麦克风设备和扬声器设备 5.1 创建声卡配置文件 针对全局配置: 在/etc目录下创建文件asound.conf 针对指定用户配置: 在用户目录下创建文件.asoundrc 5.2

    20K20

    解密:Android设置默认程序

    Android作为一个伟大的系统,自然提供了设置默认打开程序的实现.在这篇文章中,我会介绍如何在Android系统中设置默认的程序....在设置默认程序之前,无非有两种情况,一种是已经有默认的程序,另一种则是没有任何默认程序....原因是这样的Android因为基于Linux 内核,Linux有着很棒的用户概念,而Android中每个应用就是一个在Linux内核中的用户.两个级别相同的用户无法删除对方....如果用户从安装详情页回到你的程序,你需要检测是不是用户清理了默认的程序设置,判断依据还是是否有默认的程序设置,如果还有默认的,继续提示需要手动清理其他已设置的程序,直到用户彻底清理完成之后,然后按照下面的没有默认设置程序的情况处理...注意,存在多次清理的情况,如设置浏览器,先清理了UC默认设置后,可能还需要清理海豚浏览器的情况. 没有默认的程序.

    2.7K20

    Linux ALSA声卡驱动之四:Control设备的创建

    默认的访问类型是:SNDDRV_CTL_ELEM_ACCESS_READWRITE,表明该control支持读和写操作。...很多声卡的驱动利用它存储硬件寄存器的地址、bit-shift和bit-mask,这时,private_value字段可以按以下例子进行设置: .private_value = reg | (shift...3、put回调函数: put回调函数用于把应用程序的控制值设置到control中。...详细的创建过程可以参考本博的另一篇文章:Linux音频驱动之三:PCM设备的创建。下面我们只讨论有区别的地方。...所以我们无需显式地创建control设备,只要建立声卡,control设备被自动地创建。 和pcm设备一样,control设备的名字遵循一定的规则:controlCxx,这里的xx代表声卡的编号。

    33610
    领券