Local bone keyframe values to world positions?

Hope someone can help on an issue I’m having reading bone keyframe values.

I’m using fcurve.evaluate(keyframe) function to get the bone values from the transformation fcurves, but they are coming back in local space. But I need to convert those values to a world space position, so taking into account the amartures positions. Just wondering what the best method would be?

Thanks for any assistance.