Re: tee-like function via virtual_oss

From: J P <webplication_at_gmail.com>
Date: Sat, 23 Oct 2021 08:57:06 UTC
Hi,
so I finally got some time to play with this thing.

Virtual_oss does work as you indicate as long as I use sox'splay/rec as in
your example.

When I use firefox it does play but when I record there is no sound in the
recorded file.

I have firefox compiled as follows:
Options        :
        ALSA           : off
        CANBERRA       : off
        DBUS           : on
        DEBUG          : off
        FFMPEG         : on
        JACK           : off
        LIBPROXY       : off
        LTO            : off
        OPTIMIZED_CFLAGS: on
        PROFILE        : on
        PULSEAUDIO     : on
        SNDIO          : off
        TEST           : off

Firefox uses PA, so I can set the playback device to the newly created
dsp0.9 (it pops up as a duplicate dps0, I mean, by the same name) but it's
there, reproduces audio and I can set the volume:
cat /dev/sndstat
Installed devices:
pcm0: <ATI R6xx (HDMI)> (play) default
pcm1: <ATI R6xx (HDMI)> (play)
pcm2: <Realtek ALC662 rev3 (Analog)> (play/rec)
pcm3: <Realtek ALC662 rev3 (Front Analog Headphones)> (play)
pcm4: <USB audio> (play/rec)
Installed devices from userspace:
pcm0: <Virtual OSS> (play/rec)
dsp0.9: <Virtual OSS> (play/rec)

Note how the "original" device although it's still there, is not functional
from firefox (i.e. plays no sound anymore), I do have to switch to the new
device for playback. This behavior is not shown by mplayer, for example,
that uses whatever the hw.snd_default_unit is, in this case pcm0, and
works. Sox's play, needs the env AUDIODEV to be set to the news device to
work, otherwise plays no sound either.

Nevertheless, the file recorded when firefox reproduces audio, contains
only 0s.
Can you suggest how to solve? Thank you.
BR

El mié, 6 oct 2021 a las 10:17, Hans Petter Selasky (<hps@selasky.org>)
escribió:

> On 10/6/21 10:12 AM, J P wrote:
> > -T /dev/sndstat -C 2 -c 2 -r 48000 -b 24 -s 8.0ms -R /dev/null *-P
> > /dev/dsp0 -d dsp0.9* -M x,0,0,0,0,0 -M x,1,1,0,0,0 -t dsp.ctl -i 10 -S
>
> You've swapped two arguments. Try this:
>
> -P /dev/dsp0.9 -d dsp0
>
> --HPS
>