recreate source by onended event