Keyframe animation interpolation and vbo

I want to render .md2 animation model.

With glVertex it’s not too difficult to interpolate the position of vertices betwen each frame. But how to do it with vertex buffer ?
If i create the vertex buffer on each frame, it will be very slow.

I have an idea:
I could send to a vertex shader the vertex positions of the current frame, and add the vertex positions of the next frame as texture coordinates and compute the interpolated position of the current vertices in the shader.

But is it the best solution ?

that will certainly work, and even though it might not be the best solution (frankly, keyframe animation is not exactly optimal for VBO), i think you will have a hard time finding a better one.

I will try to use skeleton animation.
I have found source code for loading Doom III .md5 files. But there is not a lot of commentary and i can’t find any tutorial which explain how .md5 files work.

Is there any good tutorial about skeleton animation which could allow me to understand the .md5 file format ?