.TH AUDIO 1
.SH NAME
-mp3dec, mp3enc, oggdec, oggenc, flacdec, sundec, wavdec, pcmconv \- decode and encode audio files
+mp3dec, mp3enc, oggdec, oggenc, flacdec, sundec, wavdec, pcmconv, mixfs \- decode and encode audio files
.SH SYNOPSIS
.B audio/mp3dec
[
.I length
]
.PP
+.B audio/mixfs
+[
+.B -D
+] [
+.B -s
+.I srvname
+] [
+.B -m
+.I mtpt
+]
+.PP
.SH DESCRIPTION
These programs decode and encode various audio formats from and to
16-bit stereo PCM (little endian). The decoders read the compressed
or
.BR -v
(variable bitrate, VBR).
+.PP
+.I Oggenc
+accepts raw PCM in the same byte order as
+.B /dev/audio
+(little-endian),
+t
+.I mp3enc -r
+expects big-endian.
.SS Options
.TF "\fB-b \fP"
.TP
.IR sfreq ,
default is input sfreq.
.TP
-.BI --mp3input
-.I input
+.BI --mp3input " input"
is an MP3 file
.
.SS Silly options
.TF --nohist
.TP
-.BI -f
+.B -f
same as
.LR "-q 7" .
Such a deal.
.TP
-.BI -o
+.B -o
mark as non-original (i.e. do not set the original bit)
.TP
-.BI -c
+.B -c
mark as copyright
.TP
-.BI -k
+.B -k
disable sfb=21 cutoff
.TP
.BI -e " emp"
de-emphasis n/5/c
(default n)
.TP
-.BI -d
+.B -d
allow channels to have different blocktypes
.TP
-.BI -t
+.B -t
disable Xing VBR informational tag
.TP
-.BI -a
+.B -a
autoconvert from stereo to mono file for mono encoding
.TP
-.BI -x
+.B -x
force byte-swapping of input (see
.IR dd (1)
instead)
.TP
-.BI -S
+.B -S
don't print progress report, VBR histograms
.TP
-.BI --athonly
+.B --athonly
only use the ATH for masking
.TP
-.BI --nohist
+.B --nohist
disable VBR histogram display
.TP
-.BI --voice
+.B --voice
experimental voice mode
-
-.PP
+.SS
.I Pcmconv
is a helper program used to convert various PCM sample formats. The
.B -i
.I fmt
of the conversion.
.I Fmt
-is a concatinated string of the following parts:
-
+is a concatenated string of the following parts:
.TP
.BI s #
sample format is little-endian signed integer where
.BI f #
floating point format where
.I #
-has to be 32 or 64 for single- or double-precisition
+has to be 32 or 64 for single- or double-precision
.TP
.B a8
8-bit a-law format
.TP
.BI r #
gives the samplerate in Hz
-
.PP
The program reads samples from standard
input converting the data and writes the result to standard output
was given, a number of
.I length
bytes have been consumed from input.
-
+.PP
+.I Mixfs
+is a fileserver serving a single
+.B audio
+file which allows simultaneous playback of audio streams. When
+run, it binds over
+.B /dev/audio
+and mixes the audio samples that are written to it.
+A service name
+.I srvname
+can be given with the
+.B -s
+option which gets posted to
+.BR /srv .
+By default,
+.I mixfs
+mounts itself on
+.B /mnt/mix
+and then binds
+.B /mnt/mix/audio
+over
+.BR /dev .
+A alternative mountpoint
+.I mtpt
+can be specified with the
+.B -m
+option.
+The
+.B -D
+option causes
+.B 9p
+debug messages to be written to file-descriptor 2.
.SH EXAMPLE
Play back an
.L .mp3
file as highest-quality MP3.
.IP
.EX
-audio/mp3enc -q 0 -b 320
+audio/mp3enc -q 0 -b 320 <foo.wav >foo.mp3
.EE
.LP
Create a fixed 128Kb/s MP3 file from a
.B http://xiph.org/doc/
.br
.B http://flac.sourceforge.net/documentation.html
-.SH BUGS
-It's another GNU behemoth, lightly tamed.
+.SH HISTORY
+.I Pcmconv
+first appeared in 9front (December, 2012).
+.I Mixfs
+first appeared in 9front (December, 2013).