• Welcome to ASR. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

AuraEngine Converter

@Erogen Two things in those scans.

DR 6 → 9 on the third file is the high-pass, not extra dynamics. DR is peak over RMS: taking the bass out lowers the RMS while the peaks stay where they are, so the number rises. LRA, which is the loudness range, reads 8.47 / 8.35 / 8.43 across your three files — as far as that meter is concerned the dynamics are identical. The third one is also 3 dB quieter overall (−12.0 LUFS against −9.1), and that alone makes a master sound easier.

The low end is the interesting part, and you've found something again. With SUB20 that file should have nothing below 10 Hz, and yours has a shelf about 40 dB under the bass. I reproduced it here, and it isn't the subsonic filter — that still takes the disc's rumble out. It's the intersample-peak limiter (ISP), which runs after it: when it engages it trims thousands of short peaks, and that gain movement modulates the bass and puts a little energy back below 20 Hz. In my test the limiter was working on 4.6 % of the file and left exactly the shelf you see. In 1.3.2, switching ISP off drops the low end to where the filter leaves it, off the bottom of your plot; with ISP on, that shelf was the floor — still some 25 dB below what the disc itself had down there. I'd rather it weren't there at all, so in 1.3.3 the filter runs twice: once on the source, as before, and once more at the end on the finished render, after the limiter. On my test file the shelf drops from −57 dBFS to −125 at 2.7 Hz, which is where the filter alone leaves it, and nothing above 25 Hz moves by more than a hundredth of a dB. It's out now, and the web converter on Hugging Face has it too: https://github.com/ToxaDev/aura-engine/releases/tag/v1.3.3
 
@ToxaDev If I use the same settings in version 1.3.3, would the tracks be different than the ones I created in 1.2.9?
 
We are doing two different things.
In your case, the amplitude level at 20 Hz reaches the level of sounds up to 3 kHz.
In my case, the amplitude level at 20 Hz reaches the level of sounds up to around 6 kHz.
25HZ.jpg


Clipboard_09-23-2026_01.jpg


25HZ.jpg
Pay attention to what the peaks look like throughout the recording.

Me. First, lowering the original RMS from -12.16 dB to -15 dB, then a 25 Hz / -12 dB high-pass filter.


25HZ_1.jpg


You

AE_1.jpg


In your case, the spectrum of peaks looks like a lawn mown with a lawnmower. :) Straight, straight, like a ruler.
Yes, I know that's how it is in the original recording.
Whether that's good or bad, I don't know.
I have the impression that when it's not as even, it sounds better, but maybe that's an illusion.
Or maybe not?
I do feel like my recording has a bit less energy, but as a result, it sounds smoother—actually more pleasant, less jittery.
 
Last edited:
It's the intersample-peak limiter (ISP), which runs after it: when it engages it trims thousands of short peaks, and that gain movement modulates the bass and puts a little energy back below 20 Hz
A couple of questions about this:

1. What is this trimming for? When the Inter-Sample re-constructor has run, are resulting peaks too high, massively increasing DR but lowering the average signal too much?

2. I've seen something like this "energy" problem before in a proprietary watermarking technology where an apparently tiny bits-per-second increase, has a large increase in the "energy" of the signal. Some limiters seem to have the same effect. This makes me wonder whether some of the "DC" seen on CDs mastered from analog tape (which by definition can not store DC) is actually a limiter artefact. What do you think?
 
@formdissolve Mostly the same, if the settings really are the same. The catch is that 1.3.0 added four stages 1.2.9 didn't have — DC (declip), ISP, AHR and TFS — and your saved settings predate them, so after the update they come up switched on. Turn those four off and you're back on the 1.2.9 chain: the audio matches apart from the dither, which differs between any two runs anyway, and two small things. With Hybrid-Phase on, its switch points now cross over in 1 ms instead of 0.08 (a bug, fixed in 1.3.2). With the subsonic filter on, it now also runs a second pass at the end, which changes nothing measurable above 25 Hz.

With them on the files will differ, and on a clipped master mostly in level: Declip rebuilds the flattened peaks, and the whole track comes down under the ceiling to make room for them.

@MaxwellsEq 1. It's there for level, not DR. A master that sits on its limiter ceiling for the whole track comes back from the reconstruction with intersample peaks well over full scale — up to +2.6 dBTP on one of my test tracks — and the output has a −0.5 dBTP ceiling. The simple fix is one gain for the whole file, set by the worst peak: the entire track goes down 2–3 dB for the sake of a few milliseconds. The limiter instead dips the gain for about 1.5 ms around each over, both channels together, and nowhere else. If any single over needs more than 6 dB, or the dips would cover more than 5 % of the file, it steps aside and the global gain does the job. On the test file from my last post it made 2,553 dips covering 4.7 % of the samples, and the file lost 0.1 dB instead of about 2. LRA is the same either way. The price was the infrasound Erogen found, which 1.3.3 now filters out after it.

