From: Clemens Ladisch <clemens@ladisch.de>
To: Takashi Iwai <tiwai@suse.de>
Cc: alsa-devel@alsa-project.org, Claus Ilginnis <Claus@Ilginnis.de>
Subject: Re: Detect when sound card is in use
Date: Wed, 29 Apr 2009 09:16:37 +0200 [thread overview]
Message-ID: <49F7FED5.7080407@ladisch.de> (raw)
In-Reply-To: <s5hab60q7wm.wl%tiwai@suse.de>
Takashi Iwai wrote:
> Claus Ilginnis wrote:
> > I have a speaker set connected to an USB-Power-Plug (by which I can turn
> > the speakers on and off )
> >
> > Now I want to detect, when the soundcard is in use and when not.
> > (to turn the speakers on when needed...)
> >
> > Which way is best to detect wheather my sound card is in use or not ?
> > Is there a general overview/documentation of the sound kernel modules
> > which describes the general relationship between them ?
> > What would you do ?
>
> The easiest way would be to check the status of device files, such as
> /dev/snd/*, whether any process opens it, e.g. via lsof command.
This would require polling.
> But, this doesn't cover the case like an app such as a mixer applet
> which keeps opening the device but access only occasionally.
I guess the mixer doesn't matter as long as nothing is playing, so it
would be enough to monitor /dev/snd/pcm*.
The easiest way would be to wrap your playback application in a script,
but this works only if that is the only application that plays sounds.
If all your applications use the ALSA API (and not OSS), you could
write a filter plugin that just passes through all requests to the
actual device and switches the power plug in the open/close callbacks.
Best regards,
Clemens
prev parent reply other threads:[~2009-04-29 7:16 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-04-28 19:16 Detect when sound card is in use Claus Ilginnis
2009-04-29 6:40 ` Takashi Iwai
2009-04-29 7:16 ` Clemens Ladisch [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=49F7FED5.7080407@ladisch.de \
--to=clemens@ladisch.de \
--cc=Claus@Ilginnis.de \
--cc=alsa-devel@alsa-project.org \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.