流式音频[来自Python]

2024-05-29 08:25:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Python应用程序,我一直在工作,它可以从作曲家的乐谱中实时生成音乐。它的工作原理是根据作曲者编写的规则混合样本,引入随机性元素

最关键的是,这一切都是实时发生的。不生成WAV/OGG/MP3文件

在开发过程中,我一直使用PyGame和PyDub来创建音乐,将24个声道的音频样本混合到一个输出中。开发过程中的输出是通过Pygame混音器直接播放到默认的音频设备上的,所以我在开发过程中在headphones上听音乐

不过,现在我想把所有这些都放到一个在线应用程序中,通过网络提供音频。当用户登陆主页时,我希望他们能听到音乐流到他们的机器上

问题是:如何做到最好

在开发过程中,我假设在最后一分钟,我可以更换我的音频设备的东西,采取音频流馈送到它,并重定向到一个端口或类似的,这样我就可以有一个播放器嵌入在主页指向该端口,播放音频来自它

然而,现在我已经到了这一点,我开始明白,我从来没有真正了解音频工作时,它是如何提供这种方式

如前所述,导出一个文件,然后将播放器指向URL是不可能的——音乐可能是无穷无尽的

有什么线索吗?我已经通过Google搜索了很多,但我得到的只是一些关于使用“音频服务器”来传送mp3文件的文章。我觉得我只是误解了soem的基本概念,没有提出正确的问题

在我的梦中,我只是在代码中添加了这样的内容:

  1. 安装创建虚拟音频驱动程序的snappy\u library.py
  2. 告诉snappyèu库重定向任何发送到nnnn端口的音频
  3. 告诉Pygame使用snappy\u库作为其音频设备
  4. 退休

提前感谢你的指点/上下文设置/示例


Tags: 文件端口应用程序音乐过程主页音频播放器

热门问题