Step 1: Upload Voice Files
Select one or more files with the voice tracks for your guided meditation. Accepted formats: mp3, mpeg, mpg, m4a, mp4, wav, ogg, flac, aac.
📊 Resumen
Duración total: {{ formattedTotalDuration }}
Tamaño total: {{ formattedTotalSize }}
Files selected: {{ voiceFiles.length }}
{{ file.name }}
Duración: {{ file.formattedDuration }} Tamaño: {{ file.size }} Bitrate: {{ file.bitrate }} kbps
{{ errorMessage }}
Step 2: Background Music
Select up to 2 background music files. If you upload 2 files, they will be mixed automatically. If their durations differ, the shorter one will be repeated to match the longer one.
ℹ️ La meditación se generará únicamente con las voces seleccionadas, sin música de fondo.
Background files selected: {{ backgroundFiles.length }}
{{ file.name }}
Duración: {{ file.formattedDuration }} Tamaño: {{ file.size }} Bitrate: {{ file.bitrate }} kbps
🔊 Control de Volumen del Fondo
✨ Recomendación automática:
{{ recommendedAttenuationText }}
Máxima atenuación (-120dB)
(el fondo será casi imperceptible)
Nula atenuación
(el fondo sonará con el mismo volumen que la voz)
Atenuación actual: {{ backgroundAttenuation }} dB (sin cambios) (≈{{ backgroundAttenuationPercentage }}% del volumen original)
{{ errorMessage }}
Step 3: Silence Vector
Enter the silence intervals (in seconds) that you want to add between voice tracks. This field is optional.
Example: 5,10,5,3,5 (will add 5s, then 10s, then 5s, etc.)
{{ errorMessage }}
Step 4: Generating Meditation
Uploading files to server...
Progress: {{ uploadProgress }}% — {{ uploadSpeed }}
{{ statusMessage }}
{{ successMessage }}
⬇ Download Meditation

📋 Archivos Utilizados

🎤 Archivos de voz ({{ voiceFiles.length }})
#{{ entry.index }}: {{ voiceFiles[index] ? voiceFiles[index].name : 'Audio ' + entry.index }}
{{ entry.duration_formatted }}
Inicio: {{ formatTimestamp(entry.start_ms) }}
Fin: {{ formatTimestamp(entry.end_ms) }}
Silencio después: {{ entry.silence_after_s }}s
Siguiente inicio: {{ formatTimestamp(entry.next_start_ms) }}
{{ file.name }}
Duración total: {{ formattedTotalDuration }} | Tamaño total: {{ formattedTotalSize }}
🎵 Fondo musical ({{ backgroundFiles.length }})
{{ file.name }}
Atenuación aplicada: {{ backgroundAttenuation }} dB (≈{{ backgroundAttenuationPercentage }}% del volumen original)
⏸ Vector de silencios
{{ silenceVector }}

🔊 Métricas de Audio

Verificación numérica de niveles, atenuación y calidad de mezcla

📊 RMS promedio: {{ audioMetrics.final_rms.toFixed(4) }}
📈 Pico máximo: {{ audioMetrics.final_peak.toFixed(4) }} ⚠️
🎯 Relación Señal/Ruido (SNR): {{ audioMetrics.snr_db.toFixed(2) }} dB
✓ Excelente - Voz clara sobre fondo ✓ Bueno - Balance adecuado ⚠️ Aceptable - Fondo podría ser más suave ⚠️ Bajo - Fondo muy alto, dificulta audición
🎙️ Audios principales ({{ audioMetrics.meditation_audios_count }} pistas):
Audio {{ index + 1 }}
RMS: {{ rms.toFixed(4) }}
Peak: {{ audioMetrics.meditation_audios_peaks[index].toFixed(4) }}
🎵 Música de fondo:
📁 {{ audioMetrics.background_files.length }} archivos mezclados:
  • {{ file }}
📁 Archivo: {{ audioMetrics.background_files[0] }}
Sin atenuación (original)
{{ audioMetrics.background_rms_before.toFixed(4) }}
Con atenuación ({{ audioMetrics.background_attenuation_db }} dB)
{{ audioMetrics.background_rms_after.toFixed(4) }}
✓ Reducción aplicada: {{ ((1 - audioMetrics.background_rms_after / audioMetrics.background_rms_before) * 100).toFixed(1) }}% (de {{ audioMetrics.background_rms_before.toFixed(4) }} a {{ audioMetrics.background_rms_after.toFixed(4) }})
⚙️ Compensación automática:
Con {{ audioMetrics.background_files_count }} fondos mezclados, se aplicó {{ audioMetrics.background_attenuation_per_file_db }} dB a cada archivo ({{ audioMetrics.background_attenuation_db }} dB + {{ audioMetrics.background_overlay_compensation_db }} dB de compensación) para obtener la atenuación deseada en el mix final.
ℹ️ Interpretación:
  • RMS: Volumen promedio del audio (0.0-1.0). Valores más bajos = menor volumen.
  • Peak: Amplitud máxima alcanzada. Valores >0.95 pueden causar distorsión (clipping).
  • SNR: Diferencia en dB entre voz y fondo. Mayor valor = voz más clara sobre música.
  • Reducción: Porcentaje de atenuación aplicada a la música de fondo.
  • Compensación: Con múltiples fondos, se añade atenuación extra (~6dB por cada duplicación) porque al mezclar, las amplitudes se suman.
🏷️ Metadatos ID3 del MP3:
Título: {{ downloadUrl ? downloadUrl.split('/').pop().replace('.mp3', '') : 'medmix-meditation' }}
Artista: Compuesto por Dr. Óscar BASTIDAS
Álbum: MedMixer Wizard Beta
Año: {{ new Date().getFullYear() }}
Género: Meditation

📊 Detalles del Montaje

Código: {{ mixingTimeline.analysis_code }}
Duración total: {{ formatTimestamp(mixingTimeline.total_duration_ms) }}
Audios mezclados: {{ mixingTimeline.belief_count }}
Audio #{{ entry.index }}
{{ entry.duration_formatted }}
Inicio: {{ formatTimestamp(entry.start_ms) }}
Fin: {{ formatTimestamp(entry.end_ms) }}
Silencio después: {{ entry.silence_after_s }}s
Siguiente en: {{ formatTimestamp(entry.next_start_ms) }}

📋 Timeline JSON

{{ formattedTimelineJson }}
{{ errorMessage }}