---
name: "mp2enc"
section: "1"
platform: "linux"
package: "mjpegtools"
version: "2.2.1-4"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/mp2enc"
---

# mp2enc(1)

Simple MPEG-1 layer-II audio encoder

## NAME

mp2enc - Simple MPEG-1 layer-II audio encoder\

## SYNOPSIS

**mp2enc** \[**-v** *num*\] \[**-b** *bitrate\_kbps*\] \[**-r** *output\_sampling\_rate\_hz*\] \[**-R** *rate,chans,bits*\] \[**-s** \] \[**-m** \] \[**-e** \] \[**-V** \] \[**-?**\] **-o** *output\_filename*

## DESCRIPTION

Mp2enc is a simple MPEG-1 layer-I/II audio encoder.  It is actually a very mildly warmed over version of the MPEG Software Simulation Group's reference encoder.  It accepts a WAV file or stream on stdin and ouputs an a layer-I/II elementary audio stream.  It is included in the [**mjpegtools**(1)](/mjpegtools/1.md) primarily for reasons of completeness and because it is able to perform sampling rate conversion.

Those seeking a faster (and probably higher quality) layer II encoder are recommended to use [**toolame**(1)](/toolame/1.md) which can be obtained from:

-

  *http://www.planckenergy.com*

## GENERAL FUNCTION LETTERS

- **-o** *output\_filename*

  Specifies the name for the output file.

  An integer format code (e.g. %d) in the name is replaced the number of the file generated (see [printf(3)](/printf/3.md)).

- **-v** *num*

  Set verbosity level to num.  0 = warnings and errors only, 1 = information as well, 2=really verbose. **-?** Display a synopsis of the command syntax.

- **-R** *rate,chans,bits*

  Indicate, that the input is raw PCM without header. You must specify 3 numbers: rate is the samplerate in Hz, chans is the number of channels (1 or 2) and bits is the number of bits per sample. 8 bits are unsigned, 16 bits are signed in machine native byte order.

## FUNCTION LETTERS CONTROLLING OUTPUT STREAM STRUCTURE

- **-b** *bitrate*

  This sets the bit-rate of the output stream in kBit/sec.  Typical values for layer II might be 224kbps for good-quality audio suitable for capturing Dolby pro-logic signals.  A rate of 192kbps or 128kbps is reasonable for low quality audio (e.g. mono TV audio).  Really high compression is, of course, better achieved using MPEG-1 layer III ("MP3") audio encoding or AAC. A more appropriate value for layer I might be 384kbps.

- **-r** *sampling\_rate*

  Sets the audio sampling rate of the reconstructed output signal in Hz. Legal values are 32000, 44100 and 48000Hz.   mp2enc will automatically sample-rate convert the input signal if necessary.

- **-l** *layer*

  Sets the audio layer. Legal values are 1 and 2. The default is layer II.

- **-s**

  Force stereo output.  A mono input signal is channel doubled before encoding to make it stereo.  This is useful for players which simply can't handle a non-stero signal.

- **-m**

  Force mono output.  A stereo input signal is down-mixed before encoding. Useful if you've captured a mono signal in stereo and your player can handle mono MPEG-1 Layer 2 audio.

- **-e**

  Use CRC error protection.

- **-V**

  Force VCD compatible output. The primary effect of this is to make certain that the sampling rate is set to 44100 (-r 44100).  The VCD2.0 specifications  permit mono audio at 64,  96 and 192 kbits/sec and stereo at 128, 192, 224, and 384 kbits/sec. Using  **-V** checks that the bitrate is valid for the number of channels. The defaults (unless -m or -b are used) are stereo at 224 kbits/sec.

- **-o** *outputpathname*

  The name of the output file to generate.  If '-' is given as the pathname output is written to standard output.

## BUGS

Mono output does not work for layer I.

## AUTHOR

This man page was written by Andrew Stevens.\
 If you have questions, remarks, problems or you just want to contact the developers, the main mailing list for the MJPEG-tools is:\
   *mjpeg-users@lists.sourceforge.net*

- For more info, see our website at

  *http://mjpeg.sourceforge.net*

## SEE ALSO

[**mpeg2enc**(1)](/mpeg2enc/1.md), [**mp2enc**(1)](/mp2enc/1.md), [**lavrec**(1)](/lavrec/1.md), [**lavplay**(1)](/lavplay/1.md),  [**lav2yuv**(1)](/lav2yuv/1.md), [**lav2wav**(1)](/lav2wav/1.md), [**yuvscaler**(1)](/yuvscaler/1.md)
