Skip to main content

Topic: WASAPI plug-in version 3.0 beta [closed] (Read 133210 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • Peter
  • [*][*][*][*][*]
  • Administrator
WASAPI plug-in version 3.0 beta [closed]
Closed: stable version out - get it here

What is this?
This plug-in adds Windows Audio Session API exclusive mode output support, allowing bit-exact output and muting all other sounds. Windows Vista or newer required.

Notable changes from the 2.x series:
* Faster volume control
* 32bit integer mode if 32bit floating-point is not supported by the device
* Operates in two different modes, regular and event-driven - the latter seems to be more compatible with USB devices, but not supported by some other devices.
* Separate process sandbox for improved stability.

New in beta 6:
* Made internal buffer sizes tweakable through Advanced Preferences for hopefully better compatibility.
* Increased internal buffer size for event mode for hopefully better glitch resilience on most systems.
* Changed output mode naming (now: "WASAPI (push)" and "WASAPI (event)").

How to install:
Double-click the .fb2k-component file.
If the above does not load the component into foobar2000, read here.

Preemptive replies:
"I've installed the component using means other than mentioned above and it doesn't work" => no we don't want to hear about it.
"I can't install .fb2k-component because I'm running an old foobar2000 version" => nope we don't want to hear about it either.
"The component doesn't work, I run Windows XP" => WASAPI requires Windows Vista or newer.

Download:
Version 3.0 beta 6

Enjoy.
  • Last Edit: 02 September, 2012, 05:25:33 AM by Peter

  • Emre
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #1
gave me error on my setup

Code: [Select]
Unrecoverable playback error: Unkonwn error (80070057)

Win7 64bit foobar2000 1.1.12 beta 5
Auzentech X-fi Forte

  • WarZard-X
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #2
Thank you! Works perfect with Win7 64bit & foobar2000 1.1.11.

  • Sandrine
  • [*][*][*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #3
Added bonus: Now I can bitstream DTS files when using SPDIFER!

  • jaro1
  • [*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #4
Thanks Peter for upgrading the component, i've only one stupid comment as actually there isn't a possibility for me to try it, it wasn't directly mentioned in the changelog and there isn't additional options for the component as it wasn't before also. Does it now use WaveRT if supported by the driver, so it can use low latency pull mode? For your answer, thanks in advance.

  • SoNic67
  • [*][*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #5
Thanks Peter!
It works good on Win7 x64 and E-MU 1820m (I was usually using ASIO). Latest Foobar beta: 1.1.12 Beta 6.
Will it update via normal Foobar way or I need to follow this tread?
  • Last Edit: 13 May, 2012, 08:04:37 PM by SoNic67

  • kode54
  • [*][*][*][*][*]
  • Administrator
WASAPI plug-in version 3.0 beta [closed]
Reply #6
You will need to download it from this topic until a stable release is uploaded to the components repository.

  • Trondis
  • [*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #7
I have been trying to play back dts files through S/PDIF, to have it decoded for surround by my receiver. But I have problems. In theory this should work with this beta of WASAPI plus SPDIFER, shouldn't it?

I have two sound cards: an integrated Realtek card, plus EMU0404. My receiver is connected to the optical out of the Realtek card and the analogue out of the EMU card.

If I set the output to my Realtek card, I get an error message: device is in use. But now to the strange part: If I use the EMU card, I do get perfect 5.1 surround from dts files now. How could that happen?
However, only dts and ac3 files will play back from the EMU card. For all other files I have to switch to Realtek again.

Since I don't use the dts decoder, I can't tag the files, and they won't add to the library. Is there a solution for this?




  • Peter
  • [*][*][*][*][*]
  • Administrator
WASAPI plug-in version 3.0 beta [closed]
Reply #8
gave me error on my setup

Code: [Select]
Unrecoverable playback error: Unkonwn error (80070057)

Win7 64bit foobar2000 1.1.12 beta 5
Auzentech X-fi Forte

Anybody else getting this? Seems to be isolated to Auzentech X-Fi cards, probably a driver bug, there's no E_INVALIDARG (80070057) defined for such scenario in the documentation.

Thanks Peter for upgrading the component, i've only one stupid comment as actually there isn't a possibility for me to try it, it wasn't directly mentioned in the changelog and there isn't additional options for the component as it wasn't before also. Does it now use WaveRT if supported by the driver, so it can use low latency pull mode? For your answer, thanks in advance.

The new WASAPI plug-in is entirely based on "event driven mode", or "pull mode" as you name it.

  • Helios61
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #9
Anybody else getting this?

Yes me!

Code: [Select]
Unrecoverable playback error: Unkonwn error (80070057)
Win7 64bit foobar2000 1.1.12 beta 6
AMD Radeon HD 6670


Thanks for development of the WASAPI stuff! Best regards,
H

  • Alex B
  • [*][*][*][*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #10
Thanks. It works for me just fine. Though also the old version worked without problems.

I tested the new component quickly on three different HW setups: Windows 7 32-bit & Terratec DMX 6Fire 24/96 PCI, Windows 7 64-bit & onboard Realtek HD Audio, and out of curiosity Windows 7 64-bit & an old USB connected Philips boombox that precedes Vista (this uses a default Windows 7 device driver).

  • WarZard-X
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #11
Thanks. It works for me just fine. Though also the old version worked without problems.

I tested the new component quickly on three different HW setups: Windows 7 32-bit & Terratec DMX 6Fire 24/96 PCI, Windows 7 64-bit & onboard Realtek HD Audio, and out of curiosity Windows 7 64-bit & an old USB connected Philips boombox that precedes Vista (this uses a default Windows 7 device driver).

Found an issue.
When browsing the Internet (IE9) while listening to Music with Foobar 1.1.11 & Wasapi Plugin 3.0 Beta, the Music sometimes skips (a few milliseconds noise is heard). This never happened with Wasapi 2.1 Plugin.
I can't reproduce it, it happens occasionally. I'm not sure, but I believe it only happens when a site has heavy loading or Flash Ads are playing.

  • pyr0rrzzz
  • [*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #12
Upgraded, seems to work. (Win Vista 32bit, fb 1.1.11)

  • Peter
  • [*][*][*][*][*]
  • Administrator
WASAPI plug-in version 3.0 beta [closed]
Reply #13
Found an issue.
When browsing the Internet (IE9) while listening to Music with Foobar 1.1.11 & Wasapi Plugin 3.0 Beta, the Music sometimes skips (a few milliseconds noise is heard). This never happened with Wasapi 2.1 Plugin.
I can't reproduce it, it happens occasionally. I'm not sure, but I believe it only happens when a site has heavy loading or Flash Ads are playing.

Thanks for the report, I was kind of expecting this issue to show up.
Event mode in fact provides worse protection against CPU usage spikes than push mode (as seen in earlier versions of this plug-in) because we queue less data with the driver at a time and must wake up and send more data at regular intervals. However, event mode seems necessary to peacefully cooperate with certain devices, USB ones in particular.
Manually overriding priorities of fb2k & WASAPI host exe processes in task manager might help you. I'll look into other means to improve resistance to system resource usage spikes.

  • pyr0rrzzz
  • [*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #14
Actually, now I noticed that there are lots of artifacts in the form of "crackling", it sounds like an old broken speaker.

  • Erich_2
  • [*][*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #15
Actually, now I noticed that there are lots of artifacts in the form of "crackling", it sounds like an old broken speaker.

Here too. Terrible crackling.
Win7 32Bit, Foobar2000 1.1.11, M-Audio Delta Audiophile 2496 (driver V. 6.0.8)

  • Moofasa~
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #16
I assume this plug-in will only support exclusive mode?  I was wondering if there could be any benefits of using wasapi (non-exclusive) over directsound (lower latency maybe?).

  • Mr.Grey
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #17
I assume this plug-in will only support exclusive mode?

working together a foobar2000 (exclusive mode) & other programs (non-exclusive)
with the previous version of plugin this was not possible

LynxTWO card

  • Last Edit: 18 May, 2012, 03:25:01 AM by Mr.Grey

  • Jackal29a
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #18
Working fine here (i3 2100, W7 x86), no crackling whatsoever but...

Does this plugin check available sampling rates against the driver reported DS capabilities? I'm asking because like with V 2.1 it doesn't let me play 88.2 or 176.4KHz with my Xonar ST whereas J River plays both sample rates fine on the same configuration using WASAPI.
Also I have another issue with my Musiland 02 Monitor 02US, J River allows 32bit on all sample rates in WASAPI mode but if I try to use 32bit with V 2.1 or 3.0 beta Foobar freezes having to set it to 24bit max in order to play, not that it is a problem but I was wondering why if hardware supports it why the plugin doesn't.

Would it be possible to add a configuration section under "Advanced" where we could tune the plugin to our system?

Cheers

  • Moofasa~
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #19
I assume this plug-in will only support exclusive mode?

working together a foobar2000 (exclusive mode) & other programs (non-exclusive)
with the previous version of plugin this was not possible


When I try to use non-exclusive mode I get the error "Unrecoverable playback error: Unsupported stream format: 44100 Hz / 24-bit / 4 channels" (I mirror stereo to the back channels, but the error occurs regardless of sample rate/bit-depth/number of channels).  Works perfectly fine in exclusive mode (which is why I asked if this plug-in was ever intended to work in non-exclusive mode).

  • Case
  • [*][*][*][*][*]
  • Developer (Donating)
WASAPI plug-in version 3.0 beta [closed]
Reply #20
I assume this plug-in will only support exclusive mode?  I was wondering if there could be any benefits of using wasapi (non-exclusive) over directsound (lower latency maybe?).


The component is for exclusive mode only. There is no benefit to develop shared mode component, the output would not be any more direct than with directsound. And latency is irrelevant in an audio player.

  • Case
  • [*][*][*][*][*]
  • Developer (Donating)
WASAPI plug-in version 3.0 beta [closed]
Reply #21
I'm asking because like with V 2.1 it doesn't let me play 88.2 or 176.4KHz with my Xonar ST whereas J River plays both sample rates fine on the same configuration using WASAPI.
Also I have another issue with my Musiland 02 Monitor 02US, J River allows 32bit on all sample rates in WASAPI mode but if I try to use 32bit with V 2.1 or 3.0 beta Foobar freezes having to set it to 24bit max in order to play, not that it is a problem but I was wondering why if hardware supports it why the plugin doesn't.


It looks like J River does some signal processing (resampling) in its outputs. Your Xonar does not support the sample rates you mentioned (specs). And your Musiland does not support 32-bit output, 24-bits is max (specs).

  • Case
  • [*][*][*][*][*]
  • Developer (Donating)
WASAPI plug-in version 3.0 beta [closed]
Reply #22
Is it possible that I hear a difference in sound between 2.1 & 3.0 beta?


Version 2.1 uses push mode and it is problematic to at least USB devices. If the buffer is too large the output will have glitching. There shouldn't be any other difference. There may be differences in response speed to volume changing and some glitching on seek/pause caused by driver issues, but normal playback is identical.

  • jaro1
  • [*][*]
WASAPI plug-in version 3.0 beta [closed]
Reply #23
Under some hardware configurations low latency pull mode (wavert) won't function properly at all. It has to be supported by hardware and its software driver (WV/7 logo), only in this case there shouldn't be any crackling or skips in sound during playback and this new component will represent an advantage over the old one. For all other configs, push mode (wasapi component 2.1) is the way to go. 
This would be good to realize before reporting some unlegitimate problems.
(http://msdn.microsoft.com/en-us/windows/hardware/gg463068.aspx, the part about WaveRT Event-Driven Mode Support)
  • Last Edit: 18 May, 2012, 12:03:55 PM by jaro1

  • Jackal29a
  • [*]
WASAPI plug-in version 3.0 beta [closed]
Reply #24
It looks like J River does some signal processing (resampling) in its outputs. Your Xonar does not support the sample rates you mentioned (specs). And your Musiland does not support 32-bit output, 24-bits is max (specs).


Forget the specs of both cards Case, they were written according to the original drivers and have not been updated to show current capabilities. The Xonar ST has been accepting those sampling rates for over 2 years, same for my other D2X Xonar. The same happens with the Musiland specs, the USB receiver chip will accept 32bit from driver V. 2.2.xxxx onwards though the DAC IC is a 24bit TI PCM1793 so the last 8 bits will be truncated at some point.