首页 > 其他分享 >pyaudio无法使用sudo执行:OSError: [Errno -9996] Invalid input device (no default output device)

pyaudio无法使用sudo执行:OSError: [Errno -9996] Invalid input device (no default output device)

时间:2024-10-14 16:23:54浏览次数:8  
标签:OSError no -- sudo pulseaudio pulse access device

项目背景

  在树莓派上通过语音控制ws2812b灯带,使用 pyaudio 作为语音输入,使用 rpi_ws281x 控制灯带的颜色。

问题描述

  目前出现的问题是由于rpi_ws281x使用PWM引脚,需要使用sudo来执行,但是pyaudio使用sudo执行时会报错:OSError: [Errno -9996] Invalid input device (no default output device)

解决方案

  将 pulseaudio 作为系统服务运行,而不是用户服务。

解决步骤

  首先,禁用用户模式(如果启用的话):

sudo systemctl --global disable pulseaudio.service pulseaudio.socket

  然后创建一个systemd文件(/etc/systemd/system/pulseaudo.service):

[Unit]
Description=PulseAudio Daemon
 
[Install]
WantedBy=multi-user.target
 
[Service]
Type=simple
PrivateTmp=true
ExecStart=/usr/bin/pulseaudio --system --realtime --disallow-exit --no-cpu-limit 

  将 pulse 和 pi 用户添加到所需的组:

sudo usermod -a -G audio pulse #add pulse to audio group
sudo usermod -a -G pulse-access pi #add pi to pulse-access group
sudo usermod -a -G pulse-access root #add root to pulse-access group

  最后,启动服务:

sudo systemctl enable pulseaudio.service
sudo systemctl start pulseaudio.service

 

参考文档:raspberry pi - Running part of python program with/without sudo - Stack Overflow

 

标签:OSError,no,--,sudo,pulseaudio,pulse,access,device
From: https://www.cnblogs.com/rnckty/p/18464457

相关文章

  • 基于nodejs+vue基于springboot的高校资源共享平台[开题+源码+程序+论文]计算机毕业设
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着信息技术的飞速发展和教育改革的不断深入,高校资源共享已成为提升教育质量、促进学术交流的重要途径。然而,传统的高校资源管理模式存在资源分散、利用率......
  • 基于nodejs+vue基于springboot的个人博客设计与实现[开题+源码+程序+论文]计算机毕业
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着互联网技术的飞速发展和信息时代的到来,个人表达与分享的需求日益增长。博客作为一种重要的网络应用形式,为博主提供了展示自我、分享知识与见解的平台。......
  • 基于nodejs+vue基于SpringBoot的个人健康管理系统[开题+源码+程序+论文]计算机毕业设
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着现代生活节奏的加快和工作压力的增大,个人健康问题日益受到社会各界的广泛关注。传统的健康管理方式往往依赖于线下医院或体检中心,不仅耗时费力,还难以满......
  • 基于nodejs+vue基于SpringBoot的个人理财系统[开题+源码+程序+论文]计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着经济的快速发展和人民生活水平的提高,个人理财已成为现代人生活中不可或缺的一部分。然而,传统的理财方式往往依赖于人工记录和计算,不仅效率低下,还容易出......
  • NOIP2024集训Day49 图论
    NOIP2024集训Day49图论A.[BZOJ2348中山市选2011]杀人游戏最优决策一定是我们找到一个点,使它能够尽可能到达更多的点,然后我们会发现必须询问的人缩点后就是入度为\(0\)的点。如果剩下了一个人,那么这个人是可以被推出来的。即:入度为\(0\)的点是一定要被询问的,如果存在一......
  • NOIP2024集训Day50 图论
    NOIP2024集训Day50图论A.[JSOI2012]越狱老虎桥先边双缩点,建出边双生成树。在不额外加边的情况下,割掉树边会使子树内部断开;在加入边的情况下,若加入一条\(1-u\)的边,则形成了一个\(1-u\)的环,环无法通过割一条边断开;而连接树上两个节点\((u,v)\)的情况,把图展开后发......
  • 修改notepad++的主题(背景色、前景色、字体等)
    在设置-语言格式设置中打开设置的界面:设置效果如下图:这些基本就满足需求了,如果需要自己单独设置自己想要的颜色,也可以到notepad++的stylers.xml这个文件里修改:右键单击Notepad++图标,选择打开文件所在位置,找到stylers.xml文件,使用Notepad++或者记事本打开都可以。找到其......
  • Linux 之 nano 编辑器
    使用git提交的时候,发生冲突或要记录相关信息时会弹出nano这个编辑器。nano[选项][[+行,列]文件名]...nano[必要参数][选择参数][文件]命令行白的部分是组合键,后面的则是该组合键的功能。指数符号(^)代表的是键盘的[ctrl]按键,(M)表示Alt键。[Ctrl]-G:取得在线帮助(hel......
  • 【题解】Solution Set - NOIP2024集训Day50 图的连通性相关
    【题解】SolutionSet-NOIP2024集训Day50图的连通性相关https://www.becoder.com.cn/contest/5618「JSOI2012」越狱老虎桥简述题意:题目大意:给定一张图,A先添加\(1\)条边,B再删去一条边使得图不连通,A要最大化删除边的权值,B要最小化删除边的权值,问最终的权值是多少。......
  • c3p0数据库连接池出现Could not get JDBC Connection An attempt by a client to chec
    c3p0有些年头了,也曾红极一时。但你是否遇到过,明明并发并不高,连接池最大连接数也设的挺大了,还是报无法获取新连接。CouldnotgetJDBCConnectionAnattemptbyaclienttocheckoutaConnectionhastimedout.参考文章:https://cloud.tencent.com/developer/article/2319703......