As much as a hate talking heads, here's mine, talking about the basics of video codecs.
One of the longer Tutorials yet could be far longer with all the details of codecs, but hopefully this is a good starting point which will answer some basic questions i typically hear people ask about codecs.
Here's the long written version:
What are codecs? Codecs refer to how a video is compressed, and there are two types of codecs: Lossy, and Lossless. First off, Lossless codecs are codecs which don't degrade the image at all. We typically refer to them as uncompressed and/or raw, uncompressed has no compression at all and has huge file sizes. RAW on the other hand can be compressed or uncompressed, to put it very roughly and simply; RAW packages the video and allows for some compression, but many of those as well are considered lossless, even if it does degrade the image it's considered very nearly imperceptible. So if you're using anything labeled uncompressed or RAW, you're getting the good stuff.
Now for the lossy guys, which are the bulk of this quick tip. To understand lossy codecs, let's go through thier basic settings:
Bitrates are the central control, they are referred to in numbers: lower numbers means higher compression which leads to smaller file sizes and worse quality, and higher numbers mean less compression for better quality with larger file sizes. this is the same for any codec.
But here's the trick: a bitrate of say 10 for one codec can be entirely different for another codec, which is what we called the codec's efficiency. another thing to keep in mind, is what resolution you're using, because a bitrate of say 2 might be good for standard definition video with a certain codec, but if you keep that bitrate and up the resolution, you'll get terrible results. When you're adding pixels, you need to add more data to maintain quality. Presets in your edit system will give you a very good idea of what settings are good for each codec, i usually give it a 20% or so bump in bitrate for good measure on top of whatever the preset has.
The biggest buzz word in codec world today is h.264, which is a great efficient codec, but it's also a shape shifter, because you also know it by several other names. avc intra, mpeg4 avccam, and probably a few others.
All of these are actually mpeg-4 level 10, and the reason for all this name changing is that mpeg codecs are customizable and tuneable, so each name means a company has made their own recipe. And just as it is with food, each recipe can either be delicious, or just mildly satisfying. Suffice it to say you don't need to mess with the depths of settings to get a good image, just stick with the basics and try different bit rates to see what's good for you.
And just to name a few other codecs, there is the older but still great mpeg-2, which has been the codec you have watched for years on every single dvd you've ever owned. It has also shape shifted into HDV, which consequently is not seen much anymore because it's a tape based codec. Then we have panasonic's own dvcpro codec, which is great, very good in editing, at the expense of fairly high recording bit rates.
Then there's Apple's prores which is also very high in bitrate but that also means its darn close to being lossless even though it's a lossy codec. Which codec you use depends on what you're using it for, and if that's websites, you'll mostly be using h.264. if DVD delivery, mpeg2, if bluray, likely h.264 again. Codecs like mpeg2 and h.264 can be acquisition(capture) formats, and delivery formats, and what's in the middle that's missing? Editing! Yes, although you can do it, it's not ideal to edit h.264, mpeg2, or any other Long GOP codec, because a GOP(group of pictures) means that the codec uses key frames to then base its compression for the next Group of Pictures. So when you cut your video, your cutting that series apart, and making the computer do more work. It also makes grading(coloring) your video more limited. I'll mention though that there are Non GOP versions of h.264 such as AVC-Intra, which are much better for editing.
Now a word on file extensions, such as .wmv, .mpg, .mp4. These are called containers, and they contain codecs, and the only thing you need to understand about these are that there are containers which are single codec containers, which means they only represent one codec, and then there are containers which can contain any number of different codecs, just not at the same time.