libretro / libretro/RetroArch

WASAPI Driver Audio Pops, Hitches and Frame Drops in Certain Cores

Open
#15,920 20 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C
Stars
14.1k
Forks
2.2k
Avg merge
7h 35m
Merged PRs (30d)
51

Description

Description

WASAPI causes frame drops, audio pops and hitches in certain cores that don't have an issue with xaudio. Also, if I mess with the WASAPI Shared Buffer Length setting, anything other than Auto or Off will cause content running in RetroArch to make a horrible buzzing noise, slow down to a crawl and become unresponsive. I'm lucky if I can get back into the UI to set it back to one of the safe options before it crashes. Turning on Exclusive mode just mutes the audio entirely. Don't notice any change with Float Format on or off.

BSNES with Yoshi's Island in level 1-1 is an easy one to play and hear it start popping and hitching. Then see it's dropping more frames compared to how smooth it is with xaudio. Mesen with Mega Man 3 is similar, but not as bad. Cores like MelonDS DS and SwanStation don't seem to have those issues though. Maybe it's something about accuracy focused cores that use interpreters?

My other audio settings are defaults, except Resampler Quality set to Highest. Setting it to Normal didn't seem to help anything.

Version/Commit
  • RetroArch: 3bf5b518bbfb36f833b4ce6e252e71d97ebf6a1b
Environment information
  • OS: Windows 11 22H2
  • CPU: 13600k
  • GPU: GTX 4080

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file or test is named in the report. Start by reproducing the issue with BSNES and Yoshi's Island or Mesen and Mega Man 3, comparing WASAPI with xaudio and the listed buffer, exclusive-mode, float-format, and resampler settings. Done means the affected cores no longer produce pops, hitches, buzzing, unresponsiveness, or extra frame drops under WASAPI.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.