2016-10-17 2 views
2

を鳴らします。私がそれを取り除くと、シャッター音は完全に上手くいく。これを防ぐ方法を教えてください。吃音シャッターは、私は次のコードを使用して、私のiOSアプリ内で撮影しています

+0

ただの推測ですが、あなたはメインからstopRunning()を呼び出すべきではありません糸? – Eiko

+0

2つの異なるスレッドから '-stopRunning()'関数を2回呼び出しているかもしれませんか? – holex

答えて

3

UIに非同期でアクセスする必要はありません。あなたが何を記述するかに基づいて、非同期ブロックが吃音の原因となるように思えます。あなたのサウンドを再生するには、メインキューを得るために試みることができる二つのアプローチ:

// everything is going swimmingly until you play the sound... 
// grab the main queue 
DispatchQueue.main.async { 
// play your sound 
} 
// and live happily ever after 

別のアプローチ:

// everything is going swimmingly until you play the sound... 
// grab the main queue 
DispatchQueue.main.suspend() 
// play your sound     
DispatchQueue.main.resume() 
// and live happily ever after 
+0

だから、最初のコードブロックを 'stopRunning()'呼び出しの周りに置きます。これにより、スタッターが防止される。しかし、私がそのビューに戻り(キャプチャセッションが再開された)、カメラボタンをもう一度押すと、サウンドが再び鳴ります。何が起こっているのでしょうか? – Tometoyou

+0

ブロック( 'startRunning()'?)の周りに置いてみてください。 – Adrian

+1

実際、吃音はちょっとしたように見えますが、今のところ、まったく同じコードで吃音しています。 – Tometoyou

関連する問題