【问题标题】:How to Play a Mp3 file using Python in Windows? [duplicate]如何在 Windows 中使用 Python 播放 Mp3 文件? [复制]
【发布时间】:2025-12-09 11:05:01
【问题描述】:

我尝试过使用 Pygame 播放文件 这是以下代码:

    import time, sys
    from pygame import mixer
    # pygame.init()
    mixer.init()

   sound = mixer.Sound("C:\Users\sharathchandra\Downloads\17.wav")
   sound.play()

   time.sleep(5)

但它不会引发任何错误,但不会播放歌曲。 我尝试播放 .wav 文件,但结果相同 我也试过pyglet 但它显示 >WAVEFormatException: AVbin is required to decodecompressed media 我想学习如何安装 AVbin 我在 Windows 上使用 spyder 运行了代码,我的 python 版本是 2.7。 我也运行了许多 pygame 的例子,但没有用。 我想学习使用 Python 播放 mp3 文件的正确方法以及如何为此目的安装所需的库。

【问题讨论】:

  • 确保 WAV 文件编码正确。它有许多不同的格式,因此请访问 pygame wiki 并检查哪一种是正确的。

标签: python audio pygame


【解决方案1】:
'''
Created on 2016. 6. 6.
This module is for playing a mp3 file by using pygame module
@author: Peter Sun
'''

import pygame

filePath = r"C:\learn\***.mp3"    #change to your MP3 file path

def playmusic(filename):
    BUFFER = 3072
    pygame.mixer.init()
    FREQ, SIZE, CHAN = pygame.mixer.get_init()
    pygame.mixer.init(FREQ, SIZE, CHAN, BUFFER)
    pygame.init()
    pygame.mixer.init()
    clock = pygame.time.Clock()

    pygame.mixer.music.load(filename)


    pygame.mixer.music.play()
    while True:
        clock.tick(500)
        print clock

try:

    playmusic(filePath)
except KeyboardInterrupt:
    pygame.mixer.music.stop()
    print("User soptted music")
except Exception:
    print("Unknown error")

print "Done!"

【讨论】:

  • 这个答案似乎有一堆额外的代码不能直接回答这个问题,比如时钟的东西。我会尝试将其最小化为加载和播放 .wav 文件所需的内容。
  • 这个文件只是试图打开一个 mp3 文件。根据标题,代码用于 mp3 文件。如果你不想要时钟,你可以去掉它。它动态显示 fps 以监控音频文件的波形。
  • 非常感谢您的解决方案完美运行,我认为时钟的东西可以防止控制台关闭,对吧?
【解决方案2】:

尝试VLC Python module,vlc.py,解释here

import vlc
p = vlc.MediaPlayer("file:///path/to/track.mp3")
p.play()

您可以通过以下方式阻止它:

p.stop()

【讨论】:

  • 能否指定如何安装vlc模块?
  • their git repository 下载vlc.py 将文件放在与脚本相同的位置并使用import vlc 导入
【解决方案3】:

尝试使用这个(解决方案取自here):

mixer.music.load('C:\Users\sharathchandra\Downloads\17.wav') # you may use .mp3 but support is limited
mixer.music.play()

许多更多方法可以找到herehere

另外,您可能想阅读 Pygame 音乐中的 documentation

【讨论】:

  • 我在代码没有抛出任何错误之前尝试了该代码,但听不到任何声音。
  • 您确定文件在该位置并且您的扬声器已启动吗?如果是这样,请尝试我已链接的其他方式。
  • 是的,借助 Os 模块的播放功能。