RADAR Panel — Fark Analizi

Canlı panel çıktısı (a-html.txt) ile kaynak kod şablonu karşılaştırması

26 Şubat 2026 • Oturum: Nurullah (435dk)

Genel Özet

9
Toplam Bölüm
7
Mevcut
1
Eksik (Bug)
1
Kısmi Veri

📝 Basit Anlatım (Herkes İçin)

RADAR paneli, müzik çalarken arka planda çalışan bir "canlı monitör" ekranıdır. Şarkı bilgisi, bellek kullanımı, bağlantı hızı gibi bilgileri gösterir.

Sorun ne? Şarkı duraklatılınca (pause), paneldeki "HLS Kalite" bölümü tamamen kayboluyordu. Çünkü sistem "şu an müzik çalmıyor = HLS verisi yok" diye düşünüp bölümü gizliyordu.

Ne yapıldı? Artık pause durumunda bile son bilinen kalite bilgisi gösterilecek. Yanına "(son bilinen)" etiketi eklenir, böylece kullanıcı bunun eski veri olduğunu anlar.

Diğer eksik satırlar (RTT, TTP gibi) ise gerçekten veri olmadığı için boş — bu normal davranış.

🔧 Teknik Detaylar (Geliştiriciler İçin)

Kaynak dosya: public/themes/muzibu/js/player/features/performance-debug.js

Panel render fonksiyonu: updatePanel() — satır ~3065

Durum yakalama: captureFullState() — satır ~220-310

Karşılaştırma kaynağı: a-html.txt (canlı DOM snapshot)

SYS·CORE ANALYTICS

Tam Eşleşme ✓

Fake metrikler bölümü (PCM Ent. Koef., HLS Seg. ΔBuf, DSP μLat., LUFS Norm., XRM Jitter, ABR Korel., Spektral δ, CDN σ·RTT).

Panel'de: 8/8 satır mevcut. Animasyonlu rastgele değerler gösteriyor.

PCM
HLS Seg
DSP
LUFS
Jitter
ABR
Spektral
CDN RTT

🎵 Şu An

Tam Eşleşme ✓
SatırPanelKodDurum
ŞarkıOdam Kireç TutmuyorcurrentSong.title
Durum⏸ DurduisPlaying koşulu

💾 Bellek

Tam Eşleşme ✓
SatırPanel DeğeriDurum
Kullanılan25 MB
Peak56 MB
Bar (progress)0.61%
Trend + GCStabil / GC: 0x

📡 Bağlantı

Kısmi — 1 satır eksik
SatırPanelKodda Var mı?Durum
Bağlantı4g / 10 MbpsEvet
RTT Evet (koşullu) Koşullu
// Kodda RTT satırı koşulu (performance-debug.js):
if (conn.rtt !== undefined) → 'RTT: ' + conn.rtt + 'ms'
Neden eksik? navigator.connection.rtt tüm tarayıcılarda desteklenmiyor. Bu cihazda tanımsız olduğu için satır gösterilmedi. Bug değil, beklenen davranış.

📊 Oturum (5 dk)

Kısmi — 2 satır eksik
SatırPanelKodda Var mı?Durum
Şarkı geçişi0Evet
PROC-HOLD0Evet
XMIX0Evet
CHAIN-RTRN0Evet
REBUFFER0Evet
TTP Ort. Evet (koşullu) Koşullu
Başlangıç Tetikleyici Evet (koşullu) Koşullu

TTP Ort.: history.transitions.length > 0 ise gösterilir. Henüz geçiş olmadığı için gizli. Bug değil.

Başlangıç Tetikleyici: firstTrigger kaydedildiyse gösterilir. Snapshot anında kayıt yoktu. Bug değil.

🔊 Kaynaklar

Tam Eşleşme ✓
SatırPanelDurum
Audio2 (peak: 2)
APC2
PRE-STAGE
HLS Pool0i / 0a
Not: ORPHAN-AE satırı kodda var ama staleCount === 0 olduğu için gizli. Doğru davranış.

