Page 3 of 5

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 1:56 am
by nobba
Hi Bryan,

I have the docs for WDSP.dll, but nothing for CM.

We need to convince him not to take locks on the audio thread!! This is the reason for the remaining issues I have with low-latency VAC, though it's much better than it was. If he needs convincing, I can point him to a couple C++ talks on the subject from the JUCE guys. Realtime audio coding is _hard_ :-(

No locks, no system calls!

TBH it is not too bad now -- I get more latency from the Equalizer than I get from the audio chain itself, so its probably about as good as it can get. If I use WDM-KS host, the latency from mic on one device to the speakers on another, is way less than 10mS, with tweaks to the PA Buffer and PortAudio latencies.

I did fix some hangs in CM on application exit; I found, after searching for ages, a semaphore that was not set (but only if it was the second Tuesday in the month and after 4.15pm but before 10pm ;-))

Regards,
Steve

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 9:24 am
by ea3aqr
I'm geting this error very often when I start Thetis.

Any idea?

My audio settings are exactly the same I was using without any issue with ver. 2.8.0.9

PS: When I get this error I must reboot my PC and power cycle my radio to sucessfully start my setup.

Asio_Error.jpg
Asio_Error.jpg (330.27 KiB) Viewed 4805 times

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 1:05 pm
by Joe
I had that error after a windows update, the update had scrambled my audio (interface) from being recognized properly. In my case, I went into to windows audio setup and reset everything. This just happened two days ago after win update. Hope this helps.

73’s
Joe
WD5Y

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 3:39 pm
by ea3aqr
Joe wrote:I had that error after a windows update, the update had scrambled my audio (interface) from being recognized properly. In my case, I went into to windows audio setup and reset everything. This just happened two days ago after win update. Hope this helps.

73’s
Joe
WD5Y


Thanks Joe.

Unfortunately I only had this issue after installing G7KLJ build, never with Richie's one.

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 6:28 pm
by Joe
I had the exact same error with vac not seeing my audio interface correctly, I believe G7KLJ’s software has the alert of vac error. When I started up the setup form would come up at first and the error would show. Hope you get it straight, I really like the new Thetis, works great here.

73’s
Joe
WD5Y

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 6:50 pm
by nobba
Guys,
How do you make the images that people post large?

my eyes are not good enough to see the audio trouble guy's picture!

I tried clicking on it, and nothing happens

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 6:58 pm
by nobba
ea3aqr wrote:I'm geting this error very often when I start Thetis.

Any idea?

My audio settings are exactly the same I was using without any issue with ver. 2.8.0.9

PS: When I get this error I must reboot my PC and power cycle my radio to sucessfully start my setup.

Asio_Error.jpg


Ha! I had to download your image to see it properly.
All I can suggest is that you try a different audio API. IN particular, WDM-KS has about the same latency as ASIO. I do have a friend, though, who uses ASIO with no trouble.

You might also like to try ASIO4All just to see if stuff works in there. This version of Thetis uses the latest portaudio, which is why you see the different behaviour. I am sure you will get it working,

Steve, G7KLJ.

EDIT: Here's what I use, and it has nary any latency at all from mic to MON. Hope its useful, or someone else can help you with the ASIO issue:

WDM.jpg
WDM.jpg (187.99 KiB) Viewed 4614 times

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 7:02 pm
by nobba
Hello, KLJ here.

Whilst I am in the forum, could I get you to add your vote here:

https://github.com/sjk7/Thetis-2.9.0/issues/7

Thanks,

Steve

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 7:10 pm
by nobba
ea3aqr wrote:I'm geting this error very often when I start Thetis.

Any idea?

My audio settings are exactly the same I was using without any issue with ver. 2.8.0.9

PS: When I get this error I must reboot my PC and power cycle my radio to sucessfully start my setup.

Asio_Error.jpg


Just noticed that your PA buffer sizes are 0 (zero). Please note that this currently does not work for me, using any API Host. I set mine to 1.
Hope this helps!

Steve, G7KLJ
ASIO4Me.jpg
ASIO4Me.jpg (155.26 KiB) Viewed 4607 times

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 7:18 pm
by ea3aqr
nobba wrote:Guys,
How do you make the images that people post large?

my eyes are not good enough to see the audio trouble guy's picture!

I tried clicking on it, and nothing happens


Click and open in new windows for a larger screenshoot!

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 7:20 pm
by ea3aqr
nobba wrote:
ea3aqr wrote:I'm geting this error very often when I start Thetis.

Any idea?

My audio settings are exactly the same I was using without any issue with ver. 2.8.0.9

PS: When I get this error I must reboot my PC and power cycle my radio to sucessfully start my setup.

Asio_Error.jpg


Just noticed that your PA buffer sizes are 0 (zero). Please note that this currently does not work for me, using any API Host. I set mine to 1.
Hope this helps!

