English Amiga Board


Go Back   English Amiga Board > Main > Amiga scene

 
 
Thread Tools
Old 10 June 2024, 23:38   #121
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
Quote:
Originally Posted by Karlos View Post
That sounds great,
Thanks!

Quote:
but I can only hear it via YT, so I'm not getting the true experience.
Indeed the video is just a pretty WinUAE-generated fake
saimo is offline  
Old 11 June 2024, 08:08   #122
pixie
Registered User
 
pixie's Avatar
 
Join Date: May 2020
Location: Figueira da Foz
Posts: 423
Quote:
Originally Posted by saimo View Post
Thanks!


Indeed the video is just a pretty WinUAE-generated fake
How the "fakery" compares with "teh real thing"tm?
pixie is offline  
Old 11 June 2024, 13:57   #123
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
Quote:
Originally Posted by pixie View Post
How the "fakery" compares with "teh real thing"tm?
That's something anyone should judge by themselves.
What I can do (it just occurred to me) is to post a recording from my A1200, although with all the already mentioned limitations (no quality equipment). Maybe later today...
saimo is offline  
Old 11 June 2024, 14:10   #124
pixie
Registered User
 
pixie's Avatar
 
Join Date: May 2020
Location: Figueira da Foz
Posts: 423
Quote:
Originally Posted by saimo View Post
That's something anyone should judge by themselves.
What I can do (it just occurred to me) is to post a recording from my A1200, although with all the already mentioned limitations (no quality equipment). Maybe later today...
That would be nice! And the winuae version to compare it with
pixie is offline  
Old 11 June 2024, 15:57   #125
hammer
Registered User
 
Join Date: Aug 2020
Location: Sydney/Australia
Posts: 1,041
Quote:
Originally Posted by saimo View Post
Here are the findings from my latests tests.
Please keep in mind that all the equipment I have this humble ASRock J5040-ITX PC with its anonymous on-board audio chip
J5040-ITX's audio is Realtek ALC892 Audio Codec with ELNA Audio Caps.

https://www.realtek.com/Product/Inde...99&cate_id=195
Hardware Features
  • DACs with 95dB SNR (A-weighting), ADCs with 90dB SNR (A-weighting)
  • Ten DAC channels support 16/20/24-bit PCM format for 7.1 channel sound playback, plus 2 channels of concurrent independent stereo sound output (multiple streaming) through the front panel output
  • Two stereo ADCs support 16/20/24-bit PCM format, multiple stereo recording
  • All DACs supports 44.1k/48k/96k/192kHz sample rate
  • All ADCs supports 44.1k/48k/96k/192kHz sample rate


Quote:
Originally Posted by saimo View Post
@hammer

Even if emu68k would have an easier life, it still would be severely slowed down by the continuous, constant and numerous interrupts and writes to the Paula registers. An AHI driver should be possible, but its use would be limited because the CPU-driven method is inherently limited and not suitable for multitasking contexts.
I purchased a low-cost ECS Denise for my A500 Rev6A. Is AGA an absolute requirement for your demo?

Last edited by hammer; 11 June 2024 at 16:13.
hammer is offline  
Old 11 June 2024, 16:28   #126
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
Quote:
Originally Posted by hammer View Post
J5040-ITX's audio is Realtek ALC892 Audio Codec with ELNA Audio Caps.https://www.realtek.com/Product/Inde...99&cate_id=195Hardware Features
  • DACs with 95dB SNR (A-weighting), ADCs with 90dB SNR (A-weighting)
  • Ten DAC channels support 16/20/24-bit PCM format for 7.1 channel sound playback, plus 2 channels of concurrent independent stereo sound output (multiple streaming) through the front panel output
  • Two stereo ADCs support 16/20/24-bit PCM format, multiple stereo recording
  • All DACs supports 44.1k/48k/96k/192kHz sample rate
  • All ADCs supports 44.1k/48k/96k/192kHz sample rate
Precisely because of that I couldn't make tests with sampling frequency higher than 192 kHz.

Quote:
I purchased a low-cost ECS Denise for my A500 Rev6A. Is AGA an absolute requirement for your demo?
Yes: the graphics side requires 8 bitplanes, 24 bit colors and 64 bit bitplanes data fetch.

Last edited by saimo; 11 June 2024 at 23:32. Reason: Added more information.
saimo is offline  
Old 11 June 2024, 23:38   #127
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
@all

