Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bring back PortAudio support on Windows #4770

Merged
merged 1 commit into from Feb 17, 2019

Conversation

Projects
None yet
5 participants
@DomClark
Copy link
Member

DomClark commented Jan 14, 2019

Fixes #4465.

Note that this does not fix the PortAudio crashes, but prevents them occurring at startup by not initialising PortAudio until it is chosen in the audio interface menu.

Bring back PortAudio support on Windows
Population of the PortAudio setup widget has been delayed until it is shown, as it was causing crashes on some systems.
@zonkmachine

This comment has been minimized.

Copy link
Member

zonkmachine commented Jan 18, 2019

Since the issue fixed is on Windows, if this needs testing maybe we should provide binaries?

@PhysSong

This comment has been minimized.

Copy link
Member

PhysSong commented Jan 19, 2019

maybe we should provide binaries?

I will.

@zonkmachine

This comment has been minimized.

Copy link
Member

zonkmachine commented Jan 20, 2019

Did a quick test on Linux, switching between Alsa, SDL and PortAudio, and I didn't see any differences in the behavior.

@tresf

This comment has been minimized.

Copy link
Member

tresf commented Jan 29, 2019

PortAudio + Windows 10 x64 Testing. Hardware is Dell XPS 9333 13" Developer Edition. Sound card: Onboard Realtek High Definition Audio

  • Windows WASAPI + Speakers / Headphones: Playback good 6-12% CPU
  • ⚠️MME + Microsoft Sound Mapper: Playback choppy and unusable
  • ⚠️Windows DirectSound + Speakers / Headphones: Playback choppy and unusable
  • ⛔️Windows WDM-KS + PC Speaker: No usable configuration for playback

Baseline comparison against SDL:

  • SDL: Playback good 7-20%

Side-note... the device selection is pretty unintuitive e.g. selecting recording devices for playback, etc. If PortAudio is re-enabled a new bug report should be opened for better playback device selection.

@DomClark

This comment has been minimized.

Copy link
Member Author

DomClark commented Jan 30, 2019

I get the same results with choppy playback and inappropriate device options. Note however that this is the same behaviour as in 1.1.3, and this PR doesn't attempt to change that - the idea was just to bring back the existing PortAudio backend for Windows again. It definitely needs some work and a new bug report is the way to go.

@T0NIT0RMX

This comment has been minimized.

Copy link
Contributor

T0NIT0RMX commented Jan 30, 2019

I tried and on my Windows 64 bits, MSI GP60 2QE Leopard, Realtek Audio Card, there is no way to use any settings of portaudio.

If I use windows WASAPI, when I open again lmms the settings window pop up like there is a problem, and if I click OK and get to lmms window, there is no sound.

I tried in Audacity and WASAPI seems to work properly, so I don't really understand what's going wrong.

@PhysSong

This comment has been minimized.

Copy link
Member

PhysSong commented Jan 30, 2019

@T0NIT0RMX What if you replace the PortAudio dll with Audacity's one?

@T0NIT0RMX

This comment has been minimized.

Copy link
Contributor

T0NIT0RMX commented Jan 30, 2019

@PhysSong Audacity doesn't seems to have a portaudio dll, or I can't find it

@PhysSong

This comment has been minimized.

Copy link
Member

PhysSong commented Feb 7, 2019

@T0NIT0RMX

This comment has been minimized.

Copy link
Contributor

T0NIT0RMX commented Feb 8, 2019

@PhysSong Same results.
But using this one I only have "MME" and "Windows WDM-KS" backend.
No matter what I chose, when LMMS opens again the config window pop up and if I press OK there is no sound in LMMS

@zonkmachine

This comment has been minimized.

Copy link
Member

zonkmachine commented Feb 8, 2019

@T0NIT0RMX How does older versions of lmms work? Like 1.1.3 or 1.2.0 before we removed portaudio?

@zonkmachine

This comment has been minimized.

Copy link
Member

zonkmachine commented Feb 16, 2019

Since we're not getting much test data back I think we should merge this PR and release rc8.

@tresf

This comment has been minimized.

Copy link
Member

tresf commented Feb 16, 2019

Agreed.

@zonkmachine zonkmachine merged commit 505c642 into LMMS:stable-1.2 Feb 17, 2019

2 checks passed

ci/circleci Your tests passed on CircleCI!
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@zonkmachine

This comment has been minimized.

Copy link
Member

zonkmachine commented Feb 17, 2019

OK, merging!

@T0NIT0RMX I'm still curious about how portaudio worked under your machine with older versions of lmms. See my comment above.

@T0NIT0RMX

This comment has been minimized.

Copy link
Contributor

T0NIT0RMX commented Feb 18, 2019

@zonkmachine sorry for the delay I've been busy ! I'll let you know

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.