View Full Version : 32-bit Recording Question
sword in hand
01-05-2009, 02:14 PM
Hey everyone,
I have been recording at 32-bit (as defined in my project settings) in Cubase 4, through my Fireface 800, for a while now. The audio quality sounds fine, but a few weeks ago I looked at my files in MediaInfo Mac (a free file analyzer) and it said that my files were 16-bit. I also had a few people look in various DAWs (PT HD, etc.) at the files, they said 16-bit. Someone also told me the files seemed small for 32-bit sized files.
Am I doing something wrong here? I understand that 32-bit uses floating math, and that Cubase 'floats' the 24-bit data coming off of my Fireface, when doing a computation to allow for a mathematical error that goes above or below the theoretical 144dB limits. But shouldn't the files be read as at least 24-bit, and/or reflect the size of a 24-bit file? In Cubase it seems to read as 32-bit in the pool. Also, if you open the .aiff in Quicktime and open the inspector panel it says 32-bit float. Does Cubase record at 16-bit and somehow 'up-dither' or double the bit depth (16 x 2 = 32-bit), explaining the small file size?
I'm very confused by this and just want to make sure I'm getting the best quality out of Cubase, from my Fireface. And to understand how Cubase interprets these 32-bit floating files.
Thanks
sword in hand
TerryG
01-05-2009, 03:49 PM
On the surface, it sounds like you're confusing internal 32-bit float with the actual bit depth of your files when you export them. They appear to be getting rendered at 16-bit when they leave Cubase. Check your export settings to confirm.
I believe the Fireface is only capable of a 24-bit maximum I/O rate in any case.
sword in hand
01-05-2009, 04:39 PM
Hey Terry,
Thanks for the reply. It's not exporting that's my issue, it's the inherent recording bit depth. If I record a file and go find it in the finder, when I open it up in MediaInfo Mac, it says 16-bit. It also says 16-bit inside of PT HD. Yet inside of Cubase and Quicktime's Inspector panel, it says 32-bit float.
Just trying to understand why my files seem smaller than your average 24-bit file and why they say 16-bit, that's all. I want to be sure that I'm recording at the best setting I can in Cubase, and that I'm not limiting the quality somehow, through settings, bugs, or driver issues.
Does this make sense?
Thanks
TerryG
01-05-2009, 05:59 PM
First, let me qualify my response by saying I'm not a Mac guy, and I don't own a Fireface... but, I'm trying to reason through this anyway...
From what you describe, all I can surmise is that QuickTime see's 32-bit float because it's better integrated with Cubase's internal processing and file access.
If the files match 16-bit size, and everything accessing them outside of Cubase/Quicktime is telling you they're 16-bit... they are 16-bit.
The point is, if you monitor through your Fireface, the maximum it will transmit is 24-bit anyway.
So, if a 32-bit float file was identified in MediaMac, it still wouldn't play as 32-bit through your Fireface. The best you could hope for is 24-bit playback (as the Fireface would either report itself as incapable of playing a 32-bit file, or sit there doing nothing), but that won't happen without a conversion taking place.
Try this: Set your internal processing to 24-bit and record something.
Then note the file size and see what PT and MediaMac say when you look at those files. They should say 24-bit across the board, and be significantly larger than their 16-bit counterpart.
I'll go back to my original theory that you're confusing internal bit depth processing with actual generated file bit depth.
In any case, if you want to maximize quality with your Fireface, use 24-bit.
I can't think of many more ways to say the same thing. ;)
The Guru
01-05-2009, 06:38 PM
Sounds to me like that app doesn't recognize 32bit float files and just labels them 16bit. What does the Pool say they are?
sword in hand
01-05-2009, 07:50 PM
Ok, I just ran the test in which I recorded three files all the same length and content. The only difference was the bit depth, which was 16, 24, and 32-bit float. I found that the file size, as displayed in the finder and MediaInfo, went up with each bit depth increase. So it appears that more data is being recorded the higher the bit depth, makes sense right.
Then I checked the bit depth settings in the pool and they reflected their respective bit depths. Again I checked in MediaInfo, and here is were it gets strange. At 16 and 24 bit, MediaInfo read the data correctly. But when I opened the 32-bit file, it said 16 bit, but it added a codec. This one is called CODEC FourCC: fl32 or maybe just fl32.
I did some research for that codec and couldn't find anything. I'm guessing that fl32 stands for float 32 or something, and somehow Cubase is wrapping a 32-bit float file inside of a 16-bit header, with that codec.
I'd love to understand this. Anybody using Cubase or a 32-bit float app could try with their files. Just download MediaInfo Mac at: http://mediainfo.massanti.com/releases/latest.dmg
Make sure to look at the added fl32 bit FourCC codec that's added to a 32-bit float file.
The bottom line, it appears, is that Cubase is actually playing back 32-bit files, but other apps potentially won't be able to read them correctly, without conversion. I was mainly worried about not fully utilizing my fireface and bit depth. But I think I'm setup correctly.
If any of this isn't making sense or I'm wrong let me know.
Thanks
TerryG
01-06-2009, 02:26 AM
I'm understanding more as I read it all again.
I think you're on top of it.
Cubase is capable internally of 32-bit float.
Your Fireface (and PT the last time I used it) handles 16 & 24-bit.
It sounds like when you access a 32-bit float file outside of Cubase, the "CODEC FourCC: fl32" shows up because it's converting it automatically to 16 bit in order for you to have a method of playing it.
Animus
01-06-2009, 02:28 AM
hmmm If I record 32 bit Float they are read as 32 bit in everything I have looked at the files in.
Just checked again and recorded in 32 bit and they show up as 32 bit in several other apps.
sword in hand
01-06-2009, 04:21 AM
Animus did you check in pro-tools (if possible)? Also try downloading MediaInfo Mac for free (if on mac see link in previous post, or search in google) and opening your 32-bit float files in that. You should see a new codec called fl32 and a 16-bit word depth.
The reason I ask about this is because I gave my 32-bit float files to someone working in PT HD and they said that the files were 16-bit. They basically thought that I didn't know what I was doing (I'm 23 and they are much older and "experienced"), and that I had potentially sacrificed quality.
I tried to explain that PT HD uses different math (48-bit fixed I believe) and that it probably just doesn't recognize the Cubase format. If the files were converted to 24-bit, they would be just like 24-bit files, not 16-bit up-dithered to 24-bit. So in words, at the minimum these files are 24-bit, if converted properly. They are not inherently 16-bit files, with some sort of codec attached, they are inherently 24-bit, just processed in Cubase at 32.
I'm I right here? Is this making sense?
TerryG
01-06-2009, 04:46 AM
hmmm If I record 32 bit Float they are read as 32 bit in everything I have looked at the files in.
Just checked again and recorded in 32 bit and they show up as 32 bit in several other apps.
Ya... I just created 44.1K & 48K files at 32-bit In Cubase 4, exported them to my desktop, and played them with Windows Media Player and Adobe Audition 3.
All apps (and Windows File Properties) identified these sample rates and 32-bit depths for what they were, and file sizes corresponded accordingly.
All I needed to do was reset the sync in my digital mixer to correspond with my RME when I changed between 44.1 & 48K sample rates for playback.
I'm using ADAT, so something yet-to-be-identified (a codec or the A/D converter itself) is automatically converting the bit depth from 32-bit after it leaves the app in order for me to play it in my setup.
I don't know exactly where to go or how to find what would tell me the bit depth being used when the signal hits my RME card as compared to when it leaves.
The one assumption I can make is that if I select 24-bit exports from the app, it will stay at 24-bit all the way through my setup. With 32-bit, who knows?
neilwilkes
01-06-2009, 06:54 AM
It is sounding as if the float form being used is a 16/16 instead of a 24/8. This is also used in CoolEdit/Audition, as well as a lot of other Mac applications for some reason (I know not why).
Can I ask what the file sizes/running times are?
psvennevig
01-06-2009, 07:38 AM
The float files are absolutely correct.
I've compared to float files in Cubase on Windows.
Here's a recording test I just did:
16-bit file
http://ftp1.zenithstudio.com/pas2/pas/webgfx/16_bit_file.png
float file
http://ftp1.zenithstudio.com/pas2/pas/webgfx/float_file.png
And a size comparison
http://ftp1.zenithstudio.com/pas2/pas/webgfx/finder_size.png
All works as it should when I tested both in N4 and C4.
Tested with both Internal soundcard and RME FF400.
Best,
Pål Svennevig
TerryG
01-06-2009, 07:40 AM
It is sounding as if the float form being used is a 16/16 instead of a 24/8. This is also used in CoolEdit/Audition, as well as a lot of other Mac applications for some reason (I know not why).
Can I ask what the file sizes/running times are?
In case you're not asking "sword in hand"?
I used Cubase 4 for a 5:21 stereo track.
And if I remeber correctly...
The 44.1K/32bit Float was about 110MEG
The 48K/32bit Float was about 117MEG
I first played them with the Windows Media Player from the desktop after confirming the file properties reported the proper sample/bit rates I'd exported from Cubase.
Then, I imported them into Audition and played them from there.
Audition had no role in creating the files.
However, Audition 3 has an optional check box to interpret 32-bit PCM wav to 16.8 float. There is no indication how it interprets 32-bit when the box is unchecked.... and I haven't looked it up in the manual... yet. ;)
TerryG
01-06-2009, 07:45 AM
So Pål, what is the Fireface doing to play the 32-bit file?
Does it drop it down to 24-bit or to 16?
psvennevig
01-06-2009, 07:52 AM
So Pål, what is the Fireface doing to play the 32-bit file?
Does it drop it down to 24-bit or to 16?
A discussion for another thread I think?!
A 32-bit float file is NOT a 32 bit audio file. It is a float file with 8 bit mantissa. The audio data is 24 bit, but the , separator is floating. That's why a float format can be better.
Because it can use full 24 bit to describe a sound which resides in the -100 dBFS area or the -2 dBFS area.
A fixed point (the opposite) use its 24 fixed bits (or more) to describe the whole range.
But, how ever how floating point files work. They should always be close to double the size of a 16 bit file.
As my post also shows.
Pål
TerryG
01-06-2009, 08:05 AM
Thanks. You've provided some good insight.
So, the way to determine which of Neils 32-bit floating point types (16/16 or 24/8) are being used during playback is still unknown because all 32-bit files are about twice the size of 16-bit... (?)
Or, would a 16/16 file be smaller than a 24/8 due to the float and provide a clue to what our playback depth actually is in the converter?
psvennevig
01-06-2009, 08:08 AM
Thanks. You've provided some good insight.
So, the way to determine which of Neils 32-bit floating point types (16/16 or 24/8) are being used during playback is to look at the file size itself.
Correct?
The only float file format used by Steinberg is 24/8, the IEEC recognized format.
P
TerryG
01-06-2009, 08:12 AM
OK.... you caught me between edits... I had myself twisting in the wind...
THANKS.
So, Cubase/Nuendo would be playing back a 32-bit Float file at 24-bit in our FF's and HDSP's.
And Audition might only be playing at 16-bit through our hardware if it's indeed using Neil's 16/16 format of a 32-bit file. (?) Stay tuned.
psvennevig
01-06-2009, 08:28 AM
Playback format should not be confused with bit depth of files.
Cubase/Nuendo have no problem of playing back 16 bit to a 24 bit audio card driver, and vice versa.
Audition can open the audio driver as 16 bit even if the file it plays back is 32 bit float.
When Cubase/Nuendo uses 32bit float files it plays it back at the supported bit depth of the asio driver.
/P
TerryG
01-06-2009, 08:48 AM
Yes, I understand.
The open question now is simply wondering whether or not our hardware uses it's 24-bit capability by default when playing a 32-bit float, no matter where it comes from.
I have the ability to select Sample Rate for my card and hardware playback... If I select the wrong option, the pitch is altered. But, something else is determining how the bit depth changes from 32-bit to either 24 or 16 for playback... that is still the mystery to me.
sword in hand
01-06-2009, 02:59 PM
After doing a 16, 24, and 32-bit recording of a short music clip, I discovered that a doubling of size from 16 to 32-bit was true for me too. And the 32-bit file was still bigger than the 24-bit file. So this tells me that the extra 8-bits are definitely being stored.
As for Terry's question, I too have the same one. Because the RME drivers don't allow selection of bit depth, how do you know the actual bits coming out of the DA? I would just assume that if you're working in 32-bit or 24-bit that it's going to go out the DA at 24-bit, correct? As there is no true 32-bit converter, yet.
Or is the DA always 24-bit and anything that veers from this is, either, up-dithered or dithered down to the correct 24-bits? In other words, the Fireface is a fixed bit-depth system.
Great insight and input everyone, keep it coming.
resonator
01-06-2009, 05:13 PM
As there is no true 32-bit converter, yet.
I don't actually know how these drivers are written or how the hardware D/A converters actually work, but since the 32-bit file is basically a 24bit file with 8 bits for 48db headroom, it shouldn't be at all hard to make an interface play a file when it's not peaking over +-0db, but once the file's level goes over 0db they'd have to have some kind of conversion going on if the driver were to operate in 24bit only, don't you think? Maybe that's something you might wanna check for?
davidd
01-06-2009, 06:07 PM
As for Terry's question, I too have the same one. Because the RME drivers don't allow selection of bit depth, how do you know the actual bits coming out of the DA? I would just assume that if you're working in 32-bit or 24-bit that it's going to go out the DA at 24-bit, correct? As there is no true 32-bit converter, yet.
As far as I remember from a discussion on Metric Halo mailing list:
the DAW gets the info about bit capability from the hardware (over the driver, I assume).
If it´s 16 bit hardware, the audio is truncated to 16 bit and dithered for playback.
24 bit hardware = truncation to 24.
When rendering you define truncation and dither.
David
Animus
01-06-2009, 06:13 PM
The bitdepth of your audiocard has nothing to do with what bitdepth you export at as it's all internal math at that point (not realtime export of course). I think Sword in Hand is talking about recording a source and the resultant file not being read as a 32 bit file even though you can select that format in Project Setup. Of course it only records the resolution your audiocard is capable of but it can definitely be captured at a higher bitdepth for storage and is the behavior I see here on my system.
SIH, I don't have Protools here to check with btw.
sword in hand
01-07-2009, 12:32 AM
Thanks everyone.
I think my initial question has been fully answered. About whether the 32-bit project setting, in Cubase, was in fact recording a 32-bit file, which it is. This was confirmed by seeing a rise in file size, with each subsequent bit depth increase. The only twist is that certain programs read these 32-bit Cubase .aiff files differently, that's all.
NOW the thread has sort of shifted to a new question. Which is: What bit depth does the DA stream out, when playing back a 32-bit file in Cubase? Is it truncating to 24-bit or something else?
As I mentioned in a previous post, given that the Fireface doesn't allow for the user to switch the bit depth in the driver, wouldn't this maybe conclude that the Fireface has a FIXED BIT DEPTH at 24 bits? It would mean that no matter what setting you have selected in Cubase, or any other DAW for that matter, Fireface converts the signal to 24-bit.
The settings in your DAW (Cubase, PT, etc) for bit depth, just changes the possible amount of data and dynamic range being recorded. Your AD, too, could essentially be a fixed bit depth system.
I don't know if this is true, but it kind of makes sense.
TerryG
01-07-2009, 12:46 AM
SIH... I don't know about you, but I've had so much fun reading this forum that the one thing I haven't tried yet is to scour the manuals and maybe ask someone at RME about this last question.
I'll post news when I hear it.
sword in hand
01-07-2009, 03:43 AM
Thanks Terry, it's been great to come to a place like this and meet such great people. I'd like to hear what you get from RME, though. I guess that would have been the best place to start. I'll try and check the manual too.
Would love to understand how the RME FF handles all of these word depths.
Swordinhand
TerryG
01-07-2009, 05:08 AM
My HDSP manual simply says it uses an internal 24-bit resolution.
It's not stated specifically, but everything I've found indicates that 32-bit rendered files simply delete the 8 bits below -96dB and play through at 24-bit, while 16-bit files have 8 bits of silence added as they pass through the unit. I'm guessing the Fireface does the same. This is the best I can reason without a definitive answer.
And SIH, check this out if you haven't seen it yet:
http://www.cubendo.com/showpost.php?p=946&postcount=1
psvennevig
01-07-2009, 12:09 PM
Don't mess up file bit depths, internal bit depths of the DAW software and communication to the audio driver/soundcard.
Three different things.
Actually this is one topic that is covered very well at the N forum.
In one of the "Nika Aldrich" guest thread I think.
A short one:
Cubendo always sends 24 bit to a 24 bit soundcard/driver.
The only exception is if the track in Cubendo have a 16 bit file, NO fader settings, PAN settings ar plug settings are used. Then it can send a 16 bit signal.
When a soundcard driver gets a 16 bit signal and expects a 24 bit signal, it just truncates the 8 LSB bits. Heck, they aren't even there.
As soon as you turn a knob inside Cubendo, its 32-bit floating point working for you, and the signal is sent to the audiocard in 24 bit, IF you are not dithering to another bit depth.
All this have nothing todo with the file bit depth.
If you only have 16 bit files in the project, everything still operates at 32-bit float internally in Cubendo as soon as a knob is turned.
Pål
sword in hand
01-07-2009, 01:56 PM
Pål,
I think I understand what you're saying. So the three different bit depths are:
1. Cubase's internal/mixer bit depth, which is always 32-bit (at least as soon as you use the mixer, plugin, etc. in any way) no matter what.
2. Cubase's project settings bit depth, which is user selectable at 16-bit, 24-bit, and 32-bit. This simply decides what bit depth the file is and how it is captured. It seems that the best setting here is 32-bit, to allow Cubase the greatest efficiency when handling the files, since it's mixer is the same bit depth. If interfacing with any different program, it is best to export at the highest bit depth that that program utilizes and Cubase can allow.
3. The final one is the communication between the DAW and Interface Driver. Which, in the case of the Fireface, is fixed at 24-bit. So any file above or below this bit depth, coming from Cubase or any other DAW, is going to be truncated/altered to fit the fixed bit depth.
Also, I think you essentially answered this question Pål and Terry, but I'm assuming at this point that the Fireface is a fixed bit depth converter, at 24-bit. This would make sense as everything I've used with some sort of word math device, is always fixed (like a DSLR's converter or an Audio interface).
Let me know if this correct. Terry, the totalmix skins are really nice, I'll have to try them.
Swordinhand
psvennevig
01-08-2009, 06:25 AM
Just to be clear. When you say 32 bit regarding Steinberg DAWs its always 32-bit floating point, which is so far from 32 bit fixed point as you can get.
When Cubendo plays back a real 16 bit file, and no knobs is twisted, it sends it as 16 bit to the RME driver.
This can be measured with RME Digichk and the bitmeter.
Pål
sword in hand
01-09-2009, 03:59 AM
Thanks Pål. Is there a Digicheck for Mac? I can't find it, this is one of the programs I've missed since switching to Mac.
psvennevig
01-09-2009, 08:42 AM
Thanks Pål. Is there a Digicheck for Mac? I can't find it, this is one of the programs I've missed since switching to Mac.
Hi,
You can find a Alpha version og Digichk for OSX here
http://www.rme-audio.de/forum/viewtopic.php?id=4443
NB! It doesn't work with the HDSP PCI line of cards yet.
Pål
sword in hand
01-09-2009, 06:48 PM
Thanks for the link. I guess it doesn't do playback/output yet.
Powered by vBulletin® Version 4.1.9 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.