Preamble

Although one might expect that encoding music in either MP3 or Ogg Vorbis is nothing new to anyone (especially scene musicians), submissions to MP3/Ogg compos in the past have shown that some people simply forget how to make a decent compressed file from their music - let's blame the time pressure, shall we.

During preselection for a music competition, the preselectors are likely to suffer from lack of sleep and junkfood, so badly encoded music can be really annoying. This little guide shall give you some clue on how we'd love to get your great music - enjoyable for us, the audience at the party and finally to those, who download your music off the Internet.

Apart from that, the MP3/Vorbis competition is also about your mixing and mastering skills, and you really don't want your hard work to be spoiled by some silly compression format. This How-To shall provide the necessary information to help you keep rogue encoders off your music.

First of all, note that your choice of format does NOT have any influence on the preselection! Both MP3 Lovers and Ogg Zealots are equally represented, so picking either MP3 or Vorbis won't increase or decrease your chances of being played. :)

Ogg Vorbis

Let's start out with Ogg Vorbis, since this is the easiest one. Ogg Vorbis doesn't care much about bitrate, since it's a variable bit rate (VBR) Codec. To comply with the compo rules of "160kbps or higher", choose a quality setting of '5' or higher. Any fairly current Vorbis encoder will do, and there's nothing you could do wrong. If you're extremely paranoid about quality, set it to '6'. However, quality '5' will be very sufficient for us.

Here's an example for the commandline encoder oggenc:

oggenc -q 5 my_entry_mixdown.wav

Now that was easy. Another possibility is to use the drag 'n drop encoder for Windows called "oggDrop". Just right-click the fish, pick '5' as the quality level and drag the .WAV of your masterpiece on it. A short while later, you'll have an .ogg in the same directory where your source .WAV is.

Adding decent comment tags to your .ogg entry is very appreciated. There are many tools to do this, just to name a few: Winamp, vorbiscomment, WinVorbis/Vorbix (http://winvorbis.stationplaylist.com/). You are free to add any comment tag in the form "TAGNAME=Stuff this tag contains", and every compliant player is supposed to display them all. There are some standard tags like ARTIST, TITLE and so on - to learn more about them, have a look at http://xiph.org/vorbis/doc/v-comment.html under "Field names". You're practically unlimited in the amount and length of comments, however, common sense should guide your actions.

You can get all the official Ogg Vorbis stuff from http://www.vorbis.com/. They also have links to nice utilities made by other people, some of which I've already mentioned.

You can use Winamp to diskwrite .ogg files, too. You can get the encoder plugin here: http://www.winamp.com/plugins/details/143936 (Note that this also allows easy re-encoding from another lossy format like MP3 to Vorbis, which is NOT A GOOD IDEA. Re-encoding will always result in worse quality.)

If you're completely new to Ogg Vorbis, www.vorbis.com will help you out.

Mp3

Good old MP3. There are gazillions of programs, encoders, jukeboxes, etc that all produce some kinda .mp3 file. Unfortunately, a whole lot of them produce crap MP3s, too.

If, for some odd reason, you're forced to use crappy encoders, e.g. those based on Xing (like AudioCatalyst), for the love of god, please give us files encoded at 256kbps or higher. No, we won't disqualify you if you give us Xing @ 160kbps, but *please* don't. Thank you. Thank you very much! :) Another example of horrible software that allegedly produces MP3s is bladeenc, which is even worse than Xing. (Hooray for Tonal Purity[tm], no thanks.)

But let's hop over to the usable encoders. Many people still use the Fraunhofer encoder (to be found in Musicmatch Jukebox, Sonic Foundry Soundforge, etc), or its illegal offspring from Radium. Neither have seen any significant (or any) improvements since 1998, and the VBR files they produce are broken. It sounds good enough at 192kbps, even 160kbps are okay (this is what we've got it mind when we say "160kbps or higher"). Consider this the minimum encoding quality we want from you.

