Lag != Latency. Lag is the time between two things that should be synchronised, but are not. Latency is the time taken between something going in to a black box, and it coming out.
Lag is one possible effect of latency - but one that can be managed or negated in some cases by accounting for the known latency.
So, an audio framework telling a video player "Hold on a sec, I'm buffering" is OK?
If the video player knows how to deal with this, then yes.:) Being informed of this state is better than not being informed of this state.
There are cases (network streaming, primarily) where a certain amount of latency is unavoidable. In such cases, performance is best if the applications can support this scenario, too. Some applications can tolerate this scenario very gracefully (again, video playing being a good example) if they are written to handle it. Others (like games, as another poster mentioned) cannot.
But yeah, you want a uniform API even if not all cards can do that (for some unfathomable reason that probably involves it costing more than $0.05 to implement). Why we still don't appear to have such a stable interface today is exactly the question I'm asking. PulseAudio may or may not be to blame, but whether or not this is the case is completely besides the point.
The point should be: why hasn't this problem been adressed in Linux, in 2009, whereas all other major OS's solved this problem at least 10 years ago?
Don't be silly... People have addressed the problem of coming up with a stable, uniform API for sound... In fact, multiple, independent software teams have addressed the problem and come up with various competing solutions... But that's become a problem in itself, of course.:)
Why do I need sound from multiple sources simultaneously? Never saw the need, myself.
One of the most important use cases is when something just happens to have already established its own access to audio output, and you may not be aware of this (for instance, you've got a browser up and flash is running, or the desktop is running a sound server which has/dev/dsp open) - and you want to play a movie or a game or something, and have it not just spew out a bunch of errors and then fail to play audio...
No, "whoosh" is when someone doesn't get a joke. "X is fail" isn't a joke. It's slang - and, IMO, a really stupid bit of slang. I know people aren't going to stop using it any time soon, but I still like to promote my own perspective on the subject - that saying "that is fail" is stupid.
Next year will be the year of (working) audio on Linux...
My audio has worked for years...
Now, if I were regularly using USB headsets, webcam mics, bluetooth headsets, HDMI audio out, etc., then the configuration issues would be more of a problem. As it is, though, I run an ALSA program and sound comes out.
"Thats the underlying problem here - the creator may indeed be correct when he says that 'such complaints and criticisms about PulseAudio in some Internet forums are not really shared by the vast majority of technical people', but those people are outweighed by the non-technical masses suffering a bad experience."
The problem is, Linux audio is broken and it HAS to be fixed. PulseAudio just exposes the problems in it. And you can't fix these bugs without user input.
Really, I read that bit and had to wonder if maybe the technically-minded folks were just the ones who were more resistant to using Pulse in the first place...
That said - I haven't given Pulse a real fair shake myself. I tried it once - on top of ALSA, BTW - and I felt like it was bringing me no real benefit, but it was also introducing problems, so I got rid of it. I just wanted to get everything up and running smoothly. In particular I wanted a good solution to the problem of "legacy" use of/dev/dsp on my system. (I believe Alsa doesn't support multiple access to/dev/dsp at present, so a sound server seemed like a sensible solution...) I though Pulse would be a good way to do that, but it turned out to be simpler for me to just go with ALSA. That's worked pretty well - the worst I've come across is occasional failures of Flash's audio support.
But, as I said, I haven't given it a fair shake. I'd like to understand the whole situation better, and see what Pulse can do for me. So one of these days I intend to try it again.
As long as BS like this is accepted as 'normal', it will never be "the year of the linux desktop".
First, a thousand times over I don't care if it is or is not the "year of the" whatever.
But the point you seem to have missed is this: it is the distribution maintainers who turn the collection of Linux-related software into a coherent system. The point the grandparent post was making was that they weren't getting this right, because default installation of Pulse on these distros was lacking the proper configuration. That isn't "normal", that's a flaw in the distro.
Let's break this down. First you have platform independence layers - things like ClanLib, SDL, libao, PortAudio, Allegro, and Open AL. These would be present on any platform. That's the point of them. The diagram seems to go out of its way to mix these in with lower-level technologies, as if to make it less obvious that they're just included to pad out the diagram.
Then there's the trio of obsolete network audio servers: NAS, ESD, and aRts... I suppose if I were to fire up a quick game of xpilot then I might want NAS, but otherwise one can usually assume these days that these three servers aren't installed and don't need to be.
There's FFADO - which is relevant if you're using a firewire audio device... How many people do this? I guess it could be popular among musicians and sound techs - have audio hardware outside the computer's case, accessed via a bus that isn't USB... But this is a driver layer, not an API layer - and these days it seems FFADO provides an ALSA interface, so I think the complaint here is obsolete.
That leaves three modern sound servers (Jack, Pulse, and GStreamer) and two low-level APIs (Alsa and OSS). This is still a bit of an unfortunate mess IMO but nowhere near the rat's nest implied by the diagram.
Sweet! 39 days to bring back a carnivorous alien life form to earth, instead of 6 months!
But, on the other hand, we'll be able to bring back the one human survivor of the last Mars mission much more quickly! All will be well as long as he doesn't wish us into the cornfield.
I find the idea that a creator being would be BOTH interested in the human race, AND create processes that take 13 billion years from the beginning of the universe to get us (AND require wiping out the prior dominant species so mammals could become the dominant species) harder to believe than Last Tuesdayism.
Why's that?
I mean, as a kid I always figured God was fundamentally outside of our time and space. From that perspective, there would be no particular motivation to skip right ahead to the world with humans in it as opposed to waiting around 13 billion years for them to occur on their own... Because there's no actual "waiting" involved.
The difference, if you assume the universe was created for our benefit, is that we get a whole universe to explore. We have past history to explore via fossils and relics, we have vast expanses of space to explore in the future. It's fairly meaningless to think about whether a god would actually set history in motion and allow the rest of the world to come into being, rather than fabricating a world as if it had just developed on its own - there's no practical difference.
Anyway, without the dinosaurs we'd have no dinosaur museum displays, no Jurassic Park, no XKCD raptor jokes, no Barney, and no Grimlock. XD I'm not sure about Gojira... If there had been no dinosaurs then the human experience would be diminished.
It's possible a god exists... but there is no evidence for one.
I'd never claim otherwise. Personally, I don't believe in gods either. My point was simply that this whole conflict between ideology and science is pointless, misguided, and destructive. Fundamentally the two do not contradict one another.
It must take a certain amount of doublethink to be an American and to believe in the usefulness of science.
...
Given all the experimental evidence for evolution, it seems that either Jefferson or Feynman was wrong. It's either that God is not our "Creator", or that the scientific method is not useful in general, but only for some things. I think that most Americans solve the contradiction by putting either creationism or science in such a sandbox. A majority seem to put science in the sandbox and let creationism be the real truth.
Actually, I think this fallacy is the core elements of the problem in the U.S. People believe faith and science cannot coexist, so they reject one or the other.
In fact there is nothing about a belief in a creator which negates the idea of evolution. If a being created the entire universe, then this being also created the rules which govern it. Creating a world in which evolution will take place and certain kinds of life will emerge is simply one means of creating that life.
It is the fallacy that faith and science are incompatible which has led to this conflict. The faithful (some of them, I mean) mistakenly feel science undermines their belief, so they violently reject it... Or, more recently, seek to infiltrate and undermine it by pushing for acceptance of their philosophy as "science" within education - a campaign of propaganda... Fans of science (again, some of them) thus see faith as harmful and reject it in turn... But examination of the mechanism by which life develops does not negate the philosophical question of why this world exists - and belief in a creator does not invalidate the study of the means by which creation occurred.
My point with that sentence was that a legal document, once written, may contain flaws. These flaws, if they exist, are there whether or not we choose to acknowledge them. The whole point of the programmer analogy there was just to illustrate the point that flaws are possible, and that it's not productive to ignore them... Sooner or later, the flaw will be exploited.
And if it does not contain flaws, flaws will be claimed to exist anyway.
When there is a conflict, intended purpose and understanding of the document is supposed to trump language, and the original purpose of legal language is to make it easier to determine the intent and support a reasonable interpretation of such intent by all parties involved, not to plug all loopholes that may be imagined by creative interpretation.
Well, except that the document in question (the GPL) is a license. Recipients of the license can't be expected to follow the intent of the license if it somehow contradicts the document's wording...
"To go back to the programming language analogy: it's as if lawyers are programmers who code in an ambiguous language, which runs on hardware which tries to find ways to subvert the intent of the program without contradicting the literal interpretation of its instructions - or find excuses to reject those instructions altogether."
So, it's pretty much exactly like writing Javascript and CSS?
Well, almost. Internet Exploder will subvert the intent of the program even if that means contradicting the literal interpretation of the instructions.:)
Lag != Latency. Lag is the time between two things that should be synchronised, but are not. Latency is the time taken between something going in to a black box, and it coming out.
Lag is one possible effect of latency - but one that can be managed or negated in some cases by accounting for the known latency.
So, an audio framework telling a video player "Hold on a sec, I'm buffering" is OK?
If the video player knows how to deal with this, then yes. :) Being informed of this state is better than not being informed of this state.
There are cases (network streaming, primarily) where a certain amount of latency is unavoidable. In such cases, performance is best if the applications can support this scenario, too. Some applications can tolerate this scenario very gracefully (again, video playing being a good example) if they are written to handle it. Others (like games, as another poster mentioned) cannot.
But yeah, you want a uniform API even if not all cards can do that (for some unfathomable reason that probably involves it costing more than $0.05 to implement). Why we still don't appear to have such a stable interface today is exactly the question I'm asking. PulseAudio may or may not be to blame, but whether or not this is the case is completely besides the point.
The point should be: why hasn't this problem been adressed in Linux, in 2009, whereas all other major OS's solved this problem at least 10 years ago?
Don't be silly... People have addressed the problem of coming up with a stable, uniform API for sound... In fact, multiple, independent software teams have addressed the problem and come up with various competing solutions... But that's become a problem in itself, of course. :)
Why do I need sound from multiple sources simultaneously? Never saw the need, myself.
One of the most important use cases is when something just happens to have already established its own access to audio output, and you may not be aware of this (for instance, you've got a browser up and flash is running, or the desktop is running a sound server which has /dev/dsp open) - and you want to play a movie or a game or something, and have it not just spew out a bunch of errors and then fail to play audio...
(Behold! No car analogy included!)
I think you're vastly underrating the merits of the car analogy.
I believe the solution to any *PROFESSIONAL* Linux Audio Production issue is to just go buy a Mac.
"...and then you have two problems." XD
Talk about *woosh*.
No, "whoosh" is when someone doesn't get a joke. "X is fail" isn't a joke. It's slang - and, IMO, a really stupid bit of slang. I know people aren't going to stop using it any time soon, but I still like to promote my own perspective on the subject - that saying "that is fail" is stupid.
Next year will be the year of (working) audio on Linux...
My audio has worked for years...
Now, if I were regularly using USB headsets, webcam mics, bluetooth headsets, HDMI audio out, etc., then the configuration issues would be more of a problem. As it is, though, I run an ALSA program and sound comes out.
"Thats the underlying problem here - the creator may indeed be correct when he says that 'such complaints and criticisms about PulseAudio in some Internet forums are not really shared by the vast majority of technical people', but those people are outweighed by the non-technical masses suffering a bad experience."
The problem is, Linux audio is broken and it HAS to be fixed. PulseAudio just exposes the problems in it. And you can't fix these bugs without user input.
Really, I read that bit and had to wonder if maybe the technically-minded folks were just the ones who were more resistant to using Pulse in the first place...
That said - I haven't given Pulse a real fair shake myself. I tried it once - on top of ALSA, BTW - and I felt like it was bringing me no real benefit, but it was also introducing problems, so I got rid of it. I just wanted to get everything up and running smoothly. In particular I wanted a good solution to the problem of "legacy" use of /dev/dsp on my system. (I believe Alsa doesn't support multiple access to /dev/dsp at present, so a sound server seemed like a sensible solution...) I though Pulse would be a good way to do that, but it turned out to be simpler for me to just go with ALSA. That's worked pretty well - the worst I've come across is occasional failures of Flash's audio support.
But, as I said, I haven't given it a fair shake. I'd like to understand the whole situation better, and see what Pulse can do for me. So one of these days I intend to try it again.
As long as BS like this is accepted as 'normal', it will never be "the year of the linux desktop".
First, a thousand times over I don't care if it is or is not the "year of the" whatever.
But the point you seem to have missed is this: it is the distribution maintainers who turn the collection of Linux-related software into a coherent system. The point the grandparent post was making was that they weren't getting this right, because default installation of Pulse on these distros was lacking the proper configuration. That isn't "normal", that's a flaw in the distro.
Talk about fail.
Please, talk about failure...
You were making a good point until you resorted to profanity, which shot you right down from the sky. Such a shame.
I think you accidentally switched on the grown-up internets today. Sometimes the people use the bad words there. It'll be OK.
Some people don't even think the words are "bad"...
An interesting side note on audio APIs: http://blogs.adobe.com/penguin.swf/linuxaudio.png
Man, not that bullshit again...
Let's break this down.
First you have platform independence layers - things like ClanLib, SDL, libao, PortAudio, Allegro, and Open AL. These would be present on any platform. That's the point of them. The diagram seems to go out of its way to mix these in with lower-level technologies, as if to make it less obvious that they're just included to pad out the diagram.
Then there's the trio of obsolete network audio servers: NAS, ESD, and aRts... I suppose if I were to fire up a quick game of xpilot then I might want NAS, but otherwise one can usually assume these days that these three servers aren't installed and don't need to be.
There's FFADO - which is relevant if you're using a firewire audio device... How many people do this? I guess it could be popular among musicians and sound techs - have audio hardware outside the computer's case, accessed via a bus that isn't USB... But this is a driver layer, not an API layer - and these days it seems FFADO provides an ALSA interface, so I think the complaint here is obsolete.
That leaves three modern sound servers (Jack, Pulse, and GStreamer) and two low-level APIs (Alsa and OSS). This is still a bit of an unfortunate mess IMO but nowhere near the rat's nest implied by the diagram.
Lady Gaga apparently uses Linux.
No no no... It's Lady Mega and Lord Giga... And when they use Masterforce, they transform and combine to form Overlord.
Sweet!
39 days to bring back a carnivorous alien life form to earth, instead of 6 months!
But, on the other hand, we'll be able to bring back the one human survivor of the last Mars mission much more quickly! All will be well as long as he doesn't wish us into the cornfield.
It's only 4 out of 5 because the 5th astronaut had nobody to hook up with (Zero-G threesomes don't work out as the collisions are elastic)
Obligatory XKCD...
I find the idea that a creator being would be BOTH interested in the human race, AND create processes that take 13 billion years from the beginning of the universe to get us (AND require wiping out the prior dominant species so mammals could become the dominant species) harder to believe than Last Tuesdayism.
Why's that?
I mean, as a kid I always figured God was fundamentally outside of our time and space. From that perspective, there would be no particular motivation to skip right ahead to the world with humans in it as opposed to waiting around 13 billion years for them to occur on their own... Because there's no actual "waiting" involved.
The difference, if you assume the universe was created for our benefit, is that we get a whole universe to explore. We have past history to explore via fossils and relics, we have vast expanses of space to explore in the future. It's fairly meaningless to think about whether a god would actually set history in motion and allow the rest of the world to come into being, rather than fabricating a world as if it had just developed on its own - there's no practical difference.
Anyway, without the dinosaurs we'd have no dinosaur museum displays, no Jurassic Park, no XKCD raptor jokes, no Barney, and no Grimlock. XD I'm not sure about Gojira... If there had been no dinosaurs then the human experience would be diminished.
It's possible a god exists... but there is no evidence for one.
I'd never claim otherwise. Personally, I don't believe in gods either. My point was simply that this whole conflict between ideology and science is pointless, misguided, and destructive. Fundamentally the two do not contradict one another.
It must take a certain amount of doublethink to be an American and to believe in the usefulness of science.
Given all the experimental evidence for evolution, it seems that either Jefferson or Feynman was wrong. It's either that God is not our "Creator", or that the scientific method is not useful in general, but only for some things. I think that most Americans solve the contradiction by putting either creationism or science in such a sandbox. A majority seem to put science in the sandbox and let creationism be the real truth.
Actually, I think this fallacy is the core elements of the problem in the U.S. People believe faith and science cannot coexist, so they reject one or the other.
In fact there is nothing about a belief in a creator which negates the idea of evolution. If a being created the entire universe, then this being also created the rules which govern it. Creating a world in which evolution will take place and certain kinds of life will emerge is simply one means of creating that life.
It is the fallacy that faith and science are incompatible which has led to this conflict. The faithful (some of them, I mean) mistakenly feel science undermines their belief, so they violently reject it... Or, more recently, seek to infiltrate and undermine it by pushing for acceptance of their philosophy as "science" within education - a campaign of propaganda... Fans of science (again, some of them) thus see faith as harmful and reject it in turn... But examination of the mechanism by which life develops does not negate the philosophical question of why this world exists - and belief in a creator does not invalidate the study of the means by which creation occurred.
Is it something like an Electric Monk?
In retrospect I think something like "In Yucca Flats, Soviet Tor strangles YOU!" might have been better...
I couldn't resist the temptation to quote Bill Hicks:
I always thought Hudson was a lot more memorable... "That's it, man! Game over, man, game over!"
One of the frustrating things about that movie was that they killed off all the likable characters right away and left us with all the caricatures...
My point with that sentence was that a legal document, once written, may contain flaws. These flaws, if they exist, are there whether or not we choose to acknowledge them. The whole point of the programmer analogy there was just to illustrate the point that flaws are possible, and that it's not productive to ignore them... Sooner or later, the flaw will be exploited.
And if it does not contain flaws, flaws will be claimed to exist anyway.
When there is a conflict, intended purpose and understanding of the document is supposed to trump language, and the original purpose of legal language is to make it easier to determine the intent and support a reasonable interpretation of such intent by all parties involved, not to plug all loopholes that may be imagined by creative interpretation.
Well, except that the document in question (the GPL) is a license. Recipients of the license can't be expected to follow the intent of the license if it somehow contradicts the document's wording...
"To go back to the programming language analogy: it's as if lawyers are programmers who code in an ambiguous language, which runs on hardware which tries to find ways to subvert the intent of the program without contradicting the literal interpretation of its instructions - or find excuses to reject those instructions altogether."
So, it's pretty much exactly like writing Javascript and CSS?
Well, almost. Internet Exploder will subvert the intent of the program even if that means contradicting the literal interpretation of the instructions. :)
Touch a button. Things happen. A scientist becomes a beast.
"We can't use that laptop here, this is bat country!"
Riddle me this... What's the right laptop for bat country?