В очень специфических, но воспроизводимых случаях я получаю audioPlayerDecodeErrorDidOccur:error:
со следующим NSError:
Error Domain=NSOSStatusErrorDomain Code=-50 "The operation couldn’t be completed. (OSStatus error -50.)"
Это происходит в игре, которая также использует OpenAL;мы воспроизводим звуки с помощью OpenAL, но пытаемся использовать аппаратное декодирование AAC.Однако возникновение вышеизложенного никак не связано с тем, что мы делаем в OpenAL.
Это происходит примерно через 2-3 секунды после того, как мы выполняем переключение сцен (игровой режим) - но только с определенными комбинациями эпизодов.Это даже странно, поскольку мы не делаем ничего важного аудио, связанного с этими событиями.Я проверил, что мы ничего не делаем с AVAudioPlayer
, но не похоже, чтобы что-то важное было сделано и с OpenAL.
Я попытался решить эту проблему, выпустив AVAudioPlayer
и заменивэто с другим, который ссылается на тот же файл, использует тот же объем и возобновляет с того же времени в файле.Однако через несколько секунд этот игрок также выдает вышеупомянутую ошибку.С другой стороны, переход на новую песню создает полностью функциональный проигрыватель, у которого нет проблем.
Мой вопрос: что означает ошибка -50 в этом контексте, или как бы вы поступили?выяснить, что это значит?
(Если это что-то значит, игра должна работать как минимум на iOS 3.1.2).
Мы попытались отключить часть кода OpenAL;это не помогло.
Код аудиобиблиотеки общедоступен на http://libxal.svn.sf.net/svnroot/libxal/trunk/