pygame.mixer.music可以正常播放音频,但pygame.mixer.Sound给出错误“无法打开文件”

时间:2020-02-27 14:23:14

标签: python raspberry-pi pygame mixer

我有一个简单的代码,我想使用pygame的混音器类播放音频文件。当我这样做时:

import pygame

dir_path = os.path.dirname(os.path.realpath(__file__))
path = os.path.join(dir_path, "mp3s", 'info.mp3')

pygame.mixer.init()
pygame.mixer.music.load(path)
pygame.mixer.music.play()

它工作正常。但是当我尝试以下方法时:

import pygame

dir_path = os.path.dirname(os.path.realpath(__file__))
path = os.path.join(dir_path, "mp3s", 'info.mp3')

pygame.mixer.init()
mysound = pygame.mixer.Sound(file=path)
pygame.mixer.Sound.play(mysound)

出现错误Unable to open file '/home/pi/myproject/mp3s/info.mp3'

我已经尝试使用Google搜索,但我唯一能找到的就是尝试pygame.init()pygame.display.set_mode((400, 300))都不对我有用...关于什么地方可能有问题的任何想法?我正在使用安装了Raspbian的Raspberry Pi和pygame 1.9.6的python 3.7

1 个答案:

答案 0 :(得分:3)

您不能将Sound类用于mp3播放,因为它仅支持oggwav

请参见pygame.mixer.Sound中的docs

可以从OGG音频文件或未压缩的WAV加载声音。

使用pygame播放mp3文件的唯一方法是使用pygame.mixer.music