Apple a mis en place de superbes cadres pour cela! Le framework AVFoundation et le framework CoreAudio seront les plus utiles pour vous.
Pour obtenir des informations de niveau audio, AVAudioRecorder
est utile. Bien qu'il soit fait pour être utilisé pour l'enregistrement, il fournit également des données de niveaux pour le microphone. Ce serait utile pour déformer votre image de base sur la façon forte l'utilisateur crie son téléphone;)
Voici la documentation de pomme pour AVAudioRecorder
: AVAudioRecorder Class Reference
Un peu plus en détail:
// You will need an AVAudioRecorder object
AVAudioRecorder *myRecorderObject;
// To be able to get levels data from the microphone you need
// to enable metering for your recorder object
[myRecorderObject prepareToRecord];
myRecorderObject.meteringEnabled=YES;
// Now you can poll the microphone to get some levels data
float peakPower = [myRecorderObject peakPowerForChannel:0];
float averagePower = [myRecorderObject averagePowerForChannel:0];
Si vous voulez voir un bon exemple de la façon dont un objet AVAudioRecorder peut être utilisé pour obtenir des données de niveaux, consultez le tutorial.
En ce qui concerne la déformation de votre image, ce serait une bibliothèque d'images. Il y a beaucoup de choses à choisir et d'excellentes pommes. Je ne suis pas familier avec quoi que ce soit, alors c'est peut-être à quelqu'un d'autre de répondre.
Bonne chance!
Si vous êtes un débutant à l'utilisation du microphone sur l'iPhone, consultez ce tutoriel: http://www.mobileorchard.com/tutorial-detecting-when-a-user-blows-into-the-mic/ – Jay
Excellent merci! –