Активное шумоподавление звука затвора в камере мобильного устройства

от автора

Камеры мобильных устройств Android/iOS/etc. при фотосъёмке издают характерный звук срабатывания затвора (click). В некоторых странах это требуется законодательно. Но что делать, если нашей программе нужно всё-таки беззвучно снять фотографию? Такой способ есть.

Пользователь Хабрахабра k06a (Антон Буков) на Stackoverflow предложил универсальный способ, который должен работать на всех платформах. Он предлагает использовать активное шумоподавление, то есть инвертировать звук камеры и запустить его непосредственно перед срабатыванием звука срабатывания затвора. Мы получаем абсолютно беззвучную фотосъёмку!

K06a объясняет на примере iOS.

1. Записываем системный звук затвора с помощью программы iOSSystemSoundsLibrary

2. Извлекаем файл photoShutter.caf из папки Documents, можно использовать DiskAid for Mac.

3. Открываем photoShutter.caf в звуковом редакторе (Audacity) и применяем инвесрсию.

4. Сохраняем получившийся звук в iOS и запускаем непосредственно перед тем, как снять изображение с камеры (captureStillImageAsynchronouslyFromConnection).

Антон уверяет, что работает отлично.

Если что, то уже инвертированный photoShutter2.caf можно взять здесь (зеркало).

ссылка на оригинал статьи http://habrahabr.ru/post/224055/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *