Drum School Woody Blog
MUTE の裏話 ・ Apple のシャッター音ポリシーと無音カメラを実装した話
2026 年 5 月 9 日 ・ WOODY(個人開発者・ドラム講師)
日本版 iPhone のシャッター音について、よく勘違いされていることがあります。「日本では法律で義務付けられている」という説です。これは事実ではありません。
日本にシャッター音を強制する法律は存在しません。あるのは、Apple・キャリア・メーカーの自主規制です。だから、自分でカメラを実装すれば、シャッター音は鳴らさずに済みます。
この記事は、私が個人開発しているアプリ「MUTE」で、実際にシャッター音を消した過程の覚書です。
1. iPhone のシャッター音は誰が決めているのか
日本版 iPhone のシャッター音は、Apple の判断でハードコーディングされています。AVFoundation の AVCapturePhotoOutput で capturePhoto を呼ぶと、地域設定が日本のとき、自動でシャッター音が鳴ります。
これは音量で消せません。マナーモードでも消えません。Apple のフレームワークそのものが「日本版だから鳴らす」という分岐を持っています。
ところが、静止画を「写真」として撮らない 方法は、いくつもあるんです。
2. シャッター音を回避する 4 つのアプローチ
- 動画から 1 フレーム抜き出す。
AVCaptureMovieFileOutputを 0.1 秒だけ録画し、最初のフレームを画像として保存。シャッター音は鳴らない。 - ライブビュー(プレビューバッファ)をキャプチャする。
AVCaptureVideoDataOutputからCMSampleBufferを取得し、CIImage経由でUIImageに変換。これも音は鳴らない。 - Live Photos を使う。Live Photos の静止画フレームは
AVCapturePhotoOutput経由でも音が鳴らない動作が公式に存在する。これは Apple のドキュメントにも記載されている。 - スクリーンショット。プレビューが画面に出ているならスクリーンショットを撮るのが最もシンプル。ただし画質はディスプレイ解像度に律速される。
3. MUTE が選んだ実装
MUTE では、上記 4 つのうち 「ライブビューのバッファをキャプチャ」 を採用しました。理由は次のとおり。
- 動画フレーム抜き出しは、デバイス毎にフレーム解像度の制約があり、Pro モデルと無印モデルで品質差が出る。
- Live Photos は写真ライブラリへの保存形式に制約があり、共有先で動いてしまう。「ただの静止画」を撮りたいユーザの期待と合わない。
- スクリーンショットは画質が落ちる。
- ライブビューバッファは、4032 × 3024 のフルセンサー解像度に近い品質で取得できる。シャッター音も鳴らない。
実装は AVCaptureVideoDataOutput に captureOutput(_:didOutput:from:) デリゲートを設定し、ユーザがシャッターボタンを押した瞬間の最新バッファを UIImage に変換して PHPhotoLibrary に保存するだけ。コアの処理は 100 行程度です。
4. App Store 審査は通るのか
通ります。実際に App Store には、シャッター音が鳴らないカメラアプリが複数公開されています(Microsoft OneDrive のドキュメントスキャナ や、業務用カメラアプリなど)。Apple の自主規制は 標準カメラ App と AVCapturePhotoOutput の写真モード にのみ適用される、というのが現時点の解釈です。
ただし、審査リジェクトのリスクはゼロではありません。MUTE では、リリースノートで 「動画ベースで静止画を抽出する仕組み」 と明記し、ライブビューキャプチャを採用していることを Apple に対して透明にしました。これは「グレーゾーンを攻める」のではなく「合法的なルートを通っている」と示すための表明です。
5. 倫理的な留意 ・ 静かさは誰のためか
無音カメラには、本質的な倫理的論点があります。盗撮への悪用です。これに対して、MUTE は以下のスタンスを取りました。
- 無音はあくまでオプション。デフォルトでは標準のシャッター音が鳴る。
- 無音モードに切り替える際、初回のみ「使用シーン宣言」を求める(図書館・寝顔・電車のホーム・楽譜など、合理的な用途を選ぶ画面)。
- EXIF に「Captured with MUTE (silent mode)」のメタデータを書き込む。透明性を担保する。
- App Store の説明文でも、想定ユースケースを明記している。
6. 「シャッター音」という前提をゼロから考え直す
この設計を進めながら、私はずっとドラムレッスンの教え方の話を考えていました。「ドラムは大きい音が出る楽器だ」という前提を疑うと、電子ドラム・練習パッド・ハイブリッドな練習方法など、新しい入り口が見えてきます。 シャッター音も同じで、「カメラを構えると音が鳴る」という前提を、もう一度ゼロから考え直すと、必要なのは「写真を撮ること」であって「シャッター音を鳴らすこと」ではない、ということが見えてきます。
これは MUTE に限らず、私が作っている App Suite の他のアプリにも共通する設計哲学です。CLICK(メトロノーム)、BEAM(リモートデスクトップ)、SHIFT(シフト管理)、WOODY(ドラム講師業務)、WAKE(日の出アラーム)、DAY(カレンダー)。すべて「既製品の前提を 1 つ疑う」ところから始めています。