On Wed, 2014-08-27 at 17:41 +0600, Alexander E. Patrakov wrote: > 27.08.2014 17:18, Br?ulio Bhavamitra wrote: > > Hello Alexander, > > > > I thought all my apps were using pulseaudio. I use mainly skype, mplayer > > and amarok. > > > > How can I double check if there is another app not using pulseaudio? > > I can suggest two very rough tests. However, as restarting PulseAudio > helps, I doubt that they will find anything, because you need to test > that at the time PulseAudio starts. > > 1. Start pavucontrol. Make sure that your app plays a sound. Look into > the pavucontrol window and see if you can see the stream on the first > tab. If you can, then the app is definitely using PulseAudio. > > 2. Start a terminal. Make sure that your app plays a sound. While it is > playing, run this command in the terminal: > > fuser -v /dev/snd/pcm* > > If it prints anything that is not about pulseaudio, then that app uses > ALSA directly in a way incompatible with PulseAudio. > > Tanu: would a linux-specific patch be welcome that attempts to log which > process keeps the device open? Yes, I like that idea. > If so - should I walk /proc myself, or > defer to fuser? I'd prefer to not call external programs. I suppose we want the log message to appear immediately after we have noticed that a sound card is busy, so the fuser call would have to be synchronous. Perhaps I overestimate the difficulty, but it might not be any simpler to run fuser, read its stdout and wait for its exit while blocking the main thread, than to parse /proc yourself. -- Tanu