Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
vmixctl(8)		System Administration Commands		    vmixctl(8)

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 de-
       vice  is	 attached.  However possible secondary audio devices (engines)
       will not	have vmix attached by default. In additional professional  au-
       dio 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 de-
	      vices 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 "in-
	      putdev" parameter	is the device file to be used for input	direc-
	      tion.  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.  How-
	      ever  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 de-
       fault 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	speci-
       fied.

       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 sur-
	      round

DETACHING VMIX FROM AN AUDIO DEVICE
       It is possible to detach	vmix from an audio device if it	 causes	 prob-
       lems 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 re-
       peatedly. Use vmix detach only if you need to attach virtual mixer  us-
       ing 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/local/sbin/vmixct

AUTHOR
       4Front Technologies

				 12 April 2025			    vmixctl(8)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=vmixctl&sektion=8&manpath=FreeBSD+Ports+14.3.quarterly>

home | help