If a user selects media that can't be found while auto scan is async processing, then a synchronous function would process to try and play the media but inform the user it can't be found after a timeout if auto scan hasn't already removed it. It should already work that way. Or I don't get your iss...