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

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

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

32510

Linux Deploy:使用Repository部署Linux系统

那就是先在Linux Deploy中部署和安装所需要的环境和软件包,然后使用Linux Deploy的导出功能,将Rootfs打包为tar.gz文件,之后,我们只需要将此tar.gz文件导入Linux...Deploy,就可以完整还原打包时的Linux系统了。...解决方案:   贴心的作者为我们做好了一些基础的Rootfs以方便我们部署Linux系统,这些Rootfs放置在Linux Deploy的"Repository"中,有些遗憾的是,这些Repository...导入此Repository后,回到Linux Deploy主界面,点击右下角的"下载"图标进入配置界面,我们可以看到"源地址"已经被配置为一个远程服务器上的tgz(tar.gz)文件: ?   ...挂好后,我们回到Linux Deploy的主界面,按下菜单键,选择"安装"开始部署: ? ?

6.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

Linux Deploy:在Android上部署Linux

打开Linux Deploy,停止后再启动Linux系统。...介绍完安装,介绍一下卸载吧~你可以通过以下方法完全卸载Linux Deploy:   1.如果你使用"目录"的方式部署的Linux系统,那么在Linux Deploy内"停止"Linux系统,接着直接卸载...Linux系统之前提到的"安装路径"这一项,如果此项未经修改,则镜像路径为外置存储/linux.img,接着卸载Linux Deploy并重启手机即可完全卸载。...试试这个: Linux Deploy:使用Repository部署Linux系统(推荐方案)   还是部署失败?...这是备选方案: 备选方案:在Linux Deploy上使用镜像部署Linux系统   如果你想部署图形界面,请看这篇文章: Linux Deploy:部署图形界面环境 资源下载: Linux

10K41

Linux Deploy:部署图形界面环境

文章更新:   20170410 初次成文 问题提出:   其实这篇文章构思很久了,拖到现在才写...原因就在于在Linux Deploy上部署图形环境是一件坑多活累的工作:一来是因为兼容性原因,部署好的图形界面环境存在数量可观的...二来是因为基础的Linux环境才是图形界面环境部署的前提,而最近由于各种原因,使用原始的部署方法已经越来越难部署成功基础的Linux环境了。   ...进入Linux Deploy,点击右下角的"下载"图标进入配置界面,保持其他选项不变,修改以下配置项:   INIT:   打勾:启用自定义脚本执行   (INIT的其他配置保持不变)   图形界面:...当你开启了一个VNC会话,停止Linux系统再启动Linux系统后,再次执行vncserver命令,系统可能会报出以下错误: ?   ...编辑完成后,保存即可,进行这步操作后,在启动Linux系统后和停止Linux系统之前,Linux Deploy都会替我们执行这两条命令,这样一来之后就不会再报错了~   2. vncserver默认的分辨率是

11.4K21

Linux Deploy让安卓手机成为Linux服务器

后来发现了Termux、Linux Deploy、Aid Learning 经过尝试,Aid Learning感觉好像是用Termux魔改的,增加了很多东西,各方面都挺完善的,但是也因此比较臃肿,手机跑也挺吃力的...Termux没用尝试过,但是好像说没有Linux Deploy自由度那么大,而Linux Deploy需要root才行,而且据说可以安装Docker,所以最终选了它(emm感觉被忽悠了...docker...下载安装Linux Deploy https://github.com/meefik/linuxdeploy/releases(我使用的版本是2.6.0-259) 下载安装Busy Box https:...)(安装失败可以在手机上尝试手动创建/system/xbin文件夹) 配置Linux Deploy、安装Linux系统 打开linux deploy,左上角设置,最重要的就是下面两个要勾上,其他的设置可采用默认的...配置完毕后,回退一步,点右上角三个点的地方,安装,等待十几分钟左右,出现<<< deploy代表安装成功,点击一下停止按钮,然后再点击启动 启动成功,注意看界面有没有出现fail的,要留意下,我一开始安装

8.1K20

Linux ALSA声卡驱动之三:PCM设备的创建

每个声卡最多可以包含4个pcm的实例,每个pcm实例对应一个pcm设备文件。pcm实例数量的这种限制源于linux设备号所占用的位大小,如果以后使用64位的设备号,我们将可以创建更多的pcm实例。...在嵌入式系统中,通常不会像图2.1中这么复杂,大多数情况下是一个声卡,一个pcm实例,pcm下面有一个playback和capture stream,playback和capture下面各自有一个substream...(部件),所以第一步是要创建一个声卡 snd_pcm_new 调用该api创建一个pcm,才该api中会做以下事情: 如果有,建立playback stream,相应的substream也同时建立...,这个回调函数会在声卡的注册阶段被调用。...snd_pcm_set_ops 设置操作该pcm的控制/操作接口函数,参数中的snd_pcm_ops结构中的函数通常就是我们驱动要实现的函数 snd_card_register 注册声卡,在这个阶段会遍历声卡下的所有逻辑设备

32910

备选方案:在Linux Deploy上使用镜像部署Linux系统

文章更新:   20170201 初次成文 问题提出:   在之前的文章中: Linux Deploy:在Android上部署Linux   小苏为大家介绍了使用Linux Deploy在Android...于是小苏在这里发布另一种备选方案 - 使用小苏部署好的Linux镜像来部署Linux系统。   这种方法只支持Ubuntu和Kail Linux(因为小苏只部署了这两个镜像,其他的没有尝试)。...原理是将小苏手机上部署好的Linux镜像提取出来,大家下载镜像压缩包并解压,再在Linux Deploy中经过简单配置就可以直接挂载和启动Linux系统了,免去部署的步骤,所以成功率应该会高一些~ 解决方案...安装并打开Linux Deploy,拉开侧边栏,选择"配置文件",点击右上角的"+"按钮新建一个名为"Ubuntu"的配置文件并应用。   ...Kail Linux镜像,在这里小苏以img镜像文件存储路径为/sdcard/linux/kail_linux.img为例,新建一个名为Kail_Linux的配置文件,按以下截图配置,配置完成后,在主界面启动

6.9K50

31.Linux-wm9876声卡驱动(移植+测试)

本节学习目的 1)分析Linux中的OSS声卡系统 2)移植wm9876声卡 3)使用madplay应用程序播放mp3 1.声音三要素 采样频率 音频采样率是指录音设备在一秒钟内对声音信号的采样次数,...WM9876声卡硬件分析 声卡是负责录音、播音、调节音量和声音合成等的一种多媒体板卡  本节使用的声卡是2440板上自带的WM9876声卡 ?...本节的WM8976的MODE脚接的高电平,所以是3线控制 3.接下来便来分析linux内核的声卡系统 在linux声卡中存在两种声卡系统,一种是OSS(开放声音系统),一种是ALSA(先 进Linux声音架构...本节系统以OSS(Open Sound System)为例 , 内核以linux-2.6.22.6版本为例,位于:linux-2.6.22.6\sound\Sound_core.c 3.1首先进入入口函数...uda1341声卡和WM8976声卡非常相似,音频都是I2S接口,就只有控制部分不一样 uda1341声卡的硬件,如下图所示: ?

4.9K71
领券