Question

Je développe une application dans le mélange de la musique iphone. Il va mélanger la musique et l'utilisateur peut composer une nouvelle musique de celui-ci. Je dois enregistrer cette musique finale. Je l'avais utilisé AVAudiorecorder pour enregistrer celui-ci. Mais aucun changement. Il peut enregistrer son du microphone mais je dois enregistrer son application.

Je l'avais utilisé la file d'attente audio fonction de rappel pour enregistrer l'audio. Mais quand l'application fonctionne, je peux entendre le son de mon application et je ne pouvais entendre aucun son audio enregistré. Il n'y a pas de problème avec l'enregistrement puisque je peux entendre le son enregistré par le microphone. Mais je besoin d'un enregistreur hors ligne qui permet d'enregistrer la sortie audio de l'iPhone, plutôt que l'entrée audio par microphone. J'ai besoin d'un enregistreur qui permet d'enregistrer audio à l'aide ipod touch (pas de microphone).

Toute aide?

Était-ce utile?

La solution

J'ai trouvé la solution d'une autre manière. Je l'avais utilisé graphique audio composé de deux unités audio. Un mélangeur numérique et l'unité de sortie audio. J'avais créé le mélangeur avec six canaux pour que je puisse jouer six instruments en même temps. Lorsque l'utilisateur compose la musique, je vais enregistrer le contenu et pendant l'enregistrement hors ligne, je vais séquencer les instruments enregistrés dans le mélangeur.

Pour de meilleures performances que je vais arrêter le graphique audio lors du chargement de nouveaux fichiers audio ou instrument. Après le chargement des fichiers, l'enregistrement reprendra à nouveau.

En fonction de lecture d'entrée du mélangeur, en fonction du nombre de bus d'entrée, des paquets audio seront introduits dans le mélangeur. Dans le jeu d'entrée arrière de l'unité de sortie audio, se voit attribuer un nouveau tampon pour stocker la sortie du mélangeur. La sortie du mélangeur a été créé en utilisant la fonction de rendu audio. Étant donné que je ne modifie pas le tampon d'entrée audio, il n'y aura pas de son en dehors de l'application. Enfin, j'avais un enregistreur audio en mode hors connexion.

Étapes

  1. Créer une session audio à l'aide d'enregistrement et de lecture en mode
  2. Créer un graphique audio avec un mélangeur et une unité de sortie audio.
  3. Configurer les canaux de mixage ou un numéro de bus d'entrée (nombre de flux audio).
  4. Créer entrée reproduire procédé de mélangeur et l'unité audio.
  5. Configurer la source et le format audio de destination entrée de l'unité audio et les bus de sortie.
  6. Créez un fichier audio en utilisant le format de destination (pour le contrôle de l'encodage AAC pour le support d'encodage AAC).
  7. Fetch les fichiers audio et développer une méthode pour donner des paquets audio pour un canal spécifié.
  8. Dans l'entrée audio de lire mixer configurer le fetching de fichier audio.
  9. En entrée audio lecture de l'unité de sortie, utiliser la fonction audio rendre la récupération de la sortie du mélangeur dans de nouveaux tampons audio. Conservez le tampon audio dans le fichier audio ouvert.
  10. Pause enregistrement à l'aide d'arrêt graphique audio et reprendre l'enregistrement en utilisant des méthodes de démarrage graphique audio. Au cours de cet intervalle configurer le nouveau fetching fichier son.
  11. Enfin arrêter l'enregistrement et fermez le fichier audio.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top