{"id":4603,"date":"2026-02-17T22:15:03","date_gmt":"2026-02-18T03:15:03","guid":{"rendered":"https:\/\/smartdsp.pro\/?page_id=4603"},"modified":"2026-05-08T15:39:53","modified_gmt":"2026-05-08T20:39:53","slug":"loudness-analyzer","status":"publish","type":"page","link":"https:\/\/smartdsp.pro\/fr\/loudness-analyzer\/","title":{"rendered":"Analyseur de volume sonore"},"content":{"rendered":"<p>[et_pb_section fb_built=&#8221;1&#8243; _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;#000000&#8243; background_image=&#8221;https:\/\/smartdsp.pro\/wp-content\/uploads\/2022\/10\/streamer-79.png&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_row _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_code _builder_version=&#8221;4.27.6&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;]<!DOCTYPE html><!-- [et_pb_line_break_holder] --><html lang=\"en\"><!-- [et_pb_line_break_holder] --><head><!-- [et_pb_line_break_holder] --><meta charset=\"UTF-8\"><!-- [et_pb_line_break_holder] --><meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"><!-- [et_pb_line_break_holder] --><title>Loudness Analyzer<\/title><!-- [et_pb_line_break_holder] --><link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\"><!-- [et_pb_line_break_holder] --><link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin><!-- [et_pb_line_break_holder] --><link href=\"https:\/\/fonts.googleapis.com\/css2?family=Be+Vietnam+Pro:ital,wght@0,300;0,400;0,500;0,600;0,700;0,800;1,400&#038;display=swap\" rel=\"stylesheet\"><!-- [et_pb_line_break_holder] --><\/p>\n<style><!-- [et_pb_line_break_holder] -->  :root {<!-- [et_pb_line_break_holder] -->    --accent:        #f3be29;<!-- [et_pb_line_break_holder] -->    --accent-hover:  #f99c06;<!-- [et_pb_line_break_holder] -->    --accent-pink:   #cd3ba7;<!-- [et_pb_line_break_holder] -->    --gradient:      linear-gradient(135deg, #f3be29 0%, #cd3ba7 100%);<!-- [et_pb_line_break_holder] -->    --gradient-soft: linear-gradient(135deg, rgba(243,190,41,0.13) 0%, rgba(205,59,167,0.13) 100%);<!-- [et_pb_line_break_holder] -->    --gradient-glow: linear-gradient(135deg, rgba(243,190,41,0.06) 0%, rgba(205,59,167,0.06) 100%);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    --glass:         rgba(255,255,255,0.04);<!-- [et_pb_line_break_holder] -->    --glass-b:       rgba(255,255,255,0.08);<!-- [et_pb_line_break_holder] -->    --glass-b2:      rgba(255,255,255,0.13);<!-- [et_pb_line_break_holder] -->    --glass-hover:   rgba(255,255,255,0.065);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    --text:          #ffffff;<!-- [et_pb_line_break_holder] -->    --text-sub:      rgba(255,255,255,0.58);<!-- [et_pb_line_break_holder] -->    --text-muted:    white;<!-- [et_pb_line_break_holder] -->    --text-faint:    rgba(255,255,255,0.60);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    --good:  #3ecf8e;<!-- [et_pb_line_break_holder] -->    --warn:  #f3be29;<!-- [et_pb_line_break_holder] -->    --bad:   #f16c6c;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    --r:     14px;<!-- [et_pb_line_break_holder] -->    --r-sm:  9px;<!-- [et_pb_line_break_holder] -->    --r-xs:  6px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  body {<!-- [et_pb_line_break_holder] -->    background: transparent;<!-- [et_pb_line_break_holder] -->    color: var(--text);<!-- [et_pb_line_break_holder] -->    font-family: 'Be Vietnam Pro', sans-serif;<!-- [et_pb_line_break_holder] -->    -webkit-font-smoothing: antialiased;<!-- [et_pb_line_break_holder] -->    min-height: 100vh;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Layout \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la {<!-- [et_pb_line_break_holder] -->    max-width: 860px;<!-- [et_pb_line_break_holder] -->    margin: 0 auto;<!-- [et_pb_line_break_holder] -->    padding: 52px 24px 72px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Header \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-header { margin-bottom: 40px; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-badge {<!-- [et_pb_line_break_holder] -->    display: inline-flex;<!-- [et_pb_line_break_holder] -->    align-items: center;<!-- [et_pb_line_break_holder] -->    gap: 7px;<!-- [et_pb_line_break_holder] -->    padding: 5px 14px 5px 10px;<!-- [et_pb_line_break_holder] -->    border-radius: 100px;<!-- [et_pb_line_break_holder] -->    border: 1px solid rgba(8, 156, 4,0.22);<!-- [et_pb_line_break_holder] -->    background: rgba(28, 156, 4,0.06);<!-- [et_pb_line_break_holder] -->    margin-bottom: 20px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-badge-pip {<!-- [et_pb_line_break_holder] -->    width: 5px; height: 5px;<!-- [et_pb_line_break_holder] -->    border-radius: 50%;<!-- [et_pb_line_break_holder] -->    background: #089c04;<!-- [et_pb_line_break_holder] -->    box-shadow: 0 0 7px #089c04;<!-- [et_pb_line_break_holder] -->    animation: pip 2.5s ease infinite;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  @keyframes pip {<!-- [et_pb_line_break_holder] -->    0%,100%{ opacity:1; box-shadow:0 0 7px var(--accent); }<!-- [et_pb_line_break_holder] -->    50%     { opacity:0.35; box-shadow:0 0 2px var(--accent); }<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-badge-text {<!-- [et_pb_line_break_holder] -->    font-size: 10px;<!-- [et_pb_line_break_holder] -->    font-weight: 600;<!-- [et_pb_line_break_holder] -->    letter-spacing: 0.1em;<!-- [et_pb_line_break_holder] -->    text-transform: uppercase;<!-- [et_pb_line_break_holder] -->    color: #089c04;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  h1.la-title {<!-- [et_pb_line_break_holder] -->    font-size: clamp(28px, 4.8vw, 40px);<!-- [et_pb_line_break_holder] -->    font-weight: 800;<!-- [et_pb_line_break_holder] -->    letter-spacing: -0.035em;<!-- [et_pb_line_break_holder] -->    line-height: 1.06;<!-- [et_pb_line_break_holder] -->    color: var(--text);<!-- [et_pb_line_break_holder] -->    margin-bottom: 10px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  h1.la-title .gr {<!-- [et_pb_line_break_holder] -->    background: var(--gradient);<!-- [et_pb_line_break_holder] -->    -webkit-background-clip: text;<!-- [et_pb_line_break_holder] -->    -webkit-text-fill-color: transparent;<!-- [et_pb_line_break_holder] -->    background-clip: text;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  <!-- [et_pb_line_break_holder] -->    h1 {<!-- [et_pb_line_break_holder] -->    background: var(--gradient);<!-- [et_pb_line_break_holder] -->    -webkit-background-clip: text;<!-- [et_pb_line_break_holder] -->    -webkit-text-fill-color: transparent;<!-- [et_pb_line_break_holder] -->    background-clip: text;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-desc {<!-- [et_pb_line_break_holder] -->    font-size: 13.5px;<!-- [et_pb_line_break_holder] -->    font-weight: 400;<!-- [et_pb_line_break_holder] -->    color: var(--text-muted);<!-- [et_pb_line_break_holder] -->    line-height: 1.65;<!-- [et_pb_line_break_holder] -->    max-width: auto;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Drop Zone \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-drop {<!-- [et_pb_line_break_holder] -->    position: relative;<!-- [et_pb_line_break_holder] -->    border: 1.5px dashed var(--glass-b2);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r);<!-- [et_pb_line_break_holder] -->    padding: 56px 32px;<!-- [et_pb_line_break_holder] -->    text-align: center;<!-- [et_pb_line_break_holder] -->    cursor: pointer;<!-- [et_pb_line_break_holder] -->    background: var(--glass);<!-- [et_pb_line_break_holder] -->    backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    -webkit-backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    overflow: hidden;<!-- [et_pb_line_break_holder] -->    transition: border-color 0.25s, background 0.25s, transform 0.22s;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-drop::after {<!-- [et_pb_line_break_holder] -->    content:'';<!-- [et_pb_line_break_holder] -->    position:absolute; inset:0;<!-- [et_pb_line_break_holder] -->    background: var(--gradient-glow);<!-- [et_pb_line_break_holder] -->    opacity:0;<!-- [et_pb_line_break_holder] -->    transition: opacity 0.3s;<!-- [et_pb_line_break_holder] -->    pointer-events:none;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-drop:hover, .la-drop.drag {<!-- [et_pb_line_break_holder] -->    border-color: rgba(243,190,41,0.42);<!-- [et_pb_line_break_holder] -->    background: rgba(243,190,41,0.035);<!-- [et_pb_line_break_holder] -->    transform: translateY(-2px);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-drop:hover::after, .la-drop.drag::after { opacity:1; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-drop-icon {<!-- [et_pb_line_break_holder] -->    width: 58px; height: 58px;<!-- [et_pb_line_break_holder] -->    border-radius: 16px;<!-- [et_pb_line_break_holder] -->    background: var(--gradient-soft);<!-- [et_pb_line_break_holder] -->    border: 1px solid rgba(243,190,41,0.18);<!-- [et_pb_line_break_holder] -->    display: flex; align-items:center; justify-content:center;<!-- [et_pb_line_break_holder] -->    margin: 0 auto 20px;<!-- [et_pb_line_break_holder] -->    color: var(--accent);<!-- [et_pb_line_break_holder] -->    transition: transform 0.35s cubic-bezier(0.34,1.56,0.64,1);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-drop:hover .la-drop-icon { transform: translateY(-5px) scale(1.06); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-drop-title {<!-- [et_pb_line_break_holder] -->    font-size: 15px;<!-- [et_pb_line_break_holder] -->    font-weight: 700;<!-- [et_pb_line_break_holder] -->    letter-spacing: -0.015em;<!-- [et_pb_line_break_holder] -->    color: var(--text);<!-- [et_pb_line_break_holder] -->    margin-bottom: 7px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-drop-sub {<!-- [et_pb_line_break_holder] -->    font-size: 12.5px;<!-- [et_pb_line_break_holder] -->    color: var(--text-muted);<!-- [et_pb_line_break_holder] -->    line-height: 1.7;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-drop-sub b {<!-- [et_pb_line_break_holder] -->    font-weight: 700;<!-- [et_pb_line_break_holder] -->    background: var(--gradient);<!-- [et_pb_line_break_holder] -->    -webkit-background-clip: text;<!-- [et_pb_line_break_holder] -->    -webkit-text-fill-color: transparent;<!-- [et_pb_line_break_holder] -->    background-clip: text;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-formats {<!-- [et_pb_line_break_holder] -->    display: flex;<!-- [et_pb_line_break_holder] -->    flex-wrap: wrap;<!-- [et_pb_line_break_holder] -->    gap: 5px;<!-- [et_pb_line_break_holder] -->    justify-content: center;<!-- [et_pb_line_break_holder] -->    margin-top: 18px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-fmt {<!-- [et_pb_line_break_holder] -->    font-size: 9.5px;<!-- [et_pb_line_break_holder] -->    font-weight: 700;<!-- [et_pb_line_break_holder] -->    letter-spacing: 0.07em;<!-- [et_pb_line_break_holder] -->    text-transform: uppercase;<!-- [et_pb_line_break_holder] -->    padding: 3px 9px;<!-- [et_pb_line_break_holder] -->    border-radius: 100px;<!-- [et_pb_line_break_holder] -->    background: rgba(255,255,255,0.04);<!-- [et_pb_line_break_holder] -->    border: 1px solid rgba(255,255,255,0.08);<!-- [et_pb_line_break_holder] -->    color: var(--text-muted);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  input[type=\"file\"] { display:none; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Analyzing \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-analyzing {<!-- [et_pb_line_break_holder] -->    display: none;<!-- [et_pb_line_break_holder] -->    background: var(--glass);<!-- [et_pb_line_break_holder] -->    backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    -webkit-backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    border: 1px solid var(--glass-b);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r);<!-- [et_pb_line_break_holder] -->    padding: 48px 32px;<!-- [et_pb_line_break_holder] -->    text-align: center;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-viz {<!-- [et_pb_line_break_holder] -->    display: flex; align-items:center; justify-content:center;<!-- [et_pb_line_break_holder] -->    gap: 3.5px; height: 56px; margin-bottom: 26px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-vbar {<!-- [et_pb_line_break_holder] -->    width: 3.5px; border-radius: 3px;<!-- [et_pb_line_break_holder] -->    animation: vbar 1.15s ease-in-out infinite;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  @keyframes vbar {<!-- [et_pb_line_break_holder] -->    0%,100% { height:5px; opacity:0.3; }<!-- [et_pb_line_break_holder] -->    50%      { height:46px; opacity:1; }<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-analyzing-title {<!-- [et_pb_line_break_holder] -->    font-size: 14px; font-weight: 700;<!-- [et_pb_line_break_holder] -->    letter-spacing: -0.015em;<!-- [et_pb_line_break_holder] -->    color: var(--text); margin-bottom: 5px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-analyzing-file {<!-- [et_pb_line_break_holder] -->    font-size: 11.5px; font-weight: 400;<!-- [et_pb_line_break_holder] -->    color: var(--text-muted); margin-bottom: 22px;<!-- [et_pb_line_break_holder] -->    max-width: 380px; margin-left:auto; margin-right:auto;<!-- [et_pb_line_break_holder] -->    overflow:hidden; text-overflow:ellipsis; white-space:nowrap;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-prog {<!-- [et_pb_line_break_holder] -->    height: 2px; background: rgba(255,255,255,0.07);<!-- [et_pb_line_break_holder] -->    border-radius: 2px; overflow:hidden;<!-- [et_pb_line_break_holder] -->    max-width: 300px; margin: 0 auto;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-prog-fill {<!-- [et_pb_line_break_holder] -->    height:100%; background: var(--gradient);<!-- [et_pb_line_break_holder] -->    border-radius:2px; width:0%;<!-- [et_pb_line_break_holder] -->    transition: width 0.35s ease;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Results \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-results {<!-- [et_pb_line_break_holder] -->    display: none;<!-- [et_pb_line_break_holder] -->    animation: fadeup 0.45s cubic-bezier(0.22,1,0.36,1) both;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  @keyframes fadeup {<!-- [et_pb_line_break_holder] -->    from { opacity:0; transform:translateY(16px); }<!-- [et_pb_line_break_holder] -->    to   { opacity:1; transform:translateY(0); }<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* File bar *\/<!-- [et_pb_line_break_holder] -->  .la-filebar {<!-- [et_pb_line_break_holder] -->    display: flex; align-items:center; justify-content:space-between;<!-- [et_pb_line_break_holder] -->    gap: 14px; flex-wrap: wrap;<!-- [et_pb_line_break_holder] -->    padding: 14px 18px;<!-- [et_pb_line_break_holder] -->    background: var(--glass);<!-- [et_pb_line_break_holder] -->    backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    -webkit-backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    border: 1px solid var(--glass-b);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r);<!-- [et_pb_line_break_holder] -->    margin-bottom: 14px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-file-name {<!-- [et_pb_line_break_holder] -->    font-size: 13.5px; font-weight: 700; letter-spacing: -0.015em;<!-- [et_pb_line_break_holder] -->    color: var(--text);<!-- [et_pb_line_break_holder] -->    white-space:nowrap; overflow:hidden; text-overflow:ellipsis;<!-- [et_pb_line_break_holder] -->    max-width: 380px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-file-meta {<!-- [et_pb_line_break_holder] -->    font-size: 10.5px; font-weight: 400;<!-- [et_pb_line_break_holder] -->    color: var(--text-muted); margin-top: 2px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-btns { display:flex; gap:8px; flex-shrink:0; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* Buttons *\/<!-- [et_pb_line_break_holder] -->  .btn {<!-- [et_pb_line_break_holder] -->    display: inline-flex; align-items:center; gap:6px;<!-- [et_pb_line_break_holder] -->    padding: 8px 17px;<!-- [et_pb_line_break_holder] -->    border-radius: var(--r-sm);<!-- [et_pb_line_break_holder] -->    font-family: 'Be Vietnam Pro', sans-serif;<!-- [et_pb_line_break_holder] -->    font-size: 12px; font-weight: 700; letter-spacing: 0.01em;<!-- [et_pb_line_break_holder] -->    cursor: pointer; transition: all 0.2s ease;<!-- [et_pb_line_break_holder] -->    border: none; outline: none; white-space: nowrap;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .btn-grad {<!-- [et_pb_line_break_holder] -->    background: var(--gradient);<!-- [et_pb_line_break_holder] -->    color: #140700;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .btn-grad:hover {<!-- [et_pb_line_break_holder] -->    filter: brightness(1.1);<!-- [et_pb_line_break_holder] -->    transform: translateY(-1px);<!-- [et_pb_line_break_holder] -->    box-shadow: 0 8px 22px rgba(243,190,41,0.22);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .btn-ghost {<!-- [et_pb_line_break_holder] -->    background: var(--glass);<!-- [et_pb_line_break_holder] -->    border: 1px solid var(--glass-b2);<!-- [et_pb_line_break_holder] -->    color: var(--text-sub);<!-- [et_pb_line_break_holder] -->    backdrop-filter: blur(8px);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .btn-ghost:hover {<!-- [et_pb_line_break_holder] -->    background: var(--glass-hover);<!-- [et_pb_line_break_holder] -->    border-color: rgba(243,190,41,0.28);<!-- [et_pb_line_break_holder] -->    color: var(--text);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Metrics \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-grid {<!-- [et_pb_line_break_holder] -->    display: grid;<!-- [et_pb_line_break_holder] -->    grid-template-columns: repeat(3,1fr);<!-- [et_pb_line_break_holder] -->    gap: 10px;<!-- [et_pb_line_break_holder] -->    margin-bottom: 14px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  @media(max-width:580px){ .la-grid{ grid-template-columns:repeat(2,1fr); } }<!-- [et_pb_line_break_holder] -->  @media(max-width:340px){ .la-grid{ grid-template-columns:1fr; } }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-card {<!-- [et_pb_line_break_holder] -->    background: var(--glass);<!-- [et_pb_line_break_holder] -->    border: 1px solid var(--glass-b);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r);<!-- [et_pb_line_break_holder] -->    padding: 19px 18px 17px;<!-- [et_pb_line_break_holder] -->    position: relative; overflow:hidden;<!-- [et_pb_line_break_holder] -->    backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    -webkit-backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    transition: border-color 0.2s, transform 0.22s;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-card:hover { border-color: var(--glass-b2); transform: translateY(-2px); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-card::before {<!-- [et_pb_line_break_holder] -->    content:'';<!-- [et_pb_line_break_holder] -->    position:absolute; top:0; left:0; right:0;<!-- [et_pb_line_break_holder] -->    height: 1.5px;<!-- [et_pb_line_break_holder] -->    background: var(--cline, transparent);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r) var(--r) 0 0;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-card-hero {<!-- [et_pb_line_break_holder] -->    background: linear-gradient(135deg, rgba(243,190,41,0.07) 0%, rgba(205,59,167,0.06) 100%);<!-- [et_pb_line_break_holder] -->    border-color: rgba(243,190,41,0.2);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-card-hero::before { background: var(--gradient); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-lbl {<!-- [et_pb_line_break_holder] -->    font-size: 9.5px; font-weight: 700;<!-- [et_pb_line_break_holder] -->    text-transform: uppercase; letter-spacing: 0.1em;<!-- [et_pb_line_break_holder] -->    color: var(--text-muted); margin-bottom: 12px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-val {<!-- [et_pb_line_break_holder] -->    font-size: 30px; font-weight: 800;<!-- [et_pb_line_break_holder] -->    letter-spacing: -0.04em; line-height:1;<!-- [et_pb_line_break_holder] -->    color: var(--text);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-card-hero .la-val {<!-- [et_pb_line_break_holder] -->    background: var(--gradient);<!-- [et_pb_line_break_holder] -->    -webkit-background-clip: text;<!-- [et_pb_line_break_holder] -->    -webkit-text-fill-color: transparent;<!-- [et_pb_line_break_holder] -->    background-clip: text;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-unit {<!-- [et_pb_line_break_holder] -->    font-size: 10px; font-weight: 600;<!-- [et_pb_line_break_holder] -->    color: var(--text-muted); margin-top:5px; letter-spacing:0.04em;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-bar {<!-- [et_pb_line_break_holder] -->    height: 2px; background: rgba(255,255,255,0.06);<!-- [et_pb_line_break_holder] -->    border-radius:2px; margin-top:14px; overflow:hidden;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-bar-fill {<!-- [et_pb_line_break_holder] -->    height:100%; border-radius:2px; width:0%;<!-- [et_pb_line_break_holder] -->    transition: width 1.1s cubic-bezier(0.4,0,0.2,1);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Divider \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-div {<!-- [et_pb_line_break_holder] -->    display:flex; align-items:center; gap:12px;<!-- [et_pb_line_break_holder] -->    margin: 18px 0 12px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-div-line { flex:1; height:1px; background:var(--glass-b); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-div-txt {<!-- [et_pb_line_break_holder] -->    font-size: 9.5px; font-weight:700; letter-spacing:0.1em;<!-- [et_pb_line_break_holder] -->    text-transform:uppercase; color:var(--text-muted); white-space:nowrap;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Expand \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-expand {<!-- [et_pb_line_break_holder] -->    width:100%;<!-- [et_pb_line_break_holder] -->    background: var(--glass);<!-- [et_pb_line_break_holder] -->    border: 1px solid var(--glass-b);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r);<!-- [et_pb_line_break_holder] -->    padding: 14px 18px;<!-- [et_pb_line_break_holder] -->    display:flex; align-items:center; justify-content:space-between;<!-- [et_pb_line_break_holder] -->    cursor:pointer;<!-- [et_pb_line_break_holder] -->    backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    -webkit-backdrop-filter: blur(16px);<!-- [et_pb_line_break_holder] -->    transition: all 0.2s;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-expand:hover {<!-- [et_pb_line_break_holder] -->    border-color: rgba(243,190,41,0.28);<!-- [et_pb_line_break_holder] -->    background: var(--glass-hover);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-expand-left { display:flex; align-items:center; gap:11px; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-expand-ico {<!-- [et_pb_line_break_holder] -->    width:30px; height:30px; border-radius:8px;<!-- [et_pb_line_break_holder] -->    background: var(--gradient-soft);<!-- [et_pb_line_break_holder] -->    border: 1px solid rgba(243,190,41,0.18);<!-- [et_pb_line_break_holder] -->    display:flex; align-items:center; justify-content:center;<!-- [et_pb_line_break_holder] -->    flex-shrink:0;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-expand-title {<!-- [et_pb_line_break_holder] -->    font-size: 13px; font-weight:700; letter-spacing:-0.01em; color:var(--text);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-expand-sub {<!-- [et_pb_line_break_holder] -->    font-size: 10.5px; font-weight:400; color:var(--text-muted); margin-top:1px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-chevron { color:var(--text-muted); transition:transform 0.3s ease; flex-shrink:0; }<!-- [et_pb_line_break_holder] -->  .la-expand.open .la-chevron { transform:rotate(180deg); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Platforms \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-plats { display:none; margin-top:10px; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plats-grid {<!-- [et_pb_line_break_holder] -->    display:grid; grid-template-columns:repeat(2,1fr); gap:10px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  @media(max-width:480px){ .la-plats-grid{ grid-template-columns:1fr; } }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat {<!-- [et_pb_line_break_holder] -->    background: var(--glass);<!-- [et_pb_line_break_holder] -->    border: 1px solid var(--glass-b);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r);<!-- [et_pb_line_break_holder] -->    padding: 15px 15px 14px;<!-- [et_pb_line_break_holder] -->    transition: border-color 0.2s, transform 0.22s;<!-- [et_pb_line_break_holder] -->    backdrop-filter: blur(12px);<!-- [et_pb_line_break_holder] -->    -webkit-backdrop-filter: blur(12px);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat:hover { transform:translateY(-2px); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat-top {<!-- [et_pb_line_break_holder] -->    display:flex; align-items:center; justify-content:space-between; margin-bottom:10px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat-name {<!-- [et_pb_line_break_holder] -->    display:flex; align-items:center; gap:8px;<!-- [et_pb_line_break_holder] -->    font-size:12.5px; font-weight:700; letter-spacing:-0.01em; color:var(--text);<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat-ico {<!-- [et_pb_line_break_holder] -->    width:24px; height:24px; border-radius:6px;<!-- [et_pb_line_break_holder] -->    display:flex; align-items:center; justify-content:center;<!-- [et_pb_line_break_holder] -->    font-size:8.5px; font-weight:800; letter-spacing:0.03em; flex-shrink:0;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat-tgt { font-size:9.5px; font-weight:500; color:var(--text-faint); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat-diff {<!-- [et_pb_line_break_holder] -->    font-size:20px; font-weight:800; letter-spacing:-0.04em; line-height:1;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .d-over  { color:var(--warn); }<!-- [et_pb_line_break_holder] -->  .d-under { color:var(--good); }<!-- [et_pb_line_break_holder] -->  .d-ok    { color:var(--text-muted); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat-desc {<!-- [et_pb_line_break_holder] -->    font-size:10.5px; font-weight:400; color:var(--text-muted); margin-top:3px; line-height:1.5;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-plat-bar { height:2px; background:rgba(255,255,255,0.06); border-radius:2px; margin-top:11px; overflow:hidden; }<!-- [et_pb_line_break_holder] -->  .la-plat-bar-fill { height:100%; border-radius:2px; width:0%; transition:width 1s cubic-bezier(0.4,0,0.2,1); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 EBU Note \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-note {<!-- [et_pb_line_break_holder] -->    margin-top: 14px;<!-- [et_pb_line_break_holder] -->    padding: 12px 15px;<!-- [et_pb_line_break_holder] -->    background: rgba(255,255,255,0.02);<!-- [et_pb_line_break_holder] -->    border: 1px solid rgba(255,255,255,0.07);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r-sm);<!-- [et_pb_line_break_holder] -->    font-size: 10px; font-weight:400; color:var(--text-muted); line-height:1.7;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-note strong { font-weight:700; color:var(--accent); }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Footer \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-footer { text-align:center; margin-top:22px; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Toast \u2500 *\/<!-- [et_pb_line_break_holder] -->  .la-toast {<!-- [et_pb_line_break_holder] -->    position:fixed; bottom:26px; right:26px;<!-- [et_pb_line_break_holder] -->    background: rgba(8,8,12,0.92);<!-- [et_pb_line_break_holder] -->    border: 1px solid var(--glass-b2);<!-- [et_pb_line_break_holder] -->    backdrop-filter: blur(24px);<!-- [et_pb_line_break_holder] -->    -webkit-backdrop-filter: blur(24px);<!-- [et_pb_line_break_holder] -->    border-radius: var(--r-sm);<!-- [et_pb_line_break_holder] -->    padding: 10px 15px;<!-- [et_pb_line_break_holder] -->    font-size:12px; font-weight:500; color:var(--text);<!-- [et_pb_line_break_holder] -->    display:flex; align-items:center; gap:8px;<!-- [et_pb_line_break_holder] -->    transform:translateY(70px); opacity:0;<!-- [et_pb_line_break_holder] -->    transition:all 0.35s cubic-bezier(0.4,0,0.2,1);<!-- [et_pb_line_break_holder] -->    z-index:999; max-width:290px;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  .la-toast.show { transform:translateY(0); opacity:1; }<!-- [et_pb_line_break_holder] -->  .la-toast-pip { width:6px;height:6px;border-radius:50%;background:var(--good);flex-shrink:0; }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/* \u2500 Value status colours \u2500 *\/<!-- [et_pb_line_break_holder] -->  .v-good { color:var(--good)!important; -webkit-text-fill-color:var(--good)!important; }<!-- [et_pb_line_break_holder] -->  .v-warn { color:var(--warn)!important; -webkit-text-fill-color:var(--warn)!important; }<!-- [et_pb_line_break_holder] -->  .v-bad  { color:var(--bad)!important;  -webkit-text-fill-color:var(--bad)!important; }<!-- [et_pb_line_break_holder] --><\/style>\n<p><!-- [et_pb_line_break_holder] --><\/head><!-- [et_pb_line_break_holder] --><body><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"la\"><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  <!-- Header --><!-- [et_pb_line_break_holder] -->  <\/p>\n<header class=\"la-header\"><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-badge\"><!-- [et_pb_line_break_holder] -->      <span class=\"la-badge-pip\"><\/span><!-- [et_pb_line_break_holder] -->      <span class=\"la-badge-text\">EBU R128 \u00b7 Free \u00b7 100% Local \u00b7 No Ads \u00b7 No Account Required<\/span><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<h1 class=\"la-title\"><span class=\"gr\">Loudness Analyzer<\/span><\/h1>\n<p><!-- [et_pb_line_break_holder] -->    <pee class=\"la-desc\">Professional audio metering powered entirely by your browser : your files never leave your device.<\/br>Also includes loudness normalization &#8220;penalty&#8221; for the different major platforms with the dropdown below.<\/pee><!-- [et_pb_line_break_holder] -->  <\/header>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  <!-- Drop Zone --><!-- [et_pb_line_break_holder] -->  <\/p>\n<div class=\"la-drop\" id=\"dropZone\"><!-- [et_pb_line_break_holder] -->    <input type=\"file\" id=\"fileInput\" accept=\".wav,.mp3,.mp4,.m4a,.ogg,.flac,.aac,.webm,.opus\"><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-drop-icon\"><!-- [et_pb_line_break_holder] -->      <svg width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><!-- [et_pb_line_break_holder] -->        <path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"\/><!-- [et_pb_line_break_holder] -->        <polyline points=\"17 8 12 3 7 8\"\/><!-- [et_pb_line_break_holder] -->        <line x1=\"12\" y1=\"3\" x2=\"12\" y2=\"15\"\/><!-- [et_pb_line_break_holder] -->      <\/svg><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-drop-title\">Drop your audio file here<\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-drop-sub\">or <b>click to browse<\/b> : all processing is local &#038; private<\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-formats\"><!-- [et_pb_line_break_holder] -->      <span class=\"la-fmt\">WAV<\/span><span class=\"la-fmt\">MP3<\/span><span class=\"la-fmt\">MP4<\/span><!-- [et_pb_line_break_holder] -->      <span class=\"la-fmt\">M4A<\/span><span class=\"la-fmt\">OGG<\/span><span class=\"la-fmt\">FLAC<\/span><span class=\"la-fmt\">AAC<\/span><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->  <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  <!-- Analyzing --><!-- [et_pb_line_break_holder] -->  <\/p>\n<div class=\"la-analyzing\" id=\"analyzingPanel\"><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-viz\" id=\"vizEl\"><\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-analyzing-title\" id=\"aTitle\">Analyzing loudness\u2026<\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-analyzing-file\" id=\"aFile\"><\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-prog\">\n<div class=\"la-prog-fill\" id=\"progFill\"><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] -->  <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  <!-- Results --><!-- [et_pb_line_break_holder] -->  <\/p>\n<div class=\"la-results\" id=\"resultsPanel\"><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-filebar\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-file-name\" id=\"rName\"><\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-file-meta\" id=\"rMeta\"><\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-btns\"><!-- [et_pb_line_break_holder] -->        <button class=\"btn btn-grad\" id=\"exportBtn\"><!-- [et_pb_line_break_holder] -->          <svg width=\"12\" height=\"12\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\"\/><polyline points=\"7 10 12 15 17 10\"\/><line x1=\"12\" y1=\"15\" x2=\"12\" y2=\"3\"\/><\/svg><!-- [et_pb_line_break_holder] -->          Export Report<!-- [et_pb_line_break_holder] -->        <\/button><!-- [et_pb_line_break_holder] -->        <button class=\"btn btn-ghost\" id=\"newBtn\">New File<\/button><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    <!-- Metrics grid --><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-grid\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-card la-card-hero\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-lbl\">Integrated Loudness<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-val\" id=\"v-int\">\u2013<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-unit\">LUFS<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-bar\">\n<div class=\"la-bar-fill\" id=\"b-int\" style=\"background:var(--gradient)\"><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-card\" style=\"--cline:rgba(205,59,167,.55)\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-lbl\">Max Short-Term<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-val\" id=\"v-st\">\u2013<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-unit\">LUFS<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-bar\">\n<div class=\"la-bar-fill\" id=\"b-st\" style=\"background:var(--accent-pink)\"><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-card\" style=\"--cline:rgba(249,156,6,.55)\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-lbl\">Max Momentary<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-val\" id=\"v-mom\">\u2013<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-unit\">LUFS<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-bar\">\n<div class=\"la-bar-fill\" id=\"b-mom\" style=\"background:var(--accent-hover)\"><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-card\" style=\"--cline:rgba(241,108,108,.55)\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-lbl\">Max True Peak<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-val\" id=\"v-tp\">\u2013<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-unit\">dBTP<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-bar\">\n<div class=\"la-bar-fill\" id=\"b-tp\" style=\"background:var(--bad)\"><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-card\" style=\"--cline:rgba(255,255,255,.12)\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-lbl\">Max Peak<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-val\" id=\"v-pk\">\u2013<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-unit\">dBFS<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-bar\">\n<div class=\"la-bar-fill\" id=\"b-pk\" style=\"background:rgba(255,255,255,.3)\"><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-card\" style=\"--cline:rgba(62,207,142,.55)\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-lbl\">Max RMS<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-val\" id=\"v-rms\">\u2013<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-unit\">dBFS<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-bar\">\n<div class=\"la-bar-fill\" id=\"b-rms\" style=\"background:var(--good)\"><\/div>\n<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    <!-- Platform expand --><!-- [et_pb_line_break_holder] -->    <button class=\"la-expand\" id=\"expandBtn\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-expand-left\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-expand-ico\"><!-- [et_pb_line_break_holder] -->          <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"#f3be29\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M9 18V5l12-2v13\"\/><circle cx=\"6\" cy=\"18\" r=\"3\"\/><circle cx=\"18\" cy=\"16\" r=\"3\"\/><\/svg><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div><!-- [et_pb_line_break_holder] -->          <\/p>\n<div class=\"la-expand-title\">Streaming Platform Normalization<\/div>\n<p><!-- [et_pb_line_break_holder] -->          <\/p>\n<div class=\"la-expand-sub\">Spotify, YouTube, Tidal, Apple Music, Deezer, SoundCloud<\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <svg class=\"la-chevron\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"6 9 12 15 18 9\"\/><\/svg><!-- [et_pb_line_break_holder] -->    <\/button><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-plats\" id=\"platPanel\"><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-plats-grid\" id=\"platGrid\"><\/div>\n<p><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-note\"><!-- [et_pb_line_break_holder] -->      <strong>EBU R128<\/strong> compliant \u00b7 Integrated loudness: K-weighted 400ms gated blocks (ITU-R BS.1770-4), absolute \u221270 LUFS gate + relative \u221210 LU gate. Short-term: 3s sliding window. Momentary: 400ms. True Peak: Catmull-Rom 4\u00d7 oversampling. All computation runs locally : no audio data is ever transmitted.<!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->    <\/p>\n<div class=\"la-footer\"><!-- [et_pb_line_break_holder] -->      <button class=\"btn btn-ghost\" id=\"newBtn2\" style=\"font-size:11px;padding:7px 14px\"><!-- [et_pb_line_break_holder] -->        <svg width=\"11\" height=\"11\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"1 4 1 10 7 10\"\/><path d=\"M3.51 15a9 9 0 1 0 .49-3.51\"\/><\/svg><!-- [et_pb_line_break_holder] -->        Analyze Another File<!-- [et_pb_line_break_holder] -->      <\/button><!-- [et_pb_line_break_holder] -->    <\/div>\n<p><!-- [et_pb_line_break_holder] -->  <\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><\/p>\n<div class=\"la-toast\" id=\"toast\"><!-- [et_pb_line_break_holder] -->  <span class=\"la-toast-pip\"><\/span><!-- [et_pb_line_break_holder] -->  <span id=\"toastMsg\">Done!<\/span><!-- [et_pb_line_break_holder] --><\/div>\n<p><!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] --><script><!-- [et_pb_line_break_holder] -->\/\/ \u2500\u2500\u2500 Platform config \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->const PLATS=[<!-- [et_pb_line_break_holder] -->  {id:'spotify',    name:'Spotify',    target:-14, color:'#1ed760', bg:'rgba(30,215,96,0.1)'},<!-- [et_pb_line_break_holder] -->  {id:'youtube',    name:'YouTube',    target:-14, color:'#ff4444', bg:'rgba(255,68,68,0.1)'},<!-- [et_pb_line_break_holder] -->  {id:'tidal',      name:'Tidal',      target:-14, color:'#00e8ff', bg:'rgba(0,232,255,0.1)'},<!-- [et_pb_line_break_holder] -->  {id:'applemusic', name:'Apple Music',target:-16, color:'#4f9eff', bg:'rgba(79,158,255,0.1)'},<!-- [et_pb_line_break_holder] -->  {id:'deezer',     name:'Deezer',     target:-15, color:'#a259ff', bg:'rgba(162,89,255,0.1)'},<!-- [et_pb_line_break_holder] -->  {id:'soundcloud', name:'SoundCloud', target:-14, color:'#ff6600', bg:'rgba(255,102,0,0.1)'},<!-- [et_pb_line_break_holder] -->];<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ \u2500\u2500\u2500 EBU R128 Engine \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->function kWeight(samples, fs){<!-- [et_pb_line_break_holder] -->  \/\/ Stage 1: High-shelf pre-filter<!-- [et_pb_line_break_holder] -->  const f0=1681.974450955533,G=3.999843853973347,Q=0.7071752369554196;<!-- [et_pb_line_break_holder] -->  const K1=Math.tan(Math.PI*f0\/fs);<!-- [et_pb_line_break_holder] -->  const Vh=Math.pow(10,G\/20),Vb=Math.pow(Vh,0.4996667741545416);<!-- [et_pb_line_break_holder] -->  const a0=1+K1\/Q+K1*K1;<!-- [et_pb_line_break_holder] -->  const b0=(Vh+Vb*K1\/Q+K1*K1)\/a0,b1=2*(K1*K1-Vh)\/a0,b2=(Vh-Vb*K1\/Q+K1*K1)\/a0;<!-- [et_pb_line_break_holder] -->  const a1=2*(K1*K1-1)\/a0,a2=(1-K1\/Q+K1*K1)\/a0;<!-- [et_pb_line_break_holder] -->  let s1=new Float32Array(samples.length),x1=0,x2=0,y1=0,y2=0;<!-- [et_pb_line_break_holder] -->  for(let i=0;i<samples.length;i++){<!-- [et_pb_line_break_holder] -->    const x=samples[i],y=b0*x+b1*x1+b2*x2-a1*y1-a2*y2;<!-- [et_pb_line_break_holder] -->    x2=x1;x1=x;y2=y1;y1=y;s1[i]=y;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  \/\/ Stage 2: High-pass 38Hz<!-- [et_pb_line_break_holder] -->  const f1=38.13547087602444,Q1=0.5003270373238773;<!-- [et_pb_line_break_holder] -->  const K2=Math.tan(Math.PI*f1\/fs);<!-- [et_pb_line_break_holder] -->  const a0b=1+K2\/Q1+K2*K2;<!-- [et_pb_line_break_holder] -->  const b0b=1\/a0b,b1b=-2\/a0b,b2b=1\/a0b;<!-- [et_pb_line_break_holder] -->  const a1b=2*(K2*K2-1)\/a0b,a2b=(1-K2\/Q1+K2*K2)\/a0b;<!-- [et_pb_line_break_holder] -->  let s2=new Float32Array(samples.length);<!-- [et_pb_line_break_holder] -->  x1=0;x2=0;y1=0;y2=0;<!-- [et_pb_line_break_holder] -->  for(let i=0;i<samples.length;i++){<!-- [et_pb_line_break_holder] -->    const x=s1[i],y=b0b*x+b1b*x1+b2b*x2-a1b*y1-a2b*y2;<!-- [et_pb_line_break_holder] -->    x2=x1;x1=x;y2=y1;y1=y;s2[i]=y;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  return s2;<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function analyze(buf, onProg){<!-- [et_pb_line_break_holder] -->  const sr=buf.sampleRate,nc=buf.numberOfChannels,n=buf.length;<!-- [et_pb_line_break_holder] -->  const cw=[1,1,1,1.41,1.41];<!-- [et_pb_line_break_holder] -->  const kch=[];<!-- [et_pb_line_break_holder] -->  for(let c=0;c<nc;c++) kch.push(kWeight(buf.getChannelData(c),sr));<!-- [et_pb_line_break_holder] -->  const ms=new Float32Array(n);<!-- [et_pb_line_break_holder] -->  for(let i=0;i<n;i++){let s=0;for(let c=0;c<nc;c++){const w=cw[Math.min(c,4)];s+=w*kch[c][i]*kch[c][i];}ms[i]=s;}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  function lufs(blkSize,stepSize){<!-- [et_pb_line_break_holder] -->    const vals=[];<!-- [et_pb_line_break_holder] -->    for(let s=0;s+blkSize<=n;s+=stepSize){<!-- [et_pb_line_break_holder] -->      let sum=0;for(let i=s;i<s+blkSize;i++)sum+=ms[i];<!-- [et_pb_line_break_holder] -->      const m=sum\/blkSize;if(m>0)vals.push(-0.691+10*Math.log10(m));<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->    return vals;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  const mB=Math.round(0.4*sr),mS=Math.round(0.1*sr);<!-- [et_pb_line_break_holder] -->  const momVals=lufs(mB,mS);    onProg?.(0.4);<!-- [et_pb_line_break_holder] -->  const stVals=lufs(Math.round(3*sr),mS); onProg?.(0.6);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Integrated (gated)<!-- [et_pb_line_break_holder] -->  const blk=lufs(mB,mS);<!-- [et_pb_line_break_holder] -->  const abs=blk.filter(l=>l>=-70);<!-- [et_pb_line_break_holder] -->  let integrated=-Infinity;<!-- [et_pb_line_break_holder] -->  if(abs.length){<!-- [et_pb_line_break_holder] -->    const am=abs.reduce((a,b)=>a+Math.pow(10,b\/10),0)\/abs.length;<!-- [et_pb_line_break_holder] -->    const rt=10*Math.log10(am)-10;<!-- [et_pb_line_break_holder] -->    const rg=abs.filter(l=>l>=rt);<!-- [et_pb_line_break_holder] -->    if(rg.length){const rm=rg.reduce((a,b)=>a+Math.pow(10,b\/10),0)\/rg.length;integrated=10*Math.log10(rm);}<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  onProg?.(0.8);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ True Peak<!-- [et_pb_line_break_holder] -->  let tp=-Infinity;<!-- [et_pb_line_break_holder] -->  for(let c=0;c<nc;c++){<!-- [et_pb_line_break_holder] -->    const ch=buf.getChannelData(c);<!-- [et_pb_line_break_holder] -->    for(let i=1;i<ch.length-2;i++){<!-- [et_pb_line_break_holder] -->      for(let t=0;t<4;t++){<!-- [et_pb_line_break_holder] -->        const f=t\/4,p0=ch[Math.max(0,i-1)],p1=ch[i],p2=ch[Math.min(ch.length-1,i+1)],p3=ch[Math.min(ch.length-1,i+2)];<!-- [et_pb_line_break_holder] -->        const v=0.5*((2*p1)+(-p0+p2)*f+(2*p0-5*p1+4*p2-p3)*f*f+(-p0+3*p1-3*p2+p3)*f*f*f);<!-- [et_pb_line_break_holder] -->        const db=Math.abs(v)>0?20*Math.log10(Math.abs(v)):-Infinity;<!-- [et_pb_line_break_holder] -->        if(db>tp)tp=db;<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Max peak<!-- [et_pb_line_break_holder] -->  let pk=0;<!-- [et_pb_line_break_holder] -->  for(let c=0;c<nc;c++){const ch=buf.getChannelData(c);for(let i=0;i<ch.length;i++){const a=Math.abs(ch[i]);if(a>pk)pk=a;}}<!-- [et_pb_line_break_holder] -->  const pkDb=pk>0?20*Math.log10(pk):-Infinity;<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Max RMS 50ms<!-- [et_pb_line_break_holder] -->  const rB=Math.round(0.05*sr);let maxRms=-Infinity;<!-- [et_pb_line_break_holder] -->  const ch0=buf.getChannelData(0);<!-- [et_pb_line_break_holder] -->  for(let s=0;s+rB<=n;s+=rB){<!-- [et_pb_line_break_holder] -->    let sum=0;for(let i=s;i<s+rB;i++)sum+=ch0[i]*ch0[i];<!-- [et_pb_line_break_holder] -->    const db=Math.sqrt(sum\/rB)>0?20*Math.log10(Math.sqrt(sum\/rB)):-Infinity;<!-- [et_pb_line_break_holder] -->    if(db>maxRms)maxRms=db;<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  onProg?.(1);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  return{<!-- [et_pb_line_break_holder] -->    integrated:isFinite(integrated)?integrated:null,<!-- [et_pb_line_break_holder] -->    maxShortTerm:stVals.length?Math.max(...stVals):null,<!-- [et_pb_line_break_holder] -->    maxMomentary:momVals.length?Math.max(...momVals):null,<!-- [et_pb_line_break_holder] -->    truePeak:isFinite(tp)?tp:null,<!-- [et_pb_line_break_holder] -->    maxPeak:isFinite(pkDb)?pkDb:null,<!-- [et_pb_line_break_holder] -->    maxRms:isFinite(maxRms)?maxRms:null,<!-- [et_pb_line_break_holder] -->  };<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ \u2500\u2500\u2500 Native File Metadata Parser \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->function parseNativeMeta(ab, filename){<!-- [et_pb_line_break_holder] -->  const ext=(filename.split('.').pop()||'').toLowerCase();<!-- [et_pb_line_break_holder] -->  const v=new DataView(ab);<!-- [et_pb_line_break_holder] -->  const u8=new Uint8Array(ab);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  function ascii(off,len){let s='';for(let i=0;i<len;i++)s+=String.fromCharCode(u8[off+i]);return s;}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ \u2500\u2500 WAV \/ RF64 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->  if(ext==='wav'||ext==='wave'||(ab.byteLength>12&&(ascii(0,4)==='RIFF'||ascii(0,4)==='RF64'))){<!-- [et_pb_line_break_holder] -->    try{<!-- [et_pb_line_break_holder] -->      if(ascii(0,4)==='RIFF'||ascii(0,4)==='RF64'){<!-- [et_pb_line_break_holder] -->        \/\/ Walk chunks to find 'fmt '<!-- [et_pb_line_break_holder] -->        let off=12;<!-- [et_pb_line_break_holder] -->        while(off+8<=ab.byteLength){<!-- [et_pb_line_break_holder] -->          const id=ascii(off,4);<!-- [et_pb_line_break_holder] -->          const sz=v.getUint32(off+4,true);<!-- [et_pb_line_break_holder] -->          if(id==='fmt '){<!-- [et_pb_line_break_holder] -->            const sr=v.getUint32(off+12,true);<!-- [et_pb_line_break_holder] -->            const bd=v.getUint16(off+22,true);<!-- [et_pb_line_break_holder] -->            return{sampleRate:sr,bitDepth:bd||null};<!-- [et_pb_line_break_holder] -->          }<!-- [et_pb_line_break_holder] -->          off+=8+sz+(sz%2); \/\/ chunks are word-aligned<!-- [et_pb_line_break_holder] -->        }<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    }catch(e){}<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ \u2500\u2500 AIFF \/ AIFF-C \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->  if(ext==='aif'||ext==='aiff'||ext==='aifc'||(ab.byteLength>12&&ascii(0,4)==='FORM'&&(ascii(8,4)==='AIFF'||ascii(8,4)==='AIFC'))){<!-- [et_pb_line_break_holder] -->    try{<!-- [et_pb_line_break_holder] -->      let off=12;<!-- [et_pb_line_break_holder] -->      while(off+8<=ab.byteLength){<!-- [et_pb_line_break_holder] -->        const id=ascii(off,4);<!-- [et_pb_line_break_holder] -->        const sz=v.getInt32(off+4,false); \/\/ big-endian<!-- [et_pb_line_break_holder] -->        if(id==='COMM'){<!-- [et_pb_line_break_holder] -->          const bd=v.getInt16(off+10,false);<!-- [et_pb_line_break_holder] -->          \/\/ Sample rate is an 80-bit extended float at off+12<!-- [et_pb_line_break_holder] -->          const exp=v.getUint16(off+12,false)-16383;<!-- [et_pb_line_break_holder] -->          const mant=v.getUint32(off+14,false);<!-- [et_pb_line_break_holder] -->          const sr=Math.round(mant*Math.pow(2,exp-31));<!-- [et_pb_line_break_holder] -->          return{sampleRate:sr,bitDepth:bd||null};<!-- [et_pb_line_break_holder] -->        }<!-- [et_pb_line_break_holder] -->        off+=8+sz+(sz%2);<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    }catch(e){}<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ \u2500\u2500 MP3 \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->  if(ext==='mp3'||(ab.byteLength>3&&u8[0]===0xFF&&(u8[1]&0xE0)===0xE0)){<!-- [et_pb_line_break_holder] -->    try{<!-- [et_pb_line_break_holder] -->      const MP3_SR=[44100,48000,32000,0];<!-- [et_pb_line_break_holder] -->      \/\/ Skip ID3 tag if present<!-- [et_pb_line_break_holder] -->      let start=0;<!-- [et_pb_line_break_holder] -->      if(ascii(0,3)==='ID3'){<!-- [et_pb_line_break_holder] -->        const id3sz=((u8[6]&0x7F)<<21)|((u8[7]&#038;0x7F)<<14)|((u8[8]&#038;0x7F)<<7)|(u8[9]&#038;0x7F);<!-- [et_pb_line_break_holder] -->        start=10+id3sz;<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->      for(let i=start;i<Math.min(ab.byteLength-3,start+131072);i++){<!-- [et_pb_line_break_holder] -->        if(u8[i]===0xFF&&(u8[i+1]&0xE0)===0xE0){<!-- [et_pb_line_break_holder] -->          const h=(u8[i]<<24)|(u8[i+1]<<16)|(u8[i+2]<<8)|u8[i+3];<!-- [et_pb_line_break_holder] -->          const sri=(h>>10)&0x3;<!-- [et_pb_line_break_holder] -->          const sr=MP3_SR[sri];<!-- [et_pb_line_break_holder] -->          if(sr>0)return{sampleRate:sr,bitDepth:null}; \/\/ MP3 has no bit depth concept<!-- [et_pb_line_break_holder] -->        }<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    }catch(e){}<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ \u2500\u2500 AAC \/ M4A \/ MP4 (ftyp box \u2192 moov\u2192trak\u2192mdia\u2192mdhd) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->  if(ext==='m4a'||ext==='aac'||ext==='mp4'||ext==='m4b'){<!-- [et_pb_line_break_holder] -->    try{<!-- [et_pb_line_break_holder] -->      \/\/ Find 'mdhd' box which contains the native sample rate<!-- [et_pb_line_break_holder] -->      const buf8=u8;<!-- [et_pb_line_break_holder] -->      for(let i=0;i<Math.min(ab.byteLength-8,524288);i++){<!-- [et_pb_line_break_holder] -->        if(buf8[i]===0x6D&&buf8[i+1]===0x64&&buf8[i+2]===0x68&&buf8[i+3]===0x64){ \/\/ 'mdhd'<!-- [et_pb_line_break_holder] -->          \/\/ mdhd: version(1) flags(3) creation(4) modification(4) timescale(4)<!-- [et_pb_line_break_holder] -->          const version=buf8[i+4];<!-- [et_pb_line_break_holder] -->          const off2=version===1?i+4+1+3+8+8:i+4+1+3+4+4;<!-- [et_pb_line_break_holder] -->          const sr=v.getUint32(off2,false);<!-- [et_pb_line_break_holder] -->          if(sr>0&&sr<=192000)return{sampleRate:sr,bitDepth:null};<!-- [et_pb_line_break_holder] -->        }<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    }catch(e){}<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ \u2500\u2500 OGG \/ OPUS \/ FLAC-in-OGG \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->  if(ext==='ogg'||ext==='opus'||ext==='oga'||(ab.byteLength>4&&ascii(0,4)==='OggS')){<!-- [et_pb_line_break_holder] -->    try{<!-- [et_pb_line_break_holder] -->      \/\/ Find the Vorbis or Opus identification header inside OGG pages<!-- [et_pb_line_break_holder] -->      for(let i=0;i<Math.min(ab.byteLength-80,32768);i++){<!-- [et_pb_line_break_holder] -->        \/\/ Vorbis: \\x01vorbis<!-- [et_pb_line_break_holder] -->        if(u8[i]===0x01&&ascii(i+1,6)==='vorbis'){<!-- [et_pb_line_break_holder] -->          const sr=v.getUint32(i+11,true);<!-- [et_pb_line_break_holder] -->          const bd=u8[i+19]||null;<!-- [et_pb_line_break_holder] -->          return{sampleRate:sr,bitDepth:bd||null};<!-- [et_pb_line_break_holder] -->        }<!-- [et_pb_line_break_holder] -->        \/\/ Opus: OpusHead<!-- [et_pb_line_break_holder] -->        if(ascii(i,8)==='OpusHead'){<!-- [et_pb_line_break_holder] -->          const sr=v.getUint32(i+12,true);<!-- [et_pb_line_break_holder] -->          return{sampleRate:sr,bitDepth:null};<!-- [et_pb_line_break_holder] -->        }<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    }catch(e){}<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ \u2500\u2500 FLAC (native) \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->  if(ext==='flac'||(ab.byteLength>4&&ascii(0,4)==='fLaC')){<!-- [et_pb_line_break_holder] -->    try{<!-- [et_pb_line_break_holder] -->      if(ascii(0,4)==='fLaC'){<!-- [et_pb_line_break_holder] -->        \/\/ STREAMINFO block starts at byte 4<!-- [et_pb_line_break_holder] -->        \/\/ Bytes 14-17 contain sample rate (20 bits) and bit depth (5 bits)<!-- [et_pb_line_break_holder] -->        const b14=v.getUint32(4+4+4+2,false); \/\/ skip to the right offset<!-- [et_pb_line_break_holder] -->        \/\/ STREAMINFO layout: 4-byte header, then:<!-- [et_pb_line_break_holder] -->        \/\/ min_block(16) max_block(16) min_frame(24) max_frame(24) sample_rate(20) channels(3) bit_depth(5) total_samples(36) md5(128)<!-- [et_pb_line_break_holder] -->        const raw=new DataView(ab,4+4); \/\/ skip fLaC marker + block header<!-- [et_pb_line_break_holder] -->        \/\/ Read bytes at offset 8,9,10 for sample_rate+channels+bit_depth<!-- [et_pb_line_break_holder] -->        const b8=u8[4+4+8];<!-- [et_pb_line_break_holder] -->        const b9=u8[4+4+9];<!-- [et_pb_line_break_holder] -->        const b10=u8[4+4+10];<!-- [et_pb_line_break_holder] -->        const sr=((b8<<12)|(b9<<4)|(b10>>4))&0xFFFFF;<!-- [et_pb_line_break_holder] -->        const bd=((b10&0x0F)<<1)|(u8[4+4+11]>>7);<!-- [et_pb_line_break_holder] -->        const bitDepth=bd+1;<!-- [et_pb_line_break_holder] -->        return{sampleRate:sr,bitDepth:bitDepth};<!-- [et_pb_line_break_holder] -->      }<!-- [et_pb_line_break_holder] -->    }catch(e){}<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->  \/\/ Fallback: nothing parsed<!-- [et_pb_line_break_holder] -->  return{sampleRate:null,bitDepth:null};<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ \u2500\u2500\u2500 UI \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500<!-- [et_pb_line_break_holder] -->let results=null,fname='',fmeta='',nativeFileMeta={sampleRate:null,bitDepth:null};<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Build viz bars<!-- [et_pb_line_break_holder] -->const vizEl=document.getElementById('vizEl');<!-- [et_pb_line_break_holder] -->const barCols=['#f3be29','#f99c06','#cd3ba7','#f3be29','#3ecf8e','#f99c06'];<!-- [et_pb_line_break_holder] -->for(let i=0;i<32;i++){<!-- [et_pb_line_break_holder] -->  const b=document.createElement('div');<!-- [et_pb_line_break_holder] -->  b.className='la-vbar';<!-- [et_pb_line_break_holder] -->  b.style.background=barCols[i%barCols.length];<!-- [et_pb_line_break_holder] -->  b.style.animationDelay=(i*0.04)+'s';<!-- [et_pb_line_break_holder] -->  vizEl.appendChild(b);<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->const dropZone=document.getElementById('dropZone');<!-- [et_pb_line_break_holder] -->const fileInput=document.getElementById('fileInput');<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->dropZone.addEventListener('dragover',e=>{e.preventDefault();dropZone.classList.add('drag');});<!-- [et_pb_line_break_holder] -->dropZone.addEventListener('dragleave',()=>dropZone.classList.remove('drag'));<!-- [et_pb_line_break_holder] -->dropZone.addEventListener('drop',e=>{e.preventDefault();dropZone.classList.remove('drag');const f=e.dataTransfer.files[0];if(f)run(f);});<!-- [et_pb_line_break_holder] -->dropZone.addEventListener('click',()=>fileInput.click());<!-- [et_pb_line_break_holder] -->fileInput.addEventListener('change',e=>{if(e.target.files[0])run(e.target.files[0]);});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function show(id){document.getElementById(id).style.display='block';}<!-- [et_pb_line_break_holder] -->function hide(id){document.getElementById(id).style.display='none';}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->async function run(file){<!-- [et_pb_line_break_holder] -->  fname=file.name;<!-- [et_pb_line_break_holder] -->  hide('dropZone');show('analyzingPanel');hide('resultsPanel');<!-- [et_pb_line_break_holder] -->  document.getElementById('aFile').textContent=file.name;<!-- [et_pb_line_break_holder] -->  document.getElementById('aTitle').textContent='Reading audio data\u2026';<!-- [et_pb_line_break_holder] -->  document.getElementById('progFill').style.width='5%';<!-- [et_pb_line_break_holder] -->  try{<!-- [et_pb_line_break_holder] -->    const ab=await file.arrayBuffer();<!-- [et_pb_line_break_holder] -->    \/\/ Parse native metadata BEFORE decodeAudioData : that call detaches\/transfers the ArrayBuffer<!-- [et_pb_line_break_holder] -->    const nativeMeta=parseNativeMeta(ab,file.name);<!-- [et_pb_line_break_holder] -->    nativeFileMeta=nativeMeta;<!-- [et_pb_line_break_holder] -->    document.getElementById('progFill').style.width='20%';<!-- [et_pb_line_break_holder] -->    document.getElementById('aTitle').textContent='Decoding audio\u2026';<!-- [et_pb_line_break_holder] -->    const ctx=new(window.AudioContext||window.webkitAudioContext)();<!-- [et_pb_line_break_holder] -->    let audioBuf;<!-- [et_pb_line_break_holder] -->    try{audioBuf=await ctx.decodeAudioData(ab);}<!-- [et_pb_line_break_holder] -->    catch(e){throw new Error('Cannot decode audio. Try WAV, MP3, or OGG.');}<!-- [et_pb_line_break_holder] -->    document.getElementById('progFill').style.width='30%';<!-- [et_pb_line_break_holder] -->    document.getElementById('aTitle').textContent='Computing K-weighted loudness\u2026';<!-- [et_pb_line_break_holder] -->    await new Promise(r=>setTimeout(r,45));<!-- [et_pb_line_break_holder] -->    const res=await new Promise((res,rej)=>{<!-- [et_pb_line_break_holder] -->      setTimeout(()=>{<!-- [et_pb_line_break_holder] -->        try{res(analyze(audioBuf,p=>{document.getElementById('progFill').style.width=(30+p*60)+'%';}));}<!-- [et_pb_line_break_holder] -->        catch(e){rej(e);}<!-- [et_pb_line_break_holder] -->      },55);<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->    document.getElementById('progFill').style.width='100%';<!-- [et_pb_line_break_holder] -->    const srStr=nativeMeta.sampleRate?nativeMeta.sampleRate.toLocaleString()+' Hz':'unknown Hz';<!-- [et_pb_line_break_holder] -->    const bdStr=nativeMeta.bitDepth?nativeMeta.bitDepth+'-bit':'';<!-- [et_pb_line_break_holder] -->    fmeta=`${sz(file.size)} \u00b7 ${audioBuf.numberOfChannels}ch \u00b7 ${srStr}${bdStr?' \u00b7 '+bdStr:''} \u00b7 ${dur(audioBuf.duration)}`;<!-- [et_pb_line_break_holder] -->    results=res;<!-- [et_pb_line_break_holder] -->    await new Promise(r=>setTimeout(r,280));<!-- [et_pb_line_break_holder] -->    render(res);<!-- [et_pb_line_break_holder] -->    ctx.close();<!-- [et_pb_line_break_holder] -->  }catch(err){<!-- [et_pb_line_break_holder] -->    hide('analyzingPanel');show('dropZone');<!-- [et_pb_line_break_holder] -->    toast('Error: '+(err.message||'Could not process file'),false);<!-- [et_pb_line_break_holder] -->    fileInput.value='';<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function render(r){<!-- [et_pb_line_break_holder] -->  hide('analyzingPanel');show('resultsPanel');<!-- [et_pb_line_break_holder] -->  document.getElementById('rName').textContent=fname;<!-- [et_pb_line_break_holder] -->  document.getElementById('rMeta').textContent=fmeta;<!-- [et_pb_line_break_holder] -->  const f=v=>v!==null?v.toFixed(1):'\u2013';<!-- [et_pb_line_break_holder] -->  document.getElementById('v-int').textContent=f(r.integrated);<!-- [et_pb_line_break_holder] -->  document.getElementById('v-st').textContent=f(r.maxShortTerm);<!-- [et_pb_line_break_holder] -->  document.getElementById('v-mom').textContent=f(r.maxMomentary);<!-- [et_pb_line_break_holder] -->  document.getElementById('v-tp').textContent=f(r.truePeak);<!-- [et_pb_line_break_holder] -->  document.getElementById('v-pk').textContent=f(r.maxPeak);<!-- [et_pb_line_break_holder] -->  document.getElementById('v-rms').textContent=f(r.maxRms);<!-- [et_pb_line_break_holder] -->  \/\/ True peak colour<!-- [et_pb_line_break_holder] -->  const tpEl=document.getElementById('v-tp');<!-- [et_pb_line_break_holder] -->  if(r.truePeak!==null){<!-- [et_pb_line_break_holder] -->    tpEl.classList.add(r.truePeak>-1?'v-bad':r.truePeak>-3?'v-warn':'v-good');<!-- [et_pb_line_break_holder] -->  }<!-- [et_pb_line_break_holder] -->  setTimeout(()=>{<!-- [et_pb_line_break_holder] -->    setBar('b-int',r.integrated,-60,0);<!-- [et_pb_line_break_holder] -->    setBar('b-st',r.maxShortTerm,-60,0);<!-- [et_pb_line_break_holder] -->    setBar('b-mom',r.maxMomentary,-60,0);<!-- [et_pb_line_break_holder] -->    setBar('b-tp',r.truePeak,-20,3);<!-- [et_pb_line_break_holder] -->    setBar('b-pk',r.maxPeak,-30,0);<!-- [et_pb_line_break_holder] -->    setBar('b-rms',r.maxRms,-40,0);<!-- [et_pb_line_break_holder] -->  },100);<!-- [et_pb_line_break_holder] -->  buildPlats(r.integrated);<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function setBar(id,v,mn,mx){<!-- [et_pb_line_break_holder] -->  if(v===null)return;<!-- [et_pb_line_break_holder] -->  document.getElementById(id).style.width=Math.max(0,Math.min(100,(v-mn)\/(mx-mn)*100))+'%';<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function buildPlats(integrated){<!-- [et_pb_line_break_holder] -->  const g=document.getElementById('platGrid');g.innerHTML='';<!-- [et_pb_line_break_holder] -->  PLATS.forEach(p=>{<!-- [et_pb_line_break_holder] -->    const d=integrated!==null?integrated-p.target:null;<!-- [et_pb_line_break_holder] -->    let dt='\u2013',dc='d-ok',desc='',bp=0,bc=p.color;<!-- [et_pb_line_break_holder] -->    if(d!==null){<!-- [et_pb_line_break_holder] -->      if(d>0.5){dt='+'+d.toFixed(1)+' LU';dc='d-over';desc='Will be turned down by '+d.toFixed(1)+' LU';bp=Math.min(100,(d\/18)*100);bc='#f3be29';}<!-- [et_pb_line_break_holder] -->      else if(d<-0.5){dt=d.toFixed(1)+' LU';dc='d-under';desc='Quieter than target : no boost applied';bp=Math.min(100,(Math.abs(d)\/22)*100);bc='#3ecf8e';}<!-- [et_pb_line_break_holder] -->      else{dt='\u2248 0 LU';dc='d-ok';desc='Matches platform target';bp=1;}<!-- [et_pb_line_break_holder] -->    }<!-- [et_pb_line_break_holder] -->    const c=document.createElement('div');<!-- [et_pb_line_break_holder] -->    c.className='la-plat';c.style.borderColor=p.color+'28';<!-- [et_pb_line_break_holder] -->    c.innerHTML=`<!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-plat-top\"><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-plat-name\"><!-- [et_pb_line_break_holder] -->          <\/p>\n<div class=\"la-plat-ico\" style=\"background:${p.bg};color:${p.color}\">${p.name.slice(0,2).toUpperCase()}<\/div>\n<p><!-- [et_pb_line_break_holder] -->          ${p.name}<!-- [et_pb_line_break_holder] -->        <\/div>\n<p><!-- [et_pb_line_break_holder] -->        <\/p>\n<div class=\"la-plat-tgt\" style=\"color:${p.color}66\">Target ${p.target} LUFS<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-plat-diff ${dc}\">${dt}<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-plat-desc\">${desc}<\/div>\n<p><!-- [et_pb_line_break_holder] -->      <\/p>\n<div class=\"la-plat-bar\">\n<div class=\"la-plat-bar-fill\" id=\"pb-${p.id}\" style=\"background:${bc};width:0%\"><\/div>\n<\/div>\n<p>`;<!-- [et_pb_line_break_holder] -->    g.appendChild(c);<!-- [et_pb_line_break_holder] -->    setTimeout(()=>{const el=document.getElementById('pb-'+p.id);if(el)el.style.width=bp+'%';},200);<!-- [et_pb_line_break_holder] -->  });<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Expand<!-- [et_pb_line_break_holder] -->const expandBtn=document.getElementById('expandBtn');<!-- [et_pb_line_break_holder] -->const platPanel=document.getElementById('platPanel');<!-- [et_pb_line_break_holder] -->expandBtn.addEventListener('click',()=>{<!-- [et_pb_line_break_holder] -->  const open=platPanel.style.display==='block';<!-- [et_pb_line_break_holder] -->  platPanel.style.display=open?'none':'block';<!-- [et_pb_line_break_holder] -->  expandBtn.classList.toggle('open',!open);<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Export<!-- [et_pb_line_break_holder] -->document.getElementById('exportBtn').addEventListener('click',()=>{<!-- [et_pb_line_break_holder] -->  if(!results)return;<!-- [et_pb_line_break_holder] -->  const r=results,f=v=>v!==null?v.toFixed(2):'N\/A',now=new Date().toLocaleString();<!-- [et_pb_line_break_holder] -->  let t=`Smart DSP - LOUDNESS ANALYSIS REPORT\\n${'\u2550'.repeat(54)}\\n`;<!-- [et_pb_line_break_holder] -->  t+=`Generated : ${now}\\nFile      : ${fname}\\nInfo      : ${fmeta}\\n\\n`;<!-- [et_pb_line_break_holder] -->  t+=`LOUDNESS MEASUREMENTS  (EBU R128 \/ ITU-R BS.1770-4)\\n${'\u2500'.repeat(54)}\\n`;<!-- [et_pb_line_break_holder] -->  t+=`Integrated Loudness       ${f(r.integrated).padStart(8)} LUFS\\n`;<!-- [et_pb_line_break_holder] -->  t+=`Max Short-Term Loudness   ${f(r.maxShortTerm).padStart(8)} LUFS\\n`;<!-- [et_pb_line_break_holder] -->  t+=`Max Momentary Loudness    ${f(r.maxMomentary).padStart(8)} LUFS\\n`;<!-- [et_pb_line_break_holder] -->  t+=`Max True Peak             ${f(r.truePeak).padStart(8)} dBTP\\n`;<!-- [et_pb_line_break_holder] -->  t+=`Max Peak                  ${f(r.maxPeak).padStart(8)} dBFS\\n`;<!-- [et_pb_line_break_holder] -->  t+=`Max RMS                   ${f(r.maxRms).padStart(8)} dBFS\\n\\n`;<!-- [et_pb_line_break_holder] -->  t+=`STREAMING PLATFORM NORMALIZATION\\n${'\u2500'.repeat(54)}\\n`;<!-- [et_pb_line_break_holder] -->  if(r.integrated!==null){<!-- [et_pb_line_break_holder] -->    PLATS.forEach(p=>{<!-- [et_pb_line_break_holder] -->      const d=r.integrated-p.target,sign=d>0?'+':'';<!-- [et_pb_line_break_holder] -->      const action=d>0.5?'turned DOWN':d<-0.5?'no boost : stays as-is':'matches target';<!-- [et_pb_line_break_holder] -->      t+=`${p.name.padEnd(13)} ${String(p.target).padStart(4)} LUFS  |  ${(sign+d.toFixed(2)+' LU').padStart(10)}  (${action})\\n`;<!-- [et_pb_line_break_holder] -->    });<!-- [et_pb_line_break_holder] -->  }else t+=`Integrated loudness not available.\\n`;<!-- [et_pb_line_break_holder] -->  t+=`\\n${'\u2550'.repeat(54)}\\nReport generated by Smart DSP Audio Loudness Analyzer - https:\/\/smartdsp.pro\/tools\\n`;<!-- [et_pb_line_break_holder] -->  const a=Object.assign(document.createElement('a'),{href:URL.createObjectURL(new Blob([t],{type:'text\/plain'})),download:fname.replace(\/\\.[^.]+$\/,'')+'_loudness_report.txt'});<!-- [et_pb_line_break_holder] -->  a.click();URL.revokeObjectURL(a.href);<!-- [et_pb_line_break_holder] -->  toast('Report exported successfully');<!-- [et_pb_line_break_holder] -->});<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->\/\/ Reset<!-- [et_pb_line_break_holder] -->function reset(){<!-- [et_pb_line_break_holder] -->  hide('resultsPanel');hide('analyzingPanel');show('dropZone');<!-- [et_pb_line_break_holder] -->  platPanel.style.display='none';expandBtn.classList.remove('open');<!-- [et_pb_line_break_holder] -->  fileInput.value='';results=null;<!-- [et_pb_line_break_holder] -->  document.getElementById('v-tp').className='la-val';<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] -->document.getElementById('newBtn').addEventListener('click',reset);<!-- [et_pb_line_break_holder] -->document.getElementById('newBtn2').addEventListener('click',reset);<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function toast(msg,ok=true){<!-- [et_pb_line_break_holder] -->  const el=document.getElementById('toast');<!-- [et_pb_line_break_holder] -->  document.getElementById('toastMsg').textContent=msg;<!-- [et_pb_line_break_holder] -->  el.querySelector('.la-toast-pip').style.background=ok?'var(--good)':'var(--bad)';<!-- [et_pb_line_break_holder] -->  el.classList.add('show');setTimeout(()=>el.classList.remove('show'),3200);<!-- [et_pb_line_break_holder] -->}<!-- [et_pb_line_break_holder] --><!-- [et_pb_line_break_holder] -->function sz(b){return b<1048576?(b\/1024).toFixed(0)+' KB':(b\/1048576).toFixed(1)+' MB';}<!-- [et_pb_line_break_holder] -->function dur(s){const m=Math.floor(s\/60);return m+':'+String(Math.floor(s%60)).padStart(2,'0');}<!-- [et_pb_line_break_holder] --><\/script><!-- [et_pb_line_break_holder] --><\/body><!-- [et_pb_line_break_holder] --><\/html>[\/et_pb_code][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; admin_label=&#8221;Hero Section&#8221; _builder_version=&#8221;4.27.5&#8243; background_color=&#8221;#000000&#8243; use_background_color_gradient=&#8221;on&#8221; background_color_gradient_stops=&#8221;#000000 0%|rgba(0,0,0,0) 20%|rgba(0,0,0,0) 80%|#000000 100%&#8221; background_color_gradient_overlays_image=&#8221;on&#8221; background_image=&#8221;https:\/\/smartdsp.pro\/wp-content\/uploads\/2022\/10\/streamer-79.png&#8221; custom_padding=&#8221;9px|||1px||&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_row _builder_version=&#8221;4.16&#8243; background_size=&#8221;initial&#8221; background_position=&#8221;top_left&#8221; background_repeat=&#8221;repeat&#8221; module_alignment=&#8221;center&#8221; custom_width_px=&#8221;700px&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_text _builder_version=&#8221;4.16&#8243; text_font=&#8221;||||||||&#8221; text_font_size=&#8221;18px&#8221; text_line_height=&#8221;2em&#8221; header_font=&#8221;Titillium Web||||||||&#8221; header_font_size=&#8221;66px&#8221; header_line_height=&#8221;1.5em&#8221; header_2_font=&#8221;Titillium Web||||||||&#8221; header_2_font_size=&#8221;66px&#8221; header_2_line_height=&#8221;1.5em&#8221; header_3_font=&#8221;Titillium Web||||||||&#8221; header_3_font_size=&#8221;66px&#8221; header_3_line_height=&#8221;1.5em&#8221; header_4_font=&#8221;Titillium Web||||||||&#8221; header_4_font_size=&#8221;66px&#8221; header_4_line_height=&#8221;1.5em&#8221; header_5_font=&#8221;Titillium Web||||||||&#8221; header_5_font_size=&#8221;66px&#8221; header_5_line_height=&#8221;1.5em&#8221; header_6_font=&#8221;Titillium Web||||||||&#8221; header_6_font_size=&#8221;66px&#8221; header_6_line_height=&#8221;1.5em&#8221; text_orientation=&#8221;center&#8221; background_layout=&#8221;dark&#8221; max_width=&#8221;700px&#8221; module_alignment=&#8221;center&#8221; header_font_size_tablet=&#8221;40px&#8221; header_font_size_phone=&#8221;&#8221; header_font_size_last_edited=&#8221;on|phone&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h1>Frequently Asked<\/h1>\n<p>[\/et_pb_text][et_pb_code _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_code][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_2,1_2&#8243; custom_padding_last_edited=&#8221;on|desktop&#8221; _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;default&#8221; background_color=&#8221;rgba(79,79,79,0.16)&#8221; overflow-x=&#8221;visible&#8221; overflow-y=&#8221;visible&#8221; custom_padding=&#8221;80px|80px|80px|80px|true|true&#8221; custom_padding_tablet=&#8221;30px|30px|30px|30px|true|true&#8221; custom_padding_phone=&#8221;20px|20px|20px|20px|true|true&#8221; border_radii=&#8221;on|20px|20px|20px|20px&#8221; box_shadow_style=&#8221;preset1&#8243; box_shadow_horizontal=&#8221;-1px&#8221; box_shadow_vertical=&#8221;-1px&#8221; box_shadow_blur=&#8221;0px&#8221; box_shadow_color=&#8221;rgba(255,255,255,0.21)&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.17.4&#8243; _module_preset=&#8221;default&#8221; custom_padding_tablet=&#8221;||||false|false&#8221; custom_padding_phone=&#8221;||30px||false|false&#8221; custom_padding_last_edited=&#8221;off|phone&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_blurb title=&#8221;How do I use the Loudness Analyzer?&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x75;||divi||400&#8243; icon_color=&#8221;#f3be29&#8243; icon_placement=&#8221;left&#8221; _builder_version=&#8221;4.27.6&#8243; header_font=&#8221;&#8211;et_global_heading_font|700||on|||||&#8221; header_font_size=&#8221;14px&#8221; header_letter_spacing=&#8221;2px&#8221; header_line_height=&#8221;1.8em&#8221; body_font=&#8221;&#8211;et_global_heading_font||||||||&#8221; body_text_color=&#8221;#FFFFFF&#8221; body_font_size=&#8221;16px&#8221; body_line_height=&#8221;1.8em&#8221; background_enable_color=&#8221;off&#8221; use_background_color_gradient=&#8221;on&#8221; background_color_gradient_direction=&#8221;164deg&#8221; background_color_gradient_stops=&#8221;rgba(243,190,41,0.17) 0%|rgba(205,59,167,0.17) 100%&#8221; background_layout=&#8221;dark&#8221; custom_margin=&#8221;||12%|&#8221; custom_margin_tablet=&#8221;70px|||&#8221; custom_margin_last_edited=&#8221;off|desktop&#8221; custom_padding=&#8221;30px|16px|30px|16px&#8221; animation_style=&#8221;fold&#8221; hover_enabled=&#8221;0&#8243; border_radii=&#8221;on|20px|20px|20px|20px&#8221; box_shadow_style=&#8221;preset1&#8243; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<div class=\"faq-item\">\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">It couldn&#8217;t be simpler:<\/p>\n<ul>\n<li><strong>Drop your file<\/strong> onto the analyzer, or click to browse and select it from your device.<br \/><em>Most common audio formats are supported: WAV, MP3, MP4, M4A, OGG, FLAC, and AAC.<br \/><\/em><\/li>\n<\/ul>\n<p><em><\/em><\/p>\n<ul>\n<li><strong>Wait a moment<\/strong> while the tool processes your file. Analysis time depends on the length of the track, most songs complete in just a few seconds.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul>\n<li><strong>Read your results.<\/strong> Your six loudness statistics appear immediately. Pay particular attention to the Integrated LUFS, that&#8217;s the number the streaming platforms will compare against their targets.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul>\n<li><strong>Expand the Streaming Platform panel<\/strong> to see exactly how each major platform will handle your track, and by how much it will be adjusted.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<ul>\n<li><strong>Export your report<\/strong> using the button at the top right. You&#8217;ll get a clean text file with all measurements and platform comparisons, handy for sharing with clients or keeping as a reference alongside your project files.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<\/div>\n<p>[\/et_pb_blurb][et_pb_blurb title=&#8221;What is loudness normalization and why does it matter for my music?&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x75;||divi||400&#8243; icon_color=&#8221;#f3be29&#8243; icon_placement=&#8221;left&#8221; _builder_version=&#8221;4.27.6&#8243; header_font=&#8221;&#8211;et_global_heading_font|700||on|||||&#8221; header_font_size=&#8221;14px&#8221; header_letter_spacing=&#8221;2px&#8221; header_line_height=&#8221;1.8em&#8221; body_font=&#8221;&#8211;et_global_heading_font||||||||&#8221; body_text_color=&#8221;#FFFFFF&#8221; body_font_size=&#8221;16px&#8221; body_line_height=&#8221;1.8em&#8221; background_enable_color=&#8221;off&#8221; use_background_color_gradient=&#8221;on&#8221; background_color_gradient_direction=&#8221;164deg&#8221; background_color_gradient_stops=&#8221;rgba(243,190,41,0.17) 0%|rgba(205,59,167,0.17) 100%&#8221; background_layout=&#8221;dark&#8221; custom_margin=&#8221;||12%|&#8221; custom_margin_tablet=&#8221;70px|||&#8221; custom_margin_last_edited=&#8221;off|desktop&#8221; custom_padding=&#8221;30px|16px|30px|16px&#8221; animation_style=&#8221;fold&#8221; animation_delay=&#8221;100ms&#8221; hover_enabled=&#8221;0&#8243; border_radii=&#8221;on|20px|20px|20px|20px&#8221; box_shadow_style=&#8221;preset1&#8243; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<div class=\"faq-item\">\n<div class=\"faq-answer\">\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">When you upload a track to a streaming platform, the platform automatically adjusts its playback volume so that all songs are perceived at roughly the same loudness. This process is called loudness normalization. Each platform has its own target, for example: Spotify and YouTube normalize to around \u221214 LUFS, while Qobuz targets a quieter \u221218 LUFS.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">If your track is louder than the target, the platform will turn it down. If it&#8217;s quieter, most platforms simply leave it as-is rather than boosting it. This means that over-compressing or over-limiting your master to make it &#8220;loud&#8221; actually works against you, the platform will reduce it anyway, but you&#8217;ll have sacrificed dynamic range in the process. Knowing where your track sits relative to each platform&#8217;s target lets you make informed mastering decisions and deliver the best possible listening experience.<\/p>\n<p>Read more in this article I wrote: <a href=\"https:\/\/smartdsp.pro\/why-louder-is-not-better\/\" target=\"_blank\" rel=\"noopener\">Why Louder Is Not Better?<\/a><\/p>\n<\/div>\n<\/div>\n<p>[\/et_pb_blurb][\/et_pb_column][et_pb_column type=&#8221;1_2&#8243; _builder_version=&#8221;4.17.4&#8243; _module_preset=&#8221;default&#8221; custom_padding_tablet=&#8221;|||0%|false|false&#8221; custom_padding_phone=&#8221;|||0%|false|false&#8221; custom_padding_last_edited=&#8221;off|desktop&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_blurb title=&#8221;Is my audio file uploaded anywhere? How is my data handled?&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x75;||divi||400&#8243; icon_color=&#8221;#f3be29&#8243; icon_placement=&#8221;left&#8221; _builder_version=&#8221;4.27.6&#8243; header_font=&#8221;&#8211;et_global_heading_font|700||on|||||&#8221; header_font_size=&#8221;14px&#8221; header_letter_spacing=&#8221;2px&#8221; header_line_height=&#8221;1.8em&#8221; body_font=&#8221;&#8211;et_global_heading_font||||||||&#8221; body_text_color=&#8221;#FFFFFF&#8221; body_font_size=&#8221;16px&#8221; body_line_height=&#8221;1.8em&#8221; background_enable_color=&#8221;off&#8221; use_background_color_gradient=&#8221;on&#8221; background_color_gradient_direction=&#8221;164deg&#8221; background_color_gradient_stops=&#8221;rgba(243,190,41,0.17) 0%|rgba(205,59,167,0.17) 100%&#8221; background_layout=&#8221;dark&#8221; custom_margin=&#8221;||12%|&#8221; custom_margin_tablet=&#8221;70px|||&#8221; custom_margin_last_edited=&#8221;off|desktop&#8221; custom_padding=&#8221;30px|16px|30px|16px&#8221; animation_style=&#8221;fold&#8221; animation_delay=&#8221;250ms&#8221; hover_enabled=&#8221;0&#8243; border_radii=&#8221;on|20px|20px|20px|20px&#8221; box_shadow_style=&#8221;preset1&#8243; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<div class=\"faq-item\">\n<div class=\"faq-answer\">\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">Your audio file never leaves your device.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">This tool runs entirely inside your web browser using the Web Audio API, a built-in capability of all modern browsers. When you drop a file onto the analyzer, it is read and processed locally by your own computer&#8217;s processor. No data is sent to any server, no file is stored anywhere, and no third party ever has access to your audio. You can even disconnect from the internet before dropping your file and the tool will work perfectly.<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">This also means the tool is completely free with no account required, no usage limits, and no hidden data collection.<\/p>\n<\/div>\n<\/div>\n<p>[\/et_pb_blurb][et_pb_blurb title=&#8221;What are LUFS and what do the other stats mean?&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x75;||divi||400&#8243; icon_color=&#8221;#f3be29&#8243; icon_placement=&#8221;left&#8221; _builder_version=&#8221;4.27.6&#8243; header_font=&#8221;&#8211;et_global_heading_font|700||on|||||&#8221; header_font_size=&#8221;14px&#8221; header_letter_spacing=&#8221;2px&#8221; header_line_height=&#8221;1.8em&#8221; body_font=&#8221;&#8211;et_global_heading_font||||||||&#8221; body_text_color=&#8221;#FFFFFF&#8221; body_font_size=&#8221;16px&#8221; body_line_height=&#8221;1.8em&#8221; background_enable_color=&#8221;off&#8221; use_background_color_gradient=&#8221;on&#8221; background_color_gradient_direction=&#8221;164deg&#8221; background_color_gradient_stops=&#8221;rgba(243,190,41,0.17) 0%|rgba(205,59,167,0.17) 100%&#8221; background_layout=&#8221;dark&#8221; custom_margin=&#8221;||12%|&#8221; custom_margin_tablet=&#8221;70px|||&#8221; custom_margin_last_edited=&#8221;off|desktop&#8221; custom_padding=&#8221;30px|16px|30px|16px&#8221; animation_style=&#8221;fold&#8221; animation_delay=&#8221;150ms&#8221; hover_enabled=&#8221;0&#8243; border_radii=&#8221;on|20px|20px|20px|20px&#8221; box_shadow_style=&#8221;preset1&#8243; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221; sticky_enabled=&#8221;0&#8243;]<\/p>\n<p class=\"font-claude-response-body break-words whitespace-normal leading-[1.7]\">LUFS stands for <em>Loudness Units relative to Full Scale,<\/em>\u00a0it&#8217;s the international standard for measuring perceived loudness in audio. Unlike simple peak levels, LUFS accounts for how the human ear actually experiences volume, making it the go-to metric for broadcast, streaming, and mastering.<\/p>\n<ul class=\"[li_&amp;]:mb-0 [li_&amp;]:mt-1 [li_&amp;]:gap-1 [&amp;:not(:last-child)_ul]:pb-1 [&amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3\">\n<li class=\"whitespace-normal break-words pl-2\"><strong>Integrated LUFS<\/strong> is the average loudness of your entire track, measured from start to finish with gating applied to ignore silence. This is the most important number for streaming platforms.<\/li>\n<li class=\"whitespace-normal break-words pl-2\"><strong>Max Short-Term LUFS<\/strong> is the loudest 3-second window found anywhere in your track. Useful for identifying the densest, loudest sections.<\/li>\n<li class=\"whitespace-normal break-words pl-2\"><strong>Max Momentary LUFS<\/strong> is the loudest 400ms snapshot in the file. It reacts faster than short-term and captures transient intensity.<\/li>\n<li class=\"whitespace-normal break-words pl-2\"><strong>Max True Peak<\/strong> measures the actual peak level of the audio signal <em>between<\/em> digital samples, using oversampling. Expressed in dBTP (decibels True Peak), it&#8217;s the most accurate way to detect clipping: especially after encoding.<\/li>\n<li class=\"whitespace-normal break-words pl-2\"><strong>Max Peak<\/strong> is the highest individual sample value in the file, expressed in dBFS (decibels relative to Full Scale). 0 dBFS is the absolute digital ceiling.<\/li>\n<li class=\"whitespace-normal break-words pl-2\"><strong>Max RMS<\/strong> reflects the loudest average power level found in any short window of the track. It gives a good sense of the energy and density of your mix.<\/li>\n<\/ul>\n<p>[\/et_pb_blurb][et_pb_blurb title=&#8221;What is EBU R128?&#8221; use_icon=&#8221;on&#8221; font_icon=&#8221;&#x75;||divi||400&#8243; icon_color=&#8221;#f3be29&#8243; icon_placement=&#8221;left&#8221; _builder_version=&#8221;4.27.5&#8243; header_font=&#8221;&#8211;et_global_heading_font|700||on|||||&#8221; header_font_size=&#8221;14px&#8221; header_letter_spacing=&#8221;2px&#8221; header_line_height=&#8221;1.8em&#8221; body_font=&#8221;&#8211;et_global_heading_font||||||||&#8221; body_text_color=&#8221;#FFFFFF&#8221; body_font_size=&#8221;16px&#8221; body_line_height=&#8221;1.8em&#8221; background_enable_color=&#8221;off&#8221; use_background_color_gradient=&#8221;on&#8221; background_color_gradient_direction=&#8221;164deg&#8221; background_color_gradient_stops=&#8221;rgba(243,190,41,0.17) 0%|rgba(205,59,167,0.17) 100%&#8221; background_layout=&#8221;dark&#8221; custom_margin=&#8221;||12%|&#8221; custom_margin_tablet=&#8221;70px|||&#8221; custom_margin_last_edited=&#8221;off|desktop&#8221; custom_padding=&#8221;30px|16px|30px|16px&#8221; animation_style=&#8221;fold&#8221; animation_delay=&#8221;100ms&#8221; border_radii=&#8221;on|20px|20px|20px|20px&#8221; box_shadow_style=&#8221;preset1&#8243; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<div class=\"faq-item\">\n<div class=\"faq-answer\">\n<p>EBU R128 is the European Broadcasting Union&#8217;s standard for loudness normalization and maximum permitted true peak level in audio. Published in 2010 and regularly updated since, it defines exactly how loudness should be measured and targets a program loudness of \u221223 LUFS for broadcast content. It is built on the ITU-R BS.1770 measurement algorithm, which applies a specific frequency weighting (called K-weighting) to reflect how the human ear perceives different frequencies at different volumes. EBU R128 is now the foundation for loudness standards across television, radio, podcasting, and music streaming worldwide. This tool follows its measurement methodology precisely.<\/p>\n<\/div>\n<\/div>\n<p>[\/et_pb_blurb][\/et_pb_column][\/et_pb_row][et_pb_row _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;default&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;4_4&#8243; _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;default&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_heading title=&#8221;We&#8217;ve much more for you to explore:&#8221; _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;default&#8221; title_level=&#8221;h2&#8243; title_font=&#8221;&#8211;et_global_heading_font||||||||&#8221; title_text_color=&#8221;#FFFFFF&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_heading][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_4,1_4,1_4,1_4&#8243; _builder_version=&#8221;4.18.0&#8243; custom_margin=&#8221;1vw|auto||auto|false|false&#8221; animation_style=&#8221;flip&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.18.0&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_button button_url=&#8221;https:\/\/smartdsp.pro\/mastering-services&#8221; button_text=&#8221;Mastering&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;3117bc07-6a8a-4679-b3bb-b6ed74b48a2f&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_use_color_gradient=&#8221;on&#8221; button_bg_color_gradient_direction=&#8221;229deg&#8221; button_bg_color_gradient_stops=&#8221;rgba(189,22,179,0.8) 0%|rgba(253,202,65,0.8) 100%&#8221; button_border_width=&#8221;0px&#8221; button_border_radius=&#8221;15px&#8221; button_font=&#8221;Be Vietnam Pro|600|||||||&#8221; button_use_icon=&#8221;off&#8221; box_shadow_style=&#8221;preset1&#8243; box_shadow_blur=&#8221;35px&#8221; box_shadow_spread=&#8221;-11px&#8221; box_shadow_color=&#8221;rgba(255,255,255,0.28)&#8221; global_colors_info=&#8221;{}&#8221; button_bg_color__hover_enabled=&#8221;on|desktop&#8221; button_bg_color__hover=&#8221;rgba(0,127,31,0.7)&#8221; button_bg_enable_color__hover=&#8221;on&#8221; button_border_width__hover=&#8221;0px&#8221; button_border_width__hover_enabled=&#8221;on|desktop&#8221; button_border_radius__hover=&#8221;15px&#8221; button_border_radius__hover_enabled=&#8221;on|desktop&#8221; box_shadow_color__hover=&#8221;rgba(255,255,255,0.49)&#8221; box_shadow_color__hover_enabled=&#8221;on|hover&#8221; button_text_size__hover_enabled=&#8221;on|desktop&#8221; button_border_color__hover=&#8221;rgba(255,255,255,0.02)&#8221; button_border_color__hover_enabled=&#8221;on|hover&#8221; button_icon_color__hover=&#8221;#FFFFFF&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221;][\/et_pb_button][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.18.0&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_button button_url=&#8221;https:\/\/smartdsp.pro\/smart-dsp-products\/&#8221; button_text=&#8221;Audio Effects&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.4&#8243; _module_preset=&#8221;3117bc07-6a8a-4679-b3bb-b6ed74b48a2f&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_use_color_gradient=&#8221;on&#8221; button_bg_color_gradient_direction=&#8221;229deg&#8221; button_bg_color_gradient_stops=&#8221;rgba(189,22,179,0.8) 0%|rgba(253,202,65,0.8) 100%&#8221; button_border_width=&#8221;0px&#8221; button_border_radius=&#8221;15px&#8221; button_font=&#8221;Be Vietnam Pro|600|||||||&#8221; button_use_icon=&#8221;off&#8221; box_shadow_style=&#8221;preset1&#8243; box_shadow_blur=&#8221;35px&#8221; box_shadow_spread=&#8221;-11px&#8221; box_shadow_color=&#8221;rgba(255,255,255,0.28)&#8221; global_colors_info=&#8221;{}&#8221; button_bg_color__hover_enabled=&#8221;on|desktop&#8221; button_bg_color__hover=&#8221;rgba(0,127,31,0.7)&#8221; button_bg_enable_color__hover=&#8221;on&#8221; button_border_width__hover=&#8221;0px&#8221; button_border_width__hover_enabled=&#8221;on|desktop&#8221; button_border_radius__hover=&#8221;15px&#8221; button_border_radius__hover_enabled=&#8221;on|desktop&#8221; box_shadow_color__hover=&#8221;rgba(255,255,255,0.49)&#8221; box_shadow_color__hover_enabled=&#8221;on|hover&#8221; button_text_size__hover_enabled=&#8221;on|desktop&#8221; button_border_color__hover=&#8221;rgba(255,255,255,0.02)&#8221; button_border_color__hover_enabled=&#8221;on|hover&#8221; button_icon_color__hover=&#8221;#FFFFFF&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221;][\/et_pb_button][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.18.0&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_button button_url=&#8221;https:\/\/www.patreon.com\/posts\/how-to-get-most-96445637&#8243; url_new_window=&#8221;on&#8221; button_text=&#8221;Learning&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;3117bc07-6a8a-4679-b3bb-b6ed74b48a2f&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_use_color_gradient=&#8221;on&#8221; button_bg_color_gradient_direction=&#8221;229deg&#8221; button_bg_color_gradient_stops=&#8221;rgba(189,22,179,0.8) 0%|rgba(253,202,65,0.8) 100%&#8221; button_border_width=&#8221;0px&#8221; button_border_radius=&#8221;15px&#8221; button_font=&#8221;Be Vietnam Pro|600|||||||&#8221; button_use_icon=&#8221;off&#8221; box_shadow_style=&#8221;preset1&#8243; box_shadow_blur=&#8221;35px&#8221; box_shadow_spread=&#8221;-11px&#8221; box_shadow_color=&#8221;rgba(255,255,255,0.28)&#8221; global_colors_info=&#8221;{}&#8221; button_bg_color__hover_enabled=&#8221;on|desktop&#8221; button_bg_color__hover=&#8221;rgba(0,127,31,0.7)&#8221; button_bg_enable_color__hover=&#8221;on&#8221; button_border_width__hover=&#8221;0px&#8221; button_border_width__hover_enabled=&#8221;on|desktop&#8221; button_border_radius__hover=&#8221;15px&#8221; button_border_radius__hover_enabled=&#8221;on|desktop&#8221; box_shadow_color__hover=&#8221;rgba(255,255,255,0.49)&#8221; box_shadow_color__hover_enabled=&#8221;on|hover&#8221; button_text_size__hover_enabled=&#8221;on|desktop&#8221; button_border_color__hover=&#8221;rgba(255,255,255,0.02)&#8221; button_border_color__hover_enabled=&#8221;on|hover&#8221; button_icon_color__hover=&#8221;#FFFFFF&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221;][\/et_pb_button][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.18.0&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_button button_url=&#8221;https:\/\/smartdsp.pro\/tools&#8221; button_text=&#8221;Online Tools&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.5&#8243; _module_preset=&#8221;3117bc07-6a8a-4679-b3bb-b6ed74b48a2f&#8221; custom_button=&#8221;on&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_use_color_gradient=&#8221;on&#8221; button_bg_color_gradient_direction=&#8221;229deg&#8221; button_bg_color_gradient_stops=&#8221;rgba(189,22,179,0.8) 0%|rgba(253,202,65,0.8) 100%&#8221; button_border_width=&#8221;0px&#8221; button_border_radius=&#8221;15px&#8221; button_font=&#8221;Be Vietnam Pro|600|||||||&#8221; button_use_icon=&#8221;off&#8221; box_shadow_style=&#8221;preset1&#8243; box_shadow_blur=&#8221;35px&#8221; box_shadow_spread=&#8221;-11px&#8221; box_shadow_color=&#8221;rgba(255,255,255,0.28)&#8221; global_colors_info=&#8221;{}&#8221; button_bg_color__hover_enabled=&#8221;on|desktop&#8221; button_bg_color__hover=&#8221;rgba(0,127,31,0.7)&#8221; button_bg_enable_color__hover=&#8221;on&#8221; button_border_width__hover=&#8221;0px&#8221; button_border_width__hover_enabled=&#8221;on|desktop&#8221; button_border_radius__hover=&#8221;15px&#8221; button_border_radius__hover_enabled=&#8221;on|desktop&#8221; box_shadow_color__hover=&#8221;rgba(255,255,255,0.49)&#8221; box_shadow_color__hover_enabled=&#8221;on|hover&#8221; button_text_size__hover_enabled=&#8221;on|desktop&#8221; button_border_color__hover=&#8221;rgba(255,255,255,0.02)&#8221; button_border_color__hover_enabled=&#8221;on|hover&#8221; button_icon_color__hover=&#8221;#FFFFFF&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221;][\/et_pb_button][\/et_pb_column][\/et_pb_row][\/et_pb_section][et_pb_section fb_built=&#8221;1&#8243; admin_label=&#8221;Support&#8221; _builder_version=&#8221;4.18.0&#8243; background_enable_color=&#8221;off&#8221; use_background_color_gradient=&#8221;on&#8221; background_color_gradient_stops=&#8221;#000000 0%|rgba(41,196,169,0) 100%&#8221; background_color_gradient_overlays_image=&#8221;on&#8221; background_image=&#8221;https:\/\/smartdsp.pro\/wp-content\/uploads\/2022\/10\/footer-background-scaled-1.jpg&#8221; custom_padding=&#8221;100px|0px|100px|0px&#8221; locked=&#8221;off&#8221; global_colors_info=&#8221;{}&#8221;][et_pb_row column_structure=&#8221;3_5,2_5&#8243; _builder_version=&#8221;4.16&#8243; global_colors_info=&#8221;{}&#8221;][et_pb_column type=&#8221;3_5&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;40px||40px|&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_text _builder_version=&#8221;4.18.0&#8243; text_font=&#8221;PT Sans|700|||||||&#8221; text_text_color=&#8221;#00B22D&#8221; text_font_size=&#8221;22px&#8221; header_font=&#8221;||||||||&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<p>FEEDBACK, ANSWERS, HELP WITH TROUBLESHOOTING<\/p>\n<p>[\/et_pb_text][et_pb_text _builder_version=&#8221;4.18.0&#8243; text_font=&#8221;PT Sans|700|||||||&#8221; text_text_color=&#8221;#FFFFFF&#8221; text_font_size=&#8221;18px&#8221; text_line_height=&#8221;1.8em&#8221; header_font=&#8221;||||||||&#8221; header_2_font=&#8221;Poppins|500|||||||&#8221; header_2_text_color=&#8221;#ffffff&#8221; header_2_font_size=&#8221;38px&#8221; header_2_line_height=&#8221;1.3em&#8221; header_3_font=&#8221;||||||||&#8221; header_4_font=&#8221;||||||||&#8221; global_colors_info=&#8221;{}&#8221;]<\/p>\n<h2>Available 7\/7<\/h2>\n<p>You want some feedback on your project, you have some audio related question or even need some help troubleshooting something?<br \/>Don&#8217;t wait any longer, hit us up!<\/p>\n<p>[\/et_pb_text][\/et_pb_column][et_pb_column type=&#8221;2_5&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_image src=&#8221;https:\/\/smartdsp.pro\/wp-content\/uploads\/2020\/07\/finance-illustration-03.png&#8221; title_text=&#8221;finance-illustration-03&#8243; align=&#8221;center&#8221; align_tablet=&#8221;center&#8221; align_phone=&#8221;&#8221; align_last_edited=&#8221;on|desktop&#8221; disabled_on=&#8221;on|on|off&#8221; _builder_version=&#8221;4.16&#8243; width=&#8221;40%&#8221; custom_margin=&#8221;45px|||||&#8221; animation_style=&#8221;slide&#8221; animation_direction=&#8221;bottom&#8221; animation_intensity_slide=&#8221;10%&#8221; global_colors_info=&#8221;{}&#8221;][\/et_pb_image][\/et_pb_column][\/et_pb_row][et_pb_row column_structure=&#8221;1_4,1_4,1_4,1_4&#8243; _builder_version=&#8221;4.27.4&#8243; global_colors_info=&#8221;{}&#8221; button_border_width__hover=&#8221;0px&#8221; button_border_width__hover_enabled=&#8221;on|desktop&#8221; button_border_radius__hover=&#8221;15px&#8221; button_border_radius__hover_enabled=&#8221;on|desktop&#8221; box_shadow_color__hover=&#8221;rgba(255,255,255,0.49)&#8221; box_shadow_color__hover_enabled=&#8221;on|hover&#8221; button_text_size__hover_enabled=&#8221;on|desktop&#8221; button_bg_color__hover=&#8221;rgba(0,127,31,0.7)&#8221; button_bg_color__hover_enabled=&#8221;on|desktop&#8221; button_border_color__hover=&#8221;rgba(255,255,255,0.02)&#8221; button_border_color__hover_enabled=&#8221;on|hover&#8221; button_icon_color__hover=&#8221;#FFFFFF&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221;][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;40px||40px|&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_button button_url=&#8221;https:\/\/smartdsp.pro\/get-feedback&#8221; url_new_window=&#8221;on&#8221; button_text=&#8221;Get some feedback&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.4&#8243; custom_button=&#8221;on&#8221; button_text_size=&#8221;18px&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_use_color_gradient=&#8221;on&#8221; button_bg_color_gradient_direction=&#8221;229deg&#8221; button_bg_color_gradient_stops=&#8221;rgba(189,22,179,0.8) 0%|rgba(253,202,65,0.8) 100%&#8221; button_border_width=&#8221;0px&#8221; button_border_radius=&#8221;15px&#8221; button_font=&#8221;Be Vietnam Pro|600|||||||&#8221; button_use_icon=&#8221;off&#8221; box_shadow_style=&#8221;preset1&#8243; box_shadow_blur=&#8221;35px&#8221; box_shadow_spread=&#8221;-11px&#8221; box_shadow_color=&#8221;rgba(255,255,255,0.28)&#8221; global_colors_info=&#8221;{}&#8221; button_text_size__hover_enabled=&#8221;on|desktop&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;on|desktop&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;on|hover&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;on|desktop&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;on|desktop&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221; button_bg_color__hover=&#8221;rgba(0,127,31,0.7)&#8221; button_border_width__hover=&#8221;0px&#8221; button_border_radius__hover=&#8221;15px&#8221; box_shadow_color__hover=&#8221;rgba(255,255,255,0.49)&#8221; box_shadow_color__hover_enabled=&#8221;on|hover&#8221; button_border_color__hover=&#8221;rgba(255,255,255,0.02)&#8221; button_icon_color__hover=&#8221;#FFFFFF&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221; button_text_size__hover=&#8221;18px&#8221;][\/et_pb_button][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][et_pb_button button_url=&#8221;https:\/\/smartdsp.pro\/contact&#8221; url_new_window=&#8221;on&#8221; button_text=&#8221;I have a question&#8221; button_alignment=&#8221;center&#8221; _builder_version=&#8221;4.27.4&#8243; custom_button=&#8221;on&#8221; button_text_size=&#8221;18px&#8221; button_text_color=&#8221;#FFFFFF&#8221; button_bg_use_color_gradient=&#8221;on&#8221; button_bg_color_gradient_direction=&#8221;229deg&#8221; button_bg_color_gradient_stops=&#8221;rgba(189,22,179,0.8) 0%|rgba(253,202,65,0.8) 100%&#8221; button_border_width=&#8221;0px&#8221; button_border_radius=&#8221;15px&#8221; button_font=&#8221;Be Vietnam Pro|600|||||||&#8221; button_use_icon=&#8221;off&#8221; box_shadow_style=&#8221;preset1&#8243; box_shadow_blur=&#8221;35px&#8221; box_shadow_spread=&#8221;-11px&#8221; box_shadow_color=&#8221;rgba(255,255,255,0.28)&#8221; global_colors_info=&#8221;{}&#8221; button_text_size__hover_enabled=&#8221;on|desktop&#8221; button_one_text_size__hover_enabled=&#8221;off&#8221; button_two_text_size__hover_enabled=&#8221;off&#8221; button_text_color__hover_enabled=&#8221;off&#8221; button_one_text_color__hover_enabled=&#8221;off&#8221; button_two_text_color__hover_enabled=&#8221;off&#8221; button_border_width__hover_enabled=&#8221;on|desktop&#8221; button_one_border_width__hover_enabled=&#8221;off&#8221; button_two_border_width__hover_enabled=&#8221;off&#8221; button_border_color__hover_enabled=&#8221;on|hover&#8221; button_one_border_color__hover_enabled=&#8221;off&#8221; button_two_border_color__hover_enabled=&#8221;off&#8221; button_border_radius__hover_enabled=&#8221;on|desktop&#8221; button_one_border_radius__hover_enabled=&#8221;off&#8221; button_two_border_radius__hover_enabled=&#8221;off&#8221; button_letter_spacing__hover_enabled=&#8221;off&#8221; button_one_letter_spacing__hover_enabled=&#8221;off&#8221; button_two_letter_spacing__hover_enabled=&#8221;off&#8221; button_bg_color__hover_enabled=&#8221;on|desktop&#8221; button_one_bg_color__hover_enabled=&#8221;off&#8221; button_two_bg_color__hover_enabled=&#8221;off&#8221; button_bg_color__hover=&#8221;rgba(0,127,31,0.7)&#8221; button_border_width__hover=&#8221;0px&#8221; button_border_radius__hover=&#8221;15px&#8221; box_shadow_color__hover=&#8221;rgba(255,255,255,0.49)&#8221; box_shadow_color__hover_enabled=&#8221;on|hover&#8221; button_border_color__hover=&#8221;rgba(255,255,255,0.02)&#8221; button_icon_color__hover=&#8221;#FFFFFF&#8221; button_icon_color__hover_enabled=&#8221;on|hover&#8221; button_text_size__hover=&#8221;18px&#8221;][\/et_pb_button][\/et_pb_column][et_pb_column type=&#8221;1_4&#8243; _builder_version=&#8221;4.16&#8243; custom_padding=&#8221;|||&#8221; global_colors_info=&#8221;{}&#8221; custom_padding__hover=&#8221;|||&#8221;][\/et_pb_column][\/et_pb_row][\/et_pb_section]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Professional Loudness Analyzer LUfs &#038; max. True Peak.  Know if your music will be attenuated by YouTube, Spotify, TIDAL, Apple Music, Soundcloud.<\/p>","protected":false},"author":392,"featured_media":4731,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_et_pb_use_builder":"on","_et_pb_old_content":"","_et_gb_content_width":"","footnotes":""},"class_list":["post-4603","page","type-page","status-publish","has-post-thumbnail","hentry"],"_links":{"self":[{"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/pages\/4603","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/users\/392"}],"replies":[{"embeddable":true,"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/comments?post=4603"}],"version-history":[{"count":13,"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/pages\/4603\/revisions"}],"predecessor-version":[{"id":4921,"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/pages\/4603\/revisions\/4921"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/media\/4731"}],"wp:attachment":[{"href":"https:\/\/smartdsp.pro\/fr\/wp-json\/wp\/v2\/media?parent=4603"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}