Render 4 Tracks to 5.1?

For pre-mastering, my surround projects are contained in four tracks:

  • Lf+Rf (stereo)
  • C (mono)
  • LFE (mono)
  • Ls+Rs (stereo)

This is done so that left and right channels can be processed together (e.g., EQ, dynamics) while the Center and LFE channels can be processed independently.

Unfortunately, when I render the Montage to a Multi Channel file, WaveLab creates an 8-channel file, rather than a 6-channel (5.1) file, presumably because it puts each track of the Montage into a stereo channel. I haven’t opened the file to see, but the bitrate reveals exactly a 25% increase, commensurate with two additional channels. No doubt, if the Center and LFE channels were contained in a single stereo track, everything would work just fine, but then I couldn’t process those channels independently.

Is there a simple way around this?

Any advice is appreciated.

It shouldn’t do that. The same thing works fine here.

If your original montage is set for Multichannel DVD 6 Channel in the bottom right (NOT free configuration), with a correct 6 channel 5.1 configuration, and the tracks are routed out correctly on the left of the tracks (Lf-Rf, C, LFE, Ls-Rs), the rendered multichannel file should be correct 5.1, with 6 channels.

Have you tried making a new montage using the factory template Surround montage template, setting it for the correct sample rate, right clicking a track, and selecting “Insert Surround Audio File” to read back the surround file. That might tell you what is wrong.

Regarding the file size, the other possibility is you’re rendering to 32 bit float if you have “match source file” selected in bit resolution, and your original file(s) are 24 bit. Because your rendered multichannel file will probably be 32 bit float if your file bit resolution is not set specifically for 24 in the render dialog.

Okay, my first conclusion was wrong - the rendered file is indeed a valid 5.1 multichannel file. But the math is all wrong. Here’s the problem:

My original 5.1 file is 276,891 KB in size, with a bitrate of 13,824 kbps. And when I split that file up into separate audio files (using FFMPEG), the stereo files are 92,297 KB with a bitrate of 4,608 kbps while the mono files are 46,149 KB with a bitrate of 2,304 kbps. This adds up perfectly:

  • (92,297 KB x 2) + (46,149 KB x 2) = 276,894 KB
  • (4,608 kbps x 2) + (2,304 kbps x 2) = 13,824 kbps

But when I put these tracks in WaveLab and render the results (with no changes to program length), the resulting 5.1 audio file is 369,184 KB with a bitrate of 18,432 kbps. Again, that’s a 25% increase to both. Coincidentally, these are exactly the numbers we would get if this was a 7.1 audio file of the same length:

  • (92,297 KB x 3) + (46,149 KB x 2) = 369,192 KB
  • (4,608 kbps x 3) + (2,304 kbps x 2) = 18,432 kbps

So, what is WaveLab doing to my file? The only processing I performed in WaveLab was to maximize the volume (iZotope Ozone) on all six channels. As this project hasn’t been topped & tailed yet, WaveLab’s master processes (e.g., dithering) were disabled. Not much going on here at all.

Any ideas?

Oh, I didn’t verify the 32-bit issue you mentioned. I’ll check that out when I get back…

Aha! You’re absolutely right - WaveLab exports to 32 bits when Bit Resolution = “Match Source File.” I don’t understand the logic behind this, but at least I know how to fix it now. And the math bears out.

What’s more, I really should go with 32-bit float (or 64-bit) anyways because, as I said before, this isn’t the final pre-master.

Thank you, Bob99!!!

You’re welcome. Glad it worked out.

I wish the bit resolution had another selection (like “match final bit stream” or something like that) because it is confusing. Even if all the files in the montage are 24 bit and you do no processng or leveling or anything that would change the bit depth to 32 bit float, the “Match Source File” setting results in a 32 bit float file from a montage !!!

I guess The logic is that the montage is a 32 bit float “container” but even if it is, the “Match Source File” setting still doesn’t make sense to me (and apparently a lot of others). But mostly it’s just not very helpful, because in many cases you don’t want to render a 32 bit float file.

