Re: [python] Přehrávání v pyAudio

2018-12-05 Tema obsahu Ctibor.Plasek
jj. Díky moc vám oběma. Ten první odkaz mi pomohl a už mi to funguje.
Akorát teď řeším další problém - jak spustit více vláken. Ale myslím, že
jsem našel:

http://212.47.236.10/doku.php?id=python:misc:wxpython_postevent_threading




Ještě jednou díky moc.

Ctibor


-- Původní e-mail --
Od: Petr Blahoš 
Komu: python@py.cz
Datum: 5. 12. 2018 9:21:19
Předmět: Re: [python] Přehrávání v pyAudio 
"



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/Non-Blocking%20Gui)


https://wiki.wxpython.org/LongRunningTasks
(https://wiki.wxpython.org/LongRunningTasks)





--


Petr










On Tue, Dec 4, 2018 at 7:34 PM Ctibor.Plasek mailto: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(mailto:python@py.cz)
http://www.py.cz/mailman/listinfo/python
(http://www.py.cz/mailman/listinfo/python)

Visit: http://www.py.cz(http://www.py.cz)
"




--





https://blahos.com/(https://blahos.com/)

https://traceability.cz/(https://traceability.cz/)




___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz
"___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz


Re: [python] Přehrávání v pyAudio

2018-12-05 Tema obsahu Petr Blahoš
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 
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


Re: [python] Přehrávání v pyAudio

2018-12-04 Tema obsahu Jirka Vejrazka
Ani wx.python ani audio jsem nikdy nedelal. Ale pripada mi, ze si budes
muset nastudovat thready (v jednom prehravat, v druhem ovladat) nebo rovnou
procesy (pres multiprocessing).

Ale ber to s rezervou, o wx.python nic nevim.

  Jirka

On Tue, 4 Dec 2018 at 19:35, Ctibor.Plasek  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
>
___
Python mailing list
python@py.cz
http://www.py.cz/mailman/listinfo/python

Visit: http://www.py.cz