前置知识:

https://www.zhihu.com/question/20398418/answer/18080841
https://zhuanlan.zhihu.com/p/53889224
http://bigsec.net/b52/scipydoc/wave_pyaudio.html

相关配置

anaconda 清华镜像: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

相关应用

rap 歌词生成:https://raplyrics.eu/ 源码:github

相关库的介绍

WAV 声音处理库 — wave

读写WAV格式文件:wave 模块提供了一个处理 WAV 声音格式的便利接口。它不支持压缩/解压,但是支持单声道/立体声。

音乐播放 — playsound

纯Python,跨平台,单功能模块,不依赖播放声音。播放声音模块只包含一个东西——函数(也称为PraveSoad)。它需要一个参数——文件的路径和你想播放的声音。这可能是本地文件,或者URL。有一个可选的第二个参数块,默认情况下它被设置为true。将其设置为false使函数异步运行。

python2可以使用pymedia,这是用于访问和操作媒体文件的Python库,但是这不在支持python3。所以使用支持mac/win/linux 的 playsound:

  1. from playsound import playsound
  2. playsound('/path/to/a/sound/file/you/want/to/play.mp3')
  3. playsound("http://music.163.com/song/media/outer/url?id=562598065.mp3")

当然也可以使用 pygame

  1. import pygame
  2. def play_voice(voice_file_path):
  3. pygame.init()
  4. pygame.mixer.init()
  5. track = pygame.mixer.music.load(voice_file_path)
  6. pygame.mixer.music.play(loops=0,start=0)
  7. screen = pygame.display.set_mode([300,300])
  8. while 1:
  9. for event in pygame.event.get():
  10. if event.type == pygame.QUIT:
  11. sys.exit()
  12. # play_voice("try_test/me.wav")


音轨分离 — spleeter

python音轨分离神器https://github.com/deezer/spleeter
效果:https://www.qbitai.com/2019/11/8655.html
功能尝鲜:https://colab.research.google.com/github/deezer/spleeter/blob/master/spleeter.ipynb