* Fix usage of `AC_INIT`.
* Extract JACK version numbers from `AC_INIT` version number.
* Newer versions of automake insists on the `subdir-objects` option
when using C files from outside the current directory.
* Need to use generate `noinst_LTLIBRARIES` rather than just adding
and out-of-dir C file to the `*_SOURCES`.
MIDI payload size in 8bit netjack MIDI mode is calculated wrongly
(assumes 16bit sample size).
This bug sits at the decoding end and seems to be without concequences, as the
MIDI payload size in 8bit netjack MIDI mode at the encoding end is done
right and the decoding buffer thus cannot overflow even with a wrongly
calculated MIDI payload size.
As most NetJACK header fields are not set by the slave and thus may
contain anything (which looks weird on the wire), it makes sense to
actively clear the unused fields.
Issues:
- With a running JACK with enabled alsa_midi driver (-X alsa_midi), plugging in
a new MIDI device has no effect, e.g. no corresponding JACK ports are spawned
- With a running JACK with enabled alsa_midi driver (-X alsa_midi), deplugging
a MIDI device has no effect, e.g. the corresponding JACK ports stay around
Result:
- JACK only creates JACK ports of ALSA MIDI clients/ports found at startup
- JACK has to be restarted for any ALSA MIDI device (de)enumeration to take
place
Problem:
- There are some functions defined which actually should accomplish this in the
alsa_midi driver code (e.g. 'a2j_update_ports' and 'a2j_free_ports'), but they
are not called from any other function ;-)
Solution:
- Discriminate properly between ALSA PORT_START and PORT_CHANGE events
- 'a2j_new_ports' function has been added which recycles some code from
'alsa_input_thread'
- Actually call the already existing hot(de)plugging infrastructure
- 'a2j_update_ports' and 'a2j_new_ports' get called from the
'alsa_input_thread'
- 'a2j_free_ports' gets called from 'alsa_output_thread'
- 'alsa_out_thread' is woken up by 'a2j_jack_process_internal'
- Cleanup code that is not used:
- 'port_add' ringbuffer has no function, as 'new_ports' ringbuffer seems to be
implemented to accomplish the same
Signed-off-by: Hanspeter Portner <dev@open-music-kontrollers.ch>
regcomp() was failing to parse them. This changeset improves the algorithm
by using less assumptions.
This commit is a backport of similar (but bigger) commit in jack2.
b3394f4dce
ffado_streaming_set_period_size() is exposed starting r2078 of FFADO.
To avoid a build dependency on ffado-svn in jack, we copy the prototype
declaration.
Since the symbol is defined as weak, no problems arise at runtime.
for python loading libjackserver and using controlAPI.
drivers are linked to a second instance of libjackserver.so and the
global symbol _jack_get_microseconds showed up uninitialised.
by providing a function pointer to right instance in the engine struct,
we can fix this problem. since _jack_get_microseconds is a in systemdeps,
we need a generic way to get the right function pointer.
git-svn-id: svn+ssh://jackaudio.org/trunk/jack@4421 0c269be4-1314-0410-8aa9-9f06e86f4224
this is a quick fix for the problem reported by Felix Pfeifer.
whitespace cleanup and more thorough fixes of this code follow.
git-svn-id: svn+ssh://jackaudio.org/trunk/jack@4193 0c269be4-1314-0410-8aa9-9f06e86f4224