Hi,
I've recently been learning to use JACK, and I had a look around for
some kind of introductory article. I couldn't find one, so I wrote
the tutorial I would have wanted, as I learnt.
The tutorial is here:
http://dis-dot-dat.net/jacktuts/starting/index.html
Please have a look, make suggestions. Flames are fine, too. Let me
know if I've made some huge error. Or maybe I'm not doing things
the best way? Whatever, let me know.
If this is well received, I'll write about more advanced topics as I
get to them - mixing, the transport, threading without blocking the
process callback, etc.
I'll probably be asking a lot of questions later on, especially
about best practise.
Thanks peeps,
James
hi!! this is my fist post on LAD, something may know me from my
presence on #lad @ freenode :P
btw i've a question for you all..
is someone using a powermac for linuxaudio apps? if yes what audio
interface do you use?
i've got an imic but i've a loooooot of troubles!!
--
wil - BeHappy_
+-----------------------------------------------------------------+
| ______ ______ _ _ _ |
| /\ / _____) ___ \| | | | | /\ |
| / \ | / ___| | | | | | | | / \ |
| / /\ \| | (___) | | | | | | | / /\ \ |
| | |__| | \____/| | | | |___| | |_____| |__| | |
| |______|\_____/|_| |_|\______|_______)______| |
| |
+-----------------------------------------------------------------+
[Sorry for cross-posting. Feel free to forward around]
Florence, 12 Nov 2003
+++ AGNULA joins the Prato LUG for Linux Day 2003 [0]
The AGNULA project is proud to join the Prato Linux User Group [1] for
the 2003 edition of the Linux Day, to be held on November 29. The
AGNULA team will hold a presentation/workshop on the current state of
the project, the directions we are taking and the whos and whats on
audio/video development with Libre Software.
+++
For the third consecutive year ILS (the Italian Linux Society) [2] is
promoting the Linux Day: all Linux/Free Software User Groups which
support the initiative [3] will organize meetings, workshops and
installation parties in their own zone of reference.
PLUG (Prato Linux User Group) has kindly asked the AGNULA project to
join their meeting, which will be held in PLUG's headquarters (via
Pomeria 90, Prato, Italy). [4]
AGNULA's participation to the Linux Day will focus on:
- the current state-of-the art of the AGNULA project;
- the current state-of-the art of the AGNULA/DeMuDi distribution;
- the directions the AGNULA project will take in the next months;
During the meeting, CD-ROMs of AGNULA/DeMuDi 1.0 will be distributed.
+++
About AGNULA: AGNULA (acronym for A GNU/Linux Audio Distribution,
pronounced with a strong g) is the name of a project funded by the
European Commission (number of contract: IST-2001-34879; key action
IV.3.3, Free Software: towards the critical mass). The project aims
to spread Free Software in the professional audio/video arena.
About PLUG: PLUG (acronym for Prato Linux Users Group) is a no-profit
association devoted to promoting Libre Software and Open Hardware,
spreading the conscious use of IT instruments, thus allowing access to
low-cost and old hardware to help economically disadvantaged people.
--
The AGNULA Team info(a)agnula.org
Our mailing lists: http://lists.agnula.org/
Our web site: http://www.agnula.org/
"There's no free expression without control on the tools you use"
[0] http://www.linux.it/LinuxDay/main.shtml
[1] http://www.prato.linux.it/
[2] http://www.linux.it/
[3] http://www.linux.it/LinuxDay/programma.phtml
[4] http://mappe.virgilio.it/tc/mappa.jsp?com1=prato+%28po%29&to1=via+pomeria&c…
Here are my latest test results from running Demolition
http://www.ecs.soton.ac.uk/~njl98r/code/ladspa/demolition.html
237 plugins were tested from 117 plug-in libraries, including all the
ones in BLOP, CMT, SWH, MCP and REV.
I'm disappointed to see that demolition has not been used to improve the
quality of LADSPA plugins. This post is a metaphorical stick, since the
carrot has not worked. If you see a plugin you like here, make sure the
maintainer fixes it.
So without further ado here are the error reports.
Matthias Nagorni
vcf_cv_in.so / vcf.so
UniqueIDs 1729, 1728, 1723, 1721
ERROR: set_run_adding_gain() implemented without run_adding()
Matthias also re-uses UniqueIDs for CV and non-CV variants of the same
plugin - with correspondingly different numbers of ports - which is
probably going to cause some strange crashes in some LADSPA hosts.
Mike Rawes <mike_rawes[at]yahoo.co.uk>
triangle_1649.so
square_1643.so
sawtooth_1641.so
random_1661.so
fmod_1656.so
lp4pole_1671.so
pulse_1645.so
(all plugins in each library)
ERROR: port 0 is LOGARITHMIC but LowerBound isn't positive
Fons Adriaensen <fons.adriaensen(a)alcatel.be>
mvclpf24.so
cs_phaser.so
(all plugins in each library)
ERROR: Label contains illegal white-space character
Steve Harris <steve(a)plugin.org.uk>
retro_flange_1208.so
multivoice_chorus_1201.so
ERROR: Floating point exception
[Arguably acceptable for bogus input...]
Alexander Ehlert <mag(a)glame.de>
notch_iir_1894.so
lowpass_iir_1891.so
highpass_iir_1890.so
bandpass_iir_1892.so
bandpass_a_iir_1893.so
ERROR: Segfault
[Accesses invalid memory pointer when cleanup is called]
Andy Wingo <wingo at pobox dot com>
delay_1898.so
comb_1887.so
allpass_1895.so
(all plugins in each library)
ERROR: Segfault
Jesse Chappell
SooperLooper.so
ERROR: port 1 is LOGARITHMIC but LowerBound isn't positive
ERROR: port 2 is LOGARITHMIC but LowerBound isn't positive
Richard W.E. Furse
cmt.so
83 errors reported in total, some examples listed..
# UniqueID = 1069
ERROR: port 0 is LOGARITHMIC but LowerBound isn't positive
# UniqueID = 1092
ERROR: unwritten output port 8
ERROR: unwritten output port 9
ERROR: unwritten output port 10
ERROR: unwritten output port 11
# UniqueID = 1080
ERROR: port 2 has DEFAULT_MAXIMUM without BOUNDED_ABOVE
# UniqueID = 1225
ERROR: Segfault
Attached is a patch to add OSS audio driver support to the
jack-audio-connection-kit 0.90.0. This is a first quick hack of 0.80.0
driver to 0.90.0, but better one is coming..
Apply patch and run "autoreconf --force --install" to regenerate
configure stuff.
RPMs for RedHat 9 and source .tar.gz is available at
http://www.sonarnerd.net/linux/ and SuSE 9 packages are coming.
--
Jussi Laako <jussi.laako(a)pp.inet.fi>
********JACK 0.90.0********
JACK is a low-latency audio server, written primarily for the GNU/Linux
operating system. It can connect a number of different applications to
an audio device, as well as allowing them to share audio between
themselves. Its clients can run in their own processes (ie. as normal
applications), or can they can run within the JACK server (ie. as a
"plugin").
JACK is different from other audio server efforts in that it has been
designed from the ground up to be suitable for professional audio work.
This means that it focuses on two key areas: synchronous execution of
all clients, and low latency operation.
Source packages for Jack 0.90.0 are available
http://sourceforge.net/projects/jackit/ .
********Major Changes********
Buffers can resize during operation. This can be triggered by the user
or by the function jack_set_buffer_size(). See the documentation for
details. It is new code and still needs a shakedown. It can be enabled
with './configure --enable-resize'. If not compiled in,
jack_set_buffer_size() returns ENOSYS. Applications should be prepared
for it though.
Major rewrite of the thread model. This won't affect users.
Thanks to the rewrite, jack now has a "freewheeling" mode for faster
than realtime operation. It decouples the engine from the soundcard.
The alsa driver has 3 new options. --i, --inchannels sets the number of
channels to open for input. --o, --outchannels sets the number of
channels to open for output. -S, --shorts changes the order of in which
the sampleformats are tried. The driver will try to use 16bit samples
first and only tries 32bit if this fails. Useful if you digitaloutput
card supports 32bit samples but your interface doesn't.
********Minor Changes********
Greatly increased support for other architectures.
--version also prints out the temporary directory.
Example clients expanded to be more helpful.
Many bug fixes.
Updated and improved documentation.
Portaudio driver works on linux.
jack_connect() returns EEXIST if a connection is already made.
Addition of jack_get_current_transport_frame ().
hw:0 is the default ALSA device instead of "default".
Jack's build system has better optimization.
--silent option for halting jackd's output.
Removal of --tmpdir and --asio options.
Will compile with alsa-lib-1.0.0pre1 (the latest).
********Other********
Jack now has a mantis bugtracker at http://jackit.sf.net/mantis/ .
Please use that for bug reports.
James has written a tutorial for jack programmers available at
http://dis-dot-dat.net/jacktuts/starting/index.html .
********Deprecated********
These are deprecated structures and functions that have been
deprecated. They will likely be removed in a future release.
The jack_transport_info_t struct has been deprecated. Please use
jack_position_t instead.
jack_engine_takeover_timebase() has been deprecated. Please use
jack_set_timebase_callback() instead.
jack_set_server_dir() has been deprecated.
jack_get_transport_info() has been deprecated. Please use
jack_transport_query() instead.
jack_set_transport_info() has been deprecated. Instead, define a
JackTimebaseCallback.
Hi,
Does anybody the state of Linux support for the
firewire 410? Searching through various mailing lists,
I found comments that suggested that somebody was
working on it but I couldn't find any further
information.
Does anybody know if this is a MLan device? Any
information sources that point towards a datasheet or
similar would be very useful.
Thanks,
Girish
__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree
Hi,
Does anybody the state of Linux support for the
firewire 410? Searching through various mailing lists,
I found comments that suggested that somebody was
working on it but I couldn't find any further
information.
Does anybody know if this is a MLan device? Any
information sources that point towards a datasheet or
similar would be very useful.
Thanks,
Girish
__________________________________
Do you Yahoo!?
Protect your identity with Yahoo! Mail AddressGuard
http://antispam.yahoo.com/whatsnewfree
This is a little toy I hacked up while learning the Jack API today. It
is not sophisticated, it is hackish, and it is probably not really doing
precisely what I intended it to do. But it's fun. It does a simple form
of granular synthesis: it plays a grain for every incoming packet in
realtime.
Requires libpcap and libjack (of course).
http://falcon.fugal.net/~fugalh/hearnet/
Feedback is welcome.
--
Hans Fugal | De gustibus non disputandum est.
http://hans.fugal.net/ | Debian, vim, mutt, ruby, text, gpg
http://gdmxml.fugal.net/ | WindowMaker, gaim, UTF-8, RISC, JS Bach
---------------------------------------------------------------------
GnuPG Fingerprint: 6940 87C5 6610 567F 1E95 CB5E FC98 E8CD E0AA D460