I commited the java-part of the code for the new ALSA-based datasource.
It is mostly a wrapper to libjmf_alsa.so that I also committed in
lib/native/linux and does direct input/output with the alsa subsystem.
The main point in this datasource is that we are able to capture data
chunks of 10ms length, shrinking the capture latency overhead to only
10ms ! In addition, downsampling is handled very efficiently by the ALSA
library, and no more by JMF. Which means that we are taking advantage of
the extremely optimized ALSA code.
The C code will be commited later, in src/native/linux/libjmf_alsa/ if
some people agree that it is a good place to put it. By the way, the
target library name is libjmf_alsa.so hence the name.
There are still many things to be done on this front, from enumeration
and GUI configuration to real latency tests. If someone feels like
measuring latency using the new datasource and the legacy JMF
datasource, we can discuss plans and so on.