Как да подходим към аудио проект

Искам да създам приложение за iOS, което записва или взема аудио от файл, дава на потребителя избор да приложи филтър и възпроизвежда споменатото аудио с приложения филтър.

Въпреки това съм напълно несигурен как да подходя към този проект. Как най-добре да променя звука на аудио файл?

Трябва ли да използвам Core Audio, OpenAL или има други аудио машини, които правят това още по-лесно? Къде би било доброто място да започнете да учите за неща като това?

Благодаря за всеки съвет, който можете да ми дадете! :)


person Mauin    schedule 25.03.2013    source източник


Отговори (3)


Core Audio е начинът на Apple и има много примери онлайн за работа с него. За да приложите филтри, ще използвате AudioUnits

Току-що беше пуснат нов аудио двигател, наречен The Amazing Audio Engine, изграден върху CoreAudio, който може да бъде полезен.

Добра книга е Learning Core Audio: A Hands- на Крис Адамсън в Ръководство за аудио програмиране за Mac и iOS

person iain    schedule 25.03.2013

OpenAL не е проектиран за тази цел. Той е основно за възпроизвеждане на аудио без никакви ефекти, различни от промяна на височината (което също води до ускоряване или намаляване на скоростта) и други много основни манипулации на аудиото. Ако искате да приложите по-стабилни аудио филтри и ефекти, технологията Core Audio и Audio Unit е правилният начин. Има добра (и една от малкото) книги, издадени последно година за изучаване на Core Audio, но наскоро пусната е и аудио машината, която вече беше спомената във вашите отговори.

person Jerome Baldridge    schedule 17.04.2013

Е, веднъж работих с аудио в C# и използвах Бас аудио библиотека Ако работите в Visual C++, мисля можете да опитате DirectSound библиотеки от DirectX, но той поддържа само wav файлов формат (некомпресирано аудио), така че ако искате да пуснете mp3, трябва да декомпресирате "в движение" и да изпратите потока към буфер на directsound.

Дайте повече подробности, моля.

person kristi_io    schedule 25.03.2013
comment
Искам да създам приложение за iOS, което да прави всички тези неща, така че предполагам, че DirectX не може да става. - person Mauin; 25.03.2013
comment
@kristi_io: просто премахнете отговора си тогава. - person lpapp; 21.04.2014