Jump to content
  • 0
Tommy T

32 bit floating point recording

Question

Is there any upcoming update to add 32 bit floating point recording to the options like Cubase and others? It would really be an awesome upgrade to a software that is virtually perfect sonically. Thanks.

Edited by Tommy T

Share this post


Link to post
Share on other sites

19 answers to this question

Recommended Posts

  • 0

Thank you, I appreciate your time. I've been using Cakewalk Sonar as far back as about Cakewalk Sonar 7. The audio engine and 64-bit Double Precision Engine are indeed an old staple. However, the actual recording bit depth is confined to 16, 24, 32, and 64...not 32 bit floating point depth that has a dynamic range of about 1500 db. 32 bit=192db, 64bit=384. You really can feel the difference. Just a wish list upgrade. 

Share this post


Link to post
Share on other sites
  • 0

32 bit floating point is the internal processing protocol that Cakewalk employs. As scook said it's been around since 2005. You may be confusing the internal processing with the bit depth used to import or export.

Share this post


Link to post
Share on other sites
  • 0

Again, thank you for your response. Internal processing of 32bit and 64 bit is not the same as recording bit depth. Cubase has the ability to record at bit depths of 16, 24, 32, 32 bit floating point, and 64 bit in ADDITION to internal processing of 32 bit and 64 bit.  Two different subjects. Thanks again.

Internal Processing vs. Bit Depth.png

Bit Depth vs. Internal Processing.png

Share this post


Link to post
Share on other sites
  • 0

Setting the Record Bit Depth to 32 will record in 32 bit floating point; setting it to 64 will record in 64 bit floating point.

Share this post


Link to post
Share on other sites
  • 0

That is right and it is easy to verify by checking the recorded clips.

Unless one is processing the recording audio stream on the fly in the DAW, I doubt there is any advantage to recording higher than the audio driver bit depth.

Share this post


Link to post
Share on other sites
  • 0
47 minutes ago, RBH said:

You may be confusing the internal processing with the bit depth used to import or export.

Above 24bit this is floating point too.

Share this post


Link to post
Share on other sites
  • 0

The replies are great. I do have to disagree however. Unless specifically stated, they are very different. Internal processing does not determine recording bit depth, just how it is processed once the bit depth has already been determined, as noted by the pictures above. 

https://www.sounddevices.com/how-is-a-32-bit-float-file-recorded/

32-Bit Float WAV Files

The WAV file is a universal container for audio data, capable of storing material in a variety of bit depths, including 24-bit fixed point, 32-bit fixed point, and 32-bit floating point. In order to maintain the benefits of 32-bit floating point audio, audio data must be stored as 32-bit floating point. The audio application which is receiving the 32-bit float WAV files needs to support this format. While many audio applications do support 32-bit float, support is not yet universal.

How Is 32-Bit Float Different From 32-Bit Integer?

32-bit float signals should not be confused with 32-bit fixed point. A 32-bit fixed point signal can accommodate considerable dynamic range, roughly 192 dB. While 32-bit integer offers a much larger dynamic range than 24-bit audio’s theoretical 144 dB, it pales when compared to the 1500 dB available to 32-bit float signals. If, for instance, processing adds 90 dB of gain to the 142 dB of dynamic range coming in, then 232 dB would be needed to capture this signal with no loss in headroom or noise. 32-bit float can do this, and 32-bit integer cannot.

Share this post


Link to post
Share on other sites
  • 0
21 hours ago, Tommy T said:

The replies are great. I do have to disagree however. Unless specifically stated, they are very different. Internal processing does not determine recording bit depth, just how it is processed once the bit depth has already been determined, as noted by the pictures above. 

https://www.sounddevices.com/how-is-a-32-bit-float-file-recorded/

32-Bit Float WAV Files

The WAV file is a universal container for audio data, capable of storing material in a variety of bit depths, including 24-bit fixed point, 32-bit fixed point, and 32-bit floating point. In order to maintain the benefits of 32-bit floating point audio, audio data must be stored as 32-bit floating point. The audio application which is receiving the 32-bit float WAV files needs to support this format. While many audio applications do support 32-bit float, support is not yet universal.

How Is 32-Bit Float Different From 32-Bit Integer?

32-bit float signals should not be confused with 32-bit fixed point. A 32-bit fixed point signal can accommodate considerable dynamic range, roughly 192 dB. While 32-bit integer offers a much larger dynamic range than 24-bit audio’s theoretical 144 dB, it pales when compared to the 1500 dB available to 32-bit float signals. If, for instance, processing adds 90 dB of gain to the 142 dB of dynamic range coming in, then 232 dB would be needed to capture this signal with no loss in headroom or noise. 32-bit float can do this, and 32-bit integer cannot.

The folks that have been responding to you understand the difference between fixed and floating point and they understand Cakewalk. That should be clear from their responses. In answer to your OP, they've also stated multiple times that Cakewalk has been capable of recording at 32 & 64 bit floating point since 2005. 

This link to Cakewalk Online Documentation lists recording bit depth options including 32 & 64 bit. At the time it was last updated no 32 bit audio interfaces existed. Looks like there is one now. This link explains 32 & 64 bit floating point recording capability. If you have a 32 bit floating point audio interface, set the Cakewalk record bit depth to 32 bit and record some audio and take a look at the recorded bit depth.

