在 pydub 中播放音频

Posted

技术标签:

【中文标题】在 pydub 中播放音频【英文标题】:Playing audio in pydub 【发布时间】:2014-10-15 16:32:22 【问题描述】:

如何在将 wav 音频导入我的代码后播放它?

from pydub import Audiosegment  
song = AudioSegment.from_wav("explosion.wav")

【问题讨论】:

【参考方案1】:

如果您只是想快速了解您的代码在做什么(例如在 REPL 中),您可以使用 pydub.playback:

from pydub import AudioSegment
from pydub.playback import play

song = AudioSegment.from_wav("explosion.wav")
play(song)

如果你安装了pyaudio,那将被使用;它是sometimes tricky to install。否则会使用 ffplay。

ffplay 不是所有平台上标准 ffmpeg 安装的一部分,所以如果你要走这条路,请查看 pydub 文档中的“Getting ffmpeg set up”。

另一个警告:ffplay 会导致在播放声音时打开一个窗口,这几乎绝对不是在生产代码中使用的可接受的解决方案。如果您想在生产代码中播放音频,则需要查看其他选项。

【讨论】:

我使用这个重载代码阻止控制台窗口在 Windows 上打开:import subprocess #Set the subprocess flag to NOT show console window if sys.platform == 'win32': subprocess.STARTUPINFO.dwFlags = subprocess.STARTF_USESHOWWINDOW

以上是关于在 pydub 中播放音频的主要内容,如果未能解决你的问题,请参考以下文章

PyDub 从变量播放音频

python Pydub - 以阻塞和非阻塞格式播放音频

pydub,ffmpeg mp4转mp3音频提取

求python将两个MP3音频文件拼接成一个MP3文件的代码

Html5之高级-5 HTML5音频处理(在H5中播放音频编程实现音频播放器)

Android在音频播放器中刷新Seekbar进度和播放持续时间导致音频播放滞后