1. soudon with
flat_device_model=1>>> /dev/oss/.../pcm[0-15] : all have been created on dev, Ok
$ ossplay -d /dev/oss/../pcm0 file.wav &
$ cat /dev/sndstat
Code: Select all
Audio devices:
0: (Undefined or removed device)
1: ATI IXP200 (SPDIF out) (OUTPUT)
2: ATI IXP200 (vmix) (DUPLEX)
Engine 9 opened OUT by ossplay/1308 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
3: ATI IXP200 (vmix) (DUPLEX)
Engine 8 opened OUT by ossplay/1308 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
4: ATI IXP200 (vmix) (DUPLEX)
Engine 7 opened OUT by ossplay/1308 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
5: ATI IXP200 (vmix) (DUPLEX)
Engine 6 opened OUT by ossplay/1308 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
6: ATI IXP200 (vmix) (DUPLEX)
Engine 5 opened OUT by ossplay/1308 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
7: ATI IXP200 (vmix) (DUPLEX)
Engine 4 opened OUT by ossplay/1308 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
8: ATI IXP200 (vmix) (DUPLEX)
Engine 3 opened OUT by ossplay/1308 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
9: ATI IXP200 (vmix) (DUPLEX)
Engine 2 opened OUT by ossplay/1308 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
>>> all devices are used by the same process, you cannot record from pcm1 while writing to pcm0, device busy
$ lsof /dev/oss/.../pcm0
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ossplay 1308 valery 3w VCHR 0,135 0t18859008 135 /dev/oss/oss_atiaudio0/pcm0
$ lsof /dev/oss/.../pcm1
_nothing_
>>> trouble seem to come from oss, not from filesystem
2. Keeping this,
attaching vmix# vmixctl attach /dev/oss/oss_atiaudio0/pcm0
Virtual mixer attached to device.
$ ossplay -d /dev/oss/../pcm0 file.wav &
$ cat /dev/sndstat
Code: Select all
//...
same as above
...//
10: ATI IXP200 (vmix) (DUPLEX)
Engine 1 opened OUT by ossplay/1339 @ 44100/48000 Hz Fragment: 2048/192000 (10.6 msec)
Song name: vslash_parme_glock_record_090813-2025.wav
11: ATI IXP200 (vmix) (DUPLEX)
12: ATI IXP200 (vmix) (DUPLEX)
13: ATI IXP200 (vmix) (DUPLEX)
14: ATI IXP200 (vmix) (DUPLEX)
15: ATI IXP200 (vmix) (DUPLEX)
16: ATI IXP200 (vmix) (DUPLEX)
17: ATI IXP200 (vmix) (DUPLEX)
$ lsof /dev/oss/.../pcm0
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ossplay 1308 valery 3w VCHR 0,135 0t18859008 135 /dev/oss/oss_atiaudio0/pcm0
$ lsof /dev/oss/.../pcm11
(first free pcm, other don't work)_nothing_
$ ossrecord -d /dev/oss/oss_atiaudio0/pcm11 -c 2 -s44100 test-1.wav
>>> Ok, record start, next playing recorded sound is Ok and nice.
3. soundon with flat_dev=1 && ( vmix_disabled=1 || vmix_loopdevs=1 ) :
>>> DUPLEX don't work (recording & playing on the same device)
4. soundon with flat_dev=0 + 'vmixctl attach' on pcm0
DUPLEX don't work on any device
SIMPLEX-Out (pcm0) + SIMPLEX-In (pcm1) don't work together too.
5. 1st solution is to :
# set flat_dev=1
# starting OSS
# attaching vmix via vmixctl
$ (setting record source to "vol" of course)
$ recording from the 1st free vmix.
6. Building oss without VDEV_SUPPORT :
Doing this sched a small light on the mess :
#soudon with
flat_device_model=0$ xmms outputing sounds on pcm0 : Ok
$ cat /dev/sndstat
Code: Select all
Audio devices:
0: ATI IXP200 (DUPLEX)
Engine 1 opened OUT by xmms/2367 @ 44100/48000 Hz Fragment: 4096/192000 (21.3 msec)
1: ATI IXP200 (SPDIF out) (OUTPUT)
2: ATI IXP200 (vmix) (DUPLEX)
3: ATI IXP200 (vmix) (DUPLEX)
4: ATI IXP200 (vmix) (DUPLEX)
5: ATI IXP200 (vmix) (DUPLEX)
6: ATI IXP200 (vmix) (DUPLEX)
7: ATI IXP200 (vmix) (DUPLEX)
8: ATI IXP200 (vmix) (DUPLEX)
9: ATI IXP200 (vmix) (DUPLEX)
10: (Undefined or removed device)
11: (Undefined or removed device)
12: (Undefined or removed device)
13: (Undefined or removed device)
14: (Undefined or removed device)
15: (Undefined or removed device)
16: (Undefined or removed device)
17: (Undefined or removed device)
18: ATI IXP200 (DUPLEX)
...
>>> only one engine attached
>>> from mixer point of view, it show that vmix use pcm1 to 8, but nothing about pcm9
>>> ossmix -D don't tell anything more about pcm9
$ ossrecord -d /dev/oss/oss_atiaudio0/pcm9 ...
>>> work fine
Don't understand all the mess, perhaps the trouble is coming from mixer,
or from the vmix mapping scheme, or from my audio board spec.
A whole framework picture of OSS features would be nice, anyway, we always find out a
solution, it was my goal here, and i got it,
Thanks,
v/