* Re: virtual OSS devices [for making selfish apps happy]
@ 2005-11-21 21:39 Nick Warne
2005-11-21 21:52 ` Lee Revell
0 siblings, 1 reply; 7+ messages in thread
From: Nick Warne @ 2005-11-21 21:39 UTC (permalink / raw)
To: Christian Parpart; +Cc: linux-kernel
Hi Christian,
On 11/21/05, Christian Parpart < trapni@gentoo.org> wrote:
> Hi all,
> I'm having some apps running on my desktop that all want
> exclusive access to my sound device just for playing audio
> (and a single app for capturing), namely:
>
> * TeamSpeak (VoIP team voice chat)
> * Cedega (for playing some win32 games on my beloved box)
> * KDE/arts (my desktop wants to play some sounds as well wtf)
Slack 10 with 2.6.14.2 using ALSA (artsd).
I have never had any problems with TS and other apps accessing sound* - KDE
notifications happen when I am on TS and playing a game of Quake2 while
listening to xmms on my patented mp3's.
What distro? What kernel? What desktop manager you use?
Nick
* I still can't get firefox and flash sound to work though - all OK in konq.
--
http://sourceforge.net/projects/quake2plus/
"Person who say it cannot be done should not interrupt person doing it."
-Chinese Proverb
^ permalink raw reply [flat|nested] 7+ messages in thread
* virtual OSS devices [for making selfish apps happy]
@ 2005-11-21 21:16 Christian Parpart
2005-11-21 21:40 ` Lee Revell
0 siblings, 1 reply; 7+ messages in thread
From: Christian Parpart @ 2005-11-21 21:16 UTC (permalink / raw)
To: Linux Kernel
[-- Attachment #1: Type: text/plain, Size: 1838 bytes --]
Hi all,
I'm having some apps running on my desktop that all want
exclusive access to my sound device just for playing audio
(and a single app for capturing), namely:
* TeamSpeak (VoIP team voice chat)
* Cedega (for playing some win32 games on my beloved box)
* KDE/arts (my desktop wants to play some sounds as well wtf)
While I could easily disable my desktop sounds, and yeah, forget about the
music, but I'd still like to be in TeamSpeak (talking to friends and alike)
while playing a game using cedega.
Unfortunately, *all* those stupid (2) apps want exclusive access to the OSS
layout of my ALSA drivers, though, there just came into my mind to buy a
second audio device and wear a second headset (a little one below/under my
big one). But I couldn't find it handy anyway :(
So, in the end, what about writing a virtual OSS driver that can spawn
multiple (fake) /dev/vdsp%d's that all allow audio rendering (output) and at
least a single one capturing (this at least would fit *my* needs).
This virtual driver then would has to know about the real audio device then of
course that would it use to merge/mix the audio outputs to and to read the
requested capture data from.
Okay, neat idea, but I never ever wrote a single kernel code line!
So, can some guys of you please help me out there in *either* telling me where
to find the basics on kernel module writing *and* how to do such things like
I said I want.
Or, even if you feel that happy about that idea and can't wait until I got
stuck in finishing it, and you can DIYS, that would be even much nicer.
C/C++ is not my problem, and I have already seen/read the linux kernel code
not just once, but I am definitely laggin in experience in kernel
development.
Please help.
Thanks in advance,
Christian Parpart.
[-- Attachment #2: Type: application/pgp-signature, Size: 190 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: virtual OSS devices [for making selfish apps happy]
2005-11-21 21:16 Christian Parpart
@ 2005-11-21 21:40 ` Lee Revell
2005-11-22 2:26 ` Alistair John Strachan
2005-11-22 8:20 ` Jaroslav Kysela
0 siblings, 2 replies; 7+ messages in thread
From: Lee Revell @ 2005-11-21 21:40 UTC (permalink / raw)
To: Christian Parpart; +Cc: Linux Kernel
On Mon, 2005-11-21 at 22:16 +0100, Christian Parpart wrote:
> Hi all,
>
> I'm having some apps running on my desktop that all want
> exclusive access to my sound device just for playing audio
> (and a single app for capturing), namely:
>
> * TeamSpeak (VoIP team voice chat)
> * Cedega (for playing some win32 games on my beloved box)
> * KDE/arts (my desktop wants to play some sounds as well wtf)
>
> While I could easily disable my desktop sounds, and yeah, forget about the
> music, but I'd still like to be in TeamSpeak (talking to friends and alike)
> while playing a game using cedega.
>
> Unfortunately, *all* those stupid (2) apps want exclusive access to the OSS
> layout of my ALSA drivers, though, there just came into my mind to buy a
> second audio device and wear a second headset (a little one below/under my
> big one). But I couldn't find it handy anyway :(
This problem is (mostly) solved already. You have to use aoss (alsa-lib
based OSS emulation) on top of dmix (software mixing for soundcards too
lame to do it in hardware). With a recent ALSA dmix is already used by
default so the only change needed is to launch the OSS apps with the
aoss wrapper e.g. aoss ./foo-oss-app. Since it's not completely
transparent this problem will have to be solved at the distro level, by
making sure all OSS apps are run with this wrapper.
This method should only be needed for closed source apps, an open source
app like artsd should be ported to use the ALSA API.
Lee
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: virtual OSS devices [for making selfish apps happy]
2005-11-21 21:40 ` Lee Revell
@ 2005-11-22 2:26 ` Alistair John Strachan
2005-11-22 3:59 ` Lee Revell
2005-11-22 8:20 ` Jaroslav Kysela
1 sibling, 1 reply; 7+ messages in thread
From: Alistair John Strachan @ 2005-11-22 2:26 UTC (permalink / raw)
To: Lee Revell; +Cc: Christian Parpart, Linux Kernel
On Monday 21 November 2005 21:40, Lee Revell wrote:
> On Mon, 2005-11-21 at 22:16 +0100, Christian Parpart wrote:
> > Hi all,
> >
> > I'm having some apps running on my desktop that all want
> > exclusive access to my sound device just for playing audio
> > (and a single app for capturing), namely:
> >
> > * TeamSpeak (VoIP team voice chat)
> > * Cedega (for playing some win32 games on my beloved box)
> > * KDE/arts (my desktop wants to play some sounds as well wtf)
> >
> > While I could easily disable my desktop sounds, and yeah, forget about
> > the music, but I'd still like to be in TeamSpeak (talking to friends and
> > alike) while playing a game using cedega.
> >
> > Unfortunately, *all* those stupid (2) apps want exclusive access to the
> > OSS layout of my ALSA drivers, though, there just came into my mind to
> > buy a second audio device and wear a second headset (a little one
> > below/under my big one). But I couldn't find it handy anyway :(
>
> This problem is (mostly) solved already. You have to use aoss (alsa-lib
> based OSS emulation) on top of dmix (software mixing for soundcards too
> lame to do it in hardware). With a recent ALSA dmix is already used by
> default so the only change needed is to launch the OSS apps with the
> aoss wrapper e.g. aoss ./foo-oss-app. Since it's not completely
> transparent this problem will have to be solved at the distro level, by
> making sure all OSS apps are run with this wrapper.
>
> This method should only be needed for closed source apps, an open source
> app like artsd should be ported to use the ALSA API.
Which it already has been, for literally years.
[alistair] 02:26 [~] artsd -A
possible choices for the audio i/o method:
toss Threaded Open Sound System
null No Audio Input/Output
alsa Advanced Linux Sound Architecture
oss Open Sound System
--
Cheers,
Alistair.
'No sense being pessimistic, it probably wouldn't work anyway.'
Third year Computer Science undergraduate.
1F2 55 South Clerk Street, Edinburgh, UK.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: virtual OSS devices [for making selfish apps happy]
2005-11-22 2:26 ` Alistair John Strachan
@ 2005-11-22 3:59 ` Lee Revell
0 siblings, 0 replies; 7+ messages in thread
From: Lee Revell @ 2005-11-22 3:59 UTC (permalink / raw)
To: Alistair John Strachan; +Cc: Christian Parpart, Linux Kernel
On Tue, 2005-11-22 at 02:26 +0000, Alistair John Strachan wrote:
> Which it already has been, for literally years.
>
> [alistair] 02:26 [~] artsd -A
> possible choices for the audio i/o method:
>
> toss Threaded Open Sound System
> null No Audio Input/Output
> alsa Advanced Linux Sound Architecture
> oss Open Sound System
>
Unfortunately it still seems to default to OSS on many systems.
Lee
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: virtual OSS devices [for making selfish apps happy]
2005-11-21 21:40 ` Lee Revell
2005-11-22 2:26 ` Alistair John Strachan
@ 2005-11-22 8:20 ` Jaroslav Kysela
1 sibling, 0 replies; 7+ messages in thread
From: Jaroslav Kysela @ 2005-11-22 8:20 UTC (permalink / raw)
To: Lee Revell; +Cc: Christian Parpart, Linux Kernel
On Mon, 21 Nov 2005, Lee Revell wrote:
> On Mon, 2005-11-21 at 22:16 +0100, Christian Parpart wrote:
> > Hi all,
> >
> > I'm having some apps running on my desktop that all want
> > exclusive access to my sound device just for playing audio
> > (and a single app for capturing), namely:
> >
> > * TeamSpeak (VoIP team voice chat)
> > * Cedega (for playing some win32 games on my beloved box)
> > * KDE/arts (my desktop wants to play some sounds as well wtf)
> >
> > While I could easily disable my desktop sounds, and yeah, forget about the
> > music, but I'd still like to be in TeamSpeak (talking to friends and alike)
> > while playing a game using cedega.
> >
> > Unfortunately, *all* those stupid (2) apps want exclusive access to the OSS
> > layout of my ALSA drivers, though, there just came into my mind to buy a
> > second audio device and wear a second headset (a little one below/under my
> > big one). But I couldn't find it handy anyway :(
>
> This problem is (mostly) solved already. You have to use aoss (alsa-lib
> based OSS emulation) on top of dmix (software mixing for soundcards too
> lame to do it in hardware). With a recent ALSA dmix is already used by
> default so the only change needed is to launch the OSS apps with the
> aoss wrapper e.g. aoss ./foo-oss-app. Since it's not completely
> transparent this problem will have to be solved at the distro level, by
> making sure all OSS apps are run with this wrapper.
>
> This method should only be needed for closed source apps, an open source
> app like artsd should be ported to use the ALSA API.
Also note that we have Open Sound System call redirector in our alsa-oss
package (see http://www.alsa-project.org for download). It's small library
which can redirects OSS calls to any dynamic library.
It would be nice to convert existing OSS apps to use this library. It
should be quite fast and easy. The only thing is to persuade sound
developers to use this library instead the direct open/close/ioctl
OSS syscalls.
Jaroslav
-----
Jaroslav Kysela <perex@suse.cz>
Linux Kernel Sound Maintainer
ALSA Project, SUSE Labs
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2005-11-22 8:20 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-11-21 21:39 virtual OSS devices [for making selfish apps happy] Nick Warne
2005-11-21 21:52 ` Lee Revell
-- strict thread matches above, loose matches on Subject: below --
2005-11-21 21:16 Christian Parpart
2005-11-21 21:40 ` Lee Revell
2005-11-22 2:26 ` Alistair John Strachan
2005-11-22 3:59 ` Lee Revell
2005-11-22 8:20 ` Jaroslav Kysela
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox