IPB

Welcome Guest ( Log In | Register )

9 Pages V  « < 4 5 6 7 8 > »   
Closed TopicStart new topic
Is it possible to stretch 16 bits symmetrically?, instead of padding with zeros?
julf
post Apr 25 2014, 13:56
Post #126





Group: Members
Posts: 243
Joined: 14-January 12
Member No.: 96426



QUOTE (giro1991 @ Apr 25 2014, 13:41) *
And by independant, is there no way I can apply each to a streaming wave?


Sure - the 16->24->32->whatever bit conversion is trivial. You won't increase the resolution of the original signal, but you will gain additional precision in case you need to do additional processing. You can separately do an up- or downsampling using a sample rate conversion. Both can be done with SoX.

QUOTE
I think I'm trying to break the laws of physics right here, bear with...


Never a good idea...
Go to the top of the page
+Quote Post
Martel
post Apr 25 2014, 14:22
Post #127





Group: Members
Posts: 553
Joined: 31-May 04
From: Czech Rep.
Member No.: 14430



QUOTE (giro1991 @ Apr 25 2014, 12:41) *
I think I'm trying to break the laws of physics right here, bear with...
Don't worry, it's pure math, no physics. smile.gif


--------------------
IE4 Rockbox Clip+ AAC@192; HD 668B/HD 518 Xonar DX FB2k FLAC;
Go to the top of the page
+Quote Post
saratoga
post Apr 25 2014, 15:00
Post #128





Group: Members
Posts: 4963
Joined: 2-September 02
Member No.: 3264



QUOTE (giro1991 @ Apr 25 2014, 07:11) *
I'm trying to increase theoretical dynamic range in the quantisation sense, in the dsp realm - 1500 yes is loud and impossible, no dacs today do it (there's no need lol) - but to increase for processing only...


For like the 10th time in this thread, I'm going to point out to you that common DSP software operates in floating point, and often double precision, which has far more than 1500 dB dynamic range. Basically, what you're asking is trivial and automatic.
Go to the top of the page
+Quote Post
KMD
post Apr 25 2014, 17:03
Post #129





Group: Members
Posts: 123
Joined: 21-January 09
From: UK
Member No.: 65825



and just to add, interpolation in the amplitude domain does not acheive anything as, as you have aknowledged, you can't do anything to improve the effect of quantization once it is baked into the cake.
Go to the top of the page
+Quote Post
drfisheye
post Apr 25 2014, 17:12
Post #130





Group: Members
Posts: 18
Joined: 4-January 14
Member No.: 113780



QUOTE (xnor @ Apr 25 2014, 00:09) *
With 32-bit floating point you could achieve a dynamic range over 1500 dB. wink.gif

Only if it uses the values beyond 1. The wav and aiff format both normalize to values between -1 and 1, leaving 24 bits for the audio. Going beyond 1, precision is lost. (Which is why in financial systems, they don't use floats. They don't like missing pennies.)

So does audio software in practice use the full 32 bits when calculating floats? Switching to 64 bit seems the easier way to increase resolution.
Go to the top of the page
+Quote Post
saratoga
post Apr 25 2014, 17:45
Post #131





Group: Members
Posts: 4963
Joined: 2-September 02
Member No.: 3264



QUOTE (drfisheye @ Apr 25 2014, 12:12) *
QUOTE (xnor @ Apr 25 2014, 00:09) *
With 32-bit floating point you could achieve a dynamic range over 1500 dB. wink.gif

Only if it uses the values beyond 1.


Only 50% of values are above 1, so the difference is only 1 bit, hardly relevant when you are talking about 1500 dB range.

QUOTE (drfisheye @ Apr 25 2014, 12:12) *
(Which is why in financial systems, they don't use floats. They don't like missing pennies.)


They dislike float because they are actually operating on integer quantities, not real numbers. Thus, rounding maybe incorrect, or at least unexpected.

QUOTE (drfisheye @ Apr 25 2014, 12:12) *
So does audio software in practice use the full 32 bits when calculating floats? Switching to 64 bit seems the easier way to increase resolution.


