ory of this kind of knowledge, but I can't find it.
If you know where it is,
please let me know. So, my first question is: where does a newbie go to learn
? I doubt Native Instruments or Steinberg will be quick to tell me the tricks
and hacks that they use.
you have to read the source. even if none of the larger applications
that any of us are working on ever actually "succeed" in conventional
terms, they represent a huge repository of information on some
potential ways to do things. this is something very important to me -
even if ardour bombs and i end up working at REI selling backpacks, it
will live on as an example of how to do certain things that a DAW has
to do. possibly a bad example, but an example nonetheless.
use the source(s). read it. come to grips with it. please don't expect
us to write white papers on software design for real time audio at the
same time as writing real time audio software without pay!
mbining instruments into a track. When I write
something in Cubase, I expect
to click "save" and for all my connections, parameter values, automation, mixe
r settings, etc. to be stored, ready to be opened next time I feel like it wit
hout having to go through a number of apps and remember which files went with
this project. Maybe I'm wrong - I hope I am - but Jack doesn't appear to come
close to Cubase in this respect. Is there something else out there?
your saved state in cubase is the saved state of just a single
program. those instruments you loaded are all individual plugins that
ran within the context of cubase. most programs similar to cubase on
linux can do just what you are describing.
if you were using rewire, say to connect cubase and reason, then
cubase could not do what you are asking (and neither could rewire,
AFAIK). JACK isn't about connecting plugins, just like rewire isn't
about connecting plugins. its a way to wire together multiple
applications so that they can talk to each other and run in sync with
each other. but then again, perhaps rewire can. we've discussed ways
to do this with JACK, but at this time, most JACK apps are not
supporting any of the ideas that have been put forwards.
3. I want to know the state of play. Not of one app,
but of the whole linux
audio scene. Which apps work together? Which apps have debs, rpms, mdks, or
whatever. Is there some kind of site like this? If there isn't, how about w
e build one? Something that would really keep it all together. Imagine:
Planet CCRMA is the closest thing i know of to this, but its for
RPM-based systems only, perhaps even just RH.
- Articles for developers and users
- FAQs that cover a whole host of apps
- Info on the current state of apps
- Pre-compiled packages that work together - something like demudi woul
d be good, but more as a work in progress system - something we could all use
to test software, interoperability, etc. in an environment that is (as much as
possible) what the end users will have.
- Tutorials, links, guidelines. Now, guidelines is a good idea!
- A big, all encompassing TODO list.
- A combined effort on documentation. I think a nice manual that cover
s a whole audio setup would be good.
all sounds good. i take it you have the funds and or the time to make
this happen?
4. I'm fully intending to start writing audio
apps. My first attempt will b
e a tracker - something I can cut my audio teeth on and produce something I wa
nt. I really do like the tracker paradigm. Anyway, any pointers are welcome -
especially concerning things in item 1. I intend to document my progress and
hopefully turn it into a guide to writing audio apps for people who are in my
position right now. Of course, if it all goes wrong, it might become a what-
not-to-do kind of document, but I hope not.
why don't you take an existing program and make it do something
better, or something that it doesn't already do? your contribution
will be more valuable, you'll learn from the inside out rather than
outside in, and you still get to learn from mistakes (though they may
not be your own). rather than creating Yet Another Tracker, you'll
have done something that can be used by others (and yourself) very
quickly.
--p