[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Traverso-devel] track gain automation
From: |
Remon Sijrier |
Subject: |
Re: [Traverso-devel] track gain automation |
Date: |
Fri, 5 Mar 2010 23:27:06 +0100 |
User-agent: |
KMail/1.12.4 (Linux/2.6.31-19-generic; KDE/4.3.5; i686; ; ) |
Hi,
> my current debate is about whether to do the mix in traverso, or just use
> it as an edit platform, and connect through jack to another program for
> the mix and effects. i would love to keep things in traverso, and i do
> think the devs have done an excellent job with the audio math -- digital
> summing in traverso sounds very fine to my ears.
Well... there isn't done much mixing in traverso I think. Just in float
precision, except for the 'automation curves' which is done in double
precision. Maybe other programs alter the sound in some way?
Good that it sounds fine for you, but we didn't do anything special...
>
> OTOH... there are a few key things which i believe are still missing.
> please confirm the status of the following features:
>
> 1. track and subgroup gain automation (this is the biggie, for me)...
'works' now in git, that is, compile and runtime tested, but there could be a
hidden bug somewhere. Except it's not shown to you in 'effects mode' for now.
this is due how plugins and their automation curves are shown. We need to make
it possible to just make one 'plugin curve' active at a time, and make that
one 'topmost' so you can edit it.
Suggestions on how to expose this to the user are much welcomed!
> 2. automatic clip crossfades
>
> building every crossfade by individually setting both the fade out and the
> fade in is quite tedious. there should be an option for automatic
> crossfades whenever clips are overlapped, or some other method for
> building crossfades more quickly.
Maybe, just maybe, a 'create crossfade' command would be the easiest trick to
do. Something like < X F > although that would likely go wrong, and become <
X > instead. Just some other key, the added benefit is that it would be
possible to show a menu first where you can choose a fade type ?
Create a new Command class, CrossFade in a similar named CrossFade.cpp/h file.
Re-implement the virtual function of Command.h, except the jog() and
set_cursor() functions (they aren't used)
In the constructor you add a pointer to the 'pointed crossing clip'. At least
one of the clips you have, it's the obj pointer in
TraversoCommands::create(QObject* obj ...) cast it properly to AudioClip*
first :)
in CrossFade::prepare_actions() you calculate how long the fade in/out should
be for both respective clips.
in CrossFade::do_action() you set the lenght of the fades, in
CrossFade::undo_action() you restore the old fade lengths.
Add this to TraversoCommands.cpp, see how it's done there with other commands.
Edit the keymap, see similar examples there how to bind a key sequence to your
newly created commands class.
Creating a crossfade is as simple now as hitting the key sequence you defined
in the keymap when the mouse cursor is above the crossing clip(s), un/redo
works, it's thread safe, ehm: be happy :D
>
> 3. lv2 plugin GUI implementation
>
> there are some plugins which really require the visual feedback of their
> GUI -- compression is the foremost example.
Hah
>
> 4. plugin parameter automation
double hah
>
> 5. pan automation
that one 'should' be easier and quicker to add. But first 1. needs to be
solved for that.
> thanks very much for all your work thus far.... the more time i spend in
> traverso, the more i love it.
Great, so do we :)
Greetings,
Remon