However, there's a way to make truly excellent MP3s. The magic comes with the sourcecode and is called LAME. You can get it from http://lame.sourceforge.net/ (Google will help you to find Win32 binaries of the current version 3.92.).

LAME is a truly powerful MP3 encoder that manages to squeeze the last bits of quality out of the aging MP3 specs. It's power, however, is also it's "weakness". It offers tons of options that tempt the user to tinker with delicate encoder internals. Forget about them, don't use them unless you really understand audio coding, e.g. if that's what your university study is all about or if you're developing an own lossy encoder. You're very likely to let LAME produce an MP3 that sounds worse than any of the other encoders I just ranted about.

There's a simple solution, called --alt-preset. People with very good ears and in-depth understanding of what LAME actually does, created alt-preset to allow all non-experts to create great MP3 files. Thanks to the --alt-preset switch, using LAME is no more difficult than using oggenc. Below is a complete list of Breakpoint related LAME parameters.

If you're too lazy to read all that, use

lame --alt-preset standard my_entry_mixdown.wav

... and make everyone happy.

Please remember to properly tag your MP3. Also note that, if you use a program that uses a LAME .dll and this particular program doesn't support --alt-preset, use something different. Some people say that the --r3mix preset is also very good, however, I really suggest to make use of the flexibility and quality of --alt-preset.

  1. True VBR (best and constant quality, filesize is not predictable): Variable Bit Rate mode allows the encoder to choose whatever bits it needs to maintain a given quality, without wasting bits on easy to encode parts. Best quality/size ratio.
    1. lame --alt-preset standard my_entry_mixdown.wav
      "standard" usually results in ~200kbps, great quality at reasonable filesizes. If you planned to use 192 or 224 kbps, use "standard" instead, since it will result in better quality.
    2. lame --alt-preset extreme my_entry_mixdown.wav
      "extreme" is a preset for those cursed with golden ears, results in ~260kbps MP3s. You likely don't need this.
    3. lame --alt-preset insane my_entry_mixdown.wav
      This one is truly insane. Always 320kbps at ideal settings (it's still VBR, though, MP3 just can't go any higher). If you actually need this, you shouldn't be using MP3 but a next-generation Codec, or even something lossless like FLAC (http://flac.sourceforge.net/). This is overkill, especially for Breakpoint and Internet distribution.
  2. ABR (reasonable compromise, good quality, somewhat predictable sizes): Average Bit Rate mode tells the encoder to create a file with a certain average bitrate, without being too restricted on hard or easy to encode parts. This is the mode-of-choice if standard/extreme/insane don't do it, e.g. on lower bitrates.
    1. lame --alt-preset 160 my_entry_mixdown.wav
      This would result in an ~160kbps MP3 at pretty good quality. If filesize is a concern for you and you want to submit something as small as possible for Breakpoint, this is the ideal choice. This is better than both Fraunhofer or LAME at 160kbps CBR. You can use any supported bitrate instead of the 160 in this example. However, for Breakpoint only this example makes sense. For higher bitrates, --alt-preset standard would be the setting of choice.
  3. CBR (legacy, variable quality, predictable filesize) Constant Bit Rate mode - this is here only to cover all possible alt-presets. You don't want to use this unless you really have to. Pro-CBR examples are recording to a device with a "time-left" display (as opposed to "space left", something that requires predictable filesize) or streaming on a fixed channel with a guaranteed bandwidth, which is where CBR and a bit reservoir make sense. If you don't understand this, nevermind, the loss of quality that comes with CBR isn't worth understanding this. :) If you use Fraunhofer, you're forced to CBR anyway (if you want MP3s whose displayed playing time changes randomly in players, try FhG's VBR :-/).
    1. lame --alt-preset 160 --cbr my_entry_mixdown.wav
      Creates a 160kbps CBR MP3. Sounds good ... for CBR.

I hope you found this useful. Happy encoding, good luck and good speed with your entry!

- Maxx/Kolabore