2016-03-29 17 views
0

私は、パイゲームのバッファからサウンドを再生しようとしています。次のコードは正しくサウンドを1回再生しますが、結果はTypeError: must be string without null bytes, not strになります。pygameを使ってバッファからサウンドを再生する

f = open('sound.wav', 'rb') 
data = f.read() 
buffer = data[44:len(data)] # start after header 
pygame.mixer.Sound(buffer).play() 

音が正常に一度プレイした後にエラーが発生したので、私の疑惑は、play()bufferが長くなるように期待していることです。

答えて

1

私はあなたが変数bufferに組み込まれたpythonを使用していると思います。
ここには、bufferに関するpythonのドキュメントがあります。

私はTypeError: must be string without null bytes, not str

に変数とは対照的に、バッファが割り当てに使用されたときにエラーを与えるものではありません変更されたコードをあなたのエラーを再現することができました。

import pygame 
pygame.mixer.init() 

f = open('sound.wav', 'rb') 
data = f.read() 
#buffer = data[44:len(data)] # start after header 
myBuffer = buffer(data , 44,len(data)) 
pygame.mixer.Sound(myBuffer).play() 
+0

今、私は今や馬鹿のように感じます。それをキャッチするためにありがとうございます。 – user1986358

関連する問題