Depends on the software. Both are used. In practice is matters very little, except for some types of recursive operations.
Go to the top of the page
+Quote Post
drfisheye
post Apr 25 2014, 18:48
Post #132





Group: Members
Posts: 18
Joined: 4-January 14
Member No.: 113780



QUOTE (saratoga @ Apr 25 2014, 17:45) *
Only 50% of values are above 1, so the difference is only 1 bit, hardly relevant when you are talking about 1500 dB range.

Hm, you are right. I had that wrong in my head. Never mind then.
Go to the top of the page
+Quote Post
db1989
post Apr 25 2014, 19:36
Post #133





Group: Super Moderator
Posts: 5275
Joined: 23-June 06
Member No.: 32180



QUOTE (giro1991 @ Apr 25 2014, 10:53) *
QUOTE (saratoga @ Apr 24 2014, 19:01) *
Aside from noise, what other concerns would you have?
Rounding error caused by the disproportional increase.
Increase in sample rate should be directly proportional to increase in quantisising steps.

Direct Proportion
"When two quantities are in direct proportion, as one increases, the other increases by the same percentage."

This is crucial for processing audio.
Read this, and read it well:
QUOTE (julf @ Apr 25 2014, 11:46) *
Asking questions about things you don't know about or understand is great, but making all sorts of strange claims at the same time doesn't work very well...
I’ll go further. It works abysmally. I harbour an intense dislike of this thread.

QUOTE (giro1991 @ Apr 25 2014, 12:41) *
QUOTE (julf @ Apr 25 2014, 12:37) *
QUOTE (giro1991 @ Apr 25 2014, 12:35) *
QUOTE (julf @ Apr 25 2014, 12:16) *
QUOTE (giro1991 @ Apr 25 2014, 13:11) *
Sample rate proportional to the dynamic range ...
Sample rate and dynamic range are independent of each other.
So it's impossible to increase each, by the same factor, independantly?
if they are independent of each other you can of course increase or decrease each one as much as you want independently.
And by independant, is there no way I can apply each to a streaming wave?
You can. But again, your premise is completely flawed, because you don’t need to increase both in proportion as you so confidently seem to think.

QUOTE
I think I'm trying to break the laws of physics right here, bear with...
The laws of physics cannot be broken. Especially by people who have lamentably failed to do the research. While somehow still thinking they’re in a position to design supposedly revolutionary new systems.
Go to the top of the page
+Quote Post
giro1991
post Apr 27 2014, 13:54
Post #134





Group: Members
Posts: 113
Joined: 27-February 13
Member No.: 106916



Ok thread started off wonky because I jointly misinterpreted bits as dynamic range. It is an easy mistake to make seeing how the term 'bits' is so widely used to specify dynamic range (they should specify the dB in specs, not bits if you wanted to be picky). In comparison to regularson here - I know nothing but I was curious about quantizing as its applied beside the original "dynamic sounding" TDA1540. Notice after the TDA1540 all the digital filters went to using 18 and 20bit - this I cannot understand.



I doubt foobar and many programs do this when decoding mp3 file for playback, and it is this (above) I am trying to achieve as a seperately in foobar (dsp/vst).
Music being passed into a 32 float pipe should be quantized first! If you pass a 16bit file through 32 float, with theoretical DR of 96 then you are only quantising within this 96db range - you are insreasing the steps but you would get even more accuracy if you quantized to 32bit first using fixed point system (like the 28bitter does), with upsampling (creates a very highly accurate, newly interpolated wave, which can then be passed onto a 32bit - or 64 - float pipe).

QUOTE (saratoga @ Apr 24 2014, 19:01) *
QUOTE (giro1991 @ Apr 24 2014, 12:54) *
And refering to the 28bit dsp. 28bits is ALOT considering were talking 1984 here.


Not really. That is a fixed point filter. The precision there refers to how accurately the filter tap output is computed.


