Commit Graph

  • 19c1e032ee M26: diag m26d envelope PWR ON (pdc/gains/peak mix+nguon) quanh wake/cold main admin 2026-09-07 20:55:52 +07:00
  • 3601748881 M26: fix pdc=wet-lag FILL (10240) + sync display/anchor - het upbeat khi PWR ON giua play admin 2026-09-07 18:19:39 +07:00
  • 3bc1b99376 M26: diag PWR ON wake snap (ph_on_a/s/1-3 + ph_on_wl) do wet-lag that admin 2026-09-07 17:20:19 +07:00
  • 95fc073e57 M26: diag PWR OFF replay — dbg_state worklet + snap pdc/gains quanh OFF (ph_echo0-3/wl) admin 2026-09-07 16:20:41 +07:00
  • 7140ed6e6f M25: fix master FX - worker cross-origin (Tauri origin tauri://) -> Blob URL + bump stamp precompiled admin 2026-09-07 15:40:52 +07:00
  • 9307ecccec M25: WS FX realtime sang Web Worker + MessageChannel worker->worklet (het underrun u1/u10 cold-start + stall main) admin 2026-09-07 15:11:23 +07:00
  • a88fc5b3f1 M24: fix lag am khi switch GUI VST luc play — blocking FX-GUI ops (capture poll/wait_chain_ready) ra khoi event loop qua asyncio.to_thread + lock per-session, pump audio khong stall (pump_gap 60-200ms -> 0) admin 2026-09-07 12:13:20 +07:00
  • 821019324f M23: fix Bug B master fader main-out moi luc + Bug C content lien tuc qua PWR toggle (giu PDC warm + rebase content wake) admin 2026-09-07 11:25:45 +07:00
  • dc962c87cd M22: fix Bug C playhead nhay khi PWR toggle — rebase timeline (off/at + anchor=ps) khi wake warm-session giua play; diag Bug B — mdiag dB khi F7 toggle Mixer Panel admin 2026-09-07 10:38:45 +07:00
  • 0ffb6caa82 M21: diag Bug C — ph-diag log playhead quanh PWR master FX toggle (arm 6s: snapshot refs/fxRt tai click/effect/freeze/snap/anchor + ph_jump khi delta>0.25s) admin 2026-09-07 10:04:59 +07:00
  • fa6d09ee83 M20: diag Bug B — log meter dB master OUT (load/fx_click/panel_open + hist 8s + post 1/2/4/8s) admin 2026-09-07 09:03:23 +07:00
  • e4c678aabd M19: fix fx PWR OFF->ON crackle/wobble — wake clear_queue play + cho started (het phat audio cu + underrun) admin 2026-09-07 08:54:47 +07:00
  • 7b27065ed8 M18: fx realtime bridge — FILL 24->40 CAP 48->64, PDC 7936->12032 admin 2026-09-06 20:50:19 +07:00
  • f56d7eb9cf M17: realtime FX mượt — MMCSS Pro Audio + HIGH_PRIORITY_CLASS (JuceFxLoop), GUI tick cadence động 30/200ms (guiBusy), worklet CAP 32->48, track FX gửi input NGAY như master admin 2026-09-06 20:11:26 +07:00
  • ef521d9981 M7-M16: VST FX GUI native embed hoàn thiện — fix click-2-lần chuyển slot, anchor lần mở đầu, taskbar icon admin 2026-09-06 19:45:14 +07:00
  • ec2c925d09 M6: fix 2-GUI khi mở VST FX native (mastering) — một plugin chỉ một GUI 3dtours 2026-09-04 18:26:40 +07:00
  • cede51ae0c M5.4: VST3 host conformance (Reaper-style) for FX GUI attach admin 2026-09-04 17:34:54 +07:00
  • 014b9ac460 M5: capture editor state -> preset_b64 khi đóng GUI native (JuceFxLoop ghi <job>.preset.json + /fx-gui/close poll) admin 2026-09-04 11:49:42 +07:00
  • 14fd794e6d M4: /fx-gui redirect vao session fxrt (native-window mode, embed_url=None) + watchdog auto-restart admin 2026-09-04 11:37:08 +07:00
  • e6d01d90f1 M3: ctrl ring reader (engine -> bridge) dieu khien editor qua SHM admin 2026-09-04 10:53:39 +07:00
  • df4a22b9b4 M2: GUI thread + host window trong juce_fx_bridge (Reaper-style — editor cua CHINH instance DSP) admin 2026-09-04 10:40:46 +07:00
  • 0d22e8b4d3 M1: engine editor host API (Reaper-style, editor cua CHINH instance DSP trong graph) + selftest admin 2026-09-04 09:59:29 +07:00
  • 6a74631cba V45.46: GUI embed VST full-panel trong DAW - phuc hoi embed (frame-capture ~10fps, relay input), bo toolbar header 'X Dong GUI' trong VstGuiEmbed + bo bar FX RT telemetry trong Mastering (phan tach GUI vs chain FX slot = border chain strip); dong GUI = chain card / module builtin / chon VST khac / onDead; projects API /disk list+open + api.js wrappers; plugins.py them SF_FXGUI_FLOAT=1 khi spawn bridge GUI; FxGuiServer/RenderFxJob fix GUI embed frame capture + show/hide re-anchor theo panel rect. Rebuild daw_vst_bridge+fx_vst_bridge+plugin_host v=202609032200. admin 2026-09-03 21:28:20 +07:00
  • db9123438d V45.45: fix GUI embed VST den tren box (Nectar/iZotope) - first-paint kick real click + BitBlt black-frame fallback + on-screen parking MAC DINH (SF_FXGUI_EMBED_ONSCREEN=0 de tat) + plugins.py log TAT CA stdout bridge (khong nuot dong truoc SF_FXGUI_PORT=) + auto-open GUI khi add VST FX vao Mastering slot. Rebuild daw_vst_bridge+fx_vst_bridge+installer NSIS. admin 2026-09-03 07:13:21 +07:00
  • f958348a20 V45.44: fix Ozone 11 GUI den tren Intel UHD 630 - env SF_FXGUI_EMBED_ONSCREEN giu window tren man hinh (HWND_BOTTOM tai rect panel, duoi DAW) de DWM redirect GPU surface thay vi park -20000 (PrintWindow chi capture duoc window dang tren monitor); EMBED_ONSCREEN tuong duong ATTACH_ONSCREEN (khong regress crash attach); /hide reset anchored/dance de reopen re-place dung; them SF_FXGUI_DEBUG=1 log [FxGuiDbg] moi 2s (served/capOk/okB/okP/avg/vis/rect/anchored) lam ground truth cho lan test toi; captureHwndToJpeg expose okB/okP. Rebuild daw_vst_bridge+fx_vst_bridge+installer NSIS. admin 2026-09-02 21:47:16 +07:00
  • 244dc8ee9e V45.43: fix Ozone 11 GUI crash on Intel UHD 630 + load diagnostics admin 2026-09-02 21:08:49 +07:00
  • c32c77e4f4 fix(ui): master chain panel - xoa toolbar Delta Listen, GUI VST mo mac dinh spawn fresh moi lan mo panel, busy spinner + banner loi + nut Thu lai khi spawn GUI cham/fail standalone-shm-bridge 3dtours 2026-09-02 20:32:20 +07:00
  • 9f3b072be0 V45.42: xoa toolbar label 'VST GUI - nhung (frame-capture)' trong VstGuiEmbed (GUI hien thi thang o row, khong con header bar) + fix flash trang khi load GUI embed o tang C++: RenderFxJob.cpp them global g_fxGuiEditorReady (set sau khi editor attach thanh cong tren pump thread), FxGuiServer.cpp /frame tu choi 503 khi chua ready, tinh mean-luma trong captureHwndToJpeg de loai frame trang/den (avg <0.02 hoac >0.98), cache g_lastGood de serve frame tot cuoi thay vi frame blank khi window dang repaint. Rebuild daw_vst_bridge+fx_vst_bridge+engine+installer NSIS/MSI v=202609021810. admin 2026-09-02 18:31:41 +07:00
  • 0da2a41330 Merge remote-tracking branch 'origin/main' admin 2026-09-02 17:46:12 +07:00
  • 328f3506bb V45.41: fix 4 loi Mastering Panel tren may khac - xoa toolbar Delta Listen (IRC/EQ Presets/Learn Input Gain), xoa nut 'X Dong GUI' VstGuiEmbed, GUI embed chi mo theo click (bo auto-open khi vao panel + bo persist _persistMasterGuiOpen), fix flash VST GUI bang frame preload single-flight + throttle /show theo rect, fix chip 'Server' nhap nhay (hysteresis: offline sau 3 fail lien tiep, timeout 6s). Rebuild engine+installer v=202609021718. admin 2026-09-02 17:40:07 +07:00
  • d8e5f52017 V45.40: fix bridge crash-dump hardcode duong dan may dev (C:/Users/locpham/...) -> %TEMP%\sf_dumps (GetTempPathA) - audit cross-machine. Rebuild bridge+engine+installer NSIS/MSI v=202609021627. admin 2026-09-02 16:50:02 +07:00
  • b153850d5c V45.39: fix installer khong cai VC++ redist -> VST FX 0x7E tren may sach admin 2026-09-02 12:46:24 +07:00
  • 8e4fed5f05 fix(api): /fx-gui/close dong TAT CA bridge trung plugin (khong chi proc dau) 3dtours 2026-09-02 12:41:16 +07:00
  • 33c5cc290f fix(api,ui): chan double-spawn GUI embed master chain - register bridge ngay sau Popen + inflight guard + frontend busy ref (crash 0xc0000005 2 instance Ozone) 3dtours 2026-09-02 12:34:46 +07:00
  • f793ebce9b fix(bridge): first-paint kick real click — iZotope GUI embed hien thi that 3dtours 2026-09-02 11:44:16 +07:00
  • d3094a3ba5 fix(ui): add VST FX vao master chain tu dong mo GUI embed 3dtours 2026-09-02 10:01:48 +07:00
  • d068927694 fix(bridge): Ozone FX GUI embed crash license check — sleep truoc attach + retry 5 spawn 3dtours 2026-09-02 09:40:17 +07:00
  • 5b90bd43b5 bump sf-fx-realtime cache-bust version 3dtours 2026-09-01 22:49:30 +07:00
  • 4da46d87c8 fix(bridge): skip toàn bộ iZotope trong scan + VST2 load — wrapper 0x7E/FastFail hết dialog 3dtours 2026-09-01 22:26:40 +07:00
  • aaf58db56f fix(bridge): VST2 iZotope wrapper 0x7E — add Cores dirs to PATH; skip Ozone Pro fastfail 3dtours 2026-09-01 22:07:10 +07:00
  • be5ecf0a48 fix(ui): Plugin Manager Scan circular JSON — onClick pas synthetic event lam dirsOverride (JSON.stringify event circular) 3dtours 2026-09-01 21:47:52 +07:00
  • 31f19fa537 bridge: skip Ozone 11 modules (license fastfail c0000409 kills scan/render) 3dtours 2026-09-01 20:37:59 +07:00
  • 29b5f053a0 V45.38: suppress iZotope 0x7E dialog admin 2026-09-01 20:10:33 +07:00
  • aee537a0af V45.37: rebuild installer full (frontend+engine+bridge) - NSIS+MSI moi chua V45.35 (Plugin Manager Scan) + V45.36 (SF2 preset fallback). Bump v=202609011809. admin 2026-09-01 18:33:45 +07:00
  • de8abd12fa fix(bridge): NOMINMAX trong VstDllSearch.h — windows.h macro min/max pha std::min (C2589) 3dtours 2026-09-01 18:10:08 +07:00
  • 1acb6f23f1 fix(bridge): 0x7E iZotope — append core DLL dirs (Program Files/iZotope/*/Cores) vao PATH truoc Module::create 3dtours 2026-09-01 18:08:10 +07:00
  • a8a3038dd2 fix(engine): bundle bridge tu bridge-win/Release (MSBuild) khong phai build/Release (CMake cu) 3dtours 2026-09-01 17:31:41 +07:00
  • 67b8658015 V45.39b: engine_port.txt ghi port+engine_exe_path, get_engine_port doi chieu path engine cua chinh app (2 instance khong doc lan port cua nhau) 3dtours 2026-09-01 17:02:23 +07:00
  • 2c4d6c358b V45.39: fix SERVER OFFLINE lau + UI load cham - engine ghi port file (engine_port.txt), UI bootstrap doc port engine cua chinh no (get_engine_port) + timeout/retry 60s, health poll self-heal reload, khong taskkill /IM daw_engine (giet engine instance khac), /api/v1/plugins/available chay scan trong threadpool (khong chan event loop -> /health het timeout) 3dtours 2026-09-01 16:45:06 +07:00
  • 1e0314249d V45.38: bundle VC++ runtime app-local (MSVCP140/VCRUNTIME140) vao installer+portable - bridge C++ link /MD can runtime canh exe, khong phu thuoc vc_redist he thong (fix 0x7E ERROR_MOD_NOT_FOUND tren may khong cai redist) 3dtours 2026-09-01 16:19:33 +07:00
  • c1b73db971 Merge main (V45.1-32 fixes: ReferenceError guard, crackle/solo/seek fixes) vao standalone-shm-bridge (giu FILL 96) 3dtours 2026-09-01 16:03:28 +07:00
  • c8e2d0f6e2 V45.37: build_windows.ps1 full-build - dung path CMake build/bridge-win (vcxproj+Release), Continue+LASTEXITCODE (native stderr), kill engine theo path khong dong production 3dtours 2026-09-01 12:25:43 +07:00
  • 3aed7e93ea V45.37: build_windows.ps1 full-build - dung path CMake build/bridge-win (vcxproj+Release), Continue+LASTEXITCODE (native stderr), kill engine theo path khong dong production 3dtours 2026-09-01 12:25:43 +07:00
  • 855a753e26 V45.36: build_install.ps1 robust voi native stderr (Continue+LASTEXITCODE), kill theo path install/dist khong dong production 3dtours 2026-09-01 12:12:14 +07:00
  • aad25f4049 V45.36: build_install.ps1 robust voi native stderr (Continue+LASTEXITCODE), kill theo path install/dist khong dong production 3dtours 2026-09-01 12:12:14 +07:00
  • 400b5e5370 V45.35: fix build_install/build_windows copy layout PHANG - Copy-Item wildcard tran noi dung _internal ra root (exe treo luc chay); dung robocopy /MIR giu dung cau truc onedir exe+_internal 3dtours 2026-09-01 11:44:04 +07:00
  • e691c43e62 V45.35: fix build_install/build_windows copy layout PHANG - Copy-Item wildcard tran noi dung _internal ra root (exe treo luc chay); dung robocopy /MIR giu dung cau truc onedir exe+_internal 3dtours 2026-09-01 11:44:04 +07:00
  • 1932467539 V45.34: ban cai phai SACH - engine.spec loai dev config (DB/.secret_key/plugin_dirs.json/sf_scan_state.json) khoi bundle; build_install.ps1 + build_windows.ps1 fail-fast neu dist dinh config dev (reset ve mac dinh cho nguoi dung moi) 3dtours 2026-09-01 11:31:10 +07:00
  • 4cd8fa780d V45.34: ban cai phai SACH - engine.spec loai dev config (DB/.secret_key/plugin_dirs.json/sf_scan_state.json) khoi bundle; build_install.ps1 + build_windows.ps1 fail-fast neu dist dinh config dev (reset ve mac dinh cho nguoi dung moi) 3dtours 2026-09-01 11:31:10 +07:00
  • a8082b27c4 V45.33: fix Plugin Manager VSTi liệt kê nhầm VST FX (Ozone Pro/Tonal Balance Control Pro) làm instrument - /available chặn entry UNKNOWN theo tên (bridge timeout introspect VST3) + _norm_path_stem locpham 2026-09-01 10:37:12 +07:00
  • 4713f8a8a1 V45.33: fix Plugin Manager VSTi liệt kê nhầm VST FX (Ozone Pro/Tonal Balance Control Pro) làm instrument - /available chặn entry UNKNOWN theo tên (bridge timeout introspect VST3) + _norm_path_stem locpham 2026-09-01 10:37:12 +07:00
  • 60a87626f0 V45.36: fix SF2 preset thieu tren soundfont non-GM (Cajon.sf2) - fluidsynth error 'There is no preset with bank number 0 and preset number 40/44' lam track violin/contrabass silent. selectProgram/programChange gio fallback 3 bac: (bank,program) -> (0,program) -> (0,0) thay vi chi bank128->bank0 (fluidsynth giu preset cu -> sai am). Rebuild daw_vst_bridge MSBuild 20260901-1003. admin 2026-09-01 10:03:55 +07:00
  • 5467c50fb7 V45.35: fix Plugin Manager scan - nut Scan (dirs list) onClick truyen SyntheticEvent lam dirsOverride -> dirs=event -> savePluginDirs({plugin_dirs: event}) -> Tauri invoke JSON.stringify gap __reactFiber$ circular (HTMLButtonElement) - loi 'Converting circular structure to JSON' khi scan Soundfont/VSTi. Fix: onClick: () => saveAndScanDirs(). v=202609010955 admin 2026-09-01 09:56:19 +07:00
  • cb89d374ff V45.34: rebuild bundle v=202609010910 (build_windows.ps1 full - precompiled + index bump, sf-fx-realtime.js?v=202609010910) admin 2026-09-01 09:31:37 +07:00
  • 848bbf4d15 V45.33: rebuild bundle - bump v=202609010905 (precompiled + index, sf-fx-realtime.js?v=202609010905), rebuild 3 native bridge (daw_vst_bridge/fx_vst_bridge/plugin_host) tu source 20260831-2149 bang MSBuild 20260901-0905 admin 2026-09-01 09:10:14 +07:00
  • 5f8844637e V45.32: fix (1) latency preview MIDI keyboard - flush ring bridge sink (bridgeAudioWorklet _MAX 32 ~170ms audio cu render truoc) tai idle->active live note-on trong __clearMasterFxQueue (cung dieu kien V45.26: _liveHeldCount===0 && im lang >500ms) de note moi nghe ngay; guard _timelinePlaying (khong flush khi timeline dang play); (2) crackle VST2 tremolo/loop - overrun crossfade tich luy moi block drop cong 256 mau cap 1024 (~21ms) thay vi co dinh 64 mau (1.3ms qua ngan -> blip/wow khi drop loat block o chord nhieu voice) (tai lap tu V45.28, giu ring 32 de latency thap). v=202608311858 admin 2026-08-31 19:00:24 +07:00
  • 21cc8421a5 V45.31: REVERT V45.28 (4ed1de6) ve dung trang thai b64343a (V45.27) de kiem tra latency cao - ring worklet 32 block (~170ms), worklet URL v=202608311809, bo overrun crossfade tich luy 256/cap1024 cua V45.28. v=202608311809 admin 2026-08-31 18:47:58 +07:00
  • 833f3bd158 V45.30: REVERT V45.29 (a069773) - V45.29 ring worklet 80 (~426ms) gay latency cao khi preview midi keyboard (ring luon day, do tre = dung ring cap) va crackle khi Chord VST2; quay ve V45.28 (4ed1de6): ring 48 (~256ms), worklet URL v=202608311820, bo log worklet_stats dinh ky. v=202608311820 admin 2026-08-31 18:43:48 +07:00
  • a069773d4a V45.29: fix wobble preview VST2 chord van con sau V45.28 - ring worklet bridgeAudioWorklet 48->80 block (~426ms) phu stall render loop C++ toi ~361ms do tu log (fxrt_bridge loopMax=361ms, fxrt_pump pump_gap 362ms, longtask d=346): ring 48 (256ms) van khong du -> underrun lap lai fade ve 0 = wobble; them worklet_stats log dinh ky moi ~2s vao dbg.log (preview_diag chi fire keybed/vkb, duong preview khac khong log ws= duoc) de xac minh ov/un sau fix. v=202608311832 admin 2026-08-31 18:32:37 +07:00
  • 4ed1de638d V45.28: fix wobble preview VST2 loop/tremolo khi nhan chord - ring worklet bridgeAudioWorklet 32->48 block (~256ms) hap thu stall render loop C++ khi chord nhieu voice (stall >170ms -> underrun lap lai fade ve 0 nghe nhu wobble; 16->32 V45.27 da dung crackle, 32 chua du cho chord); overrun crossfade tich luy moi block drop cong 256 mau cap 1024 (~21ms) thay vi co dinh 64 mau (1.3ms qua ngan -> blip/wow khi drop loat block o chord nhieu voice). v=202608311820 admin 2026-08-31 18:20:53 +07:00
  • b64343aac6 V45.27: fix (1) PR tab preview cam khi sub-tab PR khong ARM - ARM MAIN/SECTION cuc bo, khong leak sang PR (3 nhanh: vkbNoteOn prArmedIds + attachMidiHandler bridge bPrArmed + SonicSF arSubs them && isArmed); (2) crackle preview VST2 instrument loop/tremolo - ring worklet bridgeAudioWorklet 16->32 block (~170ms) hap thu stall render loop C++ khi instrument xu li loop/tremolo nang CPU (8->16 truoc da dung tremolo, 16 chua du); them stats overrun/underrun tu worklet -> getDiag/preview_diag (ws=ov/un) de xac minh con crackle khong. v=202608311809 admin 2026-08-31 18:10:47 +07:00
  • 72ae2c8a9a V45.26: fix wobble/crackle khi preview MIDI keyboard nhan (1/8 lien tuc) o MAIN/SECTION/PR tab. Root cause: unifiedMidiRouter.pushEvent clear master FX outQueue (__clearMasterFxQueue, V31 fix lag idle backlog ~341ms) tren MOI live NOTE_ON -> rapid notes: moi note wipe queue dang chua tail note truoc + resume fade-in 43ms -> cat tail (crackle) + fade nhap nhay (wobble). Fix: chi clear khi that su idle->active (khong con note dang giu VA im lang >500ms) — dem _liveHeldCount + _lastLiveEventAt; note dang ngan / chuoi note nhanh giu queue. Timeline (live=false) khong doi. v=202608311756 admin 2026-08-31 17:56:17 +07:00
  • fbefa7e864 V45.25: fix ARM leak trong PR tab - preview chi track dang edit. Root cause: vkbNoteOn + attachMidiHandler (bridge bPrArmed va SonicSF arSubs) gom ARM tu TAT CA sub-tab PR (forEach s.isArmed) + track MAIN isArmed -> ARM track 1 leak sang PR tab track 2 (khong ARM) van nghe nhac cu track 1. Fix: trong PIANO_ROLL tab, target = duy nhat sub-tab PR dang active (activeTabRef), bat ke isArmed; MAIN/SECTION giu nguyen (ARM moi, khong ARM -> cam + toast). v=202608311739 admin 2026-08-31 17:39:40 +07:00
  • cdf71078f8 V45.24: dao y/c - solo/mute CHI cuc bo MAIN/SECTION, PIANO ROLL TAB KHONG bi cam. REVERT V45.23 (4 gate computeTrackAudibleGain o preview) + lam PR doc lap: (1) scheduleMidiNoteDispatch them param prNote=true cho 6 nhanh PR (play, ghost, click, draw, brush, wheel) -> bo qua solo_guard + goi ensureTrackPrAudible (CC7=vol theo volumeDb bo qua mute/solo + setTrackNodeGain) tai thoi diem fire; (2) preview keybed vkbNoteOn + hardware attachMidiHandler (bridge + SonicSF fallback) khi _isPrTabNow goi ensureTrackPrAudible de channel khong con bi CC7=0 tu toggle MAIN; (3) applyAllTrackMuteSolo + sync useEffect bo qua gain=0/CC7=0/kill note khi track co sub-tab PR dang PLAY. Timeline MAIN giu solo_guard. v=202608311725 admin 2026-08-31 17:26:08 +07:00
  • 6cd4eb423a V45.23: fix Bug 4 (solo/mute khong tac dung o PIANO ROLL tab) - preview MIDI (keybed vkbNoteOn + hardware attachMidiHandler NOTE_ON bridge/SonicSF fallback) bo qua trang thai mute/solo cua MAIN/SECTION context: track muted hoac solo-out van phat am khi bam phim o PR tab. Them gate computeTrackAudibleGain vao 4 nhanh preview (bTracks, arSubs, armedTracks, vkb targets) - dung semantics nhu scheduleMidiNoteDispatch solo_guard (timeline da dung tu V45.21). vkbNoteOff/note-off bridge KHONG gate (phai kill note dang giu khi mute giua chuong). marker solo_guard block midi ch= p= cho dbg. v=202608311716 admin 2026-08-31 17:16:49 +07:00
  • 2fe78ddd1b V45.22: fix Bug 3 (wobble loop wrap) - wrap restart skipRouting nhu seekPlaybackTo/applyPlayheadDirect: updateSfRouting (AudioRoutingEngine.connect/ disconnect bridge sink + setOutputDestination) chay o MOI wrap trong luc isPlayingRef=false -> stall main thread 122-161ms (pump_gap) > KEEP 16 (~85ms) -> outQueue can -> underrun -> wobble beat 0:0 + playhead desync. skipRouting bo routing khoi critical path wrap -> stall ve duoi KEEP -> het underrun. Them instrument: stop_start log stack caller (xac nhan mystery stop = user Space/Stop, khong phai code) + wrap_timing stop=/start= phan tach stall. v=202608311708 admin 2026-08-31 17:09:28 +07:00
  • 7572d339de V45.21: fix Bug 1 (seek delay - seek branch resumeFill=8 thay vi RESUME_FILL 24 ~128ms -> 43ms nhu wrap V45.4; applyPlayheadDirect stopAllPlayback(false,true) skipRouting nhu seekPlaybackTo) + Bug 2 (attachMidiHandler guard _isPrTabNow nhu vkbNoteOn V45.19 - ARM piano roll khong leak ra MAIN/SESSION) v=202608311642 admin 2026-08-31 16:43:32 +07:00
  • 75b1512779 V45.20: fix Bug 6 (piano roll trang - bo subTabsRef/activeTabRef ngoai scope trong renderKeybed -> const _kbSilent=false; renderKeybed chi chay o PR tab nen luon false) + Bug 1 debug (them pitch vao log midi_push) v=202608311305 admin 2026-08-31 13:04:00 +07:00
  • 36f2cf79b1 V45.19: fix Bug 1b (seek#2 + wrap freeze) + Bug 2 (ARM scope theo active tab) v=202608311242 admin 2026-08-31 12:43:08 +07:00
  • 8a6a79c757 V45.18: fix seek khi play master FX active - clear_queue mode 'seek' (wipe queue cu + resume nhanh 8 block ~43ms thay vi FILL 24 ~128ms) het am tre 1 beat; DIAG preview_diag src=keybed cho Bug 2 ARM piano roll v=202608311222 admin 2026-08-31 12:24:56 +07:00
  • 8ccf7e4b14 V45.17: fix seek khi play master FX active - set startOffsetTimeRef + __fxRtPlayheadFreeze NGAY tai click (het 50ms dau playhead chay theo processed anchor cu truoc khi dung) v=202608311151 admin 2026-08-31 11:52:23 +07:00
  • 80b8c3e034 V45.16: freeze playhead khi seek master FX active (het playhead chay truoc am ~128ms) v=202608311143 admin 2026-08-31 11:43:21 +07:00
  • 39f00c3c0b V45.15: fix ARM piano roll khong am - gop subTab isArmed (PIANO_ROLL) vao 2 path gui note (midi_push bridge branch + vkbNoteOn) - preview note toi track dang edit du track main khong ARM v=202608311122 admin 2026-08-31 11:23:34 +07:00
  • 752db690b3 V45.14: diag preview_audio - dem bridge-audio frames 500ms sau note-on (tach engine render vs JS routing) v=202608311112 admin 2026-08-31 11:11:47 +07:00
  • ad71ac1168 V45.13: diag Bug 3/4 preview khong am - preview_diag tai vkbNoteOn (routing state, BridgeAudioNode.getDiag, masterBus, fxRt, arm/tab) + sf_route tai updateSfRouting (nhanh PR_CONNECT/SINGLE_CONNECT/MASTER_FALLBACK) v=202608311101 admin 2026-08-31 11:05:13 +07:00
  • 845823a9df V45.12: fix SF preset wrong sau reopen (race C++ restore async ghi de program JS vua gui) - retry FORCE CC0/CC32/PROGRAM sau 1.5s/4s/8s qua cua so restore, bo dedupe v=202608311035 admin 2026-08-31 10:35:59 +07:00
  • f6104a43d5 V45.11: fix SF preset wrong after reopen - preload SF2 gui program change (C++ loadSoundFontFile reset bank/program 0 moi lan load, JS khong gui lai) v=202608300815 admin 2026-08-30 08:15:51 +07:00
  • e57b9fade2 V45.10: fix seek lag solo track - skip sink re-point on seek restart v=202608300814 admin 2026-08-30 08:14:42 +07:00
  • 6b18d25520 V45.9: fix solo/un-solo khi play -> soundfont delay/wobble/crackle - updateSfRouting re-point bridge sink (AudioRoutingEngine.connect -> disconnect/reconnect gainNode FluidSynth) giua main play khi midiAudible count doi (2->1) = glitch ngay; skip sink re-point khi isPlayingRef (main/session), mute/solo da xu ly bang CC7 + track gain, routing set lai khi STOP; v=202608300750 admin 2026-08-30 07:51:18 +07:00
  • 4c0987733e V45.8: fix Qin VST2 loop wrap crackle - wrap release them NOTE_OFF per-pitch (timelinePitchesRef) vi CC123 khong an voi VST2 (Qin bo qua all-notes-off CC) -> note cu ring qua seam re-trigger cung pitch = giat; per-note OFF da chung minh an (panic 128 noteOff o STOP, D18c); v=202608292315 admin 2026-08-29 22:42:02 +07:00
  • 85fdcb16e2 V45.7b: fix TCP loading loop — _notifyStatus chi fire cb khi connected doi (poller queryStatus 400ms tung reset map + reload track -> LOAD skip vo han) admin 2026-08-29 22:11:00 +07:00
  • c0fbf29d41 V45.7: fix SF2 load fail fallback — catch bridgeLoad 404 so GM fallback runs admin 2026-08-29 22:04:37 +07:00
  • 945e63918d V45.6 fix solo Q3: bo stopAllPlayback+restart 60ms khi solo main-session (track solo giu nguyen tieng, het wobble re-attack); GIU timelinePitchesRef qua stop - kill branch NOTE_OFF tung pitch (Qin im khi solo track khac, truoc day tset=0); C++ allNotesOff sandbox VST2 qua control 7 (child panic local CC64/CC123+128 noteOff) thay 128 note-off flood queue 64-cap (Qin het treo sau STOP); IPC toggleSolo tu applyAllTrackMuteSolo (ref patch + kill); v=202608292138 admin 2026-08-29 21:39:59 +07:00
  • 72ae22f865 V45.5 instrument solo path (Q3 debug): dbg log solo_toggle/solo_apply/solo_kill/solo_guard/play_tracks - lan test toi thay ro trang thai ref + note bi block; C++ [Vst2Sandbox] ON/OFF/CC log trong SandboxVst2Host (Qin chay sandbox, truoc day midi vao Qin hoan toan mu trong bridge.log - chi VST3 log [midi]), v=202608291806 admin 2026-08-29 18:09:16 +07:00
  • 82796417c1 V45.4 fix SF loop wrap gap: worklet KEEP 4->16 (85ms che stall 68-82ms, het underrun wrap dien hinh) + wrap underrun bo flush (D17 da skip engine flush; worklet flush pha gap seam) + resumeFill 8 (~43ms) thay FILL 24 (~128ms) - gap wrap ~110-235ms giam con vai chuc ms, v=202608291752 admin 2026-08-29 17:54:36 +07:00
  • a7630f0e6d chore: bo target/ root (artifact lan) khoi index + gitignore admin 2026-08-29 17:50:45 +07:00
  • 788a371f72 V45.3 fix Qin tremolo khi solo track khac: activeTracksRef luon ghi state da patch (bo restore STALE) - D18b guard/scheduler thay solo-out ngay, v=202608291749 admin 2026-08-29 17:50:12 +07:00
  • f3fd0109a7 V45.2 fix Qin silence (20s audio-thread stall) + SF loop downbeat delay admin 2026-08-29 17:25:32 +07:00
  • 6b26d5db0e V45.1: fix load VSTi loi ReferenceError instrumentSelectorData (module scope) - guard typeof undefined, v=202608290945 admin 2026-08-29 16:46:05 +07:00
  • c084ac8ba7 V45: D17 seamless loop wrap + D18 stop solo note-off (Qin) + D18b/c guard + engine VST load fixes admin 2026-08-29 16:39:02 +07:00