The error was that i_distance
was a std_logic_vector and speaker_distance
was an integer. Obviously this did not synthesize because of the difference in types here. I solved it with this simple expression
distance <= conv_integer(i_distance);
This made both integers, which allowed the design to synthesize. Thanks for the help.