2017-12-30 64 views
-1
import pygame as pg, sys 
from pygame.locals import * 
import os 

pg.mixer.pre_init(44100, 16, 2, 4096) 
pg.init() 

a = pg.mixer.music.load("./Sounds/ChessDrop2.wav") 
a.play() 

上記のコードは、サウンドがpygameで再生できるかどうかをテストするために書いたものです。私の 'ChessDrop2.wav'ファイルは16ビットwav-PCMファイルです。なぜなら、ファイルが32ビットPCMだったとき、pygameはそれを未知のフォーマットとして認識したからです。コードを実行するとエラーがなくなりましたが、以下のエラーがシェル上でポップアップします。変数 'a'にサウンドファイルを割り当てたので、サウンドは再生されませんか?私のPythonバージョンは3.6.1で、pygameは1.9.3です。 @CaMMeloが述べたように、あなたがNoneTypeオブジェクトに 'play'という属性はありません

pg.mixer.music.play() 
+0

エラーをファイルから新しいSoundオブジェクトを作成するか、オブジェクトをバッファ'None.play()'ドキュメントをチェックしましたか? – furas

答えて

2

この機能はチェックし、任意のオブジェクトを使用するドキュメントを返しません。 pygame.mixer.music.load(filename)メソッドはオブジェクトを返しません。

ただし、ロード後に返品オブジェクトをお探しの場合は、pygame.mixer.Soundをお試しください。

pygame.mixer.Sound
あなたがやろうついにその `負荷()` `戻っNONE`とを意味

from pygame import mixer 
mixer.init() 
sound = mixer.Sound("yourWaveFile.wav") 
sound.play() 
関連する問題