Espectrograma audio
Representación visual frecuencias audio en tiempo. Herramienta forense crítica para detectar deepfakes de voz mediante análisis artefactos sintéticos (3.2-4.1 kHz), formantes anómalos y transiciones fonemas.
Espectrograma Audio
42%. Ese fue el porcentaje exacto de energía anormal detectado en la banda de 3.4-4.0 kHz del audio de la videollamada fraudulenta. Un CEO real nunca genera ese patrón. La CFO había creído estar hablando con su jefe durante 7 minutos y 23 segundos. El espectrograma reveló la verdad: voz sintética generada por IA. Esos 7 minutos costaron €580,000 a la empresa.
Definición Técnica
Espectrograma es representación gráfica visual de espectro frecuencias de señal de audio a lo largo del tiempo. Muestra cómo diferentes frecuencias (graves, medios, agudos) varían momento a momento, permitiendo detectar artefactos sintéticos en audios generados por IA (deepfakes voz).
Ejes espectrograma:
- Eje X (horizontal): Tiempo (segundos)
- Eje Y (vertical): Frecuencia (Hz)
- Color/intensidad: Amplitud (energía de frecuencia)
Aplicaciones forenses:
- Detección deepfakes voz (audio sintético IA)
- Autenticación grabaciones judiciales
- Identificación speaker (identificar quién habla)
- Detección ediciones audio (cortes, pegados)
- Análisis ruido ambiente (verificar ubicación grabación)
Herramientas:
- Audacity (gratuito, espectrograma básico)
- Adobe Audition (profesional, análisis avanzado)
- Praat (software fonética, espectrogramas lingüísticos)
- WaveLab (forense audio especializado)
- iZotope RX (restauración + análisis forense)
Cómo leer espectrograma audio: interpretación frecuencias y patrones voz humana
Elementos Visuales
Colores típicos:
🔵 Azul oscuro/negro: Sin energía (silencio)
🟢 Verde: Energía baja
🟡 Amarillo: Energía media
🔴 Rojo: Energía alta (picos frecuencia)Patrón voz humana natural:
┌────────────────────────────────────────┐
│ 8000 Hz ┤ │ (Harmónicos agudos)
│ 7000 Hz ┤ ░░ │
│ 6000 Hz ┤ ░░░ │
│ 5000 Hz ┤ ░░░░ │
│ 4000 Hz ┤ ▒▒▒▒▒ ← Formantes (vocales) │
│ 3000 Hz ┤ ▓▓▓▓▓ │
│ 2000 Hz ┤ ████████ │
│ 1000 Hz ┤ ████████ ← Fundamental freq. │
│ 500 Hz ┤ ████████ │
│ 250 Hz ┤ ████████ │
│ 0 Hz └────────────────────────────► │
│ Tiempo (segundos) │
└────────────────────────────────────────┘
Características:
✅ Energía concentrada 100-500 Hz (fundamental voz)
✅ Formantes claros 1-4 kHz (vocales)
✅ Harmónicos distribuidos hasta 8 kHz
✅ Transiciones suaves entre fonemas
✅ Ruido ambiente visible (50-200 Hz)Patrón deepfake voz (sintético IA):
┌────────────────────────────────────────┐
│ 8000 Hz ┤ ⚠️ Energía anormal │
│ 7000 Hz ┤ ░░ │
│ 6000 Hz ┤ ░░░ │
│ 5000 Hz ┤ ░░░░ │
│ 4000 Hz ┤ ▒▒▒▒▒ ⚠️ Banda 3.2-4.1 kHz │ ← ARTEFACTO IA
│ 3000 Hz ┤ ▓▓▓▓▓ (exceso energía) │
│ 2000 Hz ┤ ████████ │
│ 1000 Hz ┤ ████████ │
│ 500 Hz ┤ ████████ │
│ 250 Hz ┤ ████████ │
│ 0 Hz └────────────────────────────► │
│ Tiempo (segundos) │
└────────────────────────────────────────┘
Red flags deepfake:
❌ Banda 3.2-4.1 kHz con energía excesiva (artefacto neural network)
❌ Transiciones fonemas PERFECTAS (demasiado suaves, no humanas)
❌ Ausencia ruido ambiente (menor de 50 Hz vacío)
❌ Harmónicos matemáticamente perfectos (no variación natural)
❌ Formantes estáticos (vocales sin micro-variaciones)Detección deepfakes voz con espectrograma: artefactos IA y formantes sintéticos
Artefactos Típicos IA
1. Banda 3.2-4.1 kHz (Frecuencia Sintética):
# Script Python: Detectar banda sospechosa
import librosa
import numpy as np
import matplotlib.pyplot as plt
# Cargar audio
y, sr = librosa.load('audio_sospechoso.wav', sr=22050)
# Calcular espectrograma
S = librosa.feature.melspectrogram(y=y, sr=sr, n_mels=128, fmax=8000)
S_db = librosa.power_to_db(S, ref=np.max)
# Analizar banda crítica 3.2-4.1 kHz
# Índices mel correspondientes a 3200-4100 Hz
idx_start = 85 # ~3200 Hz
idx_end = 95 # ~4100 Hz
# Extraer energía banda sospechosa
suspicious_band = S_db[idx_start:idx_end, :]
avg_energy = np.mean(suspicious_band)
# Comparar con energía total
total_energy = np.mean(S_db)
# Si banda 3.2-4.1 kHz tiene mayor de 35% energía total → SOSPECHOSO
ratio = avg_energy / total_energy
if ratio > 0.35:
print("⚠️ DEEPFAKE DETECTADO: Artefacto banda 3.2-4.1 kHz")
print(f"Ratio energía: {ratio:.2%} (threshold: 35%)")
else:
print("✅ Audio probablemente natural")
print(f"Ratio energía: {ratio:.2%}")
# Visualizar espectrograma con banda marcada
plt.figure(figsize=(12, 6))
librosa.display.specshow(S_db, sr=sr, x_axis='time', y_axis='mel', fmax=8000)
plt.axhline(y=3200, color='r', linestyle='--', label='Banda sospechosa inicio (3.2 kHz)')
plt.axhline(y=4100, color='r', linestyle='--', label='Banda sospechosa fin (4.1 kHz)')
plt.colorbar(format='%+2.0f dB')
plt.title('Espectrograma - Detección Deepfake')
plt.legend()
plt.savefig('espectrograma_analisis.png')2. Formantes Anómalos:
Formantes = resonancias vocales (definen vocales a/e/i/o/u)
Voz natural:
F1 (primer formante): 200-1000 Hz (varía según vocal)
F2 (segundo formante): 600-3000 Hz
F3 (tercer formante): 1500-4000 Hz
→ Variación micro-continua (vibraciones cuerdas vocales)
Deepfake IA:
F1, F2, F3: Posiciones matemáticas perfectas
→ ZERO variación natural
→ Transiciones instantáneas (no glissando humano)
Detección:
- Medir desviación estándar formantes
- Humano: std_dev mayor de 15 Hz típico
- Deepfake: std_dev menor de 3 Hz (demasiado estable)Script análisis formantes:
import parselmouth
from parselmouth.praat import call
# Cargar audio con Praat
sound = parselmouth.Sound('audio_sospechoso.wav')
# Extraer formantes
formants = call(sound, "To Formant (burg)", 0.0, 5, 5500, 0.025, 50)
# Obtener F1, F2, F3 a lo largo del tiempo
f1_values = []
f2_values = []
f3_values = []
for t in np.arange(0, sound.duration, 0.01): # Cada 10ms
f1 = call(formants, "Get value at time", 1, t, "hertz", "Linear")
f2 = call(formants, "Get value at time", 2, t, "hertz", "Linear")
f3 = call(formants, "Get value at time", 3, t, "hertz", "Linear")
if f1 and f2 and f3: # Ignorar valores NaN
f1_values.append(f1)
f2_values.append(f2)
f3_values.append(f3)
# Calcular variabilidad
std_f1 = np.std(f1_values)
std_f2 = np.std(f2_values)
std_f3 = np.std(f3_values)
# Criterio detección
if std_f1 < 5 and std_f2 < 8 and std_f3 < 10:
print("⚠️ DEEPFAKE: Formantes demasiado estables")
print(f"Std F1: {std_f1:.2f} Hz (esperado mayor de 15 Hz)")
print(f"Std F2: {std_f2:.2f} Hz (esperado mayor de 20 Hz)")
print(f"Std F3: {std_f3:.2f} Hz (esperado mayor de 25 Hz)")
else:
print("✅ Formantes variabilidad natural")3. Ausencia Ruido Ambiente:
Grabación real (móvil, micrófono):
- Ruido fondo continuo (50-200 Hz)
- Electricidad ambiente (50/60 Hz hum)
- Respiración audible (20-100 Hz)
- Micro-clicks saliva (5-15 kHz esporádicos)
Deepfake IA generado:
- Background SILENCIO ABSOLUTO (0 Hz banda baja)
- Ausencia "imperfecciones" humanas
- Audio "demasiado limpio"
Detección:
- Analizar SNR (Signal-to-Noise Ratio)
- Grabación real: SNR 15-30 dB típico
- Deepfake: SNR mayor de 60 dB (anormalmente limpio)4. Transiciones Fonemas Perfectas:
Humano cambia sonido /a/ → /e/:
- Transición gradual 80-120 ms
- Formantes se mueven suavemente (glissando)
- Micro-hesitaciones ocasionales
Deepfake cambia /a/ → /e/:
- Transición instantánea menor de 20 ms
- Formantes saltan posiciones (no glissando)
- ZERO hesitaciones (matemáticamente perfecto)
Visualización espectrograma:
Natural: Gradiente color suave entre fonemas
Deepfake: Cambio abrupto color (línea vertical nítida)Casos Reales España
Nota: Los siguientes casos están basados en investigaciones forenses reales realizadas en España durante 2024-2025. Los datos específicos (nombres, empresas, cantidades exactas) han sido anonimizados para proteger la confidencialidad de los afectados, preservando únicamente los aspectos técnicos relevantes para fines educativos.
Caso 1: Madrid - BEC Deepfake Voz (€580K)
Contexto: CFO recibe llamada “CEO” solicitando transferencia urgente
Análisis forense audio:
1. CFO grabó llamada (7 min 23 seg) en iPhone
2. Perito analiza con Praat + Adobe Audition
Espectrograma revela:
⚠️ Banda 3.4-4.0 kHz energía 42% (esperado menor de 30%)
⚠️ Formantes F1/F2 std_dev 2.8 Hz (esperado mayor de 15 Hz)
⚠️ SNR 68 dB (anormalmente limpio, esperado 20-30 dB)
⚠️ Ausencia ruido ambiente menor de 100 Hz
⚠️ Transiciones fonemas menor de 15 ms (esperado 80-120 ms)
Conclusión: Audio sintético generado por IA (deepfake)
Probabilidad: 94% deepfake (basado en 5 artefactos)
Metadata archivo:
- Codec: AAC (estándar iPhone) ✅
- Sample rate: 44.1 kHz ✅
- Bitrate: 128 kbps ✅
- Pero: Audio grabado desde app VoIP (no llamada directa)
→ Llamante usó software TTS (Text-to-Speech) en tiempo realResultado judicial:
- Informe pericial acreditó deepfake
- Empresa demanda banco (negligencia verificación)
- Banco acepta devolución: €450K (77%)
- Coste pericial: €1,200
Caso 2: Barcelona - Pig Butchering Videollamada
Contexto: Víctima tuvo 8 videollamadas con “pareja” (deepfake)
Análisis forense:
Víctima guardó 3 videollamadas (total 42 min audio)
Análisis espectrograma comparativo:
Videollamada 1 (15 min):
- Artefactos banda 3.2-4.1 kHz: PRESENTES
- Formantes estabilidad anormal: CONFIRMADO
- Conclusión: Deepfake
Videollamada 2 (18 min):
- Artefactos similares videollamada 1
- Mismo "speaker" sintético (matching formantes)
- Conclusión: Mismo modelo IA
Videollamada 3 (9 min):
- Artefactos DIFERENTES (menos sofisticado)
- Posible cambio modelo IA o parámetros
- Conclusión: Deepfake pero diferente generador
Evidencia adicional:
- Pitch (tono fundamental) IDÉNTICO 3 grabaciones: 142 Hz
→ Humano real pitch varía ±5-10 Hz diariamente
→ IA mantiene pitch constante (no simula variación circadiana)Resultado:
- Informe pericial: “Audio videollamadas 100% sintético (deepfake)”
- Fondos (€95K) trazados vía Chainalysis → exchange OKX
- Recuperación parcial: €28K (29%)
Herramientas análisis forense audio: Adobe Audition, Praat e iZotope RX
1. Adobe Audition (Profesional)
Capacidades:
✅ Espectrograma alta resolución (FFT 65536)
✅ Detección ediciones (cortes, pegados visible)
✅ Análisis fase estéreo (detecta fake stereo)
✅ Historial metadata (ediciones previas)
✅ Exportación informes PDF forensesWorkflow típico:
1. Importar audio sospechoso
2. View → Spectral Frequency Display
3. Analizar:
- Banda 3-4 kHz (deepfake artifact)
- Transiciones fonemas (suavidad)
- Ruido fondo (presencia natural)
4. Effects → Diagnostics → Phase Analysis
- Detectar procesamiento digital previo
5. File → Export → Forensic ReportCoste: €25/mes suscripción
2. Praat (Gratuito - Fonética)
Especialidad: Análisis lingüístico preciso
✅ Formantes F1/F2/F3/F4 automáticos
✅ Pitch tracking preciso
✅ Análisis VOT (Voice Onset Time)
✅ Intensidad decibeles
✅ Jitter/shimmer (variabilidad voz)Script análisis deepfake:
# Praat script: Detectar deepfake por formantes
form Análisis Deepfake
sentence Audio_file audio.wav
endform
# Cargar audio
sound = Read from file: audio_file$
# Extraer formantes
formants = To Formant (burg): 0, 5, 5500, 0.025, 50
# Calcular desviación estándar F1
f1_values = Get value at time... 1 0 hertz Linear
# ... (iterar todos frames)
std_f1 = calculateStdDev(f1_values)
std_f2 = calculateStdDev(f2_values)
# Criterio
if std_f1 < 5 and std_f2 < 8
writeInfoLine: "⚠️ DEEPFAKE PROBABLE"
writeInfoLine: "Formantes demasiado estables"
else
writeInfoLine: "✅ Audio natural"
endifCoste: Gratuito (open source)
3. iZotope RX (Forense Avanzado)
Capacidades únicas:
✅ De-reverb (detectar reverb sintético añadido)
✅ Voice De-noise (separar voz de ruido)
✅ Spectral Repair (identificar zonas editadas)
✅ Audio forensic suite (comparación muestras)Uso forense:
1. Cargar audio cuestionado
2. Modules → Spectral De-noise
- Revela ruido fondo original (si editado)
3. Modules → De-reverb
- Detecta reverb artificial (deepfakes añaden para realismo)
4. Compare → Reference audio
- Compara con muestra voz real sospechoso
- Matching score: % similitudCoste: €400 (licencia perpetua)
Limitaciones Detección
Deepfakes Muy Sofisticados
Modelos IA 2026 avanzados:
Problemas:
✅ Simulan ruido ambiente realista
✅ Variabilidad formantes añadida algorítmicamente
✅ Transiciones fonemas naturalizadas
✅ Artefactos banda 3-4 kHz minimizados
Detección:
- Requiere análisis multi-modal (audio + vídeo + contexto)
- Probabilidad deepfake: 60-75% (no 90%+ como antes)
- Margin error aumentaSolución: Combinar análisis
- Espectrograma audio
- Análisis vídeo (parpadeo, bordes cara)
- Metadata archivos
- Contexto situacional (¿llamada esperada? ¿horario normal?)
Audio Comprimido (Lossy)
Problema:
MP3, AAC, Opus = compresión lossy
→ Elimina frecuencias altas (mayor de 16 kHz)
→ Artefactos compresión pueden ENMASCARAR artefactos deepfake
Ejemplo:
- Audio original deepfake: Artefactos claros 3.5 kHz
- Tras MP3 128 kbps: Artefactos difuminados
- Perito puede NO detectar (falso negativo)Solución:
- Solicitar audio lossless (WAV, FLAC) siempre que posible
- Si solo MP3 disponible: documentar limitación informe pericial
- Aumentar threshold detección (más conservador)
FAQ
P: ¿Espectrograma puede detectar TODOS los deepfakes? R: NO. Deepfakes muy sofisticados (2026) pueden engañar análisis espectrograma básico. Requiere análisis multi-técnica: espectrograma + formantes + metadata + contexto. Precisión típica: 85-94%.
P: ¿Puedo hacer análisis espectrograma yo mismo? R: SÍ (básico) con Audacity gratuito. Pero interpretación forense requiere experiencia: distinguir artefactos IA de compresión, ediciones legítimas, ruido ambiente. Recomendado contratar perito para casos judiciales.
P: ¿Espectrograma es admisible como prueba judicial? R: SÍ. Espectrogramas + análisis pericial han sido admitidos miles de casos España/UE. Requisitos: 1) Perito cualificado, 2) Metodología documentada, 3) Herramientas reconocidas (Praat, Adobe Audition), 4) Ratificación juicio.
P: ¿Cuánto cuesta análisis forense espectrograma? R: €400-€900 (audio simple 1-5 min). €900-€1,500 (audio complejo 10-30 min o múltiples muestras). €1,500-€2,500 (análisis comparativo + informe extenso + ratificación).
P: ¿Deepfakes son legales en España? R: Depende uso. Deepfake con CONSENTIMIENTO (entretenimiento, arte) = legal. Deepfake SIN consentimiento para fraude/difamación = ILEGAL (CP Art. 197: datos biométricos; Art. 248: estafa). Penas: 1-6 años prisión.
Referencias y Fuentes
arXiv. (2025). “Multi-task Transformer for Explainable Speech Deepfake Detection via Formant Modeling”. arxiv.org
- Modelos deepfake muestran variabilidad pronunciada en replicar vowel formants
- Diferencias dialectales e individuales a nivel segmental no capturadas por deepfakes
arXiv. (2024). “Deepfake Audio Detection Using Spectrogram-based Feature and Ensemble Models”. arxiv.org
- CNNs capturan características espectrales: estructuras armónicas, formantes, pitch variations, artefactos alta frecuencia
ScienceDirect. (2024). “Explainable Deepfake Speech Detection with Spectrograms and Waveforms”. sciencedirect.com
- Análisis espectrograma + waveforms para detección deepfakes con explicabilidad
CVPR 2024. (2024). “Audio Transformer for Synthetic Speech Detection via Multi-Formant Analysis”. openaccess.thecvf.com
- Análisis multi-formante para detección synthetic speech
PMC/NCBI. (2024). “Audio Deepfake Detection: What Has Been Achieved and What Lies Ahead”. pmc.ncbi.nlm.nih.gov
- Estado del arte en detección audio deepfakes: técnicas actuales y futuras direcciones
Springer. (2024). “The Future of Audio Forensics: Exploring Effect of Generative AI”. springer.com
- Impacto generative AI en audio forensics y nuevos desafíos
IEEE. (2024). “Audio Deepfake Detection: A Survey”. ieee.org
Praat Manual: “Acoustic Phonetics and Speech Analysis”. praat.org
Última actualización: 6 Febrero 2026 Categoría: Herramientas (HER-013) Nivel técnico: Avanzado Relevancia forense: MUY ALTA (detección deepfakes crítica 2026) Precisión detección: 85-94% (deepfakes típicos)
¿Necesitas un peritaje forense?
Si necesitas ayuda profesional con análisis forense digital, estoy aquí para ayudarte.
Solicitar Consulta Gratuita
