メインコンテンツまでスキップ

マイクロフォン

リアルタイムの波形表示、音量メーター、および詳細なオーディオエンジン診断を備えたライブ音声入力モニタリング。

録音ボタン、アクティブなデバイス情報、入力デバイスセレクター、および音量レベルの開始部分を含むマイクロフォンコントロールパネル。
ライブオーディオ波形ステータスバー、時間範囲セレクター付き音量分析グラフ、および技術的詳細パネル。

概要

Microphoneツールは、デバイスをライブオーディオモニターに変えます。AppleのAVAudioEngineを使用して選択された入力デバイスから音声をキャプチャし、PCMバッファをリアルタイムで処理し、複数の可視化パネルで結果を表示します:円形の振幅ゲージ、生のオーディオ波形、ローリング音量履歴グラフ、包括的な技術的詳細ダッシュボードです。内蔵マイク、Bluetoothヘッドセット(AirPodsのHFP含む)、有線ヘッドセットマイク、USBオーディオインターフェース、CarPlay、AirPlayなど、利用可能なすべてのオーディオ入力デバイス間をツールを離れることなく切り替えられます。

ツールを開き、マイクの許可が与えられるとモニタリングが自動的に開始されます。ツールを離れるかアプリがバックグラウンドに入ると音声キャプチャは自動的に停止し、マイクの使用が残らないようにします。

目次


画面ヘッダー

画面上部のヘッダーには以下が表示されます:

  • Microphone Monitor タイトル。
  • 録音状態インジケーター — 色付きの点とラベル:
    • Active(緑)— オーディオエンジンが稼働中で音声をキャプチャしています。
    • Inactive(灰色)— モニタリングが停止しています。
  • デバイス数 — 現在利用可能なオーディオ入力デバイスの数(例:「1 Devices」)。

マイクロフォンコントロールパネル

マイクロフォンコントロールパネルは画面の最初のカードです。ヘッダーには録音中は赤い点が点滅するRECORDINGまたはSTANDBYバッジが表示されます。

録音ボタン

パネル中央の大きな円形ボタン:

  • マイクアイコン(青)— タップするとモニタリングを開始します。オーディオエンジンが起動し、波形データが流れ始め、すべての可視化パネルがアクティブになります。
  • 停止アイコン(赤)— タップするとモニタリングを停止します。オーディオエンジンが停止し、可視化が停止します。

ボタン下のラベルは現在の状態に応じてTAP TO RECORDまたはTAP TO STOPと表示されます。

デバイス情報セクション

録音ボタンの下に、現在アクティブなオーディオ入力の情報が表示されます:

  • デバイス — アクティブな入力デバイスの名前(例:「Built-in Microphone」、「AirPods Pro」、検出されない場合は「No Microphone」)。

  • 3つのステータスカードがグリッドで表示:

    カード説明
    Statusアクティブ(緑)または非アクティブ(赤)。
    Typeデバイスのカテゴリ:Internal、Headset、Bluetooth、USB Audio、CarPlay、AirPlay、またはExternal。
    Qualityサンプルレートが48 kHz以上の場合はHIGH QUALITY、それ以外はSTANDARD。
  • グリッドの下に2つの技術仕様カード

    カード説明
    Sample Rateアクティブなオーディオセッションのサンプルレート(例:「48.0 kHz」)。
    Channelsデバイスがサポートする最大入力チャンネル数。

オーディオ入力デバイスセレクター

デバイスセレクターパネルには利用可能なすべてのオーディオ入力デバイスがリストされ、切り替えが可能です。

  • Built-in Microphone — 常に最初にリストされ、「Internal device microphone」というサブタイトル付き。外部デバイスが接続されていない場合はデフォルトで選択されます。
  • 外部デバイス — 内蔵マイクの下にリストされ、それぞれ以下を表示:
    • デバイス名(例:「AirPods Pro」、「USB Microphone」)。

    • 接続タイプを示すサブタイトル

      ポートタイプサブタイトル
      Bluetooth A2DPBluetooth A2DP
      Bluetooth HFPBluetooth Hands-Free
      Bluetooth LEBluetooth LE
      HeadphonesHeadphones
      Headset MicHeadset Microphone
      USB AudioUSB Audio
      OtherExternal Device

各デバイス行にはラジオボタンインジケーター(選択時に塗りつぶし)とアクティブデバイスのチェックマークアイコンがあります。別のデバイスをタップするとオーディオ入力が切り替わります。オーディオエンジンが再構成される間、画面上にローディングインジケーターが一時的に表示されます。

