MixDown and Envelopes...

I discovered mixdown last night and what would be really cool, but I don’t know how easy it would be to code, but when you do a mixdown it would read the envelope.

I used Cad’s IVP5.0 and it did a great job for my voicetracks, and when I mixed down, if it read the envelope info, that would be really cool. :slight_smile:

(and if it can already do it by setting an option, I’ll go and sit in the corner :slight_smile:)

It should do so, if it doesn’t, then it’s a bug.

Please also note that, due to the way mixdown is processed, a particular track might start a few milliseconds earlier or later than in ordinary playback. But that’s really only a very small deviation.

Please try the new snapshot I just uploaded.

Will try it later. Many thanks.

Looks like it works. Thanks.

Now just remember to get my cue marks right!

[quote=“streamer, post:1, topic:6473”]I don’t know how easy it would be to code, but when you do a mixdown it would read the envelope.

I used Cad’s IVP5.0[/quote]

Well, pretty obviously IVP 5.0 contains code which manipulates envelopes!

Basically, a Volume Envelope resembles the ‘envelopes’ used in audio mixing applications such as Sony ACID and Adobe Premiere (or Audition). A Volume Envelope is a series of pairs of numbers, the first of which is the time relative to the start of the item, i.e. just the same as a cue point time value, and specified in mAirList time units (the infamous ‘one-ten-millionth-of-a-second = 1’ unit). The second number is the level, where 0 is max (standard) level and all other values are relative, and -25 seems to be ~-11dB (on each stereo channel); I suggest you use a test tone recording to work this out: that’s what I did!. :smiley: Many sound editing applications (e.g. Sound Forge) and any audio mixing program (ACID, ProTools, whatever) can produce a test tone for you. The C above middle C is close enough to 1kHz for rock’n’roll (or this use of a test tone), if you don’t have any test tones (such as from the legendary Sound Check CD).

So a Volume Envelope point might be (0, -25) which would start a track ‘ducked.’

To ‘un-duck’ the track, you need two more points. Imagine drawing the line in your head: you need a second -25 point (to keep the ‘ducked’ line straight) followed by a 0 level point a few mS later, to create a straight-line fade back up. These might be (with Ramp1 at 34s for example) the two points (335 000 000, -25) and (340 000 000, 0), which would create a nice 500mS fade back up to ‘hit the ramp.’ Ducking a track at the end is a similar procedure.

Look in the fully commented version of IVP and you should find all the relevant code pretty easily: DuckIntro and DuckOutro procedures, and the GetVolumeEnvelope statement somewhere in the main loops.

Let me know if there’s anything you can’t work out. :slight_smile: But IVP, especially with a couple of extra ‘tweaks’ I’m planning, was written to do all this, so that you don’t have to!

I presume that future versions of mAirList will contain some kind of visual segue editor to allow this, plus some means of viewing and editing Volume Envelope points in an item’s own Properties (adding the Volume Envelope points as a ‘cue point’ to the existing Cue Data tab would be one method, but you would need an extra column to display the levels; maybe a new Envelope Data tab with that extra column in it, but working in a similar way to Cue Data, would be best of all).

BFN
CAD

Ehm, the second value should be in dB units. If it’s not, then there is a conversion error somewhere.

Thanks CAD, much appreciated.

The envelopes are what we would call “Rubber Banding” in video editing so I do understand those rather well. I did actually dissect the XML on the desktop and saw the various envelope settings.

Sadly I suspect I have a small notch @ 1kHz in my hearing due to listening to that virtually everyday of my working life (I’m a Broadcast Engineer since '82ex-auntie, and now Technical Management at a TV station here in the US). :slight_smile: Still miss those basics now sometimes ;D

I also looked through the code and was thinking of adding a bit myself. Some ramps are soft anyhow so I was thinking of adding a “ond” i.e. overlay - no duck etc or some variations etc.

Cheers, Richard (who is meant to be heading back to Blighty Saturday but we’re expecting 10" of snow so who knows…

All I know is that with a 1kHz test tone, -25 gives ~ -11dB on each channel according to my Terratec sound card driver’s control panel. The on-screen meters show a numeric value if you hover over them. :wink:

Please do try it yourself, and if there’s a bug it would be helpful to get it fixed.

Could the single -25 value be a sum or RMS of the ~ -11dB on each channel?
And for the record, -16 is about -9dB on each channel.

BFN
CAD

No, the amplification is applied separately to each channel.

I’d rather say there’s a mistake in my conversion function that converts the dB value into a [0…1] linear value. It’s currently:

linear := exp(db/20)

(where exp is the exponantial function). I believe this should rather be

linear := 10^(db/20),

or equivalently

linear := exp(db/20)*ln(10)

(as there is no 10^ function in Delphi).

What do you think?

Sorry, it should of course be

linear := exp(db*ln(10)/20)

(I have always hated logarithmic calculations!)

Uploaded Build 667.

I wonder why noone ever noticed this. The conversion error also affects the Amplification setting in the PFL dialog, as well as the dB threshold values for Auto Cue. The latter is somewhat critical - as it might break some people’s configuration (Fade Out is set earliers than before). I have added a warning message to the change log.

Is anyone else writing scripts to handle envelopes? :smiley:

Hmm, again I’m not sure if many people use this feature?

Ah: good point. :-\

PS: I hate logarithmic calculations as well!

PPS: Is the scale basically 0 to -208 (or so) for envelopes, and should equal dB?

BFN
CAD

Yes, it’s now authentic dB values. It’s not limited to values lower than (and including) 0, you should also be able to use values >0 in order to achieve amplification.

I wonder if I should set a new default value for the Fade Out threshold. It used to be -30dB (wrong scale), so it should be -13dB (=-30/ln(10)) now. Does that make sense?

So did I. I would have to dig out my log tables. Did my O level using log tables… Scary to think I haven’t open that book since then…

This combination is doing a great job and well done to both Cad and Torben.

15" of snow and still falling! Flight cancelled for tonight, here’s hoping for tomorrow!

Yes.

And yes.

In that order. :wink:

BFN
CAD