使用 Python 播放声音 [重复]

2023-12-28

在 Python 中播放声音文件 (.wav) 最简单的方法是什么?我所说的最简单是指最独立于平台并且需要最少的依赖性。 pygame 当然是一个选择,但对于声音来说似乎有点过分了。


对于Windows,您可以使用winsound。它是内置的

import winsound

winsound.PlaySound('sound.wav', winsound.SND_FILENAME)

您应该能够在 Linux 上使用 ossaudiodev:

from wave import open as waveOpen
from ossaudiodev import open as ossOpen
s = waveOpen('tada.wav','rb')
(nc,sw,fr,nf,comptype, compname) = s.getparams( )
dsp = ossOpen('/dev/dsp','w')
try:
  from ossaudiodev import AFMT_S16_NE
except ImportError:
  from sys import byteorder
  if byteorder == "little":
    AFMT_S16_NE = ossaudiodev.AFMT_S16_LE
  else:
    AFMT_S16_NE = ossaudiodev.AFMT_S16_BE
dsp.setparameters(AFMT_S16_NE, nc, fr)
data = s.readframes(nf)
s.close()
dsp.write(data)
dsp.close()

(ossaudiodev 的来源:Bill Dandretahttp://mail.python.org/pipermail/python-list/2004-October/288905.html http://mail.python.org/pipermail/python-list/2004-October/288905.html)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Python 播放声音 [重复] 的相关文章

  • Django 代理模型的继承和多态性

    我正在开发一个我没有启动的 Django 项目 我面临着一个问题遗产 我有一个大模型 在示例中简化 称为MyModel这应该代表不同种类的物品 的所有实例对象MyModel应该具有相同的字段 但方法的行为根据项目类型的不同而有很大差异 到目
  • SQLAlchemy 通过关联对象声明式多对多自连接

    我有一个用户表和一个朋友表 它将用户映射到其他用户 因为每个用户可以有很多朋友 这个关系显然是对称的 如果用户A是用户B的朋友 那么用户B也是用户A的朋友 我只存储这个关系一次 除了两个用户 ID 之外 Friends 表还有其他字段 因此
  • 将数据从 python pandas 数据框导出或写入 MS Access 表

    我正在尝试将数据从 python pandas 数据框导出到现有的 MS Access 表 我想用已更新的数据替换 MS Access 表 在 python 中 我尝试使用 pandas to sql 但收到错误消息 我觉得很奇怪 使用 p
  • 使 django 服务器可以在 LAN 中访问

    我已经安装了Django服务器 可以如下访问 http localhost 8000 get sms http 127 0 0 1 8000 get sms 假设我的IP是x x x x 当我这样做时 从同一网络下的另一台电脑 my ip
  • OpenCV Python cv2.mixChannels()

    我试图将其从 C 转换为 Python 但它给出了不同的色调结果 In C Transform it to HSV cvtColor src hsv CV BGR2HSV Use only the Hue value hue create
  • 为 Anaconda Python 安装 psycopg2

    我有 Anaconda Python 3 4 但是每当我运行旧代码时 我都会通过输入 source activate python2 切换到 Anaconda Python 2 7 我的问题是我为 Anaconda Python 3 4 安
  • 如何在 Python 中检索 for 循环中的剩余项目?

    我有一个简单的 for 循环迭代项目列表 在某些时候 我知道它会破裂 我该如何退回剩余的物品 for i in a b c d e f g try some func i except return remaining items if s
  • PyUSB 1.0:NotImplementedError:此平台不支持或未实现操作

    我刚刚开始使用 pyusb 基本上我正在玩示例代码here https github com walac pyusb blob master docs tutorial rst 我使用的是 Windows 7 64 位 并从以下地址下载 z
  • SQLALchemy .query:类“Car”的未解析属性引用“query”

    我有一个这里已经提到的问题https youtrack jetbrains com issue PY 44557 https youtrack jetbrains com issue PY 44557 但我还没有找到解决方案 我使用 Pyt
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • 从 Flask 访问 Heroku 变量

    我已经使用以下命令在 Heroku 配置中设置了数据库变量 heroku config add server xxx xxx xxx xxx heroku config add user userName heroku config add
  • BeautifulSoup 中的嵌套标签 - Python

    我在网站和 stackoverflow 上查看了许多示例 但找不到解决我的问题的通用解决方案 我正在处理一个非常混乱的网站 我想抓取一些数据 标记看起来像这样 table tbody tr tr tr td td td table tr t
  • 如何在ipywidget按钮中显示全文?

    我正在创建一个ipywidget带有一些文本的按钮 但按钮中未显示全文 我使用的代码如下 import ipywidgets as widgets from IPython display import display button wid
  • Pygame:有没有简单的方法可以找到按下的任何字母数字的字母/数字?

    我目前正在开发的游戏需要让人们以自己的名义在高分板上计时 我对如何处理按键有点熟悉 但我只处理过寻找特定的按键 有没有一种简单的方法可以按下任意键的字母 而不必执行以下操作 for event in pygame event get if
  • IO 密集型任务中的 Python 多线程

    建议仅在 IO 密集型任务中使用 Python 多线程 因为 Python 有一个全局解释器锁 GIL 只允许一个线程持有 Python 解释器的控制权 然而 多线程对于 IO 密集型操作有意义吗 https stackoverflow c
  • 使用 \r 并打印一些文本后如何清除控制台中的一行?

    对于我当前的项目 有一些代码很慢并且我无法使其更快 为了获得一些关于已完成 必须完成多少的反馈 我创建了一个进度片段 您可以在下面看到 当你看到最后一行时 sys stdout write r100 80 n I use 80覆盖最终剩余的
  • Jupyter Notebook 内核一直很忙

    我已经安装了 anaconda 并且 python 在 Spyder IPython 等中工作正常 但是我无法运行 python 笔记本 内核被创建 它也连接 但它始终显示黑圈忙碌符号 防火墙或防病毒软件没有问题 我尝试过禁用两者 我也无法
  • 如何在Python中对类别进行加权随机抽样

    给定一个元组列表 其中每个元组都包含一个概率和一个项目 我想根据其概率对项目进行采样 例如 给出列表 3 a 4 b 3 c 我想在 40 的时间内对 b 进行采样 在 python 中执行此操作的规范方法是什么 我查看了 random 模
  • 每个 X 具有多个 Y 值的 Python 散点图

    我正在尝试使用 Python 创建一个散点图 其中包含两个 X 类别 cat1 cat2 每个类别都有多个 Y 值 如果每个 X 值的 Y 值的数量相同 我可以使用以下代码使其工作 import numpy as np import mat
  • 在 Qt 中自动调整标签文本大小 - 奇怪的行为

    在 Qt 中 我有一个复合小部件 它由排列在 QBoxLayouts 内的多个 QLabels 组成 当小部件调整大小时 我希望标签文本缩放以填充标签区域 并且我已经在 resizeEvent 中实现了文本大小的调整 这可行 但似乎发生了某

随机推荐

  • DIV 内有两个 DIV。如何用第二个DIV自动填充父DIV的空间?

    请拜访这把小提琴 http jsfiddle net nirmand HQwLG 明白我的意思 我有一个父 DIV 其中有两个按垂直顺序放置的 DIV 顶部 DIV 应仅具有其内容的高度 而底部 DIV 应占据父 DIV 的所有剩余空间 无
  • 从 ASP.NET Web 服务接收 DTO

    如果我运行 ASP NET 并且正在访问一个返回 Person 对象列表的外国 asmx Web 服务 其中 Person 是外国公司定义的某个 DTO 那么我处理结果的最佳方法是什么 我是否应该创建自己的名为 Person 的 DTO 对
  • 从命令行获取用户的未截断的 Active Directory 组

    我经常使用net user命令查看用户的 AD 组 net user DOMAIN
  • MVC:如何为视图模型提供一个列表并在 .cshtml 上正确输出它

    我所做的是以给定值作为名称来搜索 Activedirectory 用户 然后 我创建一个包含名称 电子邮件和描述值的视图模型 然后我在索引上将其显示为 cshtml 问题在于我的制作方式 它只发送它找到的第一个用户 如果我从多个安德鲁中搜索
  • Pandas:删除所有 NaN 的列

    我有这个数据框 0 1 2 3 4 5 6 7 0 0915 8 NaN NaN NaN NaN NaN NaN NaN 1 NaN NaN NaN LIVE WGT NaN AMOUNT NaN TOTAL 2 GBW COD NaN N
  • 如何将 Eigen 库添加到 C++ 项目中

    可能是一个愚蠢 简单的问题 但我一直无法找到答案 我不知道如何使用 CodeBlocks c 添加库 我从以下位置下载了 zip 文件http eigen tuxfamily org index php title Main Page ht
  • 使用 ReactiveSecurityContextHolder 手动设置身份验证

    我正在尝试使用 Spring Web Flux 设置 Spring Security 不明白如何手动设置SecurityContext with ReactiveSecurityContextHolder 您有任何资源或提示吗 以我编写的这
  • Git Filter-Branch All 命令

    目前 我正在使用命令 git filter branch subdirectory filter MY DIRECTORY all 从该 git 存储库的所有 30 个分支中获取某个目录 在执行此过滤分支命令之前 我确保检查每个分支以确保
  • 如何更改 SpriteComponent 的颜色?

    我有一个查询系统 可以找到鼠标悬停在其中的对象 这不是一个按钮 但是 我想改变颜色 我不知道从哪里开始 我要查询什么属性以及如何更改它 目前 我有以下内容 fn mouse move mut commands Commands cursor
  • ContextBroker 订阅错误

    我已按照本教程安装 NGSI 将 cygnus 从版本 0 13 更新到 1 7 0 https github com telefonicaid fiware cygnus tree master cygnus ngsi https git
  • 在 python 中将 numpy、list 或 float 转换为字符串

    我正在编写一个 python 函数来将数据附加到文本文件 如下所示 问题是变量 var 可以是一维numpy数组 一维列表 或者只是一个浮点数 我知道如何转换numpy array list float单独字符串 意味着给定类型 但是有没有
  • UIAlertController 代码上的 EXC_BAD_ACCESS = 1

    我有一个视图控制器 我从其中启动UIAlertController单击按钮 下面是我的代码 IBAction playOnlineURL UIButton sender self launchPlayURLAlert void launch
  • 使用 Docker 运行单个 NodeJS 脚本并能够使用 Ctrl-C 终止它的最简单方法是什么

    从 Docker 的文档来看 如果你想运行独立的 NodeJS 脚本 你应该使用以下命令 docker run it rm name my running script v PWD usr src app w usr src app nod
  • OS X Lion 中显示“非法指令:4”

    一些 C 应用程序在 OS X Snow Leopard 中编译并无缝运行 但我最近更改为 OS X Lion 在这里 虽然没有编译错误 但当我尝试运行它时 我收到错误 非法指令 4 我没有任何线索 可能是什么原因 PS 这些是我使用的链接
  • SelectizeGroupUI - 部署 AWS 时无法设置筛选器宽度、INLINE = TRUE 错误

    在我闪亮的应用程序中 我使用 selectizeGroupUI 作为我的依赖选择输入的一部分 我正在努力手动将过滤器的宽度设置为比标题更宽 请参阅下面的屏幕截图 强烈赞赏建议 UI 渲染的屏幕截图 过滤器宽度默认为标题长度 https i
  • Spring boot JPA:使用库批量加载MySQL数据

    我对 Spring boot 还很陌生 我目前正在编写一个小型微服务 它将数据从 CSV 文件批量加载到 MySQL 数据库表中 我知道有很多方法可以实现这一点 但我想到的方法之一是使用 MySQLLOAD DATA FILE命令解析 cs
  • gethostbyname xcode 问题

    嘿伙计们 我是这方面的新手 但我正在尝试使用 gethostname 来使用 xcode 和 ipad 我尝试了一些方法 但它们似乎都冻结了 所以当我这样做时 host gethostbyname website com 效果很好 不过 我
  • JSON 架构:“allof”和“additionalProperties”

    假设我们的模式遵循模式 来自教程here http spacetelescope github io understanding json schema structuring html structuring schema http js
  • javafx SwingNode 在调整窗口大小之前不起作用

    我一直在使用此代码尝试 JavaFX8 中的 SwingNode 问题是 当窗口出现时 我无法单击按钮 直到调整窗口大小 移动它不起作用 我需要最大化它或用鼠标调整它的大小以使按钮做出响应 我意识到这可能是一个错误 因为 javafx8 仍
  • 使用 Python 播放声音 [重复]

    这个问题在这里已经有答案了 在 Python 中播放声音文件 wav 最简单的方法是什么 我所说的最简单是指最独立于平台并且需要最少的依赖性 pygame 当然是一个选择 但对于声音来说似乎有点过分了 对于Windows 您可以使用wins