从 Python 在 Linux 上播放 MP3
Posted
技术标签:
【中文标题】从 Python 在 Linux 上播放 MP3【英文标题】:Play MP3 on Linux from Python 【发布时间】:2021-06-11 11:03:09 【问题描述】:我只想在 Linux 上直接用 Python 代码播放一个简单的 MP3 文件。
我查看了this 和this 问题并尝试了以下库,但都失败了:audioplayer
、Ipython.display.Audio
、pydub
、pygame.mixer
、ossaudiodev
、soundfile
.
我经常看到的错误是:
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的主要内容,如果未能解决你的问题,请参考以下文章