After recording the music from the A1200, I realized that it was way too noisy, so I realized that something must have gone wrong. It turned out that the last-minute changes to the converter (cWAV16toAQA1) were totally ill-advised and also buggy, so the converted music was affected by a horrible noise!
I have uploaded the fixed version now - download from the usual place: https://retream.itch.io/hertz-overload

And here is the sampled Amiga 1200 output (19 kHz, 32 bit float): https://www.retream.com/_temporary/P...ions-A1200.wav - grab it while it's hot, as sooner or later I'll remove it

Moreover, in the afternoon, I couldn't help but make more volume-related tests. Very interesting results. I'll share them later or tomorrow, depending on how long it will take me to write the post.
saimo is offline  
Old 11 June 2024, 23:38   #128
Tsak
Pixelglass/Reimagine
 
Tsak's Avatar
 
Join Date: Jun 2012
Location: Athens
Posts: 1,056
Great work @saimo

Quote:
Originally Posted by saimo View Post
Precisely because of that I couldn't make tests with sampling frequency higher than 192 kHz.
Is there any point to that really? Unless you are an extreme audiophile with super trained ears, there's no way in the world you can hear the difference. 48k is more than enough already. Given the fact the sample will get squashed to a lower frequency and bit depth, this makes even less sense. Or am I missing something?

From a purely musical/artistic perspective, you'd get much greater gains in quality by good-old fashioned mastering (especially when we are talking about mixed tracks like this one). Better EQ to the instruments, compression and maximizing/limiting. The louder the track is, the easier it becomes hiding that pesky noise as well.

Quote:
Originally Posted by saimo View Post
RTG doesn't matter. The method should work on all chipsets, although as far as I know OCS and ECS output is severely muffled by the filter
Imho the filter on a500 should have been "banned" long ago
Afaik it can be disabled by tweaking the power led (can be done in software). Once I heard results without it I vowed never to go back (when it comes to game making on OCS).
Tsak is offline  
Old 12 June 2024, 00:12   #129
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
Quote:
Originally Posted by Tsak View Post
Great work @saimo
Thank you

Quote:
Is there any point to that really? Unless you are an extreme audiophile with super trained ears, there's no way in the world you can hear the difference. 48k is more than enough already. Given the fact the sample will get squashed to a lower frequency and bit depth, this makes even less sense. Or am I missing something?
From a human standpoint, you're absolutely right, of course.
The tests I'm referring to were aimed at finding out how Paula works and how (im)precise it is, so the more precision the better

Quote:
From a purely musical/artistic perspective, you'd get much greater gains in quality by good-old fashioned mastering (especially when we are talking about mixed tracks like this one). Better EQ to the instruments, compression and maximizing/limiting. The louder the track is, the easier it becomes hiding that pesky noise as well.
Yep. Regarding this, I do try to exploit the dynamic range an much as possible, but I don't resort to compression, as I prefer to keep the sound "pure". What I do is manually eliminating all the critical peaks (without distorting the sound). Of course there are limits to this. As a result, for example, the acoustic intro of the demo's music, being naturally quieter, has a lower SNR and thus produces some noise when played with the 14 bit technique.
From the picture of the source 192 kHz 32 bit file you can appreciate the total lack of compression (click for full size):



Quote:
Imho the filter on a500 should have been "banned" long ago Afaik it can be disabled by tweaking the power led (can be done in software). Once I heard results without it I vowed never to go back (when it comes to game making on OCS).
I cannot imagine how it sounds with such a strong filter, but still I wholeheartedly agree thinking of how my A1200 sounds like when the filter is on.
saimo is offline  
Old 12 June 2024, 00:28   #130
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
@all

