refactoring and lazy fetch of audio data