On 17.04.2017 19:40, Tanu Kaskinen wrote: > As you're planning to create yet another cross-platform audio > abstraction API, No, no, I dont wanna create yet another one. I'm just trying to find out, whether the exist PA API could become one (as it's AFAIK already crossplatform), even for cases where no audio server is running at all. > it seems crucial to do some in-depth research about why none of the > existing APIs haven't become "the standard". Maybe it's > impossible to create an abstraction that works well on all platforms? That would imply, that it wouldn't be possible to make PA itself cross platform (which, according to the website, it already is). > Maybe many applications just don't want an extra layer that they don't > have control over? That would be more the 'not invented here'-syndrome. Eg. on FF that's my impression - they already support PA as a backend (along w/ others) and now dropping ALSA - that implies, PA API is sufficient for them. > Or maybe the existing solutions are just lacking the > manpower to become really good (AFAIK, portaudio is still lacking a > pulseaudio backend)? Probably. But that would even more call for building that *API* out of an existing, working crossplatform solution. All it now takes is separating out the daemon specific stuff from the generic, move the API (IOW: headers) into an own package (similar to xorg-proto-* packages) and let PA sit ontop of that. Then we would also have a working solution for vast majority of usecases. Now, if somebody wants eg. an ALSA-only (completely serverless) backend, he already has a good starting place and cut out all the stuff he doesn't need. *MAYBE*, with a bit more in-depth analysis, we could even find a way for using the same API for PA's backends themselves. But that's a whole different exercise. (not a at all on my scope right now). --mtx