I just can't post the results now, but I have a question for the Amiga audio gurus out there.
To scratch a certain itch of mine (which I'll tell you about), today I had to find out the formula that gives the ideal volumes listed at page 163 of the ARHM, and came up with 20*log(AUDxVOL/64) (with log(0) defined as -infinity) - the rounded results match exactly those in the table.
Is the formula correct? If so, how does it relate to the samples amplitude? Maybe it should be 20*log(abs(AUDxDAT/128)*(AUDxVOL/64))?

EDIT: I made a few tests with amplitude 64 and the measured results are not too far off from those given by the formula:
* volume 64: formula -6.021, measured -5.597
* volume 32: formula -12.041, measured -11.823
* volume 8: formula -24.0824, measured -22.958

Big fat note: I didn't remove the weird DC-offset "peaks" that can be seen in the picture included in my post #118, so with proper measurements and equipment the results could be closer.

Last edited by saimo; 12 June 2024 at 13:27.
saimo is offline  
Old 12 June 2024, 02:28   #131
Tsak
Pixelglass/Reimagine
 
Tsak's Avatar
 
Join Date: Jun 2012
Location: Athens
Posts: 1,056
Quote:
Originally Posted by saimo View Post
Yep. Regarding this, I do try to exploit the dynamic range an much as possible, but I don't resort to compression, as I prefer to keep the sound "pure". What I do is manually eliminating all the critical peaks (without distorting the sound). Of course there are limits to this. As a result, for example, the acoustic intro of the demo's music, being naturally quieter, has a lower SNR and thus produces some noise when played with the 14 bit technique.
From the picture of the source 192 kHz 32 bit file you can appreciate the total lack of compression (click for full size):
Yup, I got that while listening to the track
A classic maximizer can do the critical peaks elimination for you automatically. You'd be surprised how much you'll be able to push it before you start actually hearing any distortion or change in quality. I usually do something around -5db with individual samples, you can probably set it even further for a track with zero compression and a wide dynamic range like this one. Overall this single step has yet to disappoint me so far as the difference on the Amiga side tends to be more than profound (especially when it comes to eliminating noise).

As for purity, (and considering the genre) things getting a bit 'dirtier' can very well be a legit artistic choice
Tsak is offline  
Old 12 June 2024, 13:30   #132
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
Quote:
Originally Posted by Tsak View Post
Yup, I got that while listening to the track A classic maximizer can do the critical peaks elimination for you automatically. You'd be surprised how much you'll be able to push it before you start actually hearing any distortion or change in quality. I usually do something around -5db with individual samples, you can probably set it even further for a track with zero compression and a wide dynamic range like this one. Overall this single step has yet to disappoint me so far as the difference on the Amiga side tends to be more than profound (especially when it comes to eliminating noise).
Indeed a minimal compression is hard/impossible to notice. It's just that personally I prefer to keep the "perfect" undistorded sound (yeah, I know that perfection can't be reached... it's just me.)
Quote:
As for purity, (and considering the genre) things getting a bit 'dirtier' can very well be a legit artistic choice
Sure.
saimo is offline  
Old 12 June 2024, 15:20   #133
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
Latest findings...

As reported earlier, I had measured a volume discrepancy of -37.035+37.130 = 0.095 dB when playing a full-amplitude sine tone at volume 1 and periods 64 and 50, with the latter giving a louder output (as usual, click the pictures for full size):



I couldn't scratch that difference off my mind, so I thought that maybe I should change the converter to take that into consideration when converting to 14 bits.
First, I asked myself, which virtual volume in the Paula linear scale would give a difference of 0.095 dB against the volume produced by AUDxVOL set to 1, without distortions caused by the period?
Unfortunately the AHRM, at page 163, just provides a table that lists all the <volume, dB> couples. From those numbers, I derived the formula

20*log(AUDxVOL/64)

(with the convention that log(0) = -infinity). I don't know for sure if it's correct, but it provides values that, when rounded, match exactly those in the AHRM.
The question could thus be formulated as follows:

<dB given by the virtual volume x> minus <dB given by volume 1>

i.e.

20*log(x/64) - 20*log(1/64) = 0.095

Doing the maths leads to

x = 10^(0.095/20) = 1.0109973098876536037870941273379.

Let's counter-check:

20*log(1.0109973098876536037870941273379/64) - 20*log(1/64) = -36.028599479677743425648667366939 + 36.123599479677743425648667366939 = 0.095

OK, it works.

Therefore, in theory, the low 6 bits of samples should be somehow scaled down according to a factor of 1.0109973098876536037870941273379.
Uhm... I smell precision issues. Also, which is the relationship between volume (AUDxVOL) and amplitude (AUDxDAT)? It is known that, at least in practice, it is not linear (hence the need to calibrate the 14 bit playback).
I've been pondering a little bit on it and came up with the second formula I already mentioned, i.e. 20*log(abs(AUDxDAT/128)*(AUDxVOL/64)) (about whose correctness I'm all but sure), but before diving deeper I thought I'd better make more precise tests.