2. I think the mechanism is real. A limiter multiplies the music by a gain that moves, so everything gets sidebands at the rate the gain moves; a fast one moves at bass rates, and bass times that lands below 20 Hz — which is what ours did. And limiting or clipping an asymmetric waveform shifts its average, which is DC. So a digital limiter at mastering can put DC and infrasound on a disc whose tape couldn't have carried either. Whether it did on a particular CD is testable: if the low-frequency content rises and falls with where the master was limited, it's the limiter. For our own limiter that correlation came out at 0.67. I haven't run it on a disc.

@Erogen Your 65536 plot of the new file has nothing left below 10 Hz, so 1.3.3 does on your track what it did on mine — thanks for checking.

You're right that we're doing two different things. SUB20 is built to leave everything from 20 Hz up as it was, so 20 Hz stays where the disc had it, at −43 in both the original and ours. A 25 Hz / 12 dB filter is a bass cut: about −5 dB at 20 Hz, −1.7 at 30 and −0.6 at 40, where this track's bass peaks. Whether you want that is taste, and a player can do it.

The straight line along the peaks is the master's limiter, which held every loud peak at one level. A linear-phase conversion keeps the waveform's shape, so the line stays. A high-pass like yours shifts the phase of the bass against everything above it, the bass under each peak moves, and the peaks stop lining up — some go up, some go down. That's the ragged top, and it's why DR reads 8–10 on yours. LRA across all six files in your table is 8.28–8.48, so the loudness range didn't change. For listening I'd match loudness first: your versions are about 3 dB quieter (−12.0 to −12.5 LUFS against −9.3), and a few dB quieter usually sounds smoother on its own. ReplayGain in the player does that.
 
A bug of ours, found while checking what I told @formdissolve in #126. It's been there since 1.3.0.

If you updated from 1.2.x with Hybrid-Phase switched on, the app came up with both Hybrid-Phase and TFS ticked. Those two can't run together, and the rack says so in a red line under it — "TFS and HP are both on" — but nothing switched one of them off, and the converter settled it by running TFS in place of Hybrid-Phase. So if that's you and you haven't touched either since, everything you've converted since the update went through TFS, not HP. The audio is fine; it's just not the phase mode you chose.

To check, open Advanced DSP. If HP and TFS both say ON, switch off the one you don't want — TFS, to get Hybrid-Phase back as it was. The choice is saved and it won't come back. Files you've already made say which one ran: TFS in the filename means TFS, HP means Hybrid-Phase.

Not affected: a fresh install, which opens with TFS on and HP off; anyone who has switched HP, αHP or TFS on since updating, because the rack settles the pair when you do; and the web converter, which keeps no settings.

It's already fixed for the next version: settings from 1.2.x with Hybrid-Phase on will open with TFS off.
 
@formdissolve Mostly the same, if the settings really are the same. The catch is that 1.3.0 added four stages 1.2.9 didn't have — DC (declip), ISP, AHR and TFS — and your saved settings predate them, so after the update they come up switched on. Turn those four off and you're back on the 1.2.9 chain: the audio matches apart from the dither, which differs between any two runs anyway, and two small things. With Hybrid-Phase on, its switch points now cross over in 1 ms instead of 0.08 (a bug, fixed in 1.3.2). With the subsonic filter on, it now also runs a second pass at the end, which changes nothing measurable above 25 Hz.

With them on the files will differ, and on a clipped master mostly in level: Declip rebuilds the flattened peaks, and the whole track comes down under the ceiling to make room for them.
Thanks @ToxaDev ! I actually downloaded a fresh 1.3.3 and re-ran the 5 or so albums I did before on 1.2.9 just for fun. When putting an 18min track at FS8 with Hybrid Phase on, it needs 28GB RAM I believe it says (I have 32GB). I'm no software engineer, but since it is using my GPU, is there a way to use all the memory on the GPU as well? Some sort of Hybrid approach? My GPU has 16GB so that would be a nice boost. Again - not a software dev so have no idea how that Vulkan offload works or if anything like that is even possible. Having fun messing around with this, particularly to de-clip a lot of albums! Thanks
 
