簡體   English   中英

在Pygame中更改sonid頻率

[英]Change sonid frequency in Pygame

如果按下按鈕,我想更改sonid頻率。 我正在使用Pygame,特別是混音器模塊。 當我第一次設置頻率時,我無法重新設置。 我已經閱讀了Pygame的文檔並且存在pre_init()方法,這在音樂播放之前設置了頻率。 現在我有這個:

def play_full(self, frequency=22050):
    """Play if a button is pressed"""
    pygame.mixer.pre_init(frequency=frequency)
    pygame.mixer.init()
    pygame.mixer.music.load(os.path.join(os.path.dirname(__file__), "../music/hi.mp3"))
    pygame.mixer.music.play()

但是當我將參數發送到函數時,頻率不會改變。 如何根據按下的按鈕改變頻率?,是否有一些例子? 順便說一下,我正在使用PyQt4進行GUI。

在pygame.mixer.init()中,您需要設置頻率大小和通道,在您的情況下,您將編寫如下代碼:

import pygame.mixer

def play_full(self, my_frequency):
    pygame.mixer.init(my_frequency, size=-16, channels=2)
    pygame.mixer.music.load('YOUR_FILE_DIRECTORY_GO_HERE')
    pygame.mixer.music.play()

這樣你就可以為你想做的事情設定頻率。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM