首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >模仿声卡ALSA和虚拟(码头-内核重建- ALSA和虚拟)

模仿声卡ALSA和虚拟(码头-内核重建- ALSA和虚拟)
EN

Stack Overflow用户
提问于 2019-09-11 04:57:56
回答 1查看 2.9K关注 0票数 1

我使用的是一个对接图像,它没有ALSA的snd虚拟模块可用。我需要模仿声卡。我不需要(或希望)听音频。

基于我所做的许多搜索,我相当肯定我希望使用ALSA的snd模块来模拟声卡,它本质上是/dev/null。

查看ALSA矩阵的指南:模块-虚拟,它指出,如果"modinfo声音核心“返回您有这个模块,那么您不需要重新编译您的内核。

在我的例子中,我没有“声音核心”或“声音”可用。我认为这意味着我必须重新编译内核。对我来说,重新编译码头形象的核心是一个新概念。码头对我来说是个新概念。

从某种意义上说,我需要将ALSA的snd模块安装到Linux坞映像中,该映像没有将声音核心/声音编译到内核中。

码头形象:https://github.com/fcwu/docker-ubuntu-vnc-desktop

ALSA矩阵和虚拟:https://www.alsa-project.org/main/index.php/Matrix:Module-dummy

这对我来说是一个潜在的解决方案吗?:https://github.com/torvalds/linux/blob/master/sound/drivers/dummy.c

编辑:

当将~/..asoundrc替换为以下内容并运行"alsactl还原“时,我将得到以下输出。而且,我的主机的音量也会受到影响。

代码语言:javascript
复制
# .asoundrc

pcm.dummy {
   type hw
   card 0
}

ctl.dummy {
   type hw
   card 0
}

$ alsactl恢复 load_state:1683:无法打开/var/lib/alsa/asound.state :没有这样的文件或目录找到硬件:“HDA”"Realtek ALC269VB“”HDA:10ec0269 100446 00100100 HDA:808628055 80860101 00100 000“"0x1028”"0x0446“硬件是 使用找到的硬件的通用方法初始化:“虚拟”“虚拟” 混频器“硬件使用通用方法初始化。

EN

回答 1

Stack Overflow用户

发布于 2019-09-11 05:27:25

我认为解决方案是将声音设备安装到码头,这里的问题是您必须使用privileged

代码语言:javascript
复制
docker run  -v /dev/snd:/dev/snd --privileged myImage ...

UPDATE您还可以插入内核模块snd并指定2作为主机上声音循环设备的索引:

代码语言:javascript
复制
sudo modprobe snd-aloop index=2
docker run -it --rm -p 6080:80 --device /dev/snd -e ALSADEV=hw:2,0 dorowu/ubuntu-desktop-lxde-vnc
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57882375

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档