Intel Ultra 7 265/32GB (memory available 25GB) + RTX Geforce 5060Ti 8 GB
[AE · 44,1 tys.→352,8 tys. · Kaiser 30M · f64 · DC·SUB20]

Only 1 Track: Time 29m:52s
Tine: 3m.24s / Speed 8.78x

2 Track 29.52 + 27:13 = 57m5s
Time: Speed 4m.57s / Speed 11:53

[18:36:50.916] [CONV] ✓ Done: 01 - Livemiles (Part 1) [AE · 44.1k→352.8k · Kaiser 30M · f64 · DC·SUB20].flac (895.1 MB)
[18:36:51.816] ─── LAB REPORT · 01 - Livemiles (Part 1) [AE · 44.1k→352.8k · Kaiser 30M · f64 · DC·SUB20].flac ───
[18:36:51.816] ● DECLIP fixed 1348 short + 25 plateaus (longest 1.4 ms, 0.0% clipped)
[18:36:51.816] ○ ISP no intersample overs found
[18:36:51.816] ● SUB linear-phase high-pass below 20 Hz (29813 taps); removed -83.3 / -82.0 dBFS RMS; segmented route: source pass only, no output limiter follows it
[18:36:51.816] ───────────────────────────────────────────────────────────────────────────────────────────────────
[18:36:51.869] [MEM] file 1/2 finished — working set 4524 MB | commit 9923 MB | batch reserved 9287 MB | system avail 19198 MB
[18:36:51.869] [CONV] ✓ [1/2] done → Tangerine Dream (1988) Livemiles\01 - Livemiles (Part 1) [AE · 44.1k→352.8k · Kaiser 30M · f64 · DC·SUB20].flac
[18:37:11.289] [CONV] ✓ FLAC Integrity Confirmed.
[18:37:11.289] [CONV] ✓ Matches 64-bit DSP output (±2 LSB @ 24-bit tolerance).
[18:37:11.289] [CONV] ✓ Max deviation: 0.0000e0 margin: 2.3842e-7 mismatches: 0/576192960
[18:37:11.290] [CONV] ===================================================

[18:37:11.290] [CONV] ✓ Done: 02 - Livemiles (Part 2) [AE · 44.1k→352.8k · Kaiser 30M · f64 · DC·SUB20].flac (834.1 MB)
[18:37:11.954] ─── LAB REPORT · 02 - Livemiles (Part 2) [AE · 44.1k→352.8k · Kaiser 30M · f64 · DC·SUB20].flac ───
[18:37:11.954] ● DECLIP fixed 1272 short + 13 plateaus (longest 1.2 ms, 0.0% clipped)
[18:37:11.954] ○ ISP no intersample overs found
[18:37:11.954] ● SUB linear-phase high-pass below 20 Hz (29813 taps); removed -83.6 / -83.2 dBFS RMS; segmented route: source pass only, no output limiter follows it
[18:37:11.954] ───────────────────────────────────────────────────────────────────────────────────────────────────
[18:37:11.998] [MEM] file 2/2 finished — working set 2963 MB | commit 8360 MB | batch reserved 4579 MB | system avail 21678 MB
[18:37:11.998] [CONV] ✓ [2/2] done → Tangerine Dream (1988) Livemiles\02 - Livemiles (Part 2) [AE · 44.1k→352.8k · Kaiser 30M · f64 · DC·SUB20].flac
[18:37:11.999] [GPU/CACHE] cleared — 16 spectra (2048 MB), 1 twiddle tables
[18:37:12.059] [MEM] batch end — working set 882 MB | commit 6274 MB | batch reserved 0 MB | system avail 23763 MB
[18:37:12.059] [CONV] ✓ All done! 2 files converted

Clipboard_09-23-2026_01.jpg
 
Last edited:
Thanks @ToxaDev ! I actually downloaded a fresh 1.3.3 and re-ran the 5 or so albums I did before on 1.2.9 just for fun. When putting an 18min track at FS8 with Hybrid Phase on, it needs 28GB RAM I believe it says (I have 32GB). I'm no software engineer, but since it is using my GPU, is there a way to use all the memory on the GPU as well? Some sort of Hybrid approach? My GPU has 16GB so that would be a nice boost. Again - not a software dev so have no idea how that Vulkan offload works or if anything like that is even possible. Having fun messing around with this, particularly to de-clip a lot of albums! Thanks
@formdissolve 1.3.4 is out, and it's the answer to your 28 GB, so it's worth downloading again: https://github.com/ToxaDev/aura-engine/releases/tag/v1.3.4

