Had a bit of a brain wave and thought I would capture the output and return
it in the function. Turns out it fixed the problem so the final code ended up looking like this:
function amazon_video($atts){
extract(
shortcode_atts(
array(
'file' => $file
),
$atts
)
);
$url = get_bloginfo('url');
$return = "<embed
src="".$url."/jwplayer/player.swf"
name="player"
width="640"
height="480"
bgcolor="#000000"
allowscriptaccess="always"
allowfullscreen='true'
flashvars="file=".$file."
&streamer=rtmp://xxxxxxxxxxx.cloudfront.net/cfx/st
&provider=rtmp"
autoplay='false'
/>";
return $return;
}
add_shortcode('amazon_video','amazon_video');