Steve, G7KLJ
ASIO4Me.jpg


I will try and let you know!

ASIO4ALL (bad drivers AFAIK) or WDM-KS are no option for me, my Creative ASIO drivers worked flawesly with my Anan radio for so many years with a very low latency settings!

Thanks

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 7:32 pm
by nobba
I agree, ASIO4ALL drivers are crap. However, you should try it to see if my software runs on your system with ASIO at all.
I notice you have creative drivers, like me. Have you tried updating them?

Steve, KLJ

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 8:09 pm
by K1LSB
Jordi, make the following adjustments and see if that helps.

1) Increase your VAC1 Buffer Size to 256 (your current size of 64 may be too low).

2) Reduce your VAC1 Sample Rate to 48000 (your current rate of 96000 may be too high).

3) Increase your Ring Buffer latency (both In and Out) to 20 (your current setting of 3 may be too low).

If those adjustments work then you can gradually start bringing them back towards where you had them while watching for any glitches.

Mark

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 9:06 pm
by ea3aqr
nobba wrote:I agree, ASIO4ALL drivers are crap. However, you should try it to see if my software runs on your system with ASIO at all.
I notice you have creative drivers, like me. Have you tried updating them?

Steve, KLJ


I'm running latest drivers, seems that port audio = 1 did the trick.

Will test further...

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 9:17 pm
by ea3aqr
K1LSB wrote:Jordi, make the following adjustments and see if that helps.

1) Increase your VAC1 Buffer Size to 256 (your current size of 64 may be too low).

2) Reduce your VAC1 Sample Rate to 48000 (your current rate of 96000 may be too high).

3) Increase your Ring Buffer latency (both In and Out) to 20 (your current setting of 3 may be too low).

If those adjustments work then you can gradually start bringing them back towards where you had them while watching for any glitches.

Mark


Thanks, but negative... my settings worked fine for years without under/overflows using several versions of windows 10 or 11.

I always try to get the lowest stable latency settings I can achieve.

I was the guy who discovered the network throttling index tweak after searching for 2 month because one Windows 10 update broke my system stability that was running fine for years without any issue.

Seems that setting portaudio to 1 did the trick!

Thanks!

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 10:04 pm
by nobba
ea3aqr wrote:
K1LSB wrote:Jordi, make the following adjustments and see if that helps.

Seems that setting portaudio to 1 did the trick!

Thanks!


Yes, now I have studied the portaudio docs about this. And they don't have much to say. Apparently, when you set driver buffer size to zero, it is supposed to select a low latency, but with no guarantee of success. Richie's revision has an extremely old portaudio implementation, so we can assume that over the years they have changed how they handle a latency request of zero.

In my original rehash of Thetis, I have something to display the _actual_ latency you get in the UI. It's quite nice, and satifying to see what you actually end up with. Latency is shown in ms for both in and out. I will add it at some point.

Glad you have it working!

Steve, KLJ

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Tue Apr 18, 2023 10:56 pm
by ea3aqr
nobba wrote:
ea3aqr wrote:
K1LSB wrote:Jordi, make the following adjustments and see if that helps.

Seems that setting portaudio to 1 did the trick!

Thanks!


Yes, now I have studied the portaudio docs about this. And they don't have much to say. Apparently, when you set driver buffer size to zero, it is supposed to select a low latency, but with no guarantee of success. Richie's revision has an extremely old portaudio implementation, so we can assume that over the years they have changed how they handle a latency request of zero.

In my original rehash of Thetis, I have something to display the _actual_ latency you get in the UI. It's quite nice, and satifying to see what you actually end up with. Latency is shown in ms for both in and out. I will add it at some point.

Glad you have it working!

Steve, KLJ


So, does portaudio setting increases latency?

Will be nice to have an option to display actual UI latency :P

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Thu Apr 20, 2023 7:01 am
by nobba
Hi,

Essentially the total latency is half the size of each ring buffer plus soundcard latency. But we can display something more accurate than that.

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Thu Apr 20, 2023 7:26 am
by ea3aqr
Steve, after 2 days I can confirm that setting portaudio to 1 did the trick.

No more ASIO issues at all.

Thanks!

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Thu Apr 20, 2023 10:36 pm
by nobba
ea3aqr wrote:Steve, after 2 days I can confirm that setting portaudio to 1 did the trick.

No more ASIO issues at all.

Thanks!

Brilliant! Thanks for the update,

Steve

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Mon Apr 24, 2023 3:44 pm
by w-u-2-o
Usually I'm on the bleeding edge of things. Alas, life sometimes intrudes on hobbies :( But now I'm finally catching up to the rest of you and wanted to report my initial operating experience with 2.9.0.19.

Installation

