Frage

Ich habe eine Audio-Warteschlange bekam, dass ich spielen habe, Stoppen, Pausieren richtig, aber ich finde die AudioQueueStop () Funktion eine lange Zeit zu nehmen auszuführen.

Ich möchte sofort beenden und starten Sie eine Audio-Warteschlange zu spielen und frage mich, was der schnellste Weg, so wäre zu tun.

In meinem Projekt habe ich mehrere Audio-Warteschlangen haben, dass ich um zu halten bestimmte Sounds immer und immer wieder zu spielen. Es ist eine Situation, wo ich einige dieser Geräusche stoppen müssen und dann sofort ihnen und viele mehr auf einmal spielen. Es ist nicht so schlimm, wenn es nur ein paar Audio-Warteschlangen sind, dass ich dies tun, aber es beginnt eine lange lange Zeit, wenn es viele sind, dass ich stoppen und neu starten müssen.

ich konnte fälschen durch den Anschlag auf eine Audio-Warteschlange aufrufen und dann eine neue mit dem gleichen Sound zu kreieren, aber frage mich, ob es einen besseren Weg, dies zu tun.

War es hilfreich?

Lösung

AudioQueue kann unordentlich für diese Art von Sachen sein. Es ist schwierig, die Warteschlange Mitte Puffer zu stoppen, und das heißt der aktuelle Puffer wird weiter spielen. Außerdem müssen Sie mit Latenzproblemen beschäftigen.

Für einen schnellen Stopp und Wiedergabe mit niedriger Latenzzeit, rate ich würde die RemoteIO Audio Unit verwendet wird.

Sie können ein großes Tutorial mit Code finden Sie hier:

Mit RemoteIO Audioeinheit

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top