2011-09-16 10 views
1

私はopenCLを使ってサウンドを再生していますが、コールが入った後にサウンドが機能しなくなり、Declineを押すことに気付きました。 私は最後までそれをトレースすることができました。中断は呼び出されませんでした。end割り込みが呼び出されていないevrytime

問題は、これが5回のうち約1回だけ発生し、複製を繰り返すことです。 これは、大部分の場合endInterruptionを呼び出しますが、iOSがendInterruptionを呼び出さないことを決定するたびに、理由が分かりませんので、私のコードは大丈夫です。

答えて

2

メインスレッドではなく、バックグラウンドスレッドから「再生」機能を呼び出すかどうかを確認してください。バックグラウンドスレッドからplay/playAtTimeコールを開始することがある場合、endInterruptionコールバックは受信されません。

しかし、興味深いことに、再生呼び出しがバックグラウンドスレッドから開始された場合でも、システムはbeginInterruptionを呼び出します。

これが役に立ちます。