Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: foo_crystalizer (Read 10932 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

foo_crystalizer

First of all, this is my first time to write this kind of stuff 

This dll is used to produce treble and bass basically.
The "extender" means for some frequency, it will reproduce the frequency and extend further above the sampling rate.
Treble may be look similar with "noise sharpening" one but they are totally different. (Especially in the equation I use)
For the bass part, I have no experience in making it, but I would also like to receive some comments.

Please use PPHS resampler at 192kHz and this foo_crystalizer after the resampler for the best result.
And I only have 2.0 system (also the soundcard), so I can't test the stability of channel with more than two, please report if there is any problem.

[attachment=5425:foo_crystalizer_v1.zip]

foo_crystalizer

Reply #1
Thanks
It immediately crashes with 4-channel setup (either channel mixer or built-in 4 channel DSP):

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 77283415h
Access violation, operation: read, address: 4734DF4Ch

Call path:
playback_process entry=>dsp/run=>dsp_manager::run=>dsp::run

Code bytes (77283415h):
772833D5h:  0F 85 30 A1 02 00 8B C7 5F 5E 5B C9 C2 0C 00 90
772833E5h:  90 90 90 90 8B FF 55 8B EC 83 EC 28 53 56 57 8D
772833F5h:  7A F8 80 7F 07 05 0F 84 E2 E7 03 00 8B 07 8B F7
77283405h:  C1 EE 03 33 F0 33 35 DC 71 30 77 89 7D FC 33 F1
77283415h:  8B 46 04 89 45 F4 C6 47 07 80 C6 47 06 00 8B 5E
77283425h:  08 8B 4E 0C 89 5D E0 83 C3 01 89 4D E4 83 D1 01
77283435h:  81 E3 FF 7F 00 00 66 3B 5E 14 0F 84 65 17 01 00
77283445h:  8B 45 E0 8B 55 E4 0F AC D0 10 66 89 47 08 2B 7D

Stack (0FDDEEF0h):
0FDDEED0h:  00000000 00000000 FFFFFD34 000002E4
0FDDEEE0h:  FFFFFD34 000002CC 00000018 00000000
0FDDEEF0h:  00000000 02E10000 02E140C8 7729E330
0FDDEF00h:  7729E1E7 08BDC938 00012000 08E1453C
0FDDEF10h:  00012000 08BDC938 06D30000 01E145BB
0FDDEF20h:  02E140C0 0FDDEF3C 772832D8 02E140C8
0FDDEF30h:  10002621 0FDDF0EC 02E140C0 0FDDEF50
0FDDEF40h:  75A2F10C 02E10000 00000000 02E140C8
0FDDEF50h:  0FDDEF90 02915568 02E10000 00000000
0FDDEF60h:  02E140C8 9EB190C4 10002621 02E145C0
0FDDEF70h:  0FDDF0EC 02E145C0 0FDDEF64 0FDDEAEC
0FDDEF80h:  0FDDF04C 02918F30 93FE113C FFFFFFFE
0FDDEF90h:  0FDDF018 02912D1F 02E140C8 02E145C0
0FDDEFA0h:  0FDDEF88 00E40339 387C9971 BB8D06C2
0FDDEFB0h:  0000AC44 00000000 02E145C0 0038C829
0FDDEFC0h:  02E140C8 02E147B8 02E147A0 00010000
0FDDEFD0h:  00000000 00300004 00001200 3F800000
0FDDEFE0h:  66666668 3F0F92F6 06623757 00001200
0FDDEFF0h:  3969D106 BF71A0D8 9B97F4A8 4001E377
0FDDF000h:  141A4048 45900000 00000000 3FF00000

Registers:
EAX: 3C96AD0C, EBX: 02E140C8, ECX: 02E10000, EDX: 02E140C8
ESI: 4734DF48, EDI: 02E140C0, EBP: 0FDDEF24, ESP: 0FDDEEF0

Crash location:
Module: ntdll
Offset: 53415h
Symbol: "RtlAllocateHeap" (+11Ah)

foo_crystalizer

Reply #2
Try this v1.1, thanks!
I need more testing for this dll, so thank you from your help!

[attachment=5428:foo_crys...zer_v1.1.zip]


Thanks
It immediately crashes with 4-channel setup (either channel mixer or built-in 4 channel DSP):

Code: [Select]
Illegal operation:
Code: C0000005h, flags: 00000000h, address: 77283415h
Access violation, operation: read, address: 4734DF4Ch

Call path:
playback_process entry=>dsp/run=>dsp_manager::run=>dsp::run

Code bytes (77283415h):
772833D5h:  0F 85 30 A1 02 00 8B C7 5F 5E 5B C9 C2 0C 00 90
772833E5h:  90 90 90 90 8B FF 55 8B EC 83 EC 28 53 56 57 8D
772833F5h:  7A F8 80 7F 07 05 0F 84 E2 E7 03 00 8B 07 8B F7
77283405h:  C1 EE 03 33 F0 33 35 DC 71 30 77 89 7D FC 33 F1
77283415h:  8B 46 04 89 45 F4 C6 47 07 80 C6 47 06 00 8B 5E
77283425h:  08 8B 4E 0C 89 5D E0 83 C3 01 89 4D E4 83 D1 01
77283435h:  81 E3 FF 7F 00 00 66 3B 5E 14 0F 84 65 17 01 00
77283445h:  8B 45 E0 8B 55 E4 0F AC D0 10 66 89 47 08 2B 7D

Stack (0FDDEEF0h):
0FDDEED0h:  00000000 00000000 FFFFFD34 000002E4
0FDDEEE0h:  FFFFFD34 000002CC 00000018 00000000
0FDDEEF0h:  00000000 02E10000 02E140C8 7729E330
0FDDEF00h:  7729E1E7 08BDC938 00012000 08E1453C
0FDDEF10h:  00012000 08BDC938 06D30000 01E145BB
0FDDEF20h:  02E140C0 0FDDEF3C 772832D8 02E140C8
0FDDEF30h:  10002621 0FDDF0EC 02E140C0 0FDDEF50
0FDDEF40h:  75A2F10C 02E10000 00000000 02E140C8
0FDDEF50h:  0FDDEF90 02915568 02E10000 00000000
0FDDEF60h:  02E140C8 9EB190C4 10002621 02E145C0
0FDDEF70h:  0FDDF0EC 02E145C0 0FDDEF64 0FDDEAEC
0FDDEF80h:  0FDDF04C 02918F30 93FE113C FFFFFFFE
0FDDEF90h:  0FDDF018 02912D1F 02E140C8 02E145C0
0FDDEFA0h:  0FDDEF88 00E40339 387C9971 BB8D06C2
0FDDEFB0h:  0000AC44 00000000 02E145C0 0038C829
0FDDEFC0h:  02E140C8 02E147B8 02E147A0 00010000
0FDDEFD0h:  00000000 00300004 00001200 3F800000
0FDDEFE0h:  66666668 3F0F92F6 06623757 00001200
0FDDEFF0h:  3969D106 BF71A0D8 9B97F4A8 4001E377
0FDDF000h:  141A4048 45900000 00000000 3FF00000

Registers:
EAX: 3C96AD0C, EBX: 02E140C8, ECX: 02E10000, EDX: 02E140C8
ESI: 4734DF48, EDI: 02E140C0, EBP: 0FDDEF24, ESP: 0FDDEEF0

Crash location:
Module: ntdll
Offset: 53415h
Symbol: "RtlAllocateHeap" (+11Ah)

foo_crystalizer

Reply #3
Works fine now 

It seems that it processes the sound even if sliders are set to min. and then sound is attenuated
I don't use bass, but trying it looks like limiter is needed after using it - every step introduces ~ +2dB
Treble also sounds very different then noise sharpening, and when treble is set to 2/5 the sound seems the right volume

I've set it to 1/5 or 2/5 for treble and 0 for bass

Thanks

foo_crystalizer

Reply #4
Thanks for your testing and comment~ 

I don't know the user need which level of treble and bass in their sound system
so the slider is a little bit large in range, actually I also use 1/5 to 2/5 for treble as you do~
I discovered that adding bass or treble will produce signal that exceeds the limit, so I attenuated the original signal.
Maybe later I will put a slider bar for user to change the volume of original signal.
The idea behind the treble sound is different from noise sharpening, but you may say that is more advanced version which involve something like taylor series
For the bass, I just use low pass filter and doing little bit modification

Works fine now 

It seems that it processes the sound even if sliders are set to min. and then sound is attenuated
I don't use bass, but trying it looks like limiter is needed after using it - every step introduces ~ +2dB
Treble also sounds very different then noise sharpening, and when treble is set to 2/5 the sound seems the right volume

I've set it to 1/5 or 2/5 for treble and 0 for bass

Thanks


foo_crystalizer

Reply #5
v1.2 updated

remove bass part, seems no one like it
the original signal is now not attenuated
this dll will not consume much cpu power when compare with previous version
using of resampler with 192kHz before this dll is recommended
later version will focus on different type of treble sound....

[attachment=5434:foo_crys...zer_v1.2.zip]

 

foo_crystalizer

Reply #6
Hi, Thanks for sharing such an useful components, Could place a title in the menu-view, I like to directly open it.