added AudioSource as object and changed the API