🎚️ HLS Kalite (ABR)

BUG — Tamamen Eksik DÜZELTİLDİ ✓

Sorun Ne?

Şarkı çalarken bu bölüm "Aktif Kalite", "Bant Genişliği", "Auto Level", "Variant Sayısı" ve seviye listesini gösterir. Ancak şarkı duraklatıldığında (pause) veya HLS instance pool'a geri verildiğinde, store.hls null olur ve tüm bölüm kaybolur.

Kodda olması gereken satırlar (a-html.txt'de YOK):

SatırAçıklamaPanel
Aktif Kalitehigh (280kbps) veya mid/lowEksik
Bant GenişliğiTahmini bant genişliği (kbps)Eksik
Auto LevelOtomatik / ManuelEksik
Variant Sayısı4 (ultralow/low/mid/high)Eksik
Seviye Listesi► ultralow ○ low ○ mid ○ highEksik
// ÖNCEKİ KOD (hatalı) — satır ~3067:
if (!state.hls.active || !state.hls.bufferInfo) return '';
→ store.hls null olunca → active=false → tüm bölüm return '' ile atlanıyor
// YENİ KOD (düzeltildi):
let _lastHlsBufferInfo = null; // modül seviyesi cache
_lastHlsBufferInfo = hlsBufferInfo; // captureFullState() içinde kaydet
const bi = state.hls.bufferInfo || _lastHlsBufferInfo; // fallback
if (!bi) return ''; // hiç veri yoksa gösterme
→ Pause'da son bilinen değerler gösterilir + "(son bilinen)" etiketi eklenir

Düzeltme Detayı (3 Değişiklik):

  1. let _lastHlsBufferInfo = null; — Modül seviyesinde cache değişkeni (satır 19)
  2. _lastHlsBufferInfo = hlsBufferInfo; — captureFullState() sonunda kaydet (satır ~308)
  3. const bi = state.hls.bufferInfo || _lastHlsBufferInfo; — updatePanel() fallback (satır ~3067)

🔒 Ortam Kontrolü

Tam Eşleşme ✓
SatırPanel DeğeriDurum
Reklam Engel.✅ Yok
WebRTC✅ Açık
Yerel IP92.44.171.31
DNS✅ 109ms
Sunucu RTT✅ 482ms
Serv. Worker✅ Temiz
HTTPS✅ Güvenli

🔽 Footer (Butonlar)

Tam Eşleşme ✓
📋 Kopyala —
📤 Debug Oluştur —

Sonuç Tablosu

Bölüm Panel Kod Sonuç
⬡ SYS·CORE8 satır8 satır✓ Tam
🎵 Şu An2 satır2 satır✓ Tam
💾 Bellek4 satır4 satır✓ Tam
📡 Bağlantı1 satır2 satır⚠ Koşullu (RTT)
📊 Oturum5 satır7 satır⚠ Koşullu (TTP, tetikleyici)
🔊 Kaynaklar4 satır5 satır✓ Tam (ORPHAN gizli)
🎚️ HLS Kalite (ABR)0 satır5+ satır🔧 Düzeltildi
🔒 Ortam Kontrolü7 satır7 satır✓ Tam
🔽 Footer2 buton2 buton✓ Tam

Uygulanan Düzeltme

HLS Kalite bölümü artık pause'da da görünür
Son bilinen HLS bilgileri cache'lenir. Şarkı pause olduğunda veya HLS instance pool'a döndüğünde, bölüm "(son bilinen)" etiketiyle görünmeye devam eder.
Koşullu satırlar (RTT, TTP, Tetikleyici) → Düzeltme gerekmez
Bu satırlar veri mevcut olduğunda otomatik gösterilir. Şu an gerçekten veri yok.
26 Şubat 2026 • Muzibu.com.tr