Forcer Microphone iPhone comme Entrée Audio
Je développe une application iOS (ciblé spécifiquement pour l'iPhone, pour le moment), qui exige l'application de enregistrer de l'audio seulement à partir de l'iPhone microphone interne (même lors de la sortie écouteurs/casque d'écoute est branché), et lors de la lecture de casque (on suppose casque est branché pour l'instant).
Je me demande si c'est possible actuellement avec les Api disponibles? Si oui, quelqu'un peut s'il vous plaît faire la lumière sur comment puis-je faire?
Merci!
les plus intéressants et novateurs questions naturellement ira sans réponse. vous aurez beaucoup de travail à faire sur votre propre.
L'enregistrement par micro interne et la lecture simultanée par l'intermédiaire d'un casque écouteurs (casque et micro n'est pas non utilisé) est impossible, dans iOS6. Dans iOS7, c'est possible grâce à l'API des extensions trouvé dans les AVAudioSession classe.
S. comment on peut enregistrer à partir de micro interne et de la lecture par l'intermédiaire du casque écouteurs?
L'enregistrement par micro interne et la lecture simultanée par l'intermédiaire d'un casque écouteurs (casque et micro n'est pas non utilisé) est impossible, dans iOS6. Dans iOS7, c'est possible grâce à l'API des extensions trouvé dans les AVAudioSession classe.
S. comment on peut enregistrer à partir de micro interne et de la lecture par l'intermédiaire du casque écouteurs?
OriginalL'auteur jimmyti | 2010-10-23
Vous devez vous connecter pour publier un commentaire.
Je crois que la réponse à cette question est "non". J'ai utilisé un iPhone 4 et le nouveau-pour-iOS 4 AVFoundation à l'expérience, en se concentrant sur le AVCaptureDevice classe.
J'ai ajouté ce qui suit à une application:
Donc, qui demande que tous les appareils qui peuvent être utilisés pour capturer des données audio et/ou vidéo sont répertoriés. Sans le casque d'écoute est branché, j'obtiens:
Avec le casque branché j'obtiens:
De sorte que le microphone iPhone, dépose la liste des AVCaptureDevices dès que les écouteurs deviennent disponibles. Pour sonder plus loin, j'ai ajouté un peu rapide de code à saisir la AVCaptureDevice exemple pour le périphérique audio et d'imprimer son ID unique. Pour l'appareil en lui-même identifiant comme "Microphone iPhone" et l'appareil s'identifiant comme "Casque", j'ai:
Il me semble évident que les deux appareils ne peuvent pas avoir le même ID unique, donc clairement c'est le même appareil, changer son état. Bien que AVCaptureDevices avoir beaucoup de choses pour le réglage de l'état, il est limité à visual choses, l'exposition, le flash et la balance des blancs.
OriginalL'auteur Tommy
Ressemble c'est vraiment pas possible.
Mon objectif est d'envoyer la sortie d'oreillettes bluetooth et entrée d'enregistrement de trop.
Aussi loin que je peux voir, mes meilleures options sont: "PlayAndRecord + AllowBluetoothInput" propriété
(iphone 4, nokia BH-214 casque)
IMPORTANT, c'est que, selon la documentation d'apple, vous avez toujours à RE-modifier la catégorie audio lorsque l'audio changements de route!
C'EST MON CHANGEMENT d'ITINÉRAIRE méthode ÉCOUTEUR, qui imprime: RouteChangeReasons, outputRoute, audioRout:
}
OriginalL'auteur Jaro
Depuis apple a changé le système audio à partir de 7.0, je vais les poster la mise à jour-ed code ici:
N'oubliez pas d'ajouter observateur depuis la session audio du délégué est déconseillé de trop:
PS: vous n'avez pas besoin de réinitialiser la catégorie ici (comme dans la 6.0)
OriginalL'auteur Jaro
Je suis assez sûr que c'est possible via votre application Audio de la Session:
Creuser sur ces docs:
Et laissez-moi savoir comment ça se passe!
OriginalL'auteur defbyte
Il n'est pas possible, j'essaie de comprendre avec la route a changé d'écoute (avec AudioSession). Mon résultat est : vous ne pouvez pas configurer séparément d'entrée ou de sortie en raison de catégories fourni par Apple. J'essaie *PlayAndRecord, quand je jumelage d'un périphérique bluetooth, la route à modifier comme ceci :
En fait, mon bluetooth n'est pas un casque, juste des haut-parleurs... Donc pour moi il n'y a pas de solution.
OriginalL'auteur xunien