View Single Post
Old 13 October 2016, 19:54   #30
mark_k
Registered User
 
Join Date: Aug 2004
Location:
Posts: 2,480
Testing now with winuae.exe dated 2016-10-13 18:25.

With the Windows sound default set to 48kHz, starting WinUAE with WASAPI EX 88.2kHz Min buffer resulted in:
WASAPI: IsOffloadCapable() returned 0 00000000
WASAPI: AUDCLNT_E_BUFFER_SIZE_NOT_ALIGNED: 0 -> 256
WASAPI: '{0.0.0.00000000}.{b32283a3-ec24-40ed-a52a-7128ab296ef6}'
WASAPI: Exclusive Pull CH=2 FREQ=88200 BUF=256 (256)


However after setting the Windows default to 88.2kHz, running WinUAE again (still WASAPI EX 88.2kHz), the log reported 224 not 256:
WASAPI: IsOffloadCapable() returned 0 00000000
WASAPI: '{0.0.0.00000000}.{b32283a3-ec24-40ed-a52a-7128ab296ef6}'
WASAPI: Exclusive Pull CH=2 FREQ=88200 BUF=224 (224)


Maybe a Windows/driver bug? The default for shared audio shouldn't affect exclusive mode surely.


I had WinUAE playing WASAPI EX 88.2kHz audio. While audio played I changed default sound format in Sound control panel from 48kHz to 88.2kHz. WinUAE output this to the log then hung:
WASAPI: GetBuffer() 88890026

0x88890026 is AUDCLNT_E_RESOURCES_INVALIDATED (no mention of that on MSDN... ).


WASAPI non-exclusive audio 88.2kHz (with Sound control panel default set to 88kHz). Buffer Min results in this:
WASAPI: GetCurrentSharedModeEnginePeriod() CH=2 FREQ=88200 BITS=32 CurrentPeriodInFrames=896
WASAPI: GetSharedModeEnginePeriod() DPIF=896 FPIF=32 MinPIF=224 MaxPIF=896
WASAPI: IsOffloadCapable() returned 0 00000000
WASAPI: InitializeSharedAudioStream() Period=224. HRESULT=00000000
WASAPI: GetCurrentSharedModeEnginePeriod() CH=2 FREQ=88200 BITS=32 CurrentPeriodInFrames=224
WASAPI: '{0.0.0.00000000}.{b32283a3-ec24-40ed-a52a-7128ab296ef6}'
WASAPI: Shared Pull CH=2 FREQ=88200 BUF=246 (492)


So Windows reported minimum period 224, but you use 492 (the same used when buffer size is set to 1).
mark_k is offline  
 
Page generated in 0.06383 seconds with 9 queries