繁体   English   中英

在Python中不使用默认输出(播放)设备播放mp3文件

[英]Play mp3 file not using default output (playback) device in Python

我知道在PyAudio上可以选择要在哪个播放设备上流式传输,但是PyAudio不支持mp3文件。 如果解决以下问题之一,我的脚本将起作用:

  1. 在PyAudio上播放mp3文件

  2. 从mp3转换为wav,没有任何数据丢失,也没有PyDub(通过这种转换方法 ,我发现在较长的音频中,末端丢失了)

  3. 以某种方式将声音从mp3文件播放到其他播放设备(该设备不是默认播放设备)

我个人想解决第一个问题。

如果能在PyAudio上播放mp3文件而不造成任何数据丢失或质量损失,我将不胜感激。

编辑:我发现当我用PyMedia播放mp3文件(这是从Google Text To Speech生成的文件)时,由于某些奇怪的原因,尾部也丢失了,所以转换方法(第2点)可能正常工作但问题可能出在其他地方。

首先,您在答案中提到的链接是关于pymedia而非pydub

接下来,我已经使用pydub将许多文件从mp3转换为wav没有问题。

如果您想尝试一下,这里有一个将mp3wav线性代码。 您可以使用option-2以这种方式使用其余代码。

from pydub import AudioSegment
AudioSegment.from_file("audio.mp3", format="mp3").export("audio.wav", format="wav")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM