解决Ubuntu使用supervisor管控的程序不能使用麦克风的问题

86 篇文章 0 订阅 ¥9.90 ¥99.00
10 篇文章 1 订阅

项目场景:

Ubuntu服务器有时候可能更多的是用来跑服务,但是如果用来调取麦克风又担心自己的程序崩溃掉,你可能自然想到使用supervisor来管控自己的程序,但是似乎并不是那么好用。


问题描述

Ubuntu正常使用机器的能力是没有问题的,比如CPU、GPU等,唯独有一些东西有问题,比如麦克风。如果你的程序是使用root启动的,你就不能使用麦克风,同样也不意味着你把user设置为普通用户就能正常使用。


原因分析:

处于安全的考虑,Ubuntu不允许root用户使用麦克风等硬件,如果你的程序是使用root用户启动,你就不能正常使用麦克风。


解决方案:

解决方法很简单,我使用普通用户不就行了吗。恐怕也不完全行,实际上你需要切换用户才能使用麦克风设备,因为你需要初始化用户环境变量。默认supervisor是不自动切换用户环境变量的,你只能手动切。平常使用的ssh和桌面都初始化了用户环境变量,是可以直接使用麦克风的。

下面是一个简单的python程序用来获取可用麦克风设备。需要使用sounddevice这个module,没装的手动装下。

pip3 install sounddevice -i https://mirrors.aliyun.com/pypi/simple
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值