замена для alutLoadWAVFile - PullRequest
       3

замена для alutLoadWAVFile

4 голосов
/ 12 июля 2011

Следующие вызовы функций устарели в OpenAL 1.1, что является правильной заменой ?? Единственный ответ, который я нашел в Google: «напиши свою собственную функцию !!» ; -)

alutLoadWAVFile
alutUnloadWAV

Ответы [ 2 ]

4 голосов
/ 14 июля 2011

В ALUT есть 8 функций загрузки файлов (не считая трех устаревших функций alutLoadWAVFile, alutLoadWAVMemory и alutUnloadWAV).

Префикс функции определяет, куда идут данные; четыре из них запускаются alutCreateBuffer (создать новый буфер и помещать в него звуковые данные), а остальные четыре запускаются alutLoadMemory (выделить новую область памяти и поместить в нее звуковые данные).

Суффикс функции определяет, откуда поступают данные. Возможны следующие варианты: FromFile (из файла!), FromFileImage (из области памяти), HelloWorld (фиксированные внутренние данные того, кто говорит «Привет, мир!») И Waveform (создание сигнала) .

Я считаю, что правильная замена для alutLoadWAVFile будет, следовательно, alutCreateBufferFromFile.

Однако я бы не использовал это вслепую - он подходит для коротких звуковых клипов, но, например, для музыкальная дорожка, которую вы, вероятно, хотите загрузить в виде фрагментов и поставить в очередь несколько буферов, чтобы облегчить загрузку памяти.

Кстати, все эти функции описаны в документации .

1 голос
/ 12 июля 2011

«написать свой собственный» в значительной степени правильный ответ.

Обычно вы можете отказаться от использования устаревших функций, так как большинство реализаций по-прежнему включают функции обработки файлов WAV, за одним заметным исключением является iOS, длякоторый вам нужно будет использовать службы аудиофайлов.

Я бы предложил сделать стандартный прототип для «загрузки файла WAV», а затем, в зависимости от ОС, использовать другую процедуру загрузки.Вы можете просто заглушить его вызовом alutLoadWAVFile для систем, которые, как известно, все еще поддерживают его.

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