Sound Level Converter
Convert between audio level units: dBm, dBu, dBV, dBW, and dBSPL.
Electrical Audio Levels
dBm0 dBm = 1 mW (into 600 Ω = 0.775 V)
0
dBu0 dBu = 0.775 V ≈ 1 mW into 600 Ω
0
dBV0 dBV = 1 V (−2.21 dBu)
-2.2185
dBW0 dBW = 1 W = 30 dBm
-30
Acoustic Sound Pressure Level (SPL)
Note: SPL uses a different reference (20 µPa) and cannot be converted to electrical units.
Pascal (Pa)
1.0024 Pa
| dBSPL | Sound Source |
|---|---|
| 0 | Threshold of hearing |
| 20 | Rustling leaves |
| 40 | Quiet room |
| 60 | Normal conversation |
| 80 | Busy traffic |
| 94 | Typical SPL measurement reference |
| 110 | Rock concert front row |
| 120 | Jet engine at 100m |
| 140 | Threshold of pain |
Domande Frequenti
Implementazione del Codice
import math
# Audio level unit conversions (electrical, 600Ω reference)
# All conversions go through watts as base
def dbm_to_watts(dbm: float) -> float:
return 0.001 * 10 ** (dbm / 10)
def watts_to_dbm(w: float) -> float:
return 10 * math.log10(w / 0.001)
def dbu_to_watts(dbu: float, impedance: float = 600) -> float:
volts = 0.7746 * 10 ** (dbu / 20)
return volts ** 2 / impedance
def watts_to_dbu(w: float, impedance: float = 600) -> float:
volts = math.sqrt(w * impedance)
return 20 * math.log10(volts / 0.7746)
def dbv_to_watts(dbv: float, impedance: float = 600) -> float:
volts = 1.0 * 10 ** (dbv / 20)
return volts ** 2 / impedance
def watts_to_dbv(w: float, impedance: float = 600) -> float:
volts = math.sqrt(w * impedance)
return 20 * math.log10(volts / 1.0)
def dbw_to_watts(dbw: float) -> float:
return 10 ** (dbw / 10)
def watts_to_dbw(w: float) -> float:
return 10 * math.log10(w)
# SPL conversions (acoustic, different domain)
def dbspl_to_pa(dbspl: float) -> float:
return 20e-6 * 10 ** (dbspl / 20)
def pa_to_dbspl(pa: float) -> float:
return 20 * math.log10(pa / 20e-6)
# Convert from dBm to all electrical units
dbm_in = 0 # 0 dBm
w = dbm_to_watts(dbm_in)
print(f"Input: {dbm_in} dBm")
print(f" dBW: {watts_to_dbw(w):.4f}")
print(f" dBu: {watts_to_dbu(w):.4f}")
print(f" dBV: {watts_to_dbv(w):.4f}")
print(f" dBm: {watts_to_dbm(w):.4f}")
# SPL reference level
print(f"\n94 dBSPL = {dbspl_to_pa(94):.4f} Pa")
print(f"20 µPa = {pa_to_dbspl(20e-6):.1f} dBSPL (threshold of hearing)")Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.