Am Freitag, den 15.08.2014, 08:58 +1000 schrieb Matt Flax:
On 15/08/14 01:45, Clemens Ladisch wrote:
Joël Krähemann wrote:
I'd really like to know if there's a common way to do syncing applications. What frequencies are required to run a GUI?
GUIs should be event based; the term "frequency" is not applicable.
How does Xorg work
It's event based.
Yes, event based. For example, when using gtk ... if you want to update your GUI, you probably want to use the gtk timer to regularly update at a rate which suits your visual aesthetic.
You may already know this, but you can trigger a user function at regular intervals : g_timeout_add https://developer.gnome.org/glib/2.37/glib-The-Main-Event-Loop.html
how can I prevent interfering with ALSA output?
By doing sound stuff in a separate thread with higher priority.
You can do something similar to what Jack does to ensure higher priority, check the file libjack/thread.c and look at the way they increment the priority.
You may already know this, however in case not, you can get low millisecond latency without dropping samples when using Linux ... i.e. no interferance. That was last time I checked ... it is possible that this has improved to a lower threshold since then !
Matt
Warning you may experience big yield.
???
Regards, Clemens _______________________________________________ Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
Alsa-devel mailing list Alsa-devel@alsa-project.org http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
With big yield I mean you hear a noise assumed you would call pthread_yield to often.
It is strange how can I recognize more than 8 beats per second or even more ...
I have modified my application not to do so, anymore.