Commit Graph

  • 013465f27a fix(engine): replace pyfluidsynth high-level API with low-level CFFI 3dtours 2026-07-26 17:08:40 +07:00
  • 1059f67979 chore: add bugfix log to wiki 3dtours 2026-07-26 17:00:36 +07:00
  • 280c8f598f fix(engine): case-insensitive SF2 lookup, add synth_engine to serialization 3dtours 2026-07-26 17:00:28 +07:00
  • d48262d468 feat(engine): fix SF2 path resolution, add synth_engine struct and fallback chain 3dtours 2026-07-26 16:49:40 +07:00
  • 2ab989132b fix(ui): wire Synth button to VST3 selection and render engine 3dtours 2026-07-26 16:25:26 +07:00
  • 3e805179c2 feat: sử dụng VST3, Soundfont, pianobook 3dtours 2026-07-26 16:21:32 +07:00
  • f25a574126 build(docker): mount daw_assets host dirs into containers 3dtours 2026-07-26 16:11:41 +07:00
  • 89c7237379 feat: add SoundFont inspection engine + AI instrument schema 3dtours 2026-07-26 12:36:48 +07:00
  • f16467eba1 fix: đã sửa lỗi back và rewind 3dtours 2026-07-26 12:27:08 +07:00
  • b1bbf567ab fix(piano-roll): seek-to-start restarts playback 3dtours 2026-07-26 12:22:51 +07:00
  • 8204bc016d fix: đã sửa lỗi stop và nút loop 3dtours 2026-07-26 12:21:02 +07:00
  • b0d7f35a1e fix(piano-roll): loop only on btn + instant stop 3dtours 2026-07-26 12:16:01 +07:00
  • 653c0747cb fix: đã sửa lỗi click vị trí mới cho playhead 3dtours 2026-07-26 12:12:48 +07:00
  • 4e880850f5 fix(piano-roll): playhead seek + sound cracking 3dtours 2026-07-26 12:03:29 +07:00
  • 1ffdec68c6 fix: ruler click 200ms timeout + default instrument attackTime 0.03 + safe ramp 3dtours 2026-07-26 11:51:50 +07:00
  • 523a754949 fix: remove grab handle e.stopPropagation blocking ruler clicks 3dtours 2026-07-26 11:48:21 +07:00
  • 79999065a7 fix: ruler click moves playhead, drag moves range 3dtours 2026-07-26 11:45:47 +07:00
  • 49c9f019db wiki: ruler range drag + SonicSF smooth stopAll 3dtours 2026-07-26 11:42:17 +07:00
  • e18b261943 fix: ruler range drag/move, default cursor, SonicSF smooth stopAll 3dtours 2026-07-26 11:42:06 +07:00
  • d3c28d2fa7 wiki: fix ruler click playhead 3dtours 2026-07-26 11:37:00 +07:00
  • 7601cc72c9 fix: ruler click playhead update using available props onStop+onPlayPause 3dtours 2026-07-26 11:36:55 +07:00
  • f7b499cda9 wiki: fix range auto-loop + gain fade-out 3dtours 2026-07-26 11:34:08 +07:00
  • 5e096b5594 fix: remove range auto-loop + gain fade-out for reschedule crackling 3dtours 2026-07-26 11:34:02 +07:00
  • 724b42d506 wiki: fix realtime velocity + ruler restart 3dtours 2026-07-26 11:28:54 +07:00
  • d3a3adca8a fix: realtime velocity with updatedNotes + ruler restart without onStop 3dtours 2026-07-26 11:28:47 +07:00
  • 7ede9bbf72 wiki: realtime velocity, ruler play, export MIDI 3dtours 2026-07-26 11:20:25 +07:00
  • b6b1faf083 feat: realtime velocity, ruler play click, export MIDI button 3dtours 2026-07-26 11:20:19 +07:00
  • bf4f2a5f11 fix: đã sửa lỗi thay đổi instrument thì bị stop 3dtours 2026-07-26 11:15:09 +07:00
  • 90ca8f484b fix: restore isPlaying after stopAllPlayback on instrument change 3dtours 2026-07-26 11:13:50 +07:00
  • 6926c79357 wiki: instrument change loop fix 3dtours 2026-07-26 11:10:41 +07:00
  • 9717470bb6 fix: instrument change keeps loop playback alive 3dtours 2026-07-26 11:10:31 +07:00
  • e57f6d96d9 fix: MIDI tab real-time instrument change - restart playback 3dtours 2026-07-26 11:07:37 +07:00
  • 5b500ebdf3 fix: remove MIDI tab loop button + Ctrl+click clear range 3dtours 2026-07-26 11:03:51 +07:00
  • 9438f44052 fix: CC note detection with Y-aware stem matching 3dtours 2026-07-26 10:59:33 +07:00
  • 3901af75b2 fix: đã sửa lỗi vẽ tiếp khi thay đổi pitch 3dtours 2026-07-26 10:57:01 +07:00
  • 27d9556a9d fix: brush draw pitch revisit by comparing lastDrawnPitch 3dtours 2026-07-26 10:55:21 +07:00
  • bc0c2d3279 fix: đã sửa lỗi vẽ lên và trường độ 3dtours 2026-07-26 10:53:08 +07:00
  • 034455598d fix: brush draw per-note duration with noteStartBeats tracking 3dtours 2026-07-26 10:50:45 +07:00
  • 8450bd6de4 fix: brush draw only pitch change + CC velocity skip unchanged 3dtours 2026-07-26 10:48:16 +07:00
  • d2993eee69 fix: brush drawing smooth - track pitch + beat delta 3dtours 2026-07-26 10:44:37 +07:00
  • fe379c45e2 fix: brush shape draw + remove transport + loop repeat sound 3dtours 2026-07-26 10:41:31 +07:00
  • 3ae48f2f2f fix: đã sửa lỗi bị mất không hiển thị midi và vẽ cclane 3dtours 2026-07-26 10:37:41 +07:00
  • d20fafb75e fix: velocity flicker - grid canvas useLayoutEffect sync 3dtours 2026-07-26 10:29:23 +07:00
  • 0b7dd82407 fix: scroll speed matches mouse + CC flicker useLayoutEffect 3dtours 2026-07-26 10:26:00 +07:00
  • 7107a0cc14 fix: brush scroll speed + CC snap + non-selected flicker 3dtours 2026-07-26 10:21:31 +07:00
  • 8ec4b05e21 fix: brush pitch-based scroll + CC velocity per-note paint 3dtours 2026-07-26 10:14:40 +07:00
  • 9237d01f35 fix: auto-scroll continuous + batch CC velocity for selected notes 3dtours 2026-07-26 10:09:55 +07:00
  • a7417b9bfa fix: đã sửa lỗi bị mất không hiển thị midi piano grid 3dtours 2026-07-26 10:05:23 +07:00
  • a765998455 feat: piano roll 4 features - SNAP, velocity selected, auto-scroll, synth button 3dtours 2026-07-26 09:43:19 +07:00
  • bd55d035de fix: đã sửa lỗi MIDI loop 3dtours 2026-07-26 07:16:17 +07:00
  • 8516961d80 fix: đã sửa lỗi chọn range tự do 3dtours 2026-07-25 22:52:54 +07:00
  • c917db200e fix: ruler doc-level drag, remove onMouseMove/onMouseLeave from element, comma fix 3dtours 2026-07-25 22:50:16 +07:00
  • e5196e79c8 fix: use refs for selectionMarquee and notes in doc-level drag handler to avoid stale closure 3dtours 2026-07-25 22:37:30 +07:00
  • ce30289f46 fix: loop reschedule midi, note select in doc-level handler, ctrl+click ruler clear loop 3dtours 2026-07-25 22:35:23 +07:00
  • 5bd92ee186 fix: đã sửa lỗi chọn range trong MIDI marquee và chọn note 3dtours 2026-07-25 22:34:34 +07:00
  • 89f2fed1d9 fix: blue marquee for note select on grid, green loop overlay from ruler drag, notes play once 3dtours 2026-07-25 22:31:42 +07:00
  • 4306ff302a fix: marquee survive mouseleave, loop reschedule midi notes, separate leave/up handlers 3dtours 2026-07-25 22:20:58 +07:00
  • 790a5823f6 fix: đã sửa lỗi chọn range trong MIDI marquee 3dtours 2026-07-25 22:18:44 +07:00
  • fccdb15ad7 fix: piano roll selection marquee green full-height, edge resize, body move, playback min 16 beats, doc-level drag 3dtours 2026-07-25 22:13:50 +07:00
  • a181f7a24d fix: đã sửa lỗi chọn range trong MIDI tab 3dtours 2026-07-25 21:30:17 +07:00
  • 1a5c1eff43 fix: doc-level ruler drag, min 16bars playback, selection overlay, edge/center handles 3dtours 2026-07-25 21:28:26 +07:00
  • 9bfcd1870c fix: loop range playback via st.selectionStart/End + isLooping 3dtours 2026-07-25 21:21:03 +07:00
  • 39680cb95c fix: ruler close needed 4 parens (was 3), closing parent div properly 3dtours 2026-07-25 21:14:44 +07:00
  • 2ce731e6a9 fix: Ctrl+S piano roll + ruler drag selection + paren balance 3dtours 2026-07-25 21:09:34 +07:00
  • 025aba3265 fix: Ctrl+S in piano roll + ruler range selection via drag 3dtours 2026-07-25 21:04:06 +07:00
  • 57fd110fe3 fix: add capture flag to Ctrl+S keydown handler to prevent browser save 3dtours 2026-07-25 20:57:43 +07:00
  • c1a3d3a6dd feat: Ctrl+S saves current tab (piano roll, section, audio) or project + all dirty tabs 3dtours 2026-07-25 20:54:23 +07:00
  • fde9a91c9b fix: đã sửa lỗi MIDI note bị flicker 3dtours 2026-07-25 20:46:53 +07:00
  • f2d02a358f fix: skip st.notes sync when draggedNote active (prevents brush flicker) 3dtours 2026-07-25 20:45:24 +07:00
  • ce319573ab fix: move Ctrl+A useEffect after selectedNoteIds declaration 3dtours 2026-07-25 20:39:54 +07:00
  • 29b682e3ba fix: move Ctrl+A useEffect after notes declaration to avoid TDZ error 3dtours 2026-07-25 20:38:53 +07:00
  • f4ec769650 fix: restore useEffect sync for st.notes, remove render-phase TDZ error 3dtours 2026-07-25 20:36:21 +07:00
  • 966e673fae fix: replace sync useEffect with render-phase guard to prevent flicker 3dtours 2026-07-25 20:31:17 +07:00
  • a9f56d0fcd fix: drag clamp, pitch anchor, Ctrl+A, marquee dir, resize snap 3dtours 2026-07-25 20:30:01 +07:00
  • 8d83a46e08 fix: MIDI item playback respects visual duration + scale flicker guard 3dtours 2026-07-25 20:14:53 +07:00
  • 8fdf93f5d1 fix: đã sửa lỗi MIDI note ghi âm xuất hiện realtime 3dtours 2026-07-25 20:04:42 +07:00
  • 8849f33d07 fix: extend piano roll playhead duration to 10min during recording 3dtours 2026-07-25 20:03:09 +07:00
  • 97855f47d1 fix: add try-catch + nextMetronomeBeatRef init to startPianoRollRecording 3dtours 2026-07-25 19:56:19 +07:00
  • d858628a8f fix: sync notes from st.notes + set isPlaying for playhead + metronome count-in 3dtours 2026-07-25 19:53:45 +07:00
  • f3ad111376 fix: set subTab buffer + fix double stop() call + realtime playhead 3dtours 2026-07-25 19:48:00 +07:00
  • 7f681f23c1 fix: không ghi âm và ghi note MIDI và khong xuất hiện realtime 3dtours 2026-07-25 19:47:17 +07:00
  • 6cc3ae6ab8 fix: use startSubTabPlayback for piano roll recording + pass recTempMidiNotes prop 3dtours 2026-07-25 19:39:55 +07:00
  • 432dec635a fix: không ghi âm và ghi note MIDI 3dtours 2026-07-25 19:36:56 +07:00
  • e6dd7ff13c fix: realtime note display + MIDI key sound via refs 3dtours 2026-07-25 18:58:30 +07:00
  • da760dbb86 fix: MIDI record + key highlight on MIDI key press 3dtours 2026-07-25 18:55:31 +07:00
  • c3edda5c81 fix: call midiRec.start() so MIDI recorder receives messages 3dtours 2026-07-25 18:44:33 +07:00
  • 68eb6d5261 fix: replace stale snapToScale ref with st.snapToScale 3dtours 2026-07-25 18:39:47 +07:00
  • 513a6b082c fix: record midi - setSelectedMidiInputId, snapToScale persist, space stops recording 3dtours 2026-07-25 18:37:02 +07:00
  • 1151f1afa0 feat: bật tính năng ghi midi note trong piano roll tab 3dtours 2026-07-25 18:36:11 +07:00
  • 5af8536e53 fix: add recTempMidiNotes to PianoRollTabEditor props 3dtours 2026-07-25 18:31:35 +07:00
  • dffb8562df fix: piano roll recording - playhead, realtime notes, recording display 3dtours 2026-07-25 18:30:16 +07:00
  • 9498a0d4b0 fix: piano roll record via ARM + INPUT routes to piano roll tab 3dtours 2026-07-25 18:25:29 +07:00
  • 2c91c0156a feat: add Omni MIDI option in piano roll INPUT select 3dtours 2026-07-25 18:20:42 +07:00
  • cdff404437 fix: lỗi không mở được piano roll và thêm các tính năng cho AI 3dtours 2026-07-25 17:29:35 +07:00
  • 1b711ef014 feat: piano roll transport, ARM/INPUT, AI bar range, MIDI recording 3dtours 2026-07-25 17:22:24 +07:00
  • 1a97a4b33b fix: quy định kết quả AI copilot trả về đúng tab đang mở 3dtours 2026-07-25 16:35:54 +07:00
  • a59a36ec90 fix: use configured AI provider for piano roll prompt, not hardcoded 3dtours 2026-07-25 16:26:47 +07:00
  • 7dd6300500 fix: guard AI response parse against undefined textResponse 3dtours 2026-07-25 16:21:59 +07:00
  • 5628802e08 refactor: remove piano roll AI prompt, reuse Copilot for MIDI gen 3dtours 2026-07-25 16:19:44 +07:00
  • 2fed3eee0b fix: sửa lỗi snap to scale trong piano roll tab 3dtours 2026-07-25 12:44:08 +07:00