Given that the sampled sine tone suffered from a little volume loss in general, I decided to go back to a square tone (as I had intended to anyway):



And here's the same tone sampled from the Amiga:



The last step was to sample the tone playing it at volume 1 with periods 64 and 50. However, this time I put extra care in removing those weird peaks shown in the first picture (they are not really peaks: periodically Paula introduces a little DC offset, and does so for many - if not all - combinations of volume and period). After removing them from a 5 seconds sample, the result was:





I was utterly (and of course pleasantly) surprised that the volumes matched perfectly.

Conclusion: Paula handles the volume regulation surprisingly well (although, as already said, not perfectly) and, at least for the specific case of Hertz Overload, I must no longer worry about extra distortions (not) introduced by period 50.

test samples and pictures download (as usual, sooner or later I'll remove it from the server).

Side note: I've been plugging and unplugging the cable into the PC line-in so many times these days that the jack is becoming a bit loose; I intended to sample also the noise floor of my machine, but I'll refrain from doing that.

Last edited by saimo; 17 June 2024 at 13:33. Reason: Fixed typo. Added "(not").
saimo is offline  
Old 16 June 2024, 12:23   #134
pandy71
Registered User
 
Join Date: Jun 2010
Location: PL?
Posts: 2,877
Quote:
Originally Posted by saimo View Post
Latest findings...
Big question is where some of those distortions are produced - in Paula or in surrounding audio circuitry.
Paula to control signal level use PWM - from one side this is very linear way but on opposite some problems occur related to slew rate.

PWM demand high speed audio signal path (frequency 3.58MHz) - unless your circuitry has symmetric rising/falling edge response then some issues must be expected.

IMHO OPAMP used in Amiga (especially working in I/V converter) are to slow to deal correctly with Paula PWM signal and this may lead to level and non-linear distortions observed.
pandy71 is offline  
Old 16 June 2024, 12:52   #135
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
Quote:
Originally Posted by pandy71 View Post
Big question is where some of those distortions are produced - in Paula or in surrounding audio circuitry.Paula to control signal level use PWM - from one side this is very linear way but on opposite some problems occur related to slew rate.PWM demand high speed audio signal path (frequency 3.58MHz) - unless your circuitry has symmetric rising/falling edge response then some issues must be expected. IMHO OPAMP used in Amiga (especially working in I/V converter) are to slow to deal correctly with Paula PWM signal and this may lead to level and non-linear distortions observed.
I really have no idea of what happens hardware-wise.
saimo is offline  
Old 16 June 2024, 19:03   #136
pandy71
Registered User
 
Join Date: Jun 2010
Location: PL?
Posts: 2,877
Quote:
Originally Posted by saimo View Post
I really have no idea of what happens hardware-wise.
My point was that it may be impossible to answer your question without detailed analysis of software and hardware mutual relations - can be tricky.So probably best approach is just accept some outcomes.
pandy71 is offline  
Old 16 June 2024, 20:41   #137
saimo
Registered User
 
saimo's Avatar
 
Join Date: Aug 2010
Location: Italy
Posts: 854
Quote:
Originally Posted by pandy71 View Post
My point was that it may be impossible to answer your question without detailed analysis of software and hardware mutual relations - can be tricky.So probably best approach is just accept some outcomes.
Yeah, precisely because I don't have the means to make a deeper and more scientific analysis, I was happy with knowing that Paula does adjust the volume for periods smaller than 64 (and maybe it's just part of the bigger picture: it must adjust also for any period not multiple of 64) and that for the specific case of the demo's period (50) the adjustment is practically perfect.
saimo is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
ArtPazz - New game for AGA Amigas [WIP] saimo Amiga scene 38 07 June 2023 15:08
RNOPDF for ECS/AGA Amigas released jPV News 5 10 July 2020 07:57
Recommend a good Hertz switcher? lordofchaos request.Apps 5 28 June 2013 04:55
How does a 50 Hertz image get displayed? Richardcavell Coders. Asm / Hardware 14 15 March 2013 13:59
AGA Amigas Kitty Retrogaming General Discussion 25 13 October 2009 12:56

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 13:52.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.09364 seconds with 14 queries