reading through the comments on pull request 5256 i saw several developers considering "Dropping OpenAL since Cubeb is cross-platform", and not wanting to post on github i thought i would post my thoughts here. first i don't think we should remove OpenAL because we have a new cross-platform alternative, we should better support cross-platform options and remove ones that aren't instead; so we should replace xaudio and pulseaudio with cubeb since it already calls wasapi and pulseaudio respectively, and that way we could have a consistent default backend. secondly it gives people something to fall back upon and since it is distributed with dolphin we have more control over its consistency. finally it offers developers true cross-platform to develop and debug with, and i know in the PR a lot of developers were saying that "the audio backend doesn't affect emulation", but it does affect what people hear. anyway these are just my opinions on the matter so if anyone whats to correct me or convince me i would love to hear it, cause i am all for reducing configuration complexity, but it is important to remember that dolphin is still an emulator and as such i feel removing OpenAL would hurt it. also if anyone else wants give reasons to keep it or your thoughts on the matter you can do so in this thread.
Thread Rating:
Please do not remove OpenAL
|
OpenAL is annoying to work with. A lot of bugs that don't exist in other backend exist in OpenAL because of weird quirks that nobody wants to go through the effort to work around.
Quote: secondly it gives people something to fall back upon and since it is distributed with dolphin we have more control over its consistency. OpenAL is hardly consistent. Quote:finally it offers developers true cross-platform to develop and debug with So does cubeb. Quote:but it does affect what people hear. No it doesn't. Our audio backends now a days are literally just a sink to send audio to. All the actual work happens in DSP emulation (HLE or LLE). Changing the audio backend doesn't affect anything. Also, the interesting pitch changing bits are in the mixer now anyways. In any case, the plan now after discussion on IRC is to slowly drop backends as we phase in Cubeb. I don't know where OpenAL is on that list. I hope it's at the top. Every argument you gave can absolutely be applied in favor of Cubeb because Cubeb also supports all the platforms we support. 06-21-2017, 08:32 AM
OpenAL isn't consistent between games but it is consistent between OSes and releases of dolphin, and say wasapi or pulseaudio undergo a massive change that breaks cubeb we are out of luck, whereas the OpenAL libraries never change. and cubeb is not truly cross-platform since it only calls wasapi on windows and pulseaudio on linux, so the while the name is the same the code that runs is completely different. and you say that it doesn't affect what people hear, then i would like to point your attention the the may progress report where they gave a graph of the latency of each of the backends, if you don't think people can hear the extra 100ms of latency on OpenAL then you have obviously never used it. it doesn't affect the code that pulled from the game, but different libraries still interpret that code differently. OpenAL isn't the default so if it is as you say and it doesn't affect what people hear then they never would have changed it.
I am curious, i have OpenAL activated as my Sound Backend, so if it gets erased which backend will be selected?
And what about XAudio2? Will also get erased? Was DSound erased for the same reason? 07-08-2017, 05:10 AM
AFAIK in the long term the plan is having only Cubeb since it works fine on all platforms we support...
Avell A70 MOB: Core i7-11800H, GeForce RTX 3060, 16 GB DDR4-3200, Windows 11 (Insider Preview)
ASRock Z97M OC Formula: Pentium G3258, GeForce GT 440, 16 GB DDR3-1600, Windows 10 (22H2) 07-10-2017, 02:41 PM
(07-08-2017, 03:18 AM)EblfIYH Wrote: I am curious, i have OpenAL activated as my Sound Backend, so if it gets erased which backend will be selected? If you have OpenAL configured and you update to a version without OpenAL (latest macOS and Linux builds, for now), Dolphin will helpfully select the "No audio output" backend instead. I should probably fix that... 07-30-2017, 06:02 AM
An interesting comparison http://camlorn.net/posts/december2014/horror-of-audio-output.html, the author says:
"OpenAL Soft is the most free of mysterious bug" and "Should all the other backends fail, you're at least pretty darn likely to get audio out of it, so it makes a nice fallback." 08-05-2017, 12:38 PM
Does Cubeb support Dolby Prologic?
i5 9600K @ 3.7 GHz
16 GB DDR4 1 TB SSD Nvidia RTX 2070 Windows 10 Pro 64-bit 08-06-2017, 12:55 AM
Yes, it does.
Rig 1: Windows 10 Home | AMD A6-1450 @ 600/1000/1400 MHz | AMD Radeon HD Graphics 8250 | 4GB RAM | HP Pavilion TouchSmart 11.
Rig 2: Windows 10 Pro | Intel Core i7-2640M @ 780/2800/3500 MHz | Intel HD 3000 Mobile | 8GB RAM | Dell Latitude 6320.
08-06-2017, 02:20 AM
I've been testing Dolphin with a surround sound setup recently.
In testing Soul Calibur 2 with a 7.1 setup, Windows outputting in 7.1, audio set to DSP LLE interpreter, and switching between OpenAL and cubeb, it seems that the decoder built into Dolphin only works with OpenAL. While using cubeb, the speaker test will only come out in two channels. Disabling Dolphin's Pro Logic II decoder and enabling Pro Logic II decoding on the receiver does produce surround sound while using cubeb. But I'd say that the inbuilt decoder should probably be fixed to support cubeb before OpenAL is removed. While it might be obvious to some, I should note that HLE doesn't work with Pro Logic II either. (It doesn't get decoded into anything proper.) But that's a totally seperate issue. |
« Next Oldest | Next Newest »
|
Users browsing this thread: 1 Guest(s)