Как я могу уменьшить размер аудио файлов WAV для приложений iPhone? - PullRequest
3 голосов
/ 08 июня 2009

У меня есть музыка, которая зацикливается. Размер файла .wav составляет около 8 мегабайт. Я загружаю это и просто зацикливаю ... все работало нормально, пока я не добавил еще 4 мегав. WAV-файла. Теперь игра вылетает ... удаление дополнительного аудиофайла исправляет сбой.

Так как я могу уменьшить размер этих файлов .wav? Я думал об освобождении памяти после того, как я закончил с файлом 4 мегабайта, но то, что я попробовал, не сработало (и я бы предпочел, чтобы сама игра имела меньший размер файла, чтобы ее было легче загрузить).

Спасибо!

Ответы [ 5 ]

7 голосов
/ 09 июня 2009

На самом деле .WAV - это контейнер. Содержимое может быть сжатым или несжатым, все зависит от структуры WAVEFORMATEX, содержащейся в первом теге «fmt» в файле .WAV.

Например, в Windows 7 все встроенные звуки являются файлами .WAV, которые содержат данные MP3.

Вы можете просто создать свои файлы .WAV как файлы MP3 и (при условии, что iPhone правильно обрабатывает контейнер .WAV) они должны работать.

7 голосов
/ 08 июня 2009

Если вы проигрываете только один звуковой файл за раз, просто используйте mp3 или aac. Таким образом, вы также получаете аппаратное декодирование для повышения производительности и времени автономной работы.

К сожалению, iPhone может одновременно воспроизводить только один аппаратный декодированный звуковой файл. Так что, если вы хотите воспроизвести более одного одновременно, вам нужно будет самостоятельно выполнить декодирование второго файла; Рекомендуется IMA 4: 1, хотя вам придется найти или внедрить собственный декодер, Apple не даст вам его.

Все это основано на этом сообщении в блоге , которое более подробно описано.

3 голосов
/ 08 июня 2009

WAV в несжатом формате неизбежно займет много места. 8 мегабайт не очень большой для несжатого WAV.

Вы должны рассмотреть альтернативный, сжатый формат, такой как mp3 или aac. Возможно, вам понадобится добавить ссылку в библиотеку декодирования.

Проверьте ссылку о включении mp3-файлов в приложение для iphone:

2 голосов
/ 08 июня 2009

Если ваши файлы WAV стереофонические, вы можете попробовать сделать их монофоническими. Это в основном половина размера файла. Недостатком, очевидно, будет то, что ваш звук теперь моно.

1 голос
/ 08 июня 2009

Я бы не использовал WAV. Взгляните на ffmpegx . Это бесплатно, работает на Mac и будет конвертировать ваши файлы волн в MP3 или множество других форматов.

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