It should be smarter than this, and know what the final bit depth is at the end of the Master Section after the Dither slot, IMO, with a setting to make the rendered file at that bit depth, whether it’s 16 or 24 or 32 bit at that point. Then I could have a single File Format preset I could use for almost everything I make.

After having said all that, I recall an argument against what I’ve just proposed (files of different bit depths in the montage, no dither plugin last in the dither section, etc, etc, etc), but it seems many people coming from other DAWs are surprised when montage renders are always 32 bit float when the file format says “Match Source File”. That wording is very confusing.

I would still expect 24 bit files in the montage and 16 bit files in the montage to render as such, just from that wording. Even knowing that the program is operating with 32 bit float processing.

Mostly I find it very unhelpful to have such a preset rendering from montages when 32 bit float is almost never what you want. I think it’s worth looking at how other programs deal with this.

in many cases you don’t want to render a 32 bit float file

I would not say so.

At least, with 32 float as default, you don’t loose any quality. You might use that output file later to render later to 16, 24 bit, or mp3 or whatever. I can’t imagine a better default.

And if you want to render to something specific, then just choose to.

Philippe

Thanks PG, but I still think that Bit Resolution selection is labeled wrong in the case of rendering from Montage. It says “Match Source File” but it doesn’t. If the montage “file” is the “FILE” it’s talking about (which is not at all intuitive anyway), and the montage is straight 24 bit with no processing, and outputting a 24 bit stream, it doesn’t switch to 24 bit. It’s ALWAYS 32 bit float. So in the case of rendering from montage that selection should indicate 32 BIT FLOAT when rendering from montage. Because it’s ALWAYS going to be 32 bit float. Not Match Source File. MATCH SOURCE FILE shouldn’t even be available when rendering from montage, because it’s not matching anything, it’s ALWAYS 32 bit float.

Then it wouldn’t be confusing and surprising that the rendered file is always 32 bit float. And it would actually say what it was going to do.

If we’re discussing workflow, then yeah, 32-bit float is an ideal “default” if that is indeed WaveLab’s internal operating resolution. Users should be discouraged from downsampling/dithering unnecessarily. That being said…

Exactly. “Match Source File” means, if the source file is 24-bit, then the rendered audio should also be 24-bit. Any exceptions to this reasonable expectation should be clearly stated, both in the manual and in the software itself. As such, I think it’s fair to label this a UI design flaw (however good Steinberg’s intentions may be). I mean, between the documentation research, Google searches, forum searches, and finally, this forum discussion, it cost me a few hours to figure out what a pop-up window or tooltip could’ve told me instantly.

In the interest of improving WaveLab, I’ll submit this as a bug report / feature request.

Thanks, guys!

I still think that Bit Resolution selection is labeled wrong in the case of rendering from Montage. It says “Match Source File” but it doesn’t

File format presets are shared to render audio files and montages. It would be overhead to have two different types of presets. This means, “Match Source File” must have a meaning for both audio file and montage rendering.

For an audio file, “Match Source File” is indeed obvious.

For a montage, I still think 32 bit float is the best choice. It is consistent, always the same. It does not depend on the referenced files. Almost always, an audio montage adds some kind of processing, like a gain or fade at minimum, hence outputs a 32 bit float stream. And if the term “Match Source File” does not speak to you, then why not choosing explicit 16 or 24 bit? You have the choice.

So, as Bob99 suggested, WaveLab should simply do away with the Match Source File drop-down from the Montage rendering options and automatically employ 32-bit float? That seems logical.

Then, yes, if one wants to force 16- or 24-bit, they have the option.

Thanks for the support david_d. PG, if nothing can be changed because of legacy presets or something, there should at least be a permanent note or something on the window telling everyone the “match source file” montage renders will be 32 bit float. But not something you’d have to hover over to see. Something that’s always visible, imo.

This comes up every few months, someone asks why their render file is 32 bit, so it’s not obvious or evident.

“Match Source File” is only obvious when there is a single source file. In the case of a 5.1 montage there are multiple source files (and even for a stereo one there will typically be), which are not necessarily the same, so what do you match?

Saying what you want is no hardship, and removes any doubt.

Paul