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: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! ! (Read 3786 times) previous topic - next topic - Topic derived from Re: 1.6.7 beta 8 => E...
0 Members and 1 Guest are viewing this topic.

Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

^ My "Intel SST Audio Device (WDM)" didn't sound in "event" mode.  BeepExclusive.exe is also silent.  Therefore, most likely this device does not really support the "event" mode.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #1
Event mode basically lets the sound output signal Windows event objects, which wakes the audio output thread in time to feed more audio. Push mode, on the other hand, polls the device for buffer emptiness regularly and submits more audio whenever the device indicates it has room for it.

Presumably event mode can be driven by hardware interrupts from the device, while push mode can work if that doesn't or has too much latency between needing audio and actually sending the interrupt to wake the app.

Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #2
I only saw the post above, not the original.

"Event" comes from the driver signalling it needs more data.  In the old days, when the before-Windows program.exe was the 'driver', this was done with DMA interrupts (ye very olde days).  Two such interrupts fired (could be more): one in the middle of the buffer space and one at the end.  Today, it's just the driver saying it wants more data (sure, very likely based on the same DMA IRQ interrupt but doesn't have to be; USB for instance).  The driver is operating way down in the realm of the kernel.

The other method fills the buffer based on a timer expiring, which stays in the user's realm. Timers are user space for a long time now in Windows.  That's at least one less context switch.  The timer-based method does check to see how much data it can feed this time, but polling that is not.

(The timer and the event use the exact same wait-for-object so there is no difference even in that.)

One could skip using a timer and only "poll" but that is not a smart way of doing this.  I don't see why anyone would do that, even with sprinkled in sleeps (arcane, but then most of this is).  The sample rate is constant.  Use a timer.  That's how I do it.  And no, it doesn't matter, and no, it doesn't sound better or worse either way.
BANNED

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #3
^ My "Intel SST Audio Device (WDM)" didn't sound in "event" mode.  BeepExclusive.exe is also silent.  Therefore, most likely this device does not really support the "event" mode.
Please try:
https://www.foobar2000.org/temp/BeepExclusive-50ms.exe
Microsoft Windows: We can't script here, this is bat country.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #4
^ My "Intel SST Audio Device (WDM)" didn't sound in "event" mode.  BeepExclusive.exe is also silent.  Therefore, most likely this device does not really support the "event" mode.
Please try:
https://www.foobar2000.org/temp/BeepExclusive-50ms.exe
Similarly there is no sound.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #5
Do any larger buffer values work, such as 100ms or 200ms? You can set them in latest foobar2000 beta under Preferences / Advanced / Playback / Exclusive mode hardware buffer.
Microsoft Windows: We can't script here, this is bat country.

Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #6
I only saw the post above, not the original.

"Event" comes from the driver signalling it needs more data.  In the old days, when the before-Windows program.exe was the 'driver', this was done with DMA interrupts (ye very olde days).  Two such interrupts fired (could be more): one in the middle of the buffer space and one at the end.  Today, it's just the driver saying it wants more data (sure, very likely based on the same DMA IRQ interrupt but doesn't have to be; USB for instance).  The driver is operating way down in the realm of the kernel.

The other method fills the buffer based on a timer expiring, which stays in the user's realm. Timers are user space for a long time now in Windows.  That's at least one less context switch.  The timer-based method does check to see how much data it can feed this time, but polling that is not.

(The timer and the event use the exact same wait-for-object so there is no difference even in that.)

