Commit Graph

537 Commits

Author SHA1 Message Date
3dtours 7b8e10419f fix: snap default '1' + Power button reads masterConnected directly
- snapValue default '1' (was 'free'), piano roll snapVal default '1' (was '1/16')
- Power button: remove shared isFxActive, use masteringSettings.masterConnected
2026-07-30 20:59:29 +07:00
3dtours 872ecabf85 IMPROVE: cho phép lưu dự án và phục hồi dự án vừa tắt, tạo crontab để tự động sao lưu sau mỗi 5 phút 2026-07-30 20:58:54 +07:00
3dtours 4005088e89 fix: audio clip items lost after reload — missing serverFileId on clip/track
- set serverFileId on clip + track when upload succeeds
- serialize/deserialize server_file_id in source_data
- guard clip.buffer null in WaveformLane canvas draw
2026-07-30 20:54:23 +07:00
3dtours 9c487614f1 feat: auto-save 5min + backup 30min + backup management UI
- project_backups table + DB migration
- Backup CRUD API endpoints with auto cleanup (5-20 retention)
- setInterval 5min save + 30min backup in browser
- ProfileModal: backup list, delete, retention slider, cleanup button
2026-07-30 20:48:45 +07:00
3dtours 58a294d845 IMPROVE: cho phép lưu dự án và phục hồi dự án vừa tắt 2026-07-30 20:47:44 +07:00
3dtours 313d1be5af fix: loadAudioBuffersForTracks scoped in ProfileModal crashes project load
Move fn to App component scope, pass as prop to ProfileModal.
restoreLastSessionProject now has access on startup.
2026-07-30 20:40:25 +07:00
3dtours 3386a2b4c2 feat: add structured preset button in AI Preset Manager
Add handleNewStructured fn + emerald button left of Quay lại
pre-fills form with comprehensive Vietnamese template sections
2026-07-30 20:33:22 +07:00
3dtours 64f43cd5ad IMPROVE: cho phép thay đổi instrument realtime khi đang playback 2026-07-30 17:32:57 +07:00
3dtours 546ad3dd23 FIX: sửa lỗi vị trí con trỏ pos khi parse MIDI MThd header 2026-07-30 17:28:23 +07:00
3dtours 402cac56a3 FIX: sửa lỗi parse file midi có track hoặc chunk phụ trợ 2026-07-30 17:21:42 +07:00
3dtours 1de69b8f4e IMPROVE: bật tắt ARM, MIC trên track strip, double click lên nút balance, volume 2026-07-30 17:04:13 +07:00
3dtours a9be38b76f IMPROVE: hướng dẫn AI tạo nhạc đầy đủ số bars và tracks theo yêu cầu 2026-07-30 16:39:28 +07:00
3dtours 938c8d7f87 FIX: sửa lỗi fluidsynth error khi toggle percussion kit 2026-07-30 16:25:09 +07:00
3dtours 15193b13a7 FIX: sửa lỗi undo khi move items, lỗi undo khi duplication item 2026-07-30 16:19:47 +07:00
3dtours 4db3e3484a FIX: sửa lỗi cnnot move items 2026-07-30 16:11:31 +07:00
3dtours f0479dc3d8 FIX: sửa lỗi Uncaught ReferenceError: stopPreviewNote is not defined 2026-07-30 15:56:09 +07:00
3dtours 7836cfcc76 FIX: chỉnh sửa hoàn thành UX/UI master strip 2026-07-30 15:38:25 +07:00
3dtours 19f02a5a49 FIX: chỉnh sửa UX volume của master strip 2026-07-30 15:22:47 +07:00
3dtours dc7ec3af4c FIX: chỉnh sửa UI volume của master strip 2026-07-30 15:19:41 +07:00
3dtours c073ca7a49 FIX: chỉnh sửa UI của master strip 2026-07-30 15:04:03 +07:00
3dtours 9f6f9763c1 FIX: chỉnh sửa UI của mixer panel 2026-07-30 15:01:52 +07:00
3dtours bbd06f23d5 FEAT: thay đổi UI của mixer panel 2026-07-30 14:52:57 +07:00
3dtours b67c0264fb feat(mixer): Master + Track Strip Console per specs 47/48 2026-07-30 12:55:35 +07:00
3dtours 74597cfe8b feat(mixer): install Master Strip Console per spec 47 2026-07-30 12:47:10 +07:00
3dtours 0c1a27ef2c FIX: sửa PIANO ROLL TAB khi vẽ draw note midi phải play các note được vẽ 2026-07-30 11:38:36 +07:00
3dtours eb61015cff FIX: sửa MASTERING PANEL thay đổi knob thì thay đổi các thông số hiển thị 2026-07-30 11:18:35 +07:00
3dtours 6e1f116658 FIX: sửa MASTERING PANEL có tác dụng với mainout 2026-07-30 11:06:31 +07:00
3dtours 2c55db372a FIX: sửa volume main out 2026-07-30 10:05:11 +07:00
3dtours e64070a83e FEAT: cài đặt tính năng cho volume main out 2026-07-30 09:34:36 +07:00
3dtours 66eef405a7 FIX: tăng velocity thêm tính năng midi key khác sử dụng cho midi note 2026-07-29 22:34:05 +07:00
3dtours 971dad84e7 FEAT: thêm tính năng midi key khác sử dụng cho midi note 2026-07-29 22:25:21 +07:00
3dtours 4cead1010e FEAT: thêm tính năng hiển thị ở master track 2026-07-29 22:13:54 +07:00
3dtours 7b5d4bf27a FEAT: thêm tính năng MasteringModules Modal 2026-07-29 22:03:20 +07:00
3dtours 47af85c072 FIX: sửa UNDO/REDO bị lỗi màn hình đen 2026-07-29 18:19:02 +07:00
3dtours d4ad3bc1f7 feat: add comprehensive Ctrl-Z/Ctrl-Y undo/redo engine for MAIN SESSION and SECTION-TAB 2026-07-29 16:05:43 +07:00
3dtours f721b8242f FIX: sửa nút Synth cho phép thay đổi instrument cho nhiều track 2026-07-29 12:17:26 +07:00
3dtours a1767e338a fix: Select Instrument stays open after picking instrument
Remove setInstrumentSelectorTrackId(null) from
setTrackInstrumentWithProgram. Modal stays open so user can
switch tracks and assign instruments without reopening.
2026-07-29 11:56:26 +07:00
3dtours 8051cf3edb fix: add missing aiTypeaheadRef definition 2026-07-29 11:52:49 +07:00
3dtours 35e767795a fix: Synth button opens modal with inline track selector
Remove external track dropdown. Add select dropdown inside the
instrument selector modal between title and search box. Users
can switch tracks without closing the modal.
2026-07-29 11:52:12 +07:00
3dtours 7bfdd72850 feat: Synth button shows track dropdown for quick instrument assign
Synth button opens a dropdown listing all tracks instead of opening
the modal directly. Selecting a track opens the instrument selector
for that track. No need to close modal and click each track's Synth.
2026-07-29 11:49:34 +07:00
3dtours 30ce0eb306 FIX: sửa lỗi không tự động cập nhật AI Suggestion 2026-07-29 11:47:30 +07:00
3dtours 41b5a70a60 fix: AI SUGGEST auto-updates after saving preset in manager
Add aiPresetVersion counter. Increment on modal close. AI panel
compares version and calls loadPresets() to sync from localStorage.
2026-07-29 11:45:31 +07:00
3dtours fa7917cf54 FIX: sửa lỗi không tự động load instrument 2026-07-29 11:37:46 +07:00
3dtours a3e681afc0 fix: re-fetch instrument data after login for new machines
Auth success handler now eagerly loads instrumentSelectorData
via listPlugins + getSoundfontCatalog. The mount-time useEffect
runs before auth token is set, so it silently fails on new machines.
2026-07-29 11:34:50 +07:00
3dtours 8775c960e3 fix: seed_admin() no longer resets admin password on restart
Remove hash verification + password reset logic. seed_admin() now
only creates the admin account if it does not exist. Prevents
password being reset to default + must_change_password flag
being set on every server restart.
2026-07-29 11:28:49 +07:00
3dtours 33e35a1af1 FIX: sửa lỗi drag group items 2026-07-29 11:14:22 +07:00
3dtours d4262acb9f fix: rewrite drag handler with stable crossOffset + outTracks merge 2026-07-29 11:13:31 +07:00
3dtours e40fdf15ad fix: use original baseTrackId for crossOffset, never update drag.trackId 2026-07-29 11:10:59 +07:00
3dtours 0d763c5a0b fix: targetTrackId undefined outside updateActiveTracks closure
Move track Y-position computation before updateActiveTracks so
targetTrackId is accessible for setDraggedSectionItem update.
2026-07-29 11:09:05 +07:00
3dtours ad6fa1feb9 fix: auto-add tracks when drag exceeds track count
Compute maxTargetIdx across all multiIds items. Prepend new
tracks to prev array before mapping if needed.
2026-07-29 11:08:11 +07:00