gpt4 book ai didi

python - 卸载Kivy中的音频样本

转载 作者:行者123 更新时间:2023-12-03 02:28:29 26 4
gpt4 key购买 nike

音频卸载似乎并没有真正释放内存,至少就Linux操作系统而言。反复加载和卸载会导致内存使用率上升。我错过了明显的事情吗?

from __future__ import print_function
import kivy
kivy.require('1.9.0') # replace with your current kivy version !

from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
from kivy.core.audio import SoundLoader

class SoundTest(BoxLayout):

def __init__(self, **kwargs):
super(SoundTest, self).__init__(**kwargs)
button = Button(text='Play sound')
self.add_widget(button)
button.bind(on_release=self.PlaySound)

def PlaySound(self, widget):
snd = SoundLoader.load('test.ogg')
snd.bind(on_stop=self.UnloadSoundWhenDone)
snd.play()
print ("play", snd)

def UnloadSoundWhenDone(self, snd):
print ("unload", snd)
snd.unload()


class MyApp(App):

def build(self):
return SoundTest()

if __name__ == '__main__':
MyApp().run()

更新:这似乎正在使用kivy.core.audio.audio_gstplayer.SoundGstplayer后端。

最佳答案

实际上,内存似乎不会无限期地向上爬,因此,尽管SoundGstplayer分配的内存似乎比SDL2后端多得多,但这可能是预期的。

关于python - 卸载Kivy中的音频样本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39024813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com