デバイスが接続または切断されると(例:AirPodsの接続)、リストは自動的に更新されます。ツールは優先順位に従い最適なデバイスを自動選択します:Bluetooth HFPが最優先、その次にヘッドセットマイク、最後に内蔵マイク。


音量レベルパネル

音量レベルパネルは現在の音声振幅の詳細なリアルタイムビューを提供します。

円形振幅ゲージ

パネル中央の円形ゲージは現在の振幅(0〜100%)に比例して塗りつぶされます。アークは緑(低)から黄色、オレンジ、赤(高)への角度グラデーションを使用します。ゲージ中央には現在の振幅パーセンテージが大きく表示されます。

音量バー

ゲージの下に、現在の振幅に応じて左から右に塗りつぶされる水平バーがあります。バーは同じ緑から赤のグラデーションを使用し、0%、25%、50%、75%、100%の目盛りが付いています。

音量メトリクス

4つのメトリックカードが2x2のグリッドで表示されます:

メトリック説明
Current瞬時の振幅をパーセンテージで表示し、レベルに応じて色分け(緑<30%、黄<60%、橙<85%、赤≥85%)。
Peak現在の波形履歴バッファ内の最高振幅値。
RMS波形履歴から計算された二乗平均平方根レベルで、平均信号エネルギーを表します。
dBFSフルスケールに対するデシベルで表した現在の振幅。計算式は20×log10(振幅)。値は約-80 dB(無音)から0 dB(フルスケール)まで。

音量ステータスバー

パネル下部のステータスバーには以下が表示されます:

  • 信号品質 — dBFSが-20 dB以上の場合は「STRONG SIGNAL」(緑)、それ以外は「MODERATE SIGNAL」(オレンジ)。
  • クリッピング警告 — 振幅が95%を超えると赤い「CLIPPING」ラベルと警告アイコンが表示され、音声信号が歪んでいる可能性を示します。

ライブオーディオ波形パネル

ライブオーディオ波形パネルは生のPCMオーディオデータをリアルタイムのオシロスコープスタイルで表示します。

波形可視化

メインエリアには生のオーディオバッファサンプル(最大1024サンプル/フレーム)から描画されたスクロール波形が表示されます。波形はシアン色で暗い背景に描かれ、プロフェッショナルなグリッドオーバーレイがあります:

  • グリッド — 視覚的な整列のための垂直および水平の基準線。
  • 中心線 — ゼロ交差点を示す破線のシアン線。
  • dBスケールマーカー — 左端に+0 dB、-20 dB、-40 dB、-60 dB、-∞のラベル。
  • グロー効果 — 信号強度に応じて強まる微妙な放射状の光。
  • 反射 — 中心線の下に薄い鏡像波形が表示され、視覚的な深みを演出。

パネルヘッダーには点滅する緑の点と現在のサンプル数(例:「1024 samples」)を示すLIVEインジケーターがあります。

信号レベルインジケーター

波形エリアの右端には10セグメントのLEDスタイルメーターがあり、信号強度に比例して点灯します。セグメントは色分けされており、緑(低)、黄(中程度)、橙(高)、赤(非常に高)です。

波形ステータスバー

パネル下部のバーには以下が表示されます:

  • 信号 — RMS信号強度をパーセンテージで表示し、色分け(灰<20%、緑<50%、橙<80%、赤≥80%)。
  • ピーク — 現在の生波形バッファのピークサンプル値。
  • サンプルレートとビット深度 — 右側に表示(例:「48kHz 24-bit」)。

音量分析パネル

音量分析パネルは時間経過に伴う音声振幅のローリング履歴グラフを表示し、従来のボリュームメーターのように機能します。

時間範囲セレクター

パネルヘッダーにはセグメントコントロールがあり、グラフに表示する時間範囲を選択できます:

範囲サンプル数
1秒50
5秒250
10秒500

音量グラフ

メインエリアには振幅履歴の塗りつぶし波形グラフ(最大60データポイント)が描画されます。グラフは振幅レベルに基づく緑から赤のグラデーション塗りつぶし、微妙なグロー効果、下部に鏡像反射があります。

参照線が描かれます:

  • 50%ごとの主要線と10%ごとの副線を含む詳細なグリッド。
  • 25%、50%、75%の破線参照線はレベルに応じて色分け。
  • 左側に0%〜100%のパーセンテージスケール。
  • 下部にサンプル範囲を示す時間スケール。

VUメーターバー