I installed over the top of 2.9.0.8. That didn't work so well for me. On initial install it the installer required a reboot, which was a surprise. After doing that 2.9.0.19 wouldn't start. I uninstalled using Windows add/remove, manually deleted all Thetis folders (after backing them up) including the one in %appdata% folder, then installed a second time. On the second try no reboot was required and all was well. I popped the database.xml file from 2.9.0.8 in place and it came up fine.

Faster and faster

Wisdom calc's seemed much faster. Startup is faster but not exceptionally so (this is on an i7-7700K). After working with VAC, the focus of Steve's work, I was ecstatic. I was able to finally make my software audio system perform in the manner I expected.

I have a complex, high performance, software audio system. A Presonus Studio 192 Mobile interface with a GPSDO derived wordclock is connected via ASIO to Voicemeeter Potato. So is Thetis. Potato acts like an ASIO patch panel to Reaper DAW software. Previously I've been unable to use less than a VAC buffer size of 512 (and the Presonus set to match) with portaudio set to 0/0 and ringbuffers at 0/0. Now I have the Presonus and VAC set to a buffer size of 64, portaudio 0/0, and ringbuffers 2/2. The latency is about as low as it can be.

Well done Steve!!! :D

VAC bugs

Note: this part was done with VAC1, ASIO, 48KHz, Voicemeeter as the device, portaudio set to 0/0, VAC1 set to enable at startup. I did not test other config's....

No pain, no gain where progress is concerned ;)

It is possible to set yourself up for a crash when the Power button is hit after initial app launch. Under the VAC1 conditions specified above, if the ringbuffer settings are less than some critical value Thetis will crash. In my case I found that with a VAC1 buffer of 512 any ringbuffer setting less than 6/6 caused a crash. With a buffer of 64 anything less than 1/1 caused a crash. While it's perfectly acceptable to have no sound or crappy sound it shouldn't crash.

What's interesting is that if you set those numbers higher and get it started OK then you can reduce them to whatever you want afterwards. The crash only happens on the very first instantiation of VAC1.

Bug report entered on Git.

PureSignal Single Cal bugs

Repeated use of the single cal button is causing Thetis to toggle between automatic and manual (single cal) modes. Single cal should not cause a mode change or otherwise change the state of PureSignal (except to go from either disabled or auto to manual the first time it is used). It should only cause PureSignal to make a measurement and update the correction.

It's easy to see how the intent was to make single cal operation more clear to the user via changes in UI behavior, but unfortunately it confused and muddled the way PS is intended to operate. Functionally it needs to go back to the way it was in 2.9.0.8 but with improved UI indications only. I've posted a lengthy and detailed bug report on Git

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Mon Apr 24, 2023 4:58 pm
by Tony EI7BMB
Thanks for the informative post Scott. I notice i get a small number of overflow/underflow on start up but once cleared off its seems very stable . I'm testing at 256 buffer but find that using manual buffer latency causes occasional overflows so unchecked MAN for now. Port Audio set at 1

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Wed Apr 26, 2023 9:21 am
by ea3aqr
nobba wrote:
ea3aqr wrote:Steve, after 2 days I can confirm that setting portaudio to 1 did the trick.

No more ASIO issues at all.

Thanks!

Brilliant! Thanks for the update,

Steve


Steve,

It is not very often, but from time to time I still have the ASIO driver issue...

Could it be related to starting Thetis very quickly after it launchs?

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Sun May 14, 2023 12:14 am
by Trucker
Installed the latest version today ( .29) and so far, seems to be more stable for me with overflows and underflows that I had problems with earlier. Seems to load faster too.
Thanks Steve!
James
WD5GWY

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Sun May 14, 2023 7:55 am
by rbduck
Hi Steve, I love your new versions of Thetis. The only issue I have is finding your new releases. Is there a new link. I went to the old one and there was nothing there. Keep up the great work! Thank you :D

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Sun May 14, 2023 10:20 am
by NC3Z
It was here https://github.com/sjk7/Thetis-2.9.0/releases but now seems to have been removed.

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Sun May 14, 2023 10:34 am
by Tony EI7BMB
Yeah they have been removed for some reason

Screenshot 2023-05-14 at 11-33-18 Releases · sjk7_Thetis-2.9.0.png
Screenshot 2023-05-14 at 11-33-18 Releases · sjk7_Thetis-2.9.0.png (15.92 KiB) Viewed 3287 times

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Sun May 14, 2023 1:02 pm
by Trucker
That is odd. It was there yesterday morning. I wonder what happened?
Maybe he is getting ready to post another release.
James
WD5GWY

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Sun May 14, 2023 2:44 pm
by rbduck
Maybe he is working on it. :) He is doing a great job!

Re: Understanding G7KLJ 2.9.0.11 release

Posted: Sun May 14, 2023 2:54 pm
by K8EZB
Currently running .30 with modifications added to support Acom amps and tuners. No significant issues apparent so far.

Rick
K8EZB