All times are UTC+01:00




Post new topic  Reply to topic  [ 177 posts ]  Go to page Previous 16 7 8 9 1018 Next
Author Message
PostPosted: Sat Dec 03, 2022 2:23 am 
User avatar

Joined: Tue Mar 17, 2009 2:56 pm
Posts: 4077
Quote:
BETA012 is posted; the changes are all fixes/improvements in the new I/O layer.
It now start with buffer fill full empty and "M" instantly goes to 2.0000, no audio stuttering tho. Now also cant work with 0 or even 10ms buffersize.

_________________
control point


Top
   
PostPosted: Sat Dec 03, 2022 10:07 am 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 10846
Quote:
Quote:
BETA012 is posted; the changes are all fixes/improvements in the new I/O layer.
It now start with buffer fill full empty and "M" instantly goes to 2.0000, no audio stuttering tho. Now also cant work with 0 or even 10ms buffersize.
That's weird. Just to make sure: Didn't it start at "full empty" before?

That "M" starts at 2 just means that it's *really* very empty. (I can explain this but it's a long story). But it should still move to the same place as before after some time. It does here, and I have only touched the behavior when it's outside of the range (eg below empty or above full). It may take a bit longer maybe?

So, does it not go down?


Edit: OH! Never mind. I added support for blocking outputs, but I accidentally enabled that for all the outputs :(
Running a new build now.


Top
   
PostPosted: Sat Dec 03, 2022 4:42 pm 
User avatar

Joined: Tue Mar 17, 2009 2:56 pm
Posts: 4077
idk what is happening i need to set buffer size to atleast 70ms so everything can start normaly. Still it start with buffer fill less then half and still "M" starts with around 0.5.

_________________
control point


Top
   
PostPosted: Sat Dec 03, 2022 4:52 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 10846
Quote:
idk what is happening i need to set buffer size to atleast 70ms so everything can start normaly. Still it start with buffer less then half and still "M" starts with around 0.5.
Hm... I'm hoping that it's my blocking output issue, although what you're describing sounds a bit strange. But the new build is almost ready, so I'll wait for feedback once it's there.

For clarity: I accidentally made all the sound card outputs _blocking_, which means that whenever an output reaches "all the way full", it's no longer possible to put any data in it and any other output (even in other instances in multi-instance mode) will have to wait until there's room again.

We need that behavior for FM output in plugin versions where you might not be sending anything back to the plugin host. But in the stand alone version, it *usually* makes no sense.

I did just realize that it might still be good to allow the buffer to fill up a bit further than the maximum as long as it doesn't overwrite not-yet-played audio though; otherwise it might cause issues like what you're describing as soon as you open multiple outputs.


Top
   
PostPosted: Sun Dec 04, 2022 8:34 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 10846
Just posted BETA014. With some more I/O fixes. I did find another issue: Opening the sound card behaves differently from setting the buffer to 0 ms. The latter works properly and puts the buffer filling in the center; but opening doesn't. Will look into that tomorrow.


Top
   
PostPosted: Sun Dec 04, 2022 10:49 pm 
User avatar

Joined: Tue Mar 17, 2009 2:56 pm
Posts: 4077
Still buffer starts low, but, M now goes much lower, 0.0001 it looks like it tries hard to push start buffer to center, i hope it's that. Testing with 11ms buffer (1block+headroom) and default block size, starts with stutter 2-3 seconds and continues normally and syncs ok. Buffer fill is now much closer to 50% around 52% (with 400ms buffersize), seems ok. On lower buffersizes is too much jumpy to read.

edit: Noticed that M slowly goes to 1.0000 stays some time and then fastly goes back to 0.95000 stays there bit long time and agian slowly to 1.0000. -66ms latency, but it happens in any latency.

_________________
control point


Top
   
PostPosted: Sun Dec 04, 2022 11:50 pm 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 10846
Quote:
Still buffer starts low, but, M now goes much lower, 0.0001 it looks like it tries hard to push start buffer to center, i hope it's that. Testing with 11ms buffer (1block+headroom) and default block size, starts with stutter 2-3 seconds and continues normally and syncs ok. Buffer fill is now much closer to 50% around 52% (with 400ms buffersize), seems ok. On lower buffersizes is too much jumpy to read.

edit: Noticed that M slowly goes to 1.0000 stays some time and then fastly goes back to 0.95000 stays there bit long time and agian slowly to 1.0000. -66ms latency, but it happens in any latency.
So, is this the same as before? I think I have just solved the startup behavior, will run another build tonight.

M indeed goes lower and pushes harder to the center, which means (as I wrote before) that you can probably use smaller "Relative adjust" values, which is a good thing! Before the correction wasn't symmetrical (it could push down faster than it could push up; that's now no longer the case.

In normal situations (where the M value is close to 1) it doesn't make any difference, but for extremely small buffer sizes it definitely does.

So, I'm starting the BETA015 build now; it should automatically upload to the server about 5 hours from now (around 4:00 UTC) if anyone wants to test it before I've had a chance to post it here.


Top
   
PostPosted: Mon Dec 05, 2022 12:40 am 
User avatar

Joined: Tue Mar 17, 2009 2:56 pm
Posts: 4077
yes, still starts at lower buffer, that's why probably on very low buffersizes it first stutters then after few seconds stabilizes.
Edit1: You are right, relative adjust is nice around 0.10-0.15%

Edit2: Only thing now, is problem when starting. If cannot start at center, it would be also good to start at more then 50%, atleast audio will not stutter at start and sync will fix later.

_________________
control point


Top
   
PostPosted: Mon Dec 05, 2022 9:15 am 
Site Admin
User avatar

Joined: Mon Mar 17, 2008 1:40 am
Posts: 10846
Quote:
Edit2: Only thing now, is problem when starting. If cannot start at center, it would be also good to start at more then 50%, atleast audio will not stutter at start and sync will fix later.
015 is there, at least on my pc it now starts at the center. And it never did before.

Edit: I looked into what you wrote about "Suggested" - and it's NOT doing what you would expect it to do. At 480, I'm getting blocks of size 80... (At 481 as well). Also: Block size overrule was broken in BETA015, sorry... I was waiting to calculate the buffer size until we know the block size (which we don't know immediately). But if the block size is set, we do know it immediately on startup - the buffer calculation wasn't notified in that case.


Top
   
PostPosted: Mon Dec 05, 2022 1:26 pm 
User avatar

Joined: Tue Mar 17, 2009 2:56 pm
Posts: 4077
This is with start wit buffersize 100ms, and i also need to speed up Relative adjust.
Image
Buffer fill is around 45% but still.. at 0ms it works but still stutters few second at start, sometimes not. This is best so far, need to measure real latency tho.
Edit: at 2ms buffersize no stuttering at start but sometimes still knows to do it.

_________________
control point


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 177 posts ]  Go to page Previous 16 7 8 9 1018 Next

All times are UTC+01:00


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited