Python 使用pygame播放音乐,但不播放声音

Python 使用pygame播放音乐,但不播放声音,python,macos,pygame,Python,Macos,Pygame,当我运行代码时,没有声音,程序像一秒钟一样结束。起初我没有while循环,直到我在类似问题的答案中看到了建议。该程序在我朋友的windows系统上确实进入了while循环,但在我的mac电脑上没有,甚至在我朋友的windows系统上也没有声音。有人知道怎么解决吗 在Ubuntu 10.04和Pygame 1.9.1上运行良好 有些事情你可以试试: 初始化整个pygamepygame.init() 我得到了他的建议(创建一个显示器)pygame.display.set\u mode((20010

当我运行代码时,没有声音,程序像一秒钟一样结束。起初我没有while循环,直到我在类似问题的答案中看到了建议。该程序在我朋友的windows系统上确实进入了while循环,但在我的mac电脑上没有,甚至在我朋友的windows系统上也没有声音。有人知道怎么解决吗

在Ubuntu 10.04和Pygame 1.9.1上运行良好

有些事情你可以试试:

  • 初始化整个pygame
    pygame.init()
  • 我得到了他的建议(创建一个显示器)
    pygame.display.set\u mode((200100))
  • 在播放和忙碌之间暂停(勾选)
  • 轮询循环中的事件
    pygame.event.get()
例如:

import pygame
pygame.mixer.init()
pygame.mixer.music.load("only one.mp3")
pygame.mixer.music.play(0)
while pygame.mixer.music.get_busy():
    pygame.time.Clock().tick(10)

如果你把mp3改成ogg格式会更容易,试试这个。。很简单

import pygame
pygame.init()
pygame.display.set_mode((200,100))
pygame.mixer.music.load("only one.mp3")
pygame.mixer.music.play(0)

clock = pygame.time.Clock()
clock.tick(10)
while pygame.mixer.music.get_busy():
    pygame.event.poll()
    clock.tick(10)
如果答案有效,请投票,如果没有,请告诉我出了什么问题

from pygame import *
pygame.init()
pygame.mixer.music.load("only one.ogg")
pygame.mixer.music.play(-1)
pygame.mixer.music.set_volume(0.3)
这适用于Windows 8和Python 2.7.6*.wav文件

如果键入
winsound.
并查找自动填充列表,则可以检查不同的标志。
这些标志类似于
SND\u FILENAME
或类似标志。
如果在编辑器中键入它们,如:
*winsound.SND\u FILENAME
您可以从上面的
PLaySound
命令中获得要应用的整数

玩得开心

Pygame声音不正常修复 信息 尝试重新安装或升级pygame 我有版本
1.9.1
,我通过以下命令将其升级到
1.9.3

注:


如果您使用easy_install安装它,它将无法工作。不确定,但是 当我尝试使用easy_install时,它不起作用


代码与您的相同,但我只是将其替换为我的音乐文件以进行检查。
您可以在图像中看到它:

.wav文件似乎工作正常

我用.mp3文件检查了一下,发现它不工作。 您可以从以下位置将.mp3转换为.wav:

或使用
如果您不想使用任何网站进行转换。
您还可以使用pydub对其进行转换

你可以从这个网站下载pydub

或在命令行中键入此命令:

pip install pygame --upgrade

通常,Pygame不会播放mp3文件。您可以测试.wav和.ogg文件是否会首先播放,以确保您的代码是正确的(根据您粘贴的内容,它似乎是正确的)。我建议将您的mp3声音转换为ogg for Pygame。

为了让Pygame开心,您必须将此添加到结尾:

pip install pydub

此外,导入sys。

如果创建显示屏,则上面的代码可以工作,如果没有它,则无法工作。你想在没有pygame屏幕的情况下播放音乐吗?我找不到任何显示混音器模块在典型pygame应用程序中独立工作的文档。我想你只需要先打开一个窗口。1。在
pygame.init()之前使用
import pygame
。如果您从pygame导入*
,则不会定义pygame。还有其他问题。2.  
pygame.mixer.music.load
给出
pygame.error:无法识别的文件格式
pip install pydub
while True:
    for event in pygame.event.get():
            if event.type==QUIT:
                pygame.quit()
                sys.exit()