Hi
With some threads running on different CPU,
accessing a shared pointer (in RAM) atomically (with gcc atomic methods)
my current understanding is:
- each cpu has its own cache line
- which is updated on every atomic read/write operation
1. is that applicable ?
2. is there a faster or more convenient method, such as
storing the pointer in fast register shared among different cpu ?
--
E.R.
Hello all,
I want to write an application that monitors in realtime changes in an Alsa dummy mixer control (though not sure which language yet). I think its best to try to track those changes through the filesystem. For non-dummy mixer controls I can access them through: /proc/asound/cardx/codecxxx/xxxx+regs. However, it seems that this does not work for this dummy mixer control. Can someone point me a bit in a direction where I should for a solution (language/library)?
Whichever language I use I still have quite a bit to learn. However, I do would like to find out whether it is even possible in a certain language before I invest a lot of effort in it (without result). I've tried Python, but getting it working in realtime is likely going to be very hard (if possible at all).
Kind regards, Maarten
ps. I've defined the dummy mixer control in /var/lib/alsa/asound.state
as shown below:
state.DAC {
control.12345 {
iface MIXER
name 'Fake Playback Volume'
value 100
comment {
access 'read write user'
type INTEGER
count 1
range '0 - 100'
}
}
}
Hello all,
Version 1.3.0 of libzita-resampler is now available on
<http://kokkinizita.linuxaudio.org/linuxaudio/downloads/index.html>.
This release fixes a bug in the VResampler class that showed up on
64-bit systems only. This also made zita-a2j and zita-j2a fail.
Many thanks to Jannis Achstetter for reporting the problem and
testing the fix.
Ciao,
--
FA
A world of exhaustive, reliable metadata would be an utopia.
It's also a pipe-dream, founded on self-delusion, nerd hubris
and hysterically inflated market opportunities. (Cory Doctorow)
Hi
As of 2011-01-16 I have skipped the development of jcgui, and still I
wouldn't maintain/develop it any longer.
But it get downloaded and used by some users and I receive requests and
bug-reports for it.
So I decide to fix the most related bugs and upload a new version, to
get rid of that.
* fix file not load when white space in path
* fix resampling (use zita-resampler now)
* fix build with gcc 4.7
* various small fixes
Still, I wouldn't recommend to use jcgui, please use IR_LV2 instead,
but, if you really would use jcgui, please update it.
http://sourceforge.net/projects/jcgui/files/jcgui/jcgui-0.8.tar.bz2/download
regards
hermann
I have explicitly asked about block length restrictions on l-a-d several
times, but of course that doesn't work. Setting up an idea to be flamed
works wonderfully though (mining that most plentiful resource of
assholes on mailing lists). The convoLV2 announcement served this
purpose nicely. In summary:
Convolution is the only reason anyone has come up with for a power of 2
block length restriction. Apparently that is wrong.
Only one argument has ever been posed for a fixed restriction, and that
was wrong too (outside LADSPA anyway, where we are not forced to use
control ports).
So, unless anyone has new compelling examples, we have some new
implementation recommendations for the block length restrictions defined
in LV2 1.2.0:
* Fixed and power of two can be difficult or impossible to implement,
and are not useful, so hosts should not bother trying to implement
either (except where it is trivial), and plugins should not expect
them to.
* The remaining restrictions, minimum and maximum, are needed to do
some things without latency, and are useful for performance reasons,
so hosts should try to implement this if possible. Plugins should
only require these if absolutely necessary, since some hosts may not
be able to implement minimum in particular. convoLV2 is an example
of a plugin with minimum and maximum restrictions.
As before, all hosts should implement passing the maximum length to the
plugin, which is often required and easy to do.
There is one issue related to minimum, buffer alignment, which is useful
for SIMD (e.g. using SSE). This has not yet been addressed in the
specifications.
-dr