support standalone mode using afplayer
exchangeable backend player