feat: Triple fix - Variedad + Humanizer + Coherencia
MÓDULO 1: Variedad de Samples (usa más de la librería) - Fix _find_sample_for_section(): rotación round-robin por sección * Intro: samples 0-2 (suaves) * Verse: samples 3-6 (rotación) * Chorus: samples 7-10 (energía) * Bridge: samples 11-14 (diferentes) * Outro: últimos samples - Nueva función _pick_variety() distribuye 12 samples entre secciones - generate_intelligent_track(): múltiples samples por rol (no 1 solo) - load_samples_for_genre(): hasta 3 bass tracks, 3 FX tracks (eliminados breaks) MÓDULO 2: Humanización Real (suena musical, no robótico) - Fix bug de escala: intensity 0.0-1.0 → timing 0-15ms audible - Perfiles por instrumento: * Kick: timing×5ms (sutil) * Snare: timing×10ms (medio) * HiHat: timing×15ms (expressivo) * Bass: timing×8ms * Melody: timing×12ms - Soporte Arrangement View: procesa arrangement_clips - Humanización de audio clips: gain variation + micro-timing - BPM-aware timing en HumanFeel (lee tempo real del proyecto) MÓDULO 3: Sistema de Coherencia (calidad profesional) - Fix validate_coherence: import roto CoherenceValidator → RealCoherenceValidator - Fix select_coherent_kit: mismo fix de import - Detección de frequency masking: identifica kick+bass colisión en sub-bass - Phase correlation real: calculado desde onsets coincidentes - Unificación _calculate_coherence(): usa RealCoherenceValidator como default Resultado: - Antes: 7-12 samples de 511 (6-12%) - Ahora: 20-40+ samples por producción (rotación automática) - Humanización: audible y por instrumento - Coherencia: detecta problemas kick/bass, phase issues Refs: Módulos 1, 2, 3 del plan de desarrollo
This commit is contained in:
8
mcp_call_debug2.txt
Normal file
8
mcp_call_debug2.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
get_session_info: before init
|
||||
get_session_info: after init
|
||||
get_session_info: after call
|
||||
meta=None content=[TextContent(type='text', text='{\n "status": "success",\n "result": {\n "tempo": 95.0,\n "num_tracks": 4,\n "num_scenes": 8,\n "is_playing": false,\n "current_song_time": 0.0,\n "metronome": false,\n "master_volume": 0.8500000238418579\n }\n}', annotations=None, meta=None)] structuredContent={'result': '{\n "status": "success",\n "result": {\n "tempo": 95.0,\n "num_tracks": 4,\n "num_scenes": 8,\n "is_playing": false,\n "current_song_time": 0.0,\n "metronome": false,\n "master_volume": 0.8500000238418579\n }\n}'} isError=False
|
||||
set_tempo: before init
|
||||
set_tempo: after init
|
||||
set_tempo: after call
|
||||
meta=None content=[TextContent(type='text', text='{\n "status": "success",\n "result": {\n "status": "success",\n "result": {\n "tempo": 95.0\n }\n }\n}', annotations=None, meta=None)] structuredContent={'result': '{\n "status": "success",\n "result": {\n "status": "success",\n "result": {\n "tempo": 95.0\n }\n }\n}'} isError=False
|
||||
Reference in New Issue
Block a user