Author Topic: BUG [ possibly] in GUI volume control  (Read 994 times)

purenoise

  • Posts: 115
BUG [ possibly] in GUI volume control
« on: 16 Oct '20 - 09:47 »
How:

 0. XMPlay balance set to center
 1. play media
 2. [ with mouse left click] change balance [ left or right]
 3. [ with mouse right click] on balance bar to restore 'center'

 4. BUG: in 1second previous balance will again apply for 1second
     [ bar shows no indication]

ver. 3.8.5
output: wasapi / win10 x64

Please confirm, or
suggest the reason of this behavior.

Thanks.

Ian @ un4seen

  • Administrator
  • Posts: 23869
Re: BUG [ possibly] in GUI volume control
« Reply #1 on: 16 Oct '20 - 14:39 »
I don't seem to be able to reproduce that here. To narrow down what it is, does it only happen when using the WASAPI output plugin? If so, does it happen with and without exclusive mode enabled? And does the "Control device volume" option setting make any difference? Also, does the "1 second" length match the buffer length setting in the Output options, or is it always 1 second regardless of that setting?

purenoise

  • Posts: 115
Re: BUG [ possibly] in GUI volume control
« Reply #2 on: 16 Oct '20 - 16:37 »
 - wasapi only issue [ just tested]
 - in exclusive no sound at all
 - Control device volume makes no difference
 - yes, it feels like it matches the length of the buffer if i keep longer before 'centering' balance

XMPlay output: 48kHz, stereo, 16bits, Buffer: 5s, No box-checks.

[ Fresh observation]:

 - with wasapi volume change it takes longer than on 'default [ non wasapi]'
 - changing balance on one channel around 80% in 5secs shifts to 100%

[ additional]

 - at the same time, always, runs two different apps that use own 'BASS' libs, and
   they not communicate with xmplay

purenoise

  • Posts: 115
Re: BUG [ possibly] in GUI volume control
« Reply #3 on: 16 Oct '20 - 17:04 »
XMPlay WASAPI plugin (rev.4a)

purenoise

  • Posts: 115
Re: BUG [ possibly] in GUI volume control
« Reply #4 on: 19 Oct '20 - 07:51 »
Did test:

 1. Fresh beta ver. 3.8.5.2
 2. put wasapi pluging
 3. set output device buffer to 5sec
 4. disabled exclusive mode
 5. select wasapi as output device

Same issue,
looks like problem with wasapi plugin, and
on 5sec buffer it's noticeable.

Ian @ un4seen

  • Administrator
  • Posts: 23869
Re: BUG [ possibly] in GUI volume control
« Reply #5 on: 19 Oct '20 - 17:32 »
Oh yes, I see the problem there now, thanks. Here's a WASAPI plugin update for you to try:

   www.un4seen.com/stuff/xmp-wasapi.dll

Let me know if you still see the problem happen with that.

purenoise

  • Posts: 115
Re: BUG [ possibly] in GUI volume control
« Reply #6 on: 19 Oct '20 - 20:52 »
Thanks, but
looks like there is a problem somewhere in
GUI balance slider and Output buffer connection.

Did this:

 0. renamed wasapi plugin ext. to prevent load
 1. Output Device: DefaultOutput Buffer 5sec
 2. play media
 3. left b. mouse click on the far right side of the slider to
     make sound only on the right side
 4. then, no wait, right b. mouse click to restore balance

[ result] sound plays for 5sec only on the right side even
though slider shows center.

I take from this that for some reason jump to the [ left | right]
channel 100% balance makes it stick for the length of the buffer.

Also while i kept playing with quick balance change i keep noticing
that sound balance change is getting with small delay, i expected
immediate change.

Hope this helps.

purenoise

  • Posts: 115
Re: BUG [ possibly] in GUI volume control
« Reply #7 on: 19 Oct '20 - 22:05 »
Just for fun:
 1. click pan slider to make [ full right], then
 2. click [ full left], and

[ result] getting 5sec silence, and then 5sec left,
so you get the idea.
And as i mention that i keep noticing delays in balance
change, i think it's related.

And just in case did test same scenario on BASS based
app - no issues.

Thanks.

purenoise

  • Posts: 115
Re: BUG [ possibly] in GUI volume control
« Reply #8 on: 19 Oct '20 - 22:54 »
Tested with shortucts, and
with mouse moving slider 100% [ right | left]
it make stick for the length of the buffer.

Ian @ un4seen

  • Administrator
  • Posts: 23869
Re: BUG [ possibly] in GUI volume control
« Reply #9 on: 20 Oct '20 - 14:54 »
XMPlay can either let the output system apply the volume and balance settings or it can apply them itself in the sample data, depending on what the output system supports. Here's a list of what's supported by each output system:

waveOut/default: has volume control, does not have reliable balance control
DirectSound: has volume and balance control
WASAPI: has volume and balance control in shared mode, may have them in exclusive mode
ASIO: does not have volume or balance control

So, when using the waveOut/default output system, XMPlay will apply the balance setting by modifying the sample data. When the balance is changed, the channel levels in the buffered data are also modified so that the change is heard immediately. But that isn't possible if there's no sound in the left or right channel (ie. it was 100% right or left), and so the new balance won't be heard until fresh data plays (after the buffered data) in that case.

purenoise

  • Posts: 115
Re: BUG [ possibly] in GUI volume control
« Reply #10 on: 20 Oct '20 - 16:34 »
Thanks for taking the time to explain this,
i had the feeling that waveOut/default issues is
system related.

WASAPI ver.4b works.

Topic Answered/closed