QUOTE (saratoga @ Apr 24 2014, 22:58) *
QUOTE (drfisheye @ Apr 24 2014, 17:53) *
Since 32 bit floats use exactly 24 bits to represent all numbers between -1 and 1, 32 bit floats audio has exactly the same precision as 24 bit audio.


They're not exactly the same, since floating point handles extreme values better than fixed point.


When an mp3 is decoded consider you are just increasing it's dynamic range to 32bit equivelant with a fixed approach. Floating is nescessary if you are going to have 'overs'. It's impossible for a 16bit wave on a cd/mp3 to have overs, its limited to 96 from the get-go.

The main advantages of floating point are clear, headroom and keeping errors beyond the initial depth and I think is something more aptly suited for mixing, not playback. Regardelss, many DSPs I'm sure have pregains to adjust the line level to avoid clipping anyway ... and regardless of even this, 64bit is available today, so errors created of this new 32bit render would be negligible if using a 64 float pipe.

"32 bit output"

This post has been edited by giro1991: Apr 27 2014, 14:49


--------------------
www.realitymod.com member
Go to the top of the page
+Quote Post
giro1991
post Apr 27 2014, 14:26
Post #135





Group: Members
Posts: 113
Joined: 27-February 13
Member No.: 106916



Not helpful...?
If I can really Quantizise like this using foobar for free, who the hell needs a $10k DAC? wink.gif

This post has been edited by giro1991: Apr 27 2014, 14:50


--------------------
www.realitymod.com member
Go to the top of the page
+Quote Post
giro1991
post Apr 27 2014, 14:32
Post #136





Group: Members
Posts: 113
Joined: 27-February 13
Member No.: 106916



I'm just after an implimentation that inceases the dynamic range like cool edit pro does (why would it be on their app if its such a stupid idea!?). If from your perspective it appears silly, let that be.
But atleast let me experiment jeez.

Might I add, more quantising steps does increase accuracy - you can never have enough accuracy - at interpolation, as is said in the dither paper (which I did read by the way).

EDIT 2, perhaps its because only 24bit dacs exist people think im crazy, but for processing and >resampling<. Seems obvious to me, create new wave, almost infinite in a sense, which flows at original rate (in time) and then resample (pluck new points from it) for an interpretation of that wave at a new higher or lower rate, output at desired depth (24bit max).

This post has been edited by giro1991: Apr 27 2014, 15:01


--------------------
www.realitymod.com member
Go to the top of the page
+Quote Post
lvqcl
post Apr 27 2014, 14:56
Post #137





Group: Developer
Posts: 3382
Joined: 2-December 07
Member No.: 49183



So you think that "Dither Transform Results (increases dynamic range)" can increase dynamic range of some existing track? It can't.
Go to the top of the page
+Quote Post
xnor
post Apr 27 2014, 15:03
Post #138





Group: Developer
Posts: 675
Joined: 29-April 11
From: Austria
Member No.: 90198



giro1991, you are once again confusing several topics, but now you also add mp3 for even more confusion ...

The "dither transform results" has the following use:
Imagine you have a 16-bit sample. You apply a fade out to silence effect. This effect is calculated internally with 32-bit floating point, but the final sample has to be stored in the original format again (16-bit).
With the option enabled dither will be added. Without it samples will simply be truncated.

Instead of the waveform becoming more and more distorted and finally turning into complete silence, with dither the waveform will finally disappear in the noise floor of the dither. The dynamic range of the format itself didn't change, but perceived dynamic range can be greater, because we can hear tones at or below the noise floor.


Notice that each time you add dither you just add more noise.


All of this doesn't matter for playback, because the tracks you play usually do not have a greater dynamic range than roughly 70 dB.

This post has been edited by xnor: Apr 27 2014, 15:09
Go to the top of the page
+Quote Post
giro1991
post Apr 27 2014, 15:03
Post #139





Group: Members
Posts: 113
Joined: 27-February 13
Member No.: 106916



QUOTE (lvqcl @ Apr 27 2014, 14:56) *
So you think that "Dither Transform Results (increases dynamic range)" can increase dynamic range of some existing track? It can't.