グラフの右端には20セグメントのVUメーターがあり、現在の振幅に応じて下から上に塗りつぶされます。セグメントは色分けされ、緑(0〜50%)、黄(50〜75%)、橙(75〜90%)、赤(90〜100%)です。

統計バー

パネル下部には4つの統計値が横並びで表示されます:

統計説明
最小現在の波形履歴内の最小振幅(青)。
最大現在の履歴内の最大振幅(赤)。
平均履歴バッファ全体の平均振幅(黄)。
現在最新の振幅値でレベルに応じて色分け。

技術的詳細パネル

技術的詳細パネルはオーディオエンジン、オーディオセッション、ハードウェア構成の完全な状態を表示する包括的なダッシュボードです。モニタリング中はすべての値が0.5秒ごとに更新されます。

パフォーマンス指標

指標説明
Sample Rateアクティブなオーディオセッションのサンプルレート(例:「48.0 kHz」)。
Buffer Sizeオーディオエンジンのバッファサイズ(フレーム単位、例:1024)。
Input Latencyオーディオセッションが報告する入力レイテンシ(ミリ秒)。10 msを超える場合は強調表示。
IO BufferI/Oバッファの持続時間(ミリ秒)。

オーディオレベル

指標説明
Peak Levelピーク振幅のパーセンテージ。クリッピング検出時(95%以上)は赤で強調表示。
RMS Level二乗平均平方根振幅のパーセンテージ。
dBFSフルスケールに対するデシベル。-20 dBを超える場合は黄色で強調表示。
Signal Quality信号対雑音比に基づく品質:Excellent(SNR > 40 dB)、Good(SNR > 20 dB)、Fair(SNR > 10 dB)、Poor。

デバイス構成

指標説明
Current Route現在アクティブなオーディオ入力デバイスの名前。
Input Channels利用可能な最大入力チャンネル数。
Polar Pattern入力データソースの推奨指向性パターン(例:全指向性)。

セッション状態

指標説明
Engine Status実行中(緑)または停止中(赤)。
CategoryアクティブなAVAudioSessionカテゴリ(例:PlayAndRecord)。
Modeアクティブなオーディオセッションモード(例:VoiceChat)。
Optionsアクティブなカテゴリオプション(例:「BT ・ Mix」)。

ルート変更

オーディオルートの変更が検出されると、このセクションが表示されます:

指標説明
Last Change最も最近のルート変更のタイムスタンプ。
Reason変更理由:新しいデバイス利用可能、デバイス切断、カテゴリ変更、ルートオーバーライド、スリープ復帰、適切なルートなし、構成変更、または不明。

システム情報

指標説明
Timestamp現在のシステム時刻。
Samples現在の生波形バッファ内のサンプル数。
Uptimeシステムの稼働時間(秒)。

追加パフォーマンス

指標説明
Output Latencyオーディオセッションが報告する出力レイテンシ(ミリ秒)。
Preferred Rateツールが要求する推奨サンプルレート。
Preferred Bufferツールが要求する推奨I/Oバッファ持続時間(ミリ秒)。
Preferred Channels推奨入力チャンネル数。

エンジン詳細

指標説明
Input Formatオーディオエンジンの入力ノードのAVAudioFormatの詳細(サンプルレート、チャンネル数、ビット深度、インターリーブ)。
Output Formatオーディオエンジンの出力ノードのAVAudioFormatの詳細。
Node Countオーディオエンジンに接続されているノード数。
Max Frames手動レンダリング時の最大フレーム数(エンジンが手動レンダリングモードの場合のみ表示)。

品質指標

指標説明
Average Level波形履歴バッファ全体の平均振幅。
Dynamic RangeピークdBFSレベルとノイズフロア(-60 dB基準)の差(dB単位)。
Noise FloorRMSレベルをdBFSで表した背景ノイズレベル。
Clippingピーク振幅が95%を超える場合は「Yes」(赤、強調表示)、それ以外は「No」(緑)。

セッション状態詳細

指標説明
Session Active他のオーディオが再生中の場合は「Background Audio」、それ以外は「Active」。
Audio Hintシステムが二次オーディオの消音を推奨する場合は「Should Silence」、それ以外は「Can Mix」。

ハードウェア詳細

指標説明
Max Output Channelsサポートされる最大出力チャンネル数。
Input Availableオーディオ入力ハードウェアが利用可能かどうか。
Input Gain現在の入力ゲイン値(設定可能な場合)、またはN/A。
Input Data Sourceアクティブな入力データソースの名前(例:「Bottom」、「Front」、「Back」)。
System Volume現在のシステム出力音量(0.00〜1.00)。

