add implementation for speaker.