Share this post


Link to post
Share on other sites
  • 0

Thank you Bill Phillips for your input. This is the scene where I say, "I guess we will just have to agree to disagree." Steinberg's Cubase, which also offers 32 and 64 bit floating point processing, also provides a "separate" 32 bit floating recording depth capability which has also been around a couple of years. I'm pretty sure they understand their software better. Having used both for decades, listening and comparing both for decades, my ears are trained to know the difference. There is a difference. The terms are not the same, period. Just a request for a feature that is not as frivolous as it may appear. Cakewalk can always just say no. Thanks again.

Share this post


Link to post
Share on other sites
  • 0

Set Record and Render bit depth to 32 bit. Bounce track. Open with audacity. Look at file info:

1541387588_2020-12-0606_27_33-Window.jpg.6059c2d603cddb5c72aa6c53c7072597.jpg

32-bit float.

EDIT: Just realised, that is Audacity's setting.

Redid it at 64 bit float and 16 bit. Check with VLC.

616896327_2020-12-0606_44_07-Window.jpg.14649a4e43143100d187be09ed0dfb16.jpg       2054921602_2020-12-0606_41_43-Window.jpg.38fa18c0ce4aacbb341622f8604541c6.jpg

Edited by Nigel Mackay

Share this post


Link to post
Share on other sites
  • 0

Just did the comparison with VLC. I stand corrected. Although my ears can clearly tell the difference between the Cubase and the Cakewalk 32 bit float samples, the VLC codec settles the debate. I would like to personally acknowledge SCOOK, RBH, MSMCLEOD, BILL PHILLIPS, and NIGEL MACKAY. My apologies and thank you.

Share this post


Link to post
Share on other sites
  • 0

it might be helpful to post some links to short samples of audio where you hear the difference. it's possible that the same material through each is being processed differently - for example - dithering enabled? auto-level boosting? rounding in the processing? CbB using 64-bit internal then rounding down to 32-bit for file.

floating point in and of itself is a "lossy" format (esp if you use it to calculate money 🙂 )

Share this post


Link to post
Share on other sites
  • 0
28 minutes ago, Tommy T said:

Just did the comparison with VLC. I stand corrected. Although my ears can clearly tell the difference between the Cubase and the Cakewalk 32 bit float samples, the VLC codec settles the debate. I would like to personally acknowledge SCOOK, RBH, MSMCLEOD, BILL PHILLIPS, and NIGEL MACKAY. My apologies and thank you.


I notice in your screenshot your record bit depth is set to 16. 

With it set to 16, regardless of any of the other settings, your raw track data will be saved as 16 bit integer.  In other words the original 24 bit audio coming from your audio interface is being converted to 16 bit. This WILL cause a significant loss in quality, and may explain why there's an audible difference.

I strongly recommend setting this to 24.  

You can set this to 32 or 64, however this won't make any noticeable difference to your audio quality.

The only reason I can think of to have this set to 32 or 64 is if you routinely use an external audio editor integrated into the Utilities menu. The external editor will be using Cakewalk's raw audio file, so you may want to take advantage of 32/64 bit FP in any external processing.

Share this post


Link to post
Share on other sites
  • 0

@msmcleodthe audio driver is 16bit and the drop down appears to be disabled.

Internal Processing vs. Bit Depth.png

If this is the case, the driver can only send 16bit data,

There is no advantage to recording at a higher bit depth than the driver driver is capable of sending.

AFAIK, doing so simply pads the file with zeroes adding no useful data.

 

  • Like 1

Share this post


Link to post
Share on other sites
  • 0

In ASIO version 2.2 of the development kit -

Quote

 

1. Big Endian formats

The basic types, sample data is left aligned in the data word. The most significant Byte of the data word is stored first in memory.

ASIOSTInt16MSB 16 bit data word (fewer than 16 bits are not supported)

ASIOSTInt24MSB This is the packed 24 bit format. 2 data words will spawn consecutive 6 bytes in memory. (Used for 18 and 20 bits as well, if they use this packed format)

ASIOSTInt32MSB This format should also be used for 24 bit data, if the sample data is left aligned. Lowest 8 bit should be reset or dithered whatever the hardware/software provides.

ASIOSTFloat32MSB IEEE 754 32 bit float, as found on PowerPC implementation

ASIOSTFloat64MSB IEEE 754 64 bit double float, as found on PowerPC implementation 

 

Presumably if ASIO 2.2 is supported then ASIOSTFloat32xxx and ASIOSTFloat64xxx should be supported.

 

Share this post


Link to post
Share on other sites
  • 0
1 hour ago, scook said:

There is no advantage to recording at a higher bit depth than the driver driver is capable of sending.

AFAIK, doing so simply pads the file with zeroes adding no useful data.

true - a 16-bit input being recorded at 24-bit will simply be padded, however once recorded, any "destructive" changes to the audio clip would benefit from the 24-bit setting as those LSB are populated from processing effects etc.

Share this post


Link to post
Share on other sites
  • 0
8 minutes ago, Glenn Stanton said:

true - a 16-bit input being recorded at 24-bit will simply be padded, however once recorded, any "destructive" changes to the audio clip would benefit from the 24-bit setting as those LSB are populated from processing effects etc.

Audio clips written by destructive processes use the Render Bit Depth setting.

 

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...