No, jde o to, že ta funkce PrehrajSoubor se zavolá jen jednou, pokaždé, když zmáčkneš tlačíto Prehraj. Takže při každém stisku tlačítka přehraje jeden chunk.
Jak radí Jirka, nastuduj si thready. Pozor, u wxpythonu můžeš volat funkce wxpythonu jenom z hlavního threadu - musíš nějak posílat tomu hlavnímu threadu zprávy, ať to udělá. Myslím, že by se Ti hodily tyto 2 texty: https://wiki.wxpython.org/Non-Blocking%20Gui https://wiki.wxpython.org/LongRunningTasks -- Petr On Tue, Dec 4, 2018 at 7:34 PM Ctibor.Plasek <ctibor.pla...@seznam.cz> wrote: > Ahoj. > Ve wx.python když po stisknutí tlačítka přehrávám stream tímto způsobem: > > chunk = 1024 > filePyAudio = wave.open(wavefile,"rb") > stream = p.open(format = > p.get_format_from_width(filePyAudio.getsampwidth()), channels = > filePyAudio.getnchannels(), rate = filePyAudio.getframerate(), output = > True) > data = filePyAudio.readframes(chunk) > while data: > stream.write(data) > > tak to sice krásně přehrává, ale nedá se už nic jiného dělat, než to > dohraje.( v zásadě to okno jakoby vytuhne) > Tak jsem si myslel, že bych nějak v okně kontroloval druhé tlačítko Stop a > přehrával to vždy po těch kouscích. > Jenže po klinutí na Play se vždy přehraje pouze jeden chunk a pak se > zastaví. Všechno jsem zglobalizoval (což myslím není nejlepší nápad), ale > stejně nic. > Mohli byste mi, prosím, poradit? > > Vše viz přiložený soubor. > Díky Ctibor > > > _______________________________________________ > Python mailing list > python@py.cz > http://www.py.cz/mailman/listinfo/python > > Visit: http://www.py.cz > -- https://blahos.com/ https://traceability.cz/
_______________________________________________ Python mailing list python@py.cz http://www.py.cz/mailman/listinfo/python Visit: http://www.py.cz