I have used intellicast for years, they seem to come the closest to getting it right.