No, to simply give me more quantisation steps to work with to when forming a new wave.

This post has been edited by giro1991: Apr 27 2014, 15:46


--------------------
www.realitymod.com member
Go to the top of the page
+Quote Post
lvqcl
post Apr 27 2014, 15:06
Post #140





Group: Developer
Posts: 3382
Joined: 2-December 07
Member No.: 49183



QUOTE (giro1991 @ Apr 27 2014, 18:03) *
QUOTE (lvqcl @ Apr 27 2014, 14:56) *
So you think that "Dither Transform Results (increases dynamic range)" can increase dynamic range of some existing track? It can't.

No, to simply give me more quantisation steps to work with to when forming a new wave.

Well, dither also can't give you "more quantisation steps".
Go to the top of the page
+Quote Post
giro1991
post Apr 27 2014, 15:32
Post #141





Group: Members
Posts: 113
Joined: 27-February 13
Member No.: 106916



Okay I see now!
Two more questions however smile.gif

With the use of dither (shaped outwith the baseband) and a fixed approach is it possble to alter (preferably decrease) signal level of baseband?

And, irrelevant to previous question but is it also perhaps possible to increase amplitude of a signal to use all 32 bits in fixed point? like a serious volume dial?
(I recall jaz mention volume boosting earlier)

This post has been edited by giro1991: Apr 27 2014, 16:21


--------------------
www.realitymod.com member
Go to the top of the page
+Quote Post
julf
post Apr 27 2014, 16:45
Post #142





Group: Members
Posts: 243
Joined: 14-January 12
Member No.: 96426



QUOTE (giro1991 @ Apr 27 2014, 16:32) *
With the use of dither (shaped outwith the baseband) and a fixed approach is it possble to alter (preferably decrease) signal level of baseband?


What is your definition of "baseband"? You seem to, once again, to be confusing amplitude-related issues with bandwidth-related issues.

QUOTE
And, irrelevant to previous question but is it also perhaps possible to increase amplitude of a signal to use all 32 bits in fixed point? like a serious volume dial?


Only if your volume control goes to 11.

Full scale is full scale. Whatever factor you use for normalisation is irreelevant. Yes, of course you can take your 16 or 24 bit data and multiply the values with 2^8 or 2^16, but that will give you 8 or 16 empty bits at the lsb end. No increase in dynamic range of the original signal.
Go to the top of the page
+Quote Post
lvqcl
post Apr 27 2014, 17:21
Post #143





Group: Developer
Posts: 3382
Joined: 2-December 07
Member No.: 49183



Also what is a "signal level of baseband"?
Go to the top of the page
+Quote Post
giro1991
post Apr 27 2014, 17:25
Post #144





Group: Members
Posts: 113
Joined: 27-February 13
Member No.: 106916



Sorry, by baseband I meant 0-22050. sorry if I have the terms wrong.

I was experimenting with a dither dsp in foobar, capable of noise shaped dither. There is a clip function, with it on, cliping is allowed to exceed the amplitude of the input depth (floating point) I think.
If I turn this off then it must simulate fixed point. When I then apply 8bit noise shaped dither, it appears as ultrasonic noise on a realtime spectrum analyser, but still exceeds the max peaks of the baseband, so surely this means the signal is now operating or 'swing' between lowest 8bits...

I then realise that this is essentially all delta sigma is. Right?
"Noise shaping is commonly implemented with delta-sigma modulation. Using delta-sigma modulation, Super Audio CD obtains 120 dB SNR at audio frequencies using 1-bit audio with 64x oversampling."
Like xnor said, dsd operates at multiple MHZ.

My experminetal nos mulit bit dac works best between a given range. It's linearity error is < 0.5 LSB when operating between 1-7, meaning it will accurately produce a current output from the DAC proportional to the values of that range of the input word. Hence why I ask smile.gif. I do not care if output is low, the SNR of the output following is 110db, and even if the result was in millivolts, thats what preamplifiers are for. (did anyone notice swing of vinyl player prior to pre-amp is 10mV? - no wonder digitial sounds like its on fire sometimes)...