One could skip using a timer and only "poll" but that is not a smart way of doing this.  I don't see why anyone would do that, even with sprinkled in sleeps (arcane, but then most of this is).  The sample rate is constant.  Use a timer.  That's how I do it.  And no, it doesn't matter, and no, it doesn't sound better or worse either way.
I also thought timer+polling instead of event waiting was the less error prone way of doing things - especially in an application that really couldn't care less about super-low latency.
But all my implementations of such had compatibility problems - some devices seem to fail in mid-playback with "buffer too large" HRESULT, even with 50ms.
That's why I switched to using event and small buffer since beta 7, trying to closely mimic behaviors of sample code from MSDN.
I don't exactly use the smallest possible buffer - I use the default device period returned by IAudioClient::GetDevicePeriod(), not the minimum value.
Microsoft Windows: We can't script here, this is bat country.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #7
Do any larger buffer values work, such as 100ms or 200ms? You can set them in latest foobar2000 beta under Preferences / Advanced / Playback / Exclusive mode hardware buffer.
At the specified values of the buffer and above, there is no sound either.
Likewise, there is no sound in the "Use event" mode for fb2k beta 6.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #8
At the specified values of the buffer and above, there is no sound either.
Likewise, there is no sound in the "Use event" mode for fb2k beta 6.
Thanks.
What exact device (laptop onboard? what laptop model?) and what operating system is it?
Are there any driver updates for it?
Microsoft Windows: We can't script here, this is bat country.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #9
Thanks.
What exact device (laptop onboard? what laptop model?) and what operating system is it?
Are there any driver updates for it?
Yes, it's a laptop.
OS: Windows 10 21H1
Integrated sound device: "Intel SST Audio Device (WDM)"
Sound driver version used: 604.10135.2664.11324
I have not seen a newer version.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #10
Try deleting the audio device and check the box to delete the drivers. Reboot and try again.  Has this device worked in the exclusive mode with the component version of WASAPI or any other audio program?

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #11
Try deleting the audio device and check the box to delete the drivers. Reboot and try again. 
eagleray,
I also think the problem might be with the sound driver. I have already reinstalled the driver in this way, but it does not give any changes.
Quote from: eagleray
Has this device worked in the exclusive mode with the component version of WASAPI or any other audio program?
Yes, for the version fb2k with WASAPI output support 3.4 component there is sound in "Push" mode, but for the "Event" mode there is no sound. But the Windows volume slider affects the sound level change (for "Push" mode).
For my other USB audio device in WASAPI mode, the Windows volume slider does not change the sound level - only on and off.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #12
Okay... beta 15 attempts to fix compatibility with Intel SST and whatever else didn't work with "event" mode.

If something isn't working well, please compare vs beta 13.

Please test FOSTEX - as far as I know it should work, but I may be wrong as I don't have one.
Microsoft Windows: We can't script here, this is bat country.

Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #13
Hi. Thanks Peter.

exclusive-mode WASAPI output?
FOSTEX HP-A4, FOSTEX HP-A4BL (192/32)

Playback is comfortable (50ms default hardware buffer).
No problem with Windows 11.
SHURE SRH1840, SENNHEISER HD660S2, SENNHEISER HD 490 PRO, DT 1990 PRO, HiFiMAN Edition XS, Bowers & Wilkins P7, FiiO FT5, 水月雨 (MOONDROP) 空鳴 - VOID, Nakamichi Elite FIVE ANC, Bose QuietComfort 45 (made a Upgrade/Balanced Cable by myself)

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #14
Good, I dropped the FOSTEX hack and made 50ms the default for everyone, I really hope I got it right this time.
Microsoft Windows: We can't script here, this is bat country.

Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #15
Beta playing music here. Topping DX3 pro, XMOS 208, May be more resistant to latency events (TV goes to sleep) than betas 13 and 14. I'm surprised because buffers larger than 20 never worked on the component WASAPI. Leaving the buffer size user adjustable is the safe thing to do.

Re: Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #16
Good, I dropped the FOSTEX hack and made 50ms the default for everyone, I really hope I got it right this time.
From the beta change log: Attempted WASAPI exclusive compatibility fixes (timed polling instead of event, 50ms default hardware buffer).

Is this push or something else. Honestly, if it works, I'm happy.

 

Re: 1.6.7 beta 8 => Exclusive=> Unrecoverable playback error: Unsupported format ! !

Reply #17
beta 16 works well for me.
Peter, I join all the good words addressed to You.
Thanks a lot for foobar2000!
I have been using it since 2017, always with pleasure.