セッションフォーマット情報

アクティブな入力データソースの生の説明で、システムレベルの詳細文字列を提供します。


プライバシー免責事項

画面下部には盾アイコン付きのプライバシー免責事項があり、音声データは保存、録音、送信されず、すべての処理はデバイス上でリアルタイムに行われることを明記しています。


権限

  • マイクロフォン権限 — すべての機能に必須です。オーディオエンジンが初めて初期化される際にシステムの許可プロンプトが自動的に表示されます。
  • 許可が未決定の場合、Lirumはアクセス許可を与えるボタン付きの許可画面を表示し、システムプロンプトをトリガーします。
  • 以前に拒否された場合、Lirumは設定を開くボタンを表示し、ユーザーをiOS設定アプリにリダイレクトしてマイクアクセスを再有効化できます。

技術的詳細

  • ツールはAVAudioEngineを使用し、バス0に入力タップを設置してPCMオーディオバッファをキャプチャします。バッファサイズは1024フレームです。
  • オーディオセッションは.playAndRecordカテゴリと.voiceChatモードで構成され、.allowBluetooth.mixWithOthersオプションが有効です。これによりBluetooth HFPデバイス(AirPodsなど)が入力ソースとして検出可能になります。
  • 応答性の高い可視化のために5 msの推奨I/Oバッファ持続時間を要求しています。
  • Bluetooth以外のデバイスには48 kHzの推奨サンプルレートを要求します。Bluetooth HFPデバイスにはフォーマットの競合を避けるためシステムに任せています。
  • RMS振幅はPCMバッファから次の式で計算されます:sqrt(sum(sample^2) / count)、その後5倍にスケーリングし[0,1]にクランプします。
  • dBFS(フルスケールに対するデシベル)は20 * log10(振幅)で計算されます。
  • 生波形の更新はUIの過剰更新を防ぐため60 fpsに制限されています。
  • 波形履歴バッファは最大60データポイントを保持し、各ディスプレイリンクフレームで振幅バッファから処理されます。
  • CADisplayLinkは最大120 fpsで動作し、フレーム間に収集された振幅サンプルの平均を計算して波形履歴を更新します。
  • オーディオエンジンの詳細はタイマーで0.5秒ごとにポーリングされます。
  • 入力デバイスを切り替える際は、オーディオエンジンを完全に停止・再作成し、新しいオーディオセッションで正しいフォーマットを使用します。切り替え中はローディングオーバーレイが表示されます(UX向上のため最低300 ms表示、2秒のタイムアウトフォールバックあり)。
  • Bluetoothフォーマット処理 — Bluetoothデバイスの場合、タップはnilフォーマットで設置し、システムが適切なフォーマットを自動選択するようにします。これによりHFPデバイスで発生しがちな無効なフォーマットエラーを回避します。
  • オーディオルート変更AVAudioSession.routeChangeNotificationで監視されます。新しいデバイスの出現や既存デバイスの削除時にリストが自動更新され、録音中は最適なデバイスで再起動します。ルート変更は再起動ループ防止のため300 ms以上の間隔で制限されます。
  • デバイス自動選択優先順位:Bluetooth HFP、ヘッドセットマイク、内蔵マイク。
  • ツールが非表示になるかアプリがバックグラウンドに入ると、オーディオエンジンは停止し、オーディオセッションは完全に非アクティブ化されます(カテゴリを.ambientに切り替え、.notifyOthersOnDeactivationで非アクティブ化)。これによりマイクが解放され、他のアプリがオーディオ再生を再開できます。

注意事項と制限

  • ツールはライブ音声入力レベルをモニターします。音声データの録音、保存、送信は行いません。
  • 入力デバイスを切り替える際、Lirumはオーディオエンジンの再構成中に短時間ローディングインジケーターを表示します。通常1秒未満で完了します。
  • BluetoothヘッドセットやUSBマイクは内蔵マイクと異なるゲインレベルやサンプルレートを報告する場合があります。
  • Bluetooth HFPデバイス(例:AirPods)では、Hands-Free Profileの制限によりサンプルレートが低く(例:16 kHzまたは8 kHz)なることがあります。
  • クリッピングインジケーターは振幅がフルスケールの95%を超えた場合に点灯します。持続的なクリッピングは入力ゲインが高すぎるか、音源がマイクに近すぎる可能性を示します。
  • アプリがバックグラウンドに入るか最小化されると音声モニタリングは自動的に停止し、マイクアクセスが残らないようにします。