Originally posted by Davidovitch
View Post
Announcement
Collapse
No announcement yet.
PulseAudio 10 Coming Soon, Using Memfd Shared Memory By Default
Collapse
X
-
It's amazing to see people spitting out bullshit with such words that almost make it look that they're audio engineers!
Audio latency is no excuse to have A/V desync. Latency depends on audio buffer size, and your system should know exactly how long it takes for an audio buffer chunk to play through the speakers; this information can (should, actually...) be used by applications to queue video frames to synchronize with audio.
So in practice, an app knows (as long as drivers and the rest of the stack are OK and calculations are correct) exacly when your computer is spitting out audio and video frames.
What you can't fully control is the latency between an input action and an output consequence. You can however, in some application (ex: Guitar Hero) offset the input timestamps by the total latency (oftern calibrated by the user because there are many external variables such as display latency) to check if the user pressed a button at the right time.
It is possible that pulse audio feeds wrong latency values to your apps, but these wrong values probably comes from underlying kernel-side ALSA drivers spitting out wrong hardware state such as wrong buffer size or wrong playing cursor position etc. But it isn't impossible (I would say it may actually be likely) that lazy developers spit out frames and audio as if they were independent streams which is likely to lead to either always desync or desync after a couple of minutes.
- Likes 3
Comment
-
I just seriously don't get how the Greater Open Source audio community can even stand PA devs and fanboys. They spent the last decade blaming everything else, from the drivers to the end user apps for PA's flaws. How many new hardware releases and software generations does this retardedness have to go on? Another decade?
Comment
-
Originally posted by wdb974 View Post
Really? Latency and everything are on par with what's advertised on the box/website?
I must've worded myself poorly. I wanted to know if options like LFE crossover frequency and bass redirection exist under Linux. I happen to have a soundcard that sports an 8788 chip as well (I'm assuming that 8188 you mentioned was a mistake) and I just hate have low freqs in my satellites, 'cause they're not made for those. Also, LFE crossover lets me decide how often the subwoofer will be heard. I really dislike hearing the sub whenever someone drops a cigarette butt to the ground in a movie.Last edited by duby229; 19 January 2017, 11:22 AM.
Comment
-
Originally posted by duby229 View PostI just seriously don't get how the Hater Open Source audio community can even stand PA's greatness. They spent the last decade blaming PA for faults in everything else, from the drivers to the end user apps flaws. How many new hardware releases and software generations that work fine with PA does this retardedness have to go on? Another decade?
Comment
-
Originally posted by pal666 View Postyou don't care for latency when listening to mp3. but you care for power usage which depends on wakeup frequency. if you need high latency - use jack, pa coexists with it nicely
- Likes 1
Comment
-
Originally posted by pal666 View Postidiot, gstreamer is a library for using alsa and being used by vlc
- Likes 1
Comment
-
Originally posted by duby229 View PostWell, of course I should have guessed that.... Now it's application developers that cause the problem. It was ALSA drivers..... Now if we could just get every single app developer on linux to rewrite their software to work around PA design flaws. After all rewrites were already forced on ALSA drivers, and PA still doesn't work so the obvious choice is to pass the buck somewhere else. It worked once on the ALSA devs maybe it'll work again on every other dev. How great it is. You can always pass the blame. Eh, why not.
EDIT: The default behaviour absolutely needs to be, don't touch the audio stream -ever-, unless the user specifically configures it to do so. Which is exactly opposite of how PA is designed. PA latency is caused by PA and nothing else.
So if an app wants to provide good audio, it needs to provide good PA support.
And no. PA is not gonna touch your audio stream if you don't tell it to. It's gonna resample it if needed, just like ALSA did, otherwise your audio is gonna play at the wrong speed (demon voice or chipmunk sound), and it's gonna mix multiple streams into one, again just like ALSA did, otherwise you can't hear more than one audio stream at any given time.
And when it comes to resampling, PA is actually better. ALSA is *always* going to resample the stream if it's at a different sample rate than the rate the device was opened with. PA will actually switch the audio device to a different sample rate to fit the stream, so that no resampling is done. You can configure two alternative sample rates in the PA config file, and PA will switch between them to avoid resampling your audio. In my case, I use 44.1khz and 48khz, because I listen to music (44.1) and watch movies (48). With alsa, you need to decide which one to use and have everything else be resampled to fit. With PA, you don't have to limit yourself to one. You can use both. When you listen to music, the sound card is opened at 44.1. When you watch a movie, the sound card is switched to 48.
Just because you either have a piss-poor application, or a piss-poor system configuration doesn't make PA worse than ALSA-only audio.
And your latency or audio/video sync issues have nothing to do with PA. It's because of your piss-poor apps or piss-poor config (or both.)
Furthermore, GStreamer depends on PA or ALSA (you choose which) to play audio. GStreamer does NOT play audio. It cannot. It needs ALSA or PA. Without them, the most GStreamer can do is write the audio it produces to a file.Last edited by RealNC; 20 January 2017, 12:34 AM.
- Likes 1
Comment
-
Originally posted by duby229 View Post
Ah understand now. Honestly, I haven't gotten that involved with it. I personally think if you dislike how your subwoofer behaves, then you probably want to get a new subwoofer. The only thing I've ever had to do with mine is disable the sound on clicking items. Subwoofers have their own integrated amp and lowpass filter built into them. The source input should be as unmodified as possible. The choice then has to come from your selection of subwoofer that has the hardware characteristics you prefer. If you hear too much bass, so much that a minute action in a film causes the subwoofer to thump, then you need to turn the subwoofers amp down, or buy a smaller subwoofer.
It's no big deal, anyway. I know better now and will be more careful about my next acquisitions.
Comment
-
Originally posted by RealNC View PostYou cannot excuse broken apps. PA has been around for years and years now. It's the standard audio system on Linux now. You don't have to like it. I'm just telling you the facts.
So if an app wants to provide good audio, it needs to provide good PA support.
And no. PA is not gonna touch your audio stream if you don't tell it to. It's gonna resample it if needed, just like ALSA did, otherwise your audio is gonna play at the wrong speed (demon voice or chipmunk sound), and it's gonna mix multiple streams into one, again just like ALSA did, otherwise you can't hear more than one audio stream at any given time.
And when it comes to resampling, PA is actually better. ALSA is *always* going to resample the stream if it's at a different sample rate than the rate the device was opened with. PA will actually switch the audio device to a different sample rate to fit the stream, so that no resampling is done. You can configure two alternative sample rates in the PA config file, and PA will switch between them to avoid resampling your audio. In my case, I use 44.1khz and 48khz, because I listen to music (44.1) and watch movies (48). With alsa, you need to decide which one to use and have everything else be resampled to fit. With PA, you don't have to limit yourself to one. You can use both. When you listen to music, the sound card is opened at 44.1. When you watch a movie, the sound card is switched to 48.
Just because you either have a piss-poor application, or a piss-poor system configuration doesn't make PA worse than ALSA-only audio.
And your latency or audio/video sync issues have nothing to do with PA. It's because of your piss-poor apps or piss-poor config (or both.)
Furthermore, GStreamer depends on PA or ALSA (you choose which) to play audio. GStreamer does NOT play audio. It cannot. It needs ALSA or PA. Without them, the most GStreamer can do is write the audio it produces to a file.
The bottom line fact is this, IMO of course, is that if it walks like a duck and it quacks like a duck, then it's a duck for crying out loud. If the latency problem exists only when PA runs and never else, even if as you claim that ALSA does more work on the CPU, it's still true that Latency with just plain ALSA is completely unnoticeable, but with PA running it's completely unbeareable. The very best solution I've found for it is to remove PA.
Comment
Comment