Python MP3播放器

时间:2016-09-24 15:21:59

标签: python mp3 playback

我正在尝试在Python上播放MP3文件,但我无法找到合适的模块! 我试过这个:

import os
os.startfile('hello.mp3')

但我得到错误

Traceback (most recent call last):
  File "/Applications/Youtube/text 2 speech/test.py", line 2, in <module>
    os.startfile('hello.mp3')
AttributeError: 'module' object has no attribute 'startfile'

我也试过这个:

import vlc
p = vlc.MediaPlayer("file:hello.mp3")
p.play()

但我得到错误

Traceback (most recent call last):
  File "/Applications/Youtube/text 2 speech/test.py", line 1, in <module>
    import vlc
ImportError: No module named 'vlc'

但我仍然无法找到合适的模块。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:0)

您需要安装https://wiki.videolan.org/Python_bindings

中的vlc.py模块

对此的绝对缺点是:

import vlc
Inst = vlc.Instance()
player = Inst.media_player_new()
Media = Inst.media_new_path('/home/rolf/vp1.mp3')
player.set_media(Media)
player.play()

虽然您需要检查player.get_state()以查看它是否仍在运行,暂停,停止等,player.stop()以便在启动后停止播放音频

据我所知os.startfile()仅适用于windows操作系统 使用play命令行指令(Linux和可能的OS X)

import os
os.system('play /home/rolf/vp1.mp3')

你也可以看一下Gstreamer,虽然文档可以做些改进。

import gst
player = gst.element_factory_make("playbin")
player.set_property("uri", "file:///home/james/vp1.mp3")
player.set_state(gst.STATE_PLAYING)

使用player.set_state(gst.STATE_NULL)停止播放,
暂停player.set_state(gst.STATE_PAUSED)

注意:避免使用Gstreamer版本0.10的教程,而是搜索1.0版本 vlcGstreamer都允许您播放音频和视频,但在我看来,vlc更易于使用,但Gstreamer更灵活。

答案 1 :(得分:0)

导入pygame 从 pygame 导入混音器

def play_music(): 全局暂停

if (paused):
    mixer.music.unpause()
    paused = False
else:
    music = choose_music[0]
    mixer.music.load(music)
    mixer.music.play()
    show_details(music)
    musicpage.mainloop()