Вы сказали своему экземпляру AVAudioPlayer, что ваш класс BeatMaker реализует протокол AVAudioPlayerDelegate со следующей строкой:
theAudio.delegate = self;
Но, очевидно, ваш класс BeatMaker не сказал компилятору, что это на самом деле AVAudioPlayerDelegate.Вы должны сделать это в файле заголовка:
@interface BeatMaker : NSObject <AVAudioPlayerDelegate> { ... }
Затем вам нужно убедиться, что вы реализовали все необходимые функции протокола AVAudioPlayerDelegate в своем классе BeatMaker.
В этом случае нет необходимых функций для протокола, поэтому, если вы просто копируете код и на самом деле не хотите получать сообщения из Audio, вы можете просто удалить строку, присваивающую себя делегатусобственность Аудио.