What was going on: the Polyphase FIR box (PFR in the rack) shipped off before 1.3.0 and on since, and settings saved by 1.2.x carried the old "off" forward. So anyone who updated, probably you too, was converting on the standard route. On that route the whole track sits in RAM, which is where the ~28 GB for an 18-minute track with Hybrid-Phase came from, and on a 32 GB machine the app refuses it. The polyphase route sends a file that long through a segmented pass instead: the same kind of track here peaked at about 6 GB. That's also the closest thing to the hybrid you asked about, since on that route all eight sub-filters sit on the card at once, about 6 GB of video memory at 30M taps.

1.3.4 switches PFR on once for settings saved by older versions. If you turn it off afterwards, that sticks. Two side effects: file names gain PFR, and TFS, which doesn't run on the standard route, now does if its row is lit.

Looking into this turned up a gap in that segmented pass: it skipped the stages that run on the finished render, XTC, the ISP output limiter and the second subsonic pass. So a long file lost XTC, and a long clipped track came down as a whole where the limiter would have trimmed only its overs. In 1.3.4 all three run there too, with the same arithmetic as in memory.

It also keeps the promise from #127. Hybrid-Phase and TFS both on after an update is now settled in favour of Hybrid-Phase, including in settings saved since 1.3.0, which my first fix missed. And long files now get PFR and HP in their names; the tag inside already had them.
 
Could the program display information about the processing speed or processing time in the summary?
 
@formdissolve 1.3.4 is out, and it's the answer to your 28 GB, so it's worth downloading again: https://github.com/ToxaDev/aura-engine/releases/tag/v1.3.4

What was going on: the Polyphase FIR box (PFR in the rack) shipped off before 1.3.0 and on since, and settings saved by 1.2.x carried the old "off" forward. So anyone who updated, probably you too, was converting on the standard route. On that route the whole track sits in RAM, which is where the ~28 GB for an 18-minute track with Hybrid-Phase came from, and on a 32 GB machine the app refuses it. The polyphase route sends a file that long through a segmented pass instead: the same kind of track here peaked at about 6 GB. That's also the closest thing to the hybrid you asked about, since on that route all eight sub-filters sit on the card at once, about 6 GB of video memory at 30M taps.

1.3.4 switches PFR on once for settings saved by older versions. If you turn it off afterwards, that sticks. Two side effects: file names gain PFR, and TFS, which doesn't run on the standard route, now does if its row is lit.

Looking into this turned up a gap in that segmented pass: it skipped the stages that run on the finished render, XTC, the ISP output limiter and the second subsonic pass. So a long file lost XTC, and a long clipped track came down as a whole where the limiter would have trimmed only its overs. In 1.3.4 all three run there too, with the same arithmetic as in memory.

It also keeps the promise from #127. Hybrid-Phase and TFS both on after an update is now settled in favour of Hybrid-Phase, including in settings saved since 1.3.0, which my first fix missed. And long files now get PFR and HP in their names; the tag inside already had them.
I tried the same 17+ min files using hybrid-phase FS8 in 1.3.4 and it still denies due to wanting ~28GB memory. I wish I bought 64GB back when memory was cheap :D
 
I tried the same 17+ min files using hybrid-phase FS8 in 1.3.4 and it still denies due to wanting ~28GB memory. I wish I bought 64GB back when memory was cheap :D
32GB total, with about 25GB available.
I tried processing one file - 29 minutes - and the program completed the task. With two files (29 minutes each), the program hung; I shut it down after 200 seconds.
With three files (29 minutes each), the program displayed an error after one minute.
 
Last edited:
Before.

Clipboard_09-25-2026_01.jpg



After.



Clipboard_09-25-2026_02.jpg


Zucchero & Co. 2004
Track 11

Clipboard_09-25-2026_03.jpg
 
1.5.1 is out, and the converter plays now: https://github.com/ToxaDev/aura-engine/releases/tag/v1.5.1

Every file in the list has a play button. The player runs the chain the file would be converted with, so you can hear a setting before converting with it. Once every stage is in, what goes to the DAC and the converted file differ by less than −120 dB (measured on one chain: 30M taps, FS×8, TFS, XTC). If the machine can't keep up, the taps step down for that track and the player says so. It plays internet radio through the same rack too, or in BIT-PERFECT.

