J'ai passé toute la nuit à essayer de comprendre celui-ci. Mon code est fondamentalement le même que l'exemple d'Apple here. Cependant, l'appareil ne joue que le premier tampon placé dans la file d'attente (j'entends le contenu du premier tampon lorsque l'application démarre). Après cela, aucun son ne sortira de l'appareil. La lecture est toujours en cours alors que AQS continue à déclencher ma fonction . De plus, chaque appel à AQS renvoie 0, donc rien n'échoue.Les services de file d'attente audio sur iPhone ne lisent que le premier tampon mis en file d'attente?
Maintenant, je peux obtenir des tampons suivants à jouer tant que j'appelle AudioQueueEnqueueBuffer
de WITHIN ma fonction de rappel. Cela ne fonctionnera pas car je ne peux que remplir et mettre en file d'attente les tampons à partir de mon rappel AudioFileStream_PacketsProc
comme les données cines de la socket et dans AudioFileStreamParseBytes
.
Quelqu'un d'autre a ce problème? On dirait un bug dans AQS pour moi ...
Merci, Andrew
J'ai un problème similaire, pouvez-vous s'il vous plaît fournir un peu plus de perspicacité. – Amitg2k12