First and foremost, the bake constraints scripts needs fixed or blender will crash when you run it on an armature. download the fix from
http://www.soard-web.com/Blender/Script ... traints.py
Now for what it does to the armature. It creates a copy of it without constraints converts it's state on each frame to an IPO and inserts that into an action. Notice that it doesn't actually do anything with the constraints. Something we can use to our advantage.
So what can you do with it? The basic use is to convert slices of your animation into separate actions. That's handy, but because of the way that it works, there are some other neat tricks you can do with it.
Thinning keyframes:
Here's an interesting trick, using the ballerina bvh from some previous examples. When you import it, it creates an action on the created armature with every frame keyframed. If you open it in a text editor, you will see that there are 181 frames in the animation. Say you only wanted a key frame every 5 frames. Open up the NLA window with the armature selected. You'll see a bunch of dots, these are the keyframes for the action. Put your cursor over the dots and hit the "C" key. Click on action to NLA strip and it changes it to an NLA strip that you can change the durration on. Type the "N" key to bring up the transform properties window. In the strip end field you'll see 181. Change that to 36. 181/5=36.2 round down. In the render buttons, change the length or your scene to 36 and run bake constraints. You will now have a second armature with it's own action applied to it. In the NLA, set the strip end on that action to 181 and type alt+s to apply the scaling. You now have the same animation with a keyframe every 5 frames.
There's some others, and I'll add this shortly. Feel free to post your own.