What changes in a conversion:
• Sources at 88.2 kHz and up lost everything above 23 kHz: every filter was designed for a 44.1/48 kHz source. Each rate now gets its own. On a 24/96 album the 23–30 kHz band comes out at −46.6 dB, as in the file, instead of −86.3.
• TFS was derived on too short a transform (stopband −94 to −126 dB instead of −191 to −221). In band, files differ from 1.3.x by at most −120 dBFS. The magnitude figure I posted earlier still holds.
• Declip leaves MP3, AAC, Vorbis and Opus alone: their peaks past full scale are the codec's, not clipping. A source louder than full scale is lowered as a whole.
• The Adaptive Apodizer stands down where its cutoff would sit at or above the codec's wall. There it could only shift the phase.
• Album Level (ALB, on by default): files that share a folder and an Album tag get one gain, so the album keeps its balance. Such an album comes out quieter.

Only one copy of the app runs at a time now, since the player needs the device. Getting one copy as fast as two is in the works. From this release on, the app updates itself; this one needs installing by hand.

1791077199776.png
1791077219779.png
1791077388477.png
 
Could the program display information about the processing speed or processing time in the summary?
It's in 1.5.1, as promised. When a batch ends, Convert all shows how much audio it converted and how many times real time that took, and each row shows its own figure beside its ✓. Hover over the button for the batch time and each file's time. Note that only one copy of the app runs at a time now, so two-instance timings won't work with it.


With two files (29 minutes each), the program hung; I shut it down after 200 seconds.

With three files (29 minutes each), the program displayed an error after one minute.
I couldn't reproduce the hang, but I found a way two long files could land on your 8 GB card at once, and 1.5.1 closes it. A long file now reserves the card for its whole filter set before it starts, and the set needs about half the memory it did: 3.3 GB at 30M ×8 instead of 5.9. It also checks disk space first: a 29-minute file at ×8 needs about 23 GB of temporary space next to the output. If either still happens, the session log from that run will show what did.


I tried the same 17+ min files using hybrid-phase FS8 in 1.3.4 and it still denies due to wanting ~28GB memory. I wish I bought 64GB back when memory was cheap :D
@formdissolve Sorry this one waited. The ~28 GB comes only from the route with Polyphase FIR (PFR) off, which holds the whole track in memory. With PFR on, a 17-minute track at FS×8 with Hybrid-Phase goes through the segmented pass and needs about 4 GB (it peaked near 6 GB here), so 32 GB is enough. Check PFR in the DSP rack and switch it on if it's dark; in 1.5.1 stop playback first, since the player keeps it lit while a track plays. If it's lit and the file is still refused, post the full error text from the queue row and the version number above the title.
 
Intel Ultra 7 265K M: 32GB (5600MHz) + RTX 5060Ti 8GB

Clipboard_10-04-2026_01.jpg


Intel Ultra 7 265K M: 32GB (5600MHz) + RTX 5060Ti 8GB (+ M: 1000MHz / + C: 350MHz)

Clipboard_10-04-2026_05.jpg


Clipboard_10-04-2026_02.jpg
 
Last edited:
The playback option.
So many new features have been added that the program has become less intuitive and user-friendly.
I’m not sure if this is the right direction for the program's development.
I’ll stick with my favorite program—foobar2000—since I’ve been using it for over 10 years. I know how it works; it’s intuitive and convenient.

Unfortunately, the playback option doesn't work for me; the issue is "exclusive mode"—the sound comes out distorted.
Exclusive mode doesn't work for me in foobar2000 either, which is why I use ASIO drivers. They work without any problems.

Clipboard_10-04-2026_01.jpg


Clipboard_10-04-2026_03.jpg
 
@Erogen The red line under your player is what Windows answered for the RME: AUDCLNT_E_ENDPOINT_CREATE_FAILED at 44.1 kHz. The driver refused to open the unit in exclusive mode before any sound was sent, and foobar's WASAPI exclusive output runs into the same refusal, so it points at the driver side rather than the player. Two usual causes:
• Another program holds the RME through ASIO: foobar2000 with its ASIO output open, or a DAW. While an ASIO host sets the unit's clock, the driver may not open an exclusive stream at another rate. Close it and press Play again.
• The rate is pinned in RME's Settings dialog. The player asks for the file's rate in BIT-PERFECT and for 176.4 kHz at FS×4. A driver held at another rate refuses, or may play it wrong, which could be the distortion you hear.
If it still fails, tell me which mode distorts (BIT-PERFECT or with the rack) and post the lines with "stream open" or "exclusive mode failed" from the session log in %LOCALAPPDATA%\AuraEngine\logs. The player has no ASIO output for now; exclusive WASAPI is its only route.
 
Back
Top Bottom