音声の無音検出しきい値計算ツール
背景ノイズが-60 dBでマージンが12 dBなら、無音のしきい値は-48 dB、最小継続時間は550ミリ秒です。汎用のプリセットではなく、その録音に合った設定で、カットや分割、文字起こしの準備ができます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- ノイズフロア(dB)
- -60
- マージン(dB)
- 12
- しきい値(dB)
- -48
- 最小長(ms)
- 550
無音検出は、共通のプリセットを使うよりも、録音ごとの状態に合わせて判定基準を設定するほうが安定します。この計算ツールは、測定済みのノイズフロアと指定した安全マージンから、すぐに利用できるデシベル単位のしきい値と最小継続時間を求めます。しきい値は十分に小さい音を無音候補として識別し、継続時間は一瞬のレベル低下を意味のある無音区間と誤認するのを防ぎます。結果は決定論的で再現でき、トリミング、分割、文字起こし、品質管理にご利用いただけます。
代表的なノイズフロアを測定してください
誰も話しておらず、残すべき音も入っていない録音区間でノイズフロアを測定してください。極端に静かな一瞬ではなく、実際の環境を代表する区間を使うことが重要です。空調音、マイクプリアンプのヒス、電源のハム、遠方の交通音、圧縮によるアーティファクトも実用上の底上げ要因になります。
測定値は -60 dB のような負の値で入力します。この計算ツールは -120 から 0 dB までを受け付け、未入力、数値以外、有限でない値は拒否します。複数の環境を含む制作では、環境ごとに測定するか、安定した背景音のうち最も大きい値を安全側の基準としてご使用ください。
ノイズフロアをピークレベルや番組全体の平均ラウドネスと混同しないでください。ピークは最も強い信号を示し、フロアは目的の音が止まった後にも残る基準音を示します。別のファイルの設定を流用すると、本当の間を見逃したり、小さな必要音まで消したりする可能性があります。
マージンを選び、計算方法をご確認ください
マージンは、測定した背景音より何デシベル上に無音判定線を置くかを表します。この機能は、負でないマージンをノイズフロアへそのまま加算します。たとえば、フロアが -60 dB、マージンが 12 dB なら、しきい値は -48 dB です。
そのレベル以下の音が無音候補になりますが、時間窓、チャンネル、ラウドネスの測り方は結果を利用する音声ツール側で決まります。大きなマージンは判定線を上げ、背景音が変動しても間を見つけやすくする一方、小さな声やフェードまで含める場合があります。小さなマージンは微弱な音を守りやすいものの、環境音が揺れると間を検出できないことがあります。
負のマージンは測定済みの背景音より下に判定線を置くため拒否されます。実用的でない 60 dB 超も受け付けません。
自然な音を切らないよう最小継続時間を適用してください
しきい値だけでは、短いレベル低下をすべて無音と判定してしまいます。より安全な初期値として、この計算ツールは 250 ミリ秒に、マージンの dB ごとに 25 ミリ秒を加え、最も近いミリ秒へ丸めた最小継続時間を提示します。基準時間は子音間などの短い隙間を残し、マージンが大きく判定線が高いほど継続条件を長くすることで誤検出を抑えます。
たとえば 12 dB のマージンでは 550 ミリ秒です。編集ソフト、トランスコーダー、音声区間検出器、分割処理には、返されたしきい値以下の状態が少なくともこの時間続くことを条件として設定してください。結果を一貫した運用プリセットとして扱い、削除を伴う処理の前に代表的なファイルを試聴することをお勧めします。
表現上の長い間、静かな音楽、残響の多い部屋、マルチチャンネル録音では、より長い値やチャンネル別解析が必要です。本ツールは音声を検査せず、二つの技術的な選択を再現可能な設定へ変換します。
活用例
ポッドキャストのトリミング設定
長い間を削除する前に、録音場所ごとに再現可能な無音設定を算出できます。
文字起こし用の区間作成
記録可能な休止基準を定め、発話を処理しやすい区間へ分割できます。
メディア処理の標準化
算出したしきい値をジョブ設定へ保存し、バッチ全体へ同じ方針を適用できます。
よくある質問
しきい値はどのように計算されますか?
dB 単位のマージンを dB 単位のノイズフロアに加え、結果を小数第3位までに丸めます。
最小継続時間はどのように計算されますか?
250 ミリ秒に、マージンの dB ごとに 25 ミリ秒を加え、最も近いミリ秒に丸めます。
負のマージンが拒否されるのはなぜですか?
測定した背景音より下にしきい値を置くことになり、有効な安全マージンとして機能しないためです。
このサービスは音声を解析またはアップロードしますか?
いいえ。 数値設定だけを受け取り、決定論的な計算を行います。音声ファイルの受信や検査は行いません。
録音の背景ノイズはどう測ればよいですか?
誰も話さず意図した音も鳴っていない部分を選び、そのレベルを読み取ります(例:-60 dB)。換気音やプリアンプのヒスノイズ、電源のハムも含めます。環境が複数あるなら、それぞれ測るか最も大きい安定した背景を使います。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/audio/silence-detect-thresholds \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"noise_floor_db":-60,"margin_db":12}'const res = await fetch("https://api.kit.forhosting.com/audio/silence-detect-thresholds", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"noise_floor_db": -60,
"margin_db": 12
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/audio/silence-detect-thresholds",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"noise_floor_db": -60,
"margin_db": 12
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/audio/silence-detect-thresholds", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"noise_floor_db":-60,"margin_db":12}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"noise_floor_db":-60,"margin_db":12}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/audio/silence-detect-thresholds", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"noise_floor_db": -60,
"margin_db": 12
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "audio.silence_detect_thresholds",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
制限
max_mb | 200 |
max_minutes | 180 |
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
マージンを選び、計算方法をご確認ください
小数を入力でき、安定した JSON を返すため、しきい値は小数第3位までに丸められます。
技術的な質問
API による計算の料金はいくらですか?
API リクエストごとに $0.002 です。ブラウザー内では無料で実行していただけます。