从 Python 在 Linux 上播放 MP3

Posted

技术标签:

【中文标题】从 Python 在 Linux 上播放 MP3【英文标题】:Play MP3 on Linux from Python 【发布时间】:2021-06-11 11:03:09 【问题描述】:

我只想在 Linux 上直接用 Python 代码播放一个简单的 MP3 文件。

我查看了this 和this 问题并尝试了以下库,但都失败了:audioplayerIpython.display.Audiopydubpygame.mixerossaudiodevsoundfile .

我经常看到的错误是:

ModuleNotFoundError: No module named 'gi' ffmpeg 出错

【问题讨论】:

ModuleNotFoundError: No module named 'gi' 听起来好像你只是缺少一个依赖项——对于 ubuntu / debian,检查一下:What would cause the “gi” module to be missing from Python?“ffmpeg 错误”太模糊了,但我猜这也可能与错误/缺少依赖项有关。 【参考方案1】:

pyglet 是我发现的唯一可以在 Linux 上播放 MP3 的解决方案:

import pyglet
sound = pyglet.media.load("/home/max/Desktop/sound.mp3")
sound.play()

Source

【讨论】:

【参考方案2】:

有很多方法!

试试vlc python 模块?

import vlc

file = vlc.MediaPlayer("example.mp3")
file.play()

您也可以使用file.stop() 停止它

由于某些“更好”的音频模块不支持mp3,您可能还想将其转换为wav。你可以用pydub玩和转换

from pydub import Audiosegment

file = AudioSegment.from_mp3("example.mp3")
file.export("new.wav", format="wav")

【讨论】:

【参考方案3】:

MPV.io 会是一个不错的选择。轻量级的媒体播放器,几乎可以播放任何你扔给它的东西。 Python-MPV 访问功能。

有播放列表的方法,如果你想做一个完整的目录。它们还包括多个 GUI 的说明; GTK, QT, TK 中的 filedialog 都很容易使用。

【讨论】:

以上是关于从 Python 在 Linux 上播放 MP3的主要内容,如果未能解决你的问题,请参考以下文章

从视频制作音频播客的服务? [关闭]

wordpress里加了个外链的MP3播放器,用火狐,谷歌都没事,用ie就不能播了

在 Linux 上播放 mp3 声音缓冲区

如何在后台播放应用程序中的 mp3 文件?

在 python 上播放 mp3 歌曲

Qt:在 linux 上没有播放