Choisissez entre construit en micro et casque en iOS
Nous sommes développer une application qui doit modifier l'audio de la route dans iOS. Nous avons besoin d'obtenir des informations à partir de l'entrée micro et de changer pour le micro interne de l'appareil pour enregistrer le son ambiant.
Nous avons vu 2 sujets de ces pages: Forcer Microphone iPhone comme Entrée Audio et Utilisez le micro intégré si le Casque est branché mais je suppose qu'il n'y a aucun mot de la fin en fonction de cette situation.
Maintenant, le code fonctionne, mais nous pouvons choisir la voie de l'entrée audio.
Nous n'avons rien trouvé dans la documentation fournie par Apple (Remote IO).
Il n'y a rien de nouveau à ce sujet?
Merci!
OriginalL'auteur the_moon | 2012-11-13
Vous devez vous connecter pour publier un commentaire.
Avertissement: Cette réponse s'applique à iOS6. Il n'est pas correct pour iOS7 ou plus tard. Voir les commentaires pour plus de détails.
C'est possible, mais uniquement avec un effet secondaire. Modification de l'entrée de l'appareil modifie également la sortie de l'appareil. Vous ne pourrez pas vous enregistrer via le micro interne et dans le même temps listend à votre enregistrement en temps réel à travers le casque d'écouteurs. Cela signifie que si vous ne voulez pas écouter simultanément à votre enregistrement à travers le casque, il y a une solution pour vous:
Quand avoir un casque (= combinée casque et micro), vous pouvez choisir entre deux solutions:
(Vous ne pouvez pas utiliser un mélange de ces derniers.)
Vous choisissez l'une des solutions de rechange en définissant la propriété kAudioSessionProperty_OverrideAudioroute par le biais de la fonction AudioSessionSetProperty de la Session Audio API de Services. La documentation de la propriété dit:
Il est obsolète sur iOS 7, l'utilisation AVAudioSession - setPreferredInput:
Iwaz commentaire est très important: Désormais, iOS7, il est possible pour une Application à sélectionner indépendamment voies d'entrée et de sortie des itinéraires. E. g. vous pouvez utiliser le microphone interne pour enregistrer le son et de jouer ce son, simultanément, par le biais de la connexion d'un casque du casque, tandis que le microphone de l'oreillette reste inutilisée. Ce n'était pas possible dans iOS6. L'étendu de l'API est dans le AVAudioSession classe.
pouvez-vous donner un exemple de comment vous pouvez jouer et enregistrer à partir de différents itinéraires? À l'aide de lequel api?
L'API a changé depuis que j'ai posté cette réponse. Je n'ai pas travaillé avec la nouvelle API, de sorte que je ne peux pas vous donner un exemple, tout simplement parce que je ne suis pas un expert sur ce plus. Cependant, parce que ce que vous avez demandé est important, je pense qu'il vaut le temps que vous ouvrez une autre question sur stackoverflow pour obtenir la bonne quantité d'attention pour ce sujet. En outre, le succès de l'expert, qui jette une certaine lumière sur elle, puis a la chance de gagner les points pour son travail.
OriginalL'auteur Daniel S.