2

我有一个由 Python+Panda3d 编写的 GUI 程序。我想添加一个在运行时持续播放的声音。声音的频率是恒定的,而音量是由一个变量决定的,并且随着时间的推移而修改。

实现这一点的最简单方法是什么?

我搜索了一些 Python 的音频库,尽管我想要的功能非常简单,但它们似乎很复杂。所以我想知道是否有更简单的方法。

谢谢。


更新:该程序适用于 Windows。

4

2 回答 2

1

好吧,还没有可用的答案,所以让我报告我自己的解决方法。

  1. 通过音调发生器产生给定频率的音调,然后得到 .wav 文件。将 .wav 文件放在可访问的路径中。

  2. 使用 Panda3D 的内置声音功能

    base = ShowBase()
    mySound = base.loader.loadSfx("path/to/the_tone.wav")
    

    让它继续播放:

    mySound.setLoop(True)
    mySound.play()
    
  3. 要调节音量,只需调用:

    mySound.setVolume(0.5) # 0.0~1.0 
    

该解决方案完美运行。感谢 Panda3D。

于 2013-05-20T18:16:04.157 回答
0

这个视频教程非常好,使用 gStreamer 和频率:GNOME Screencasts Creating a posh guitar Tuner https://vimeo.com/26100971

于 2013-05-18T15:49:17.403 回答