12 October 2016, 19:14 | #41 | |||||||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
Quote:
I do not know what is the source of nonlinearities from the electric perspective, but you can probably explain this, huh ? Quote:
Quote:
Code:
lea d14b+$10000,a3 .loop move.w (a0)+,d0 ; left move.w (a0)+,d1 ; right move.w (a3,d0.w*2),d0 move.w (a3,d1.w*2),d1 move.b d0,(a2)+ ; low left lsr.w #8,d0 move.b d0,(a1)+ ; high left move.b d1,(a6)+ ; low right lsr.w #8,d1 move.b d1,(a4)+ ; high right subq.l #1,d2 bgt.s .loop rts This has been explained many times, sorry if you don't get it. Quote:
What is so hard to understand here ??? Quote:
I connected an Amiga to a very powerful amp where the smallest fly's fart would have blown the loudspeakers away. I just got beautiful silence (try this with an Atari ST and you'll understand what noise really means !). If your Amiga has noise then it's because you removed the shielding and/or added noisy components. Else an Amiga has much less electronic noise than the average PC. So yes, that "real audio system"'s D/A are perhaps 16bit, but it doesn't mean it provides better audio experience. Quote:
Quote:
|
|||||||
12 October 2016, 20:15 | #42 | |||||||
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,748
|
Quote:
Quote:
But if you are really interested there is lot of papers explaining common non-linearity problems in DAC - i will recommend for example http://www.analog.com/library/analog...erters%20F.pdf to see how various non-linearity can be visible in typical DAC . But generally 8 bit DAC is not simple stacked 8 1 bit DAC's - if this was so simple then decent 16 - 20 bit monolithic DAC will be not so costly - DAC like PCM63 cost around 50 - 80$ depends on grade... (and it consist two 19 bit DAC connected). Quote:
Quote:
I disagree but OK - it is very important for me to tell you that i was curious and it was not personal and i respect you very much and i'm not arguing with your coder skills. Quote:
Quote:
In modern PC analog audio power section design is usually very well designed (separate analog ground plane, linear regulator, way better Vref etc) Quote:
I understand where is difference between us - you see this purelly from arithmetic perspective and for you this is just code that operate in deterministic way and always provide same result for same data - from my perspective electric current is not so simple. Please understand difference between DAC resolution and DAC accuracy - this is completely different - very frequently there is specified something like ENOB https://en.wikipedia.org/wiki/Effective_number_of_bits - it is not uncommon to find for example 10 bit ADC that offer ENOB like 6.4 bit and there is nothing wrong - this is nature of electronics. http://www.analog.com/media/en/train...als/MT-003.pdf It may look very bad but real 12 bit is IMHO very good result. |
|||||||
12 October 2016, 21:08 | #43 | ||||||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
Quote:
Said otherwise, i care more about real life usage than pure theory. Quote:
This is just not the case ! Quote:
But we take 16 bits as input and calibrate just that, ending with 14 bits. It was an unexpanded A600 (labeled A300, i don't remember other details). I don't have it anymore. I've never plugged my A1200 to something really big, but i've never heard any noise coming from it either. Quote:
Quote:
Quote:
In addition, don't forget that the sound doesn't come directly from the DAC, there is filtering hardware behind. And what matters for me is the final output. If so, why the heck would true 16-bit DAC be better ? They're not linear either. |
||||||
13 October 2016, 01:31 | #44 | |||||||
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,748
|
Quote:
I will not comment your opinion about theory. Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Real 16 bit DAC has 16 bit linearity and this is significant difference between 2x 8 bit DAC and 1 16 bit DAC. |
|||||||
13 October 2016, 09:16 | #45 | ||||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
Quote:
Quote:
Quote:
If you care about noise that can't be heard at all, maybe. Things making lots of electromagnetic garbage, like pc cpu. Isolated from any complete computer then measured, doesn't count. The D/A may be the best in the world, if its output gets parasite signal it won't help. Quote:
Oh, so you mean that our poor 8 bit DAC aren't linear but nowadays 16 bit ones are, even cheapo chinese ones ? |
||||
13 October 2016, 12:13 | #46 |
Registered User
Join Date: Oct 2013
Location: England
Posts: 419
|
I've connected A1200's and A600's to various setups, one a very good surround system and they're clean...this is with bog standard Amiga PSU's too. If someone has noise, hum or distortion my first guess would be leaking caps, particularly audio output caps.
On the other hand I've owned laptops that are literally unusable on the audio outputs, buzzing, clicking, humming various low frequency crap due to self interference! |
13 October 2016, 12:46 | #47 |
Registered User
Join Date: Oct 2007
Location: Athens , Greece
Posts: 1,840
|
@paul1981
that's pretty much my experience as well, my miggies are silent, even ones with an accelerator and no rf shield inside. I've to say that whatever audio noise trouble I've had with laptops have been eliminated by using a better PSU though. I've a good quality universal psu in particular that has saved me from audio noise every single time. |
13 October 2016, 14:01 | #48 | |||
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,748
|
Quote:
How do you know - did you checking every code word or only some of them - perhaps only 2 LSB from upper part and 2 MSB from lower part? To linearize DAC you need to check every code, also you need to address dynamic distortion of a DAC - this prevent simplistic approach stacking multiple low accuracy converters to form single high accuracy (but you may improve dynamics by paralleling multiple DAC's - each doubling gives you something like 3dB improved dynamics). Reducing level by 6.0203dB means you loosing half of level values... so from 65356 there is only 32768 left - it is nothing wrong as 1 bit giving you 6.0203dB SNR but 2 bits giving you 12.0406dB SNR (so from 2 values you have now 4 values). So yes, there can be only 1500 - 5000 useful sample values in 2x 8 bit DAC stacked after calibration and this is enough to drastically improve quality as single DAC may have something like 150 - 200 useful sample values - see this from this point not inherently stable digital arithmetic... We start with 16 but this means nothing as they overlap i.e. same bits represent same signal level (2 LSB from upper 8 bit are covered by 2 MSB's from lower 8 bit part - AUDxVOL on lower half is set to fixed -36dB attenuation in analogue domain and thanks to PWM this it is stable and almost perfect as such less problems for calibration). Well... this is called psychoacoustic and that's why every human hear slightly different. And this is confirmation for things already pointed by me - with default Amiga M/B design 14 bit quality is unrealistic, i would rather agree for something between 10 and 12 bits maximum. Quote:
Yes, it is true, DAC can be best but bad application of DAC will ruin everything (and this is another thing pointed by me that Amiga IC Paula design is probably far from best DAC design as designers need to squeeze lot of audio not related logic within same chip). Quote:
And side to this how many times i need to repeat to not use terms resolution as accuracy - resolution of DAC can be even 32 bits but it may have less than few bits accuracy if you put lot of bad resistors inside. Imagine that you building own 16 bit DAC (like this one https://hifiduino.wordpress.com/2014...he-rest-of-us/ ) and you using +-5 or +-10% resistors - at the end what quality you expect at the DAC output...? And what kind of quality (tolerance) those internal resistors have in Paula (10 bit? maybe 12? or perhaps 14?) - this was my question from very beginning - what kind of quality can be expected from for example 8364R4 - i seriously doubt that 8 bit DAC in Paula has better accuracy than +-0.5LSB - it may be +-0.75LSB or +-1 LSB. Once again - fact that you feeding to DAC register value 200 doesn't mean that at the DAC analog output you will receive voltage equal to Vref*(200/255) as it depends on DAC quality and can be for example equal to code 198 or 203 or for example 201.76. This should be clear for everyone - for typical low quality DAC errors can be between +-4LSB or low as +-0.25LSB for good DAC. So i mean that 8 bit DAC has usually 8 bit (or less) linearity and 16 bit DAC usually have 16 bit linearity (or less) - even if you link together multiple Opel Corsa you will never create Formula 1 race car (even if from your perspective combined power of all Corsa engines will be same as in F1 engine) and China is not guilty of this - they can produce good and bad quality - all depends from customer (his requirements and his quality control). |
|||
13 October 2016, 15:41 | #49 | ||||||||||||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
Quote:
Quote:
What do you think the calibration program is doing ? Quote:
Even if there are only 150 useful sample values - which i seriously doubt - the first sample (8 bit) would have 150, the other (6 bit) 150/4, and that would lead us to 150*(150/4) =5625 values at the end (which is a minimum, for 200 it goes up to 10000), that's many more than your 1500-5000 claim here. Btw. If we reduce to 14 bits before calibrating, it implies that non-calibrated 14bit has more unique output levels than calibrated... Quote:
Quote:
Quote:
Quote:
Quote:
But you're not just saying we can't go above 14 bit. You're saying we can't even reach that. Then a 16-bit DAC fed with 14-bit data (2 low bits cleared) would give significantly better results than pseudo 14-bit on the amiga. Experience shows that it does not. If there were so much value overlapping, the calibrated output routine wouldn't be able to use many possible values in the 65536 possible ones. How many do you think it uses ? Quote:
Quote:
Internal resistors, as you call them, don't need more than 8 bit quality. Paula outputs 8 bit, and doesn't need to output anything else. Quote:
Quote:
Accurary is never perfect, it is always within a tolerance level. Where one expects 1V output, it may be 1.00033V or 0.99995V. If you have 44100Hz samples it will never be exactly that, for the simple reason no clock is perfect. So "14 bit accuracy" is meaningless, or you have to define it. You may pretend accuracy is below 14bit - i can't prove you wrong. Doing so would require precise measurements and i can't do that - i guess you can't either. Perhaps someone else should, settling the matter once and for all ('coz it's starting to be a bit long, in case you haven't noticed). But if you pretend resolution drops below 14bit - it can be proven right or wrong. And you seem to do so, because you said "only 16383 are usable and after calibration there is even less". |
||||||||||||
13 October 2016, 16:51 | #50 |
Computer Nerd
Join Date: Sep 2007
Location: Rotterdam/Netherlands
Age: 47
Posts: 3,753
|
All this theory is very interesting, but it has to be put to the test, or it means nothing. In the end it doesn't even matter. What matters is that when I play high quality WAV files on my A1200 they sound pretty damned good.
No worries mate |
13 October 2016, 16:58 | #51 |
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
|
13 October 2016, 16:59 | #52 | ||||||||||||||||||
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,748
|
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
Please don't involve clock as this lead us nowhere. It will only start discussion about jitter and all related time domain problems related to signal conversion. 14 bit accuracy is not meaningless and can be easily defined - simplest approach is SNR [dB]= 6.02N + 1.76 (where N is number of bits but this is very simplistic). More accurate are accuracy (quality) descriptions like this http://www.analog.com/media/en/train...als/MT-003.pdf Quote:
I have very precision audio analyzer side to me https://www.ap.com/analyzers-accessories/apx555/ - all i need is Amiga with proper signals (as APx555 internal generator can't be used) - to have a proper signals i need to spend some time to prepare those signals (re-sampling to native Amiga sample rate) and need to have Amiga capable to play it (that's why i waiting for V500). However ANY modern PC card can be used as audio analyzer as usually they parameters are way higher than Amiga audio system capabilities. Quote:
This may help all of us in more formalized discussion in future: http://www2.electron.frba.utn.edu.ar...easurement.pdf |
||||||||||||||||||
13 October 2016, 18:00 | #53 | ||||||||||||||||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
Quote:
Quote:
Quote:
Quote:
Quote:
Quote:
It's not an opinion. It's a fact that can be checked. Quote:
Quote:
Why wanting external sources ? It's an experience anyone here can do. Try playing 14 bit on any PC (uncalibrated 14 bit running on an emulator should suffice), and compare with an Amiga running software such as Play16. Quote:
I can do that measurement anytime, but first you have to be clear on what to expect. If, say, it's 17000, there's something wrong somewhere, don't you think ? Quote:
Quote:
At the end the trick is exactly the same as if we were using 8-bit video D/A and do +1 half the time - at the end we get 9 bit (if we're fast enough). Quote:
Quote:
This is a fact anyone can check. Quote:
Quote:
If you need a program able to play any wave file, ask me (if you're not locked to old 68000). Quote:
You're not exactly answering the question... So i will ask it again, in a different way. Let's say we load a calibration file, then build the table giving the 65536 values. How many unique value pairs do you expect to find in the table ? (this can easily be verified ; if you don't know you can at least estimate a reasonable range) |
||||||||||||||||
13 October 2016, 20:44 | #54 | |||||||||||||
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,748
|
Quote:
That's why i asked you as experienced software coder for explanation, i can understand if you don't know or if you not wish to share such knowledge but then say this openly. IMHO this depends from you - as you don't care too much about facts if they not fit to your opinion. Quote:
Quote:
As i said - i've tried long time ago 14 bit on Amiga and IMHO it was not 80dB+ SNR but less - i would locate his somewhere around 60 - 70dB. Something can be fact for you and opinion for someone else. If you write 'checked' you refereeing to subjective or objective method? Quote:
Quote:
Quote:
If you run calibration on emulated in PC Amiga what you expect to get? Quote:
And yes i will be surprised to see for example SNR like 98dB but trust me if this will be for example 82dB (as this is very close to 14 bit) it will be more then very good for such circuitry like in Amiga and i will be very happy. Quote:
Quote:
Well - if they are not used directly then it means that DAC resolution suffer and overall SNR will be worse. Quote:
If in real life you will feed analog signal from 8 bit DAC with 8 bit accuracy (assumption decent +-0.5LSB) then same samples played by 16 bit DAC with same accuracy (i.e. +-0.5LSB) will be objectively better - not sure if this can be hear but this is subjective area and everyone may have own opinion. The one you didn't care... Quote:
And I have many Amiga computers and that's why i know that CDTV was worse than CD32 in terms of audio quality. Quote:
Well... not sure - what do you mean? Quote:
|
|||||||||||||
13 October 2016, 22:18 | #55 | ||||||||||||||
son of 68k
Join Date: Nov 2007
Location: Lyon / France
Age: 51
Posts: 5,323
|
Quote:
Quote:
Quote:
Quote:
Quote:
(And this is exactly how the calibration program does it !) Quote:
Quote:
The HRM doesn't have to be especially precise. Quote:
Quote:
Quote:
Quote:
No, but it's easy to simulate. Just cut off the last 6 bits. I know how 8, 14, 16 bits sound, so it's a reasonable estimate to locate 10 bit somewhere between 8 and 14... Seems yes. Isn't it (by its principle) very similar to PWM ? Quote:
Quote:
Note : your "objective" data forgets about any possibility of having a good hardware lowpass filter. You concentrate just too much on the DAC. Why would i care ? Did you present objective data ? I mean that you didn't answer the question. Never mind, seems i've got that answer now (quoted below). Quote:
But the 65536 are not mapped to 16384. I ran a program to count them in actual data. My A1200's calibration file gave 17400 values. The one from Christian Buchner (available in the Play16 package) gave even more. |
||||||||||||||
14 October 2016, 12:41 | #56 |
Registered User
Join Date: Oct 2013
Location: England
Posts: 419
|
@pandy71
You said earlier 'let's not introduce time domain problems', yet shortly afterwards you talk of downsampling to Amiga compatible rate for testing, by this I presume you mean 28836 Hz. I thought this thread was all about the quality of Paula. There is no reason not to use 44.1KHz, just use a double scan mode (play16 will require DOUBLE tooltype though). If your A500 can't open a double scan screen, you might want to upgrade it to ECS). I just don't see how you can make comparisons with cd quality if downsampling. |
14 October 2016, 12:49 | #57 |
Registered User
Join Date: Oct 2013
Location: England
Posts: 419
|
@maynaf
I had no idea there were more than one version of Cybersound. Which one was the latest and best release to use? I only know of the one inside the Play16 archive. Edit: Ahh...I see, you mean his calibration file and not a different program. |
14 October 2016, 13:22 | #58 | |
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,748
|
I started replying but at some point realized that this is pointless at least at current stage of our knowledge - some data need to be collected and analysed to create some conclusions.
Sorry for your time, please All accept my apologies for this discussion - it was to early to start it - i had questions and didn't found answers yet. Quote:
Yes i will use 28604Hz (sufficiently close to nominal 28603.9919Hz) sampling rate with 16 bit samples to avoid any additional conversion on Amiga (as even in productivity closest to 44100Hz frequency is incorrect - 44336.19Hz). I will not use any higher than standard TV scan rates(i.e. no productivity or similar video mode). My goal is to understand capabilities of the '14 bit' audio mode and collect objective data to describe overall audio quality on Amiga. I'm not comparing Amiga to CD as this will be highly unfair for Amiga - my intention is to use whenever it is possible techniques used for digital/analog audio measurements. Last edited by pandy71; 14 October 2016 at 13:41. |
|
14 October 2016, 19:18 | #59 |
Registered User
Join Date: Oct 2013
Location: England
Posts: 419
|
The A500 has a different filter circuit to the more modern Amigas, so bear this in mind when using the filter. And true, you can't compare it to cd or sound card quality as there is no oversampling with Paula for starters, you just get the pure output. So in reality you can't really compare it to anything.
With all this test gear you're going to throw at it, and with your downsampling, I suppose there's no chance of a listening test then? :-P |
15 October 2016, 01:03 | #60 | ||
Registered User
Join Date: Jun 2010
Location: PL?
Posts: 2,748
|
Quote:
Quote:
And you can compare it as we comparing analog signal. Listening tests... anyone may propose own method for subjective testing - if you have ideas on this please share it - thank you. |
||
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
15 bit 44 khz audio idea. | Thorham | Coders. General | 33 | 15 September 2021 06:22 |
Questions about 14 bit audio playback | xxxxx | Coders. Asm / Hardware | 16 | 22 December 2014 19:30 |
High Quality reproduction of Audio on 8 bit. | pandy71 | Amiga scene | 0 | 01 July 2013 15:08 |
Using two voices for 56K sample/second audio output rate -- OCS -- No CPU or Copper | mc6809e | Coders. Asm / Hardware | 2 | 28 January 2012 00:29 |
Simple 14 bit audio question... | Thorham | Coders. General | 7 | 06 June 2010 10:55 |
|
|