AudioServicesCreateSystemSoundID утечка памяти? - PullRequest
0 голосов
/ 16 апреля 2009

Я только начал использовать инструменты и функцию обнаружения утечек. Я отслеживал свой код и обнаружил утечку при вызове метода:

AudioServicesCreateSystemSoundID

Я в основном использую файл SoundEffect.m из примера кода Metronome. Я использую звуковой файл, который изначально был .wav, и я с помощью Itunes преобразовал его в aif и переименовал в caf. Он играет очень хорошо, и только когда я запустил инструменты, я понял, что произошла утечка.

Странно то, что когда я использую другой звуковой файл (tick.caf - из примера проекта Mentronome) - утечки нет. Та же проблема описана здесь без реального ответа на вопрос:

http://discussions.apple.com/thread.jspa?messageID=8360344

В любом случае, есть ли причина, по которой мой звуковой файл может вызвать утечку? Audio Toolkit особенно требователен к аудиофайлу, который он пытается воспроизвести ??

Ответы [ 2 ]

2 голосов
/ 16 апреля 2009

Я не понимаю, почему это может привести к утечке, но, возможно, в AudioServices есть ошибка при воспроизведении файла aiff с именем caf. Попробуйте конвертировать, используя afconvert, чтобы получить настоящий caf файл с вашего Mac:

afconvert -f caff -d ima4 input.mp3 output.caf
0 голосов
/ 18 сентября 2009

Используйте AudioServicesDisposeSystemSoundID для удаления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...