.TH FLACDEC 1 .SH NAME flacdec \- decode FLAC audio files .br mp3dec \- decode MPEG layer 3 audio files .br mp3enc \- encode MPEG layer 3 audio files .br oggdec \- decode Ogg Vorbis audio files .br oggenc \- encode Ogg Vorbis audio files .SH SYNOPSIS .B audio/flacdec .br .B audio/mp3dec [ .B -d ] .br .in +0.5i .ti -0.5i .B audio/mp3enc [ .B -hprv ] [ .B -b .I bitrate ] [ .B -B .I bitrate ] [ .B -m .I mode ] [ .B -q q ] [ .B -s .I sfreq ] [ .B -V .I q ] [ .I "long or silly options" ] .in -0.5i .B audio/oggdec .br .B audio/oggenc .SH DESCRIPTION .I Flacdec, mp3dec and oggdec decode audio from standard input, writing 16-bit stereo linear PCM sample data to standard output. The .B -d option enables debug prints to standard error. .PP .I Mp3enc compresses audio on standard input, normally PCM-encoded, and produces MP3-encoded audio on standard output. By default, the MP3 file will use `constant bit-rate' (CBR) encoding, but that can be changed via .B --abr (average bitrate desired, ABR) or .BR -v (variable bitrate, VBR). .PP .I Oggenc reads 44100Hz 16 bit LSB stereo data from standard input, and writes encoded .I 128 kbit/s variable bit rate .I ogg vorbis stream to standard output. .SH MP3ENC OPTIONS .SS Options .TF "\fB-b \fP" .TP .B -b set minimum allowed .I bitrate in Kb/s for VBR, default 32Kb/s. For CBR, set the exact bitrate in Kb/s, which defaults to 128Kb/s. .TP .B -B set maximum allowed .I bitrate in Kb/s for VBR, default 256Kb/s. .TP .BI -h same as .LR "-q 2" . .TP .B -m .I mode may be (s)tereo, (j)oint, (f)orce or (m)ono (default j). .B force forces mid/side stereo on all frames. .TP .B -p add CRC error protection (adds an additional 16 bits per frame to the stream). This seems to break playback. .TP .B -q sets output quality to .I q (see .BR -V ). .TP .B -r input is raw pcm .TP .B -s set sampling frequency of input file (in KHz) to .IR sfreq , default is 44.1. .TP .B -v use variable bitrate (VBR) encoding .TP .B -V set quality setting for VBR to .IR q . Default .I q is 4; 0 produces highest-quality and largest files, and 9 produces lowest-quality and smallest files. .SS Long options .TF "\fB--resample sfreq \fP" .TP .BI --abr " bitrate" sets average .I bitrate desired in Kb/s, instead of setting quality, and generates ABR encoding. .TP .BI --resample " sfreq" set sampling frequency of output file (in KHz) to .IR sfreq , default is input sfreq. .TP .BI --mp3input .I input is an MP3 file . .SS Silly options .TF --nohist .TP .BI -f same as .LR "-q 7" . Such a deal. .TP .BI -o mark as non-original (i.e. do not set the original bit) .TP .BI -c mark as copyright .TP .BI -k disable sfb=21 cutoff .TP .BI -e " emp" de-emphasis n/5/c (default n) .TP .BI -d allow channels to have different blocktypes .TP .BI -t disable Xing VBR informational tag .TP .BI -a autoconvert from stereo to mono file for mono encoding .TP .BI -x force byte-swapping of input (see .IR dd (1) instead) .TP .BI -S don't print progress report, VBR histograms .TP .BI --athonly only use the ATH for masking .TP .BI --nohist disable VBR histogram display .TP .BI --voice experimental voice mode . .SH EXAMPLES Play a .L .flac file: .IP .EX audio/flacdec < foo.flac >/dev/audio .EE .LP Play an .L .mp3 file: .IP .EX games/mp3dec < foo.mp3 >/dev/audio .EE .LP Encode a .L .wav file as highest-quality MP3: .IP .EX games/mp3enc -q 0 -b 320 foo.mp3 .EE .LP Create a fixed 128Kb/s MP3 file from a .L .wav file: .IP .EX games/mp3enc -h foo.mp3 .EE .LP Stream from stereo 44.1KHz raw PCM data, encoding mono at 16KHz (you may not need .IR dd ): .IP .EX dd -conv swab | games/mp3enc -a -r -m m --resample 16 -b 24 >foo.mp3 .EE .LP Play an .L .ogg file: .IP .EX audio/oggdec < foo.ogg > /dev/audio .EE .LP Encode a .L .wav file as an .L .ogg file: .IP .EX audio/oggenc < foo.wav > foo.ogg .EE .SH SOURCE .B /sys/src/cmd/audio/mp3dec .br .B /sys/src/cmd/audio/mp3enc .br .B /sys/src/cmd/audio/oggdec .br .B /sys/src/cmd/audio/oggenc .SH "SEE ALSO" .IR dd (1), .IR audio (3), .IR cdfs (4), .IR juke (7), .IR playlistfs (7) .br .B http://www.underbit.com/products/mad/ .br .B http://www.sulaco.org/mp3 .SH BUGS GNU behemoths, lightly tamed. Quality is much better than encoders based on the ISO routines, but still not as good as the FhG encoder. .PP There are zillions of undocumented options.