Provided by: oss4-base_4.2-build2010-5ubuntu9.1_amd64 bug

NAME

       vmixctl - Open Sound System utility to control the vmix subsystem.

SYNOPSIS

       o       vmixctl attach [attach_options...] audiodev [inputdev]
       o       vmixctl detach [attach_options...] audiodev
       o       vmixctl rate audiodev samplerate
       o       vmixctl remap audiodev channels

DESCRIPTION

       The  vmixctl  program  can  be used to attach or detach the virtual mixer subsystem (vmix)
       to/from audio devices. In addition it can be used to control vmix related parameters  such
       as the sampling rate to be used with the device.

       By  default  most OSS drivers will attach virtual mixer to the primary audio device of the
       sound card (or motherboard audio chip) when the  device  is  attached.   However  possible
       secondary  audio  devices  (engines) will not have vmix attached by default. In additional
       professional audio devices will be attached without vmix because  mixing  may  cause  some
       unwanted distortion to the signal.

ATTACHING VMIX TO AN AUDIO DEVICE

       There are two forms of vmixctl attach command:

       o      vmixctl  attach  audiodev  This alternative is to be used with devices that support
              only output or have a single audio device file that supports full duplex.

       o      vmixctl attach audiodev inputdev The second form is to be used  with  devices  that
              have  separate  output and input device files. The "audiodev" parameter defines the
              output device and the "inputdev" parameter is the device file to be used for  input
              direction.   Note  that  both device files must belong to the same "physical" sound
              card.  In some cases it might be possible to use one sound card  for  playback  and
              another  for  recording. However this configuration is not supported and the result
              may not be functional.

       To find out the right device file names (audiodev and inputdev) you can use  the  "ossinfo
       -a" command.

   ATTACH OPTIONS
       o      -r       Disable recording functionality. By default vmix will support recording if
              the master device(s) support it.

       o      -p      Do not preallocate client engines. By default vmix will preallocate first 4
              (out  of 8) client engines when attaching to the device. The remaining engines will
              be allocated on-demand if there are  more  concurrent  applications  that  use  the
              device.

       o      -M      Make vmix use more fragments.

       o      -V      Make client devices visible (have private device nodes under /dev).

       o      -c  <n>   Preallocate <n> client engines instead of 4. However -p option makes this
              option ineffective.

   EXAMPLES
       o      vmixctl attach /dev/oss/oss_envy240/pcm0

       o      vmixctl attach /dev/oss/oss_envy240/pcm0 /dev/oss/oss_envy240/pcmin0

SETTING THE SAMPLING RATE USED BY VMIX

       The virtual mixer subsystem will set the physical audio devce(s)  to  use  fixed  sampling
       rate  that is 48000 Hz by default. It is possible to use "vmixctl rate audiodev" to switch
       vmix to use some different rate with this device (pair). You should use "ossinfo  -a  -v2"
       to verify that the sampling rate is actually supported by the device. Otherwise the actual
       device may enforce vmix to use the nearest supported rate (or some default rate).

       The "audiodev" parameter is the device file  name  (see  ossinfo  -a)  that  is  used  for
       playback. The input device name doesn't need to be specified.

       Note  that some professional audio devices may be locked to external sampling rate or some
       fixed rate (defined in ossmix/ossxmis). In  such  case  the  rate  is  not  changeable  by
       vmixctl.

   EXAMPLE
       o      vmixctl rate /dev/oss/oss_envy240/pcm0 44100

CHANGING THE VMIX CHANNEL MAP

       The  vmix subsystem can remap channels, so that all output sent to a channel via vmix will
       end up being played on a different channel. The syntax uses  a  list  of  channels,  where
       typically  0=default, 1=left, 2=right, 3=center, 4=lfe, 5=left surround, 6=right surround,
       7=left rear and 8=right rear.  Note that vmix-channels should be set first to  Multich  if
       vmix is to recognize the extra channels.

   EXAMPLES
       o      vmixctl remap /dev/dsp 2 1 #switch left and right

       o      vmixctl remap /dev/dsp 0 0 0 0 6 5 #switch left and right surround

DETACHING VMIX FROM AN AUDIO DEVICE

       It is possible to detach vmix from an audio device if it causes problems with applications
       by using "vmix detach audiodev".

       It is not possible to detach and (re)attach vmix to the same device more than  few  times.
       Use  the vmix-enable setting in the control panel (ossxmix or ossmix) to disable/re-enable
       vmix if you need to do it repeatedly. Use vmix detach only if you need to  attach  virtual
       mixer using different parameters.

   EXAMPLE
       o      vmix detach /dev/oss/oss_envy240/pcm0

POSSIBLE BUGS

       o      The  control  panel  elements  related with vmix are not removed from the mixer API
              when vmix is detached. This may be somehow confusing.

SEE ALSO

       soundoff(1), soundon(1), ossmix(1), ossxmix(1)

FILES

       /usr/sbin/vmixct

AUTHOR

       4Front Technologies

                                         23 January 2023                               vmixctl(8)