Вы неправильно пользуетесь классом
ShineMP3Encoder
(Я сужу по
исходному коду этого класса).
После создания переменной
mp3Encoder
необходимо вызвать метод
.start()
Причём нужно помнить об асинхронности работы
ShineMP3Encoder
. То есть нельзя вызывать
.saveAs()
сразу после вызова
.start()
. Нужно подписаться на событие
Event.COMPLETE
и в обработчике этого события можно сохранять полученный MP3 файл. Код будет выглядеть приблизительно следующим образом
private function startEncoding() : void {
mp3Encoder = new ShineMP3Encoder(recorder.output);
mp3Encoder.addEventListener(Event.COMPLETE, onEncodingComplete);
mp3Encoder.start();
}
private function onEncodingComplete(event : Event) : void {
mp3Encoder.saveAs();
}