SORU
9 Aralık 2010, PERŞEMBE


Deklanşör sesi devre dışı bırakmak için nasıl AVFoundation, ne zaman captureStillİmageAsynchronouslyFromconnection?

Kamera, AVFoundation tarafından captureStillImageAsynchronouslyFromConnection Canlı Önizleme sırasında fotoğraf çekmek için çalışıyorum. Şimdiye kadar program beklendiği gibi çalışır. Ancak, ne deklanşör sesi kapatmak.

CEVAP
20 Mayıs 2014, Salı


Bu kodu bir kere iOS varsayılan deklanşör sesi (ses dosya adları https://github.com/TUNER88/iOSSystemSoundsLibrary işte liste) yakalamak için kullanılır:

NSString *path = @"/System/Library/Audio/UISounds/photoShutter.caf";
NSString *docs = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSData *data = [NSData dataWithContentsOfFile:path];
[data writeToFile:[docs stringByAppendingPathComponent:@"photoShutter.caf"] atomically:YES];

Sonra üçüncü taraf Belgeleri photoShutter.caf ayıklamak için uygulama dizini (Mac İçin) kullandım. Bir sonraki adım Küstahlık audio photoShutter.caf açtım ve etkisi ters uygulanan, yüksek zoom: bu gibi görünüyor

enter image description here

O photoShutter2.caf Bu ses kurtardım ve sağ captureStillImageAsynchronouslyFromConnection önce: bu ses çalmak için çalıştı

static SystemSoundID soundID = 0;
if (soundID == 0) {
    NSString *path = [[NSBundle mainBundle] pathForResource:@"photoShutter2" ofType:@"caf"];
    NSURL *filePath = [NSURL fileURLWithPath:path isDirectory:NO];
    AudioServicesCreateSystemSoundID((__bridge CFURLRef)filePath, &soundID);
}
AudioServicesPlaySystemSound(soundID);

[self.stillImageOutput captureStillImageAsynchronouslyFromConnection:
...

Ve bu gerçekten işe yarıyor! Test birkaç kez, hiçbir deklanşör sesi:) duyduğum her zaman çalışır

Zaten ses ters, iPhone 5S iOS 7.1.1 bu linkten çekilen: https://www.dropbox.com/s/1echsi6ivbb85bv/photoShutter2.caf

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Juan Carlos Candela Bordera

    Juan Carlos

    4 Mart 2009
  • Perihelion

    Perihelion

    23 NİSAN 2008
  • sonia989

    sonia989

    26 EKİM 2006