Also, Is there a dsp that can "multiplying input by 65536"?

This post has been edited by giro1991: Apr 27 2014, 17:44


--------------------
www.realitymod.com member
Go to the top of the page
+Quote Post
saratoga
post Apr 27 2014, 17:43
Post #145





Group: Members
Posts: 4963
Joined: 2-September 02
Member No.: 3264



Stop wasting everyone's time with this stupid crap and go look up things for yourself.
Go to the top of the page
+Quote Post
giro1991
post Apr 27 2014, 17:53
Post #146





Group: Members
Posts: 113
Joined: 27-February 13
Member No.: 106916



On google multiplying input by 65536 links to "Binary scaling" and that is all .
Surely there is a dsp/vst that can do it.

EDIT: I'm also trying out your TransPCM code, so thankyou for that too.
EDIT2 IT is possible
QUOTE ([JAZ] @ Apr 15 2014, 22:39) *

Edit2: It just occurred to me that the other concept that you might think when talking about stretching isn't what you expect. If you expand the 16bits, so that they are evenly distributed on a 24bit signal, or 32bit signal, what you have achieved is volume boosting it. But since 24 or 32bit have the same 0dBFS, what you end with is a more silent file, with the opposite effect of a DSP compressor.


This is what I would like to acheive, could please someone please show me how using foobar / vst.

This post has been edited by giro1991: Apr 27 2014, 18:18


--------------------
www.realitymod.com member
Go to the top of the page
+Quote Post
db1989
post Apr 27 2014, 18:38
Post #147





Group: Super Moderator
Posts: 5275
Joined: 23-June 06
Member No.: 32180



QUOTE (giro1991 @ Apr 27 2014, 17:53) *
On google multiplying input by 65536 links to "Binary scaling" and that is all .
Surely there is a dsp/vst that can do it.

QUOTE
EDIT2 IT is possible
QUOTE ([JAZ] @ Apr 15 2014, 22:39) *
Edit2: It just occurred to me that the other concept that you might think when talking about stretching isn't what you expect. If you expand the 16bits, so that they are evenly distributed on a 24bit signal, or 32bit signal, what you have achieved is volume boosting it. But since 24 or 32bit have the same 0dBFS, what you end with is a more silent file, with the opposite effect of a DSP compressor.
This is what I would like to acheive, could please someone please show me how using foobar / vst.



REALLY now. How many times must people explain to you, over and over again, that ‘stretching’ the codes across a larger-bit-depth file is done simply by mere multiplication?

Look at that nice picture there. Now press the × button. This is what upconverting/right-shifting does.

Damn it
Go to the top of the page
+Quote Post
saratoga
post Apr 27 2014, 18:46
Post #148





Group: Members
Posts: 4963
Joined: 2-September 02
Member No.: 3264



In all seriousness you should just lock this thread so hes forced to spend 15 minutes on Wikipedia reading about PCM audio.
Go to the top of the page
+Quote Post
xnor
post Apr 27 2014, 19:04
Post #149





Group: Developer
Posts: 675
Joined: 29-April 11
From: Austria
Member No.: 90198



If you want to expand the dynamic range then you need to do nonlinear* processing with an .... (surprise!) ... expander.

*) this means the waveform will be distorted

This post has been edited by xnor: Apr 27 2014, 19:05
Go to the top of the page
+Quote Post
giro1991
post Apr 27 2014, 21:04
Post #150





Group: Members
Posts: 113
Joined: 27-February 13
Member No.: 106916



QUOTE (db1989 @ Apr 27 2014, 18:38) *
is done simply by mere multiplication


How can do I do this exactly using foobar or any DAW for that matter? It's not specific, I am a noob, a curious noob.
Please help.


--------------------
www.realitymod.com member
Go to the top of the page
+Quote Post

9 Pages V  « < 4 5 6 7 8 > » 
Closed